Commit Graph

6135 Commits

Author SHA1 Message Date
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
Matthew Zhou
09ba075cfa feat: Modify embedding strategy to first halve the batch size v.s. the batc… [LET-5510] (#5434)
Modify embedding strategy to first halve the batch size v.s. the batch size
2025-10-24 15:12:11 -07:00
Matthew Zhou
0543a60538 chore: Restore chunk size for openai embeddings (#5431)
Restore chunk size
2025-10-24 15:12:11 -07:00
Cameron Pfiffer
936be41e8d Rename POSTHOG_API_KEY to POSTHOG_KEY (#5428)
Update environment variable name from POSTHOG_API_KEY to POSTHOG_KEY in GitHub workflow and Fern docs configuration.
2025-10-24 15:12:11 -07:00
Ari Webb
624c591820 Ari/let 5486 badrequesterror error code 400 error message requested [LET-5486] (#5422)
* letta agent v2 throw exception not error

* warning instead of error or exception

* decrease min_chunk_size

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-10-24 15:12:11 -07:00
Ari Webb
6904199cae rely on user_manager and organization_manager for error throwing [LET-4637] (#5420)
rely on user_manager and organization_manager for error throwing

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