Commit Graph

6140 Commits

Author SHA1 Message Date
Christina Tong
79f49c33d8 feat: add tool_used field to run_metrics [LET-5419] (#5540)
* feat: add tool_used field to run_metrics [LET-5419]

* change to tool name

* use tool ids over names

* add generated files

* chore: update OpenAPI schema to include tools_used field in RunMetrics

* update alembic file
2025-10-24 15:12:11 -07:00
Matthew Zhou
fc950ecddf feat: Change execution pattern depending on enable_parallel_execution (#5550)
* Change execution pattern depending on

* Increase efficiency
2025-10-24 15:12:11 -07:00
cthomas
f8437d47e2 feat: add support for hitl parallel tool calling (#5549)
* feat: add support for hitl parallel tool calling

* rename to requested_tool_calls
2025-10-24 15:12:11 -07:00
Matthew Zhou
ddd1686ad1 feat: Add flag to tools to signify if they are race safe [LET-5611] (#5548)
* wip add race unsafe param

* Alembic migration

* Fern autogen

* Set default to True

* Adjust fern

* Rename field

* Run fern autogen

* Add enable_parallel_execution to Tool Create and Update
2025-10-24 15:12:11 -07:00
Kian Jones
3ac7cde434 feat: add path parameter validation for source_id (#5524)
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Kian Jones
2878a6e4bd feat: add path parameter validation for folder_id (#5523)
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Kian Jones
47bf549dfc feat: add path parameter validation for file_id (#5522)
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Kian Jones
3b56c53b6c feat: add path parameter validation for group_id (#5521)
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Kian Jones
8a35b886ea feat: add path parameter validation to message_id (#5515)
* feat: add path parameter validation to message_id

* fix: typo

* add comment for agent_id here

* openapi.json changes
2025-10-24 15:12:11 -07:00
Kian Jones
0dd7506af7 feat: add path parameter validation for job_id (#5518)
openapi.json changes
2025-10-24 15:12:11 -07:00
Kian Jones
ad0f6b2be0 feat: add validator for block id (#5514)
* add validator for block id

* add import

* fix plurality:

* openapi-schema.json
2025-10-24 15:12:11 -07:00
Kian Jones
f04bc0753c feat: add path parameter validation for tool_id (#5525)
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Kian Jones
c4379c3b8b feat: add path validation for archive, provider, sandbox, step, and identity IDs (#5526)
- Add validation for archive_id in archives.py
- Add validation for provider_id in providers.py
- Add validation for sandbox_config_id in sandbox_configs.py
- Add validation for step_id in steps.py
- Add validation for identity_id in identities.py
- Update validators.py to include new primitives and remove mcp_server
- Regenerate OpenAPI schema and SDK

🤖 Generated with Claude Code

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-24 15:12:11 -07:00
Matthew Zhou
c97a395a48 fix: Make parallel tool calls optional on create/update agent [LET-5612] (#5545)
Make parallel tool calls optional on create/update agent pydantic
2025-10-24 15:12:11 -07:00
Matthew Zhou
396959da2f feat: Add toggle on llm config for parallel tool calling [LET-5610] (#5542)
* Add parallel tool calling field

* Thread through parallel tool use

* Fern autogen

* Fix send message v2
2025-10-24 15:12:11 -07:00
jnjpng
264de822e5 fix: dispatch callback failing on probe [LET-5606] (#5541)
* probe

* cleanup

* hi

* log

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:12:11 -07:00
Sarah Wooders
305bb8c8f7 feat: inject letta_client and agent_id into local sandbox (#5192) 2025-10-24 15:12:11 -07:00
cthomas
5a475fd1a5 feat: add comprehensive testing for client side tool calling (#5539) 2025-10-24 15:12:11 -07:00
cthomas
69b15d606c feat: support approval requests for parallel tool calls (#5538) 2025-10-24 15:12:11 -07:00
jnjpng
5913730992 fix: ensure messages are in chronological order when backfilling tool call id (#5520)
* base

* base

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:12:11 -07:00
cthomas
181a73c333 feat: handle noop early return case first in agent loop (#5536) 2025-10-24 15:12:11 -07:00
cthomas
0efcf6ed95 feat: support passing around multiple tool returns (#5535) 2025-10-24 15:12:11 -07:00
cthomas
507a83a81b feat: rename is_approval var to is_approval_response for clarity (#5534) 2025-10-24 15:12:11 -07:00
cthomas
51426c9c51 feat: integrate new tool call denials object (#5533) 2025-10-24 15:12:11 -07:00
cthomas
62d5ae1828 feat: separate out hitl cases (#5531) 2025-10-24 15:12:11 -07:00
cthomas
a03263aca2 feat: remove single tool call case in new agent loop (#5504)
* feat: remove single tool call case in new agent loop

* fix hitl test
2025-10-24 15:12:11 -07:00
Ari Webb
deb599f706 archives [LET-4629] (#5485)
archives

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Kian Jones
9ec861606e fix: agent_id copy pasta (#5527)
fix copy pasta
2025-10-24 15:12:11 -07:00
Kian Jones
4bbd760204 feat: add validation to fastapi routes for agent IDs (#5454)
* change my PR to match Caren's

* add path parameter validation for agent id first

* remove old import

* remove old agent_id_pattern pattern

* add example and fix max/min calculation to include hyphen

* fix regex string interpolation

* example deprecated in favour of examples

* openapi autogen

* change template test to expect 422

* fix 422 swallow

* expect 422 or 400

* rewrite  error codes

* fix hallucinated uuid

* tweaked error message test

* print docker logs on failure
2025-10-24 15:12:11 -07:00
cthomas
505c9cff57 feat: add testing for new hitl paths (#5493) 2025-10-24 15:12:11 -07:00
Ari Webb
54123eb7e4 make tags None into empty list [LET-5558] (#5480)
* make tags None into empty list

* remove log

* data.get, instead of straight read

* further fix

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
f98f729218 create or update instead of create [LET-5566] (#5496)
* create or update instead of create

* silence error

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
c672a1c9fc providers changes, no changes to embeddings or llms [LET-4630] (#5474)
providers changes, no changes to embeddings or llms

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
045890531c groups [LET-4632] (#5470)
groups

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
46dc1c7e34 remove try catches [LET-4635] (#5466) 2025-10-24 15:12:11 -07:00
Matthew Zhou
afa0524a71 fix: Fix web search test (#5468)
Fix web search test
2025-10-24 15:12:11 -07:00
Matthew Zhou
fc32db35dc test: Swap to letta agent v1 for agent serialization (#5464)
Swap to letta agent v1
2025-10-24 15:12:11 -07:00
Ari Webb
609294d199 steps [LET-4639] (#5463)
steps

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Matthew Zhou
643ec8fe2f fix: Double write tool call deltas [LET-5545] (#5461)
* Double write tool call deltas

* Fix
2025-10-24 15:12:11 -07:00
Ari Webb
458088a4a2 messages [LET-4636] (#5460)
messages

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
dfba037226 enforce_run_id in v3 agent loop [LET-5542] (#5455)
enforce_run_id in v3 agent loop

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Matthew Zhou
2dae4d33c3 feat: Implement streaming chat completions endpoint [LET-5485] (#5446)
* wip

* Add chat completions router and fix streaming service

* Finish chat completions

* Finish chat completions

* Remove extra print statement

* Run just api

* Don't explicitly throw http exceptions but surface Letta errors

* Remap errors

* Trigger CI

* Add missing Optional import
2025-10-24 15:12:11 -07:00
Ari Webb
714978f5ee handle none value for properties [LET-5537] (#5449)
handle none value for properties

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
967cc3decf move exceptions out of folders and sources [LET-4631] (#5444) 2025-10-24 15:12:11 -07:00
jnjpng
dad7254b1b fix: record run duration to runs table and sync with run_metrics [LET-5525] (#5441)
* base

* helper

* comment

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:12:11 -07:00
Cameron Pfiffer
4a86bf6e4c docs: Improve examples page (#5442)
* Fix VoiceAgent to use run_manager instead of job_manager

VoiceAgent.__init__() was incorrectly using job_manager parameter
when ToolExecutionManager expects run_manager. This was causing
the error: "VoiceAgent.__init__() got an unexpected keyword
argument 'run_manager'".

Changes:
- Update VoiceAgent to accept and use run_manager instead of job_manager
- Update VoiceSleeptimeAgent to accept run_manager parameter
- Update imports to use RunManager instead of JobManager
- Pass run_manager to ToolExecutionManager in VoiceAgent._execute_tool

* docs: Add new examples to documentation

- Introduced "Your First Agent" example to guide users in creating a Letta agent and understanding its memory capabilities.
- Added "Attaching and Detaching Memory Blocks" example to demonstrate dynamic memory management for agents.
- Updated navigation in docs.yml to include links to the new examples.

These additions enhance the learning resources available for users working with Letta agents.
2025-10-24 15:12:11 -07:00
jnjpng
bcfc94846d fix: include run_id and step_id in temporal agent workflow [LET-5387] (#5429)
* base

* update

* fix: temporal agent workflow usage statistics [LET-5516] (#5436)

* base

* clean up comment

* remove import

---------

Co-authored-by: Letta Bot <noreply@letta.com>

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:12:11 -07:00
Matthew Zhou
a36bd1118d fix: Fix send message v2 tests [LET-5505] (#5435)
* wip

* Restore comments

* Remove extra prints
2025-10-24 15:12:11 -07:00
Ari Webb
4431b06881 runs and jobs [LET-4634] (#5427)
runs and jobs

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
9e94c344b8 using uuid and datetime [LET-5508] (#5430)
* using uuid and datetime

* add run_id

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00