Commit Graph

1921 Commits

Author SHA1 Message Date
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
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
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
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
8cba4a416d chore: Add opus 4-1 and sonnet 4-5 to message v2 testing [LET-5481] (#5406)
Add opus 4-1 and sonnet 4-5 to message v2 testing
2025-10-24 15:11:31 -07:00
cthomas
cd4553f3e6 feat: enable sleeptime on new agent loop (#5405) 2025-10-24 15:11:31 -07:00
cthomas
5c35be42fb fix: increase delay for responses api to fix flake (#5391) 2025-10-24 15:11:31 -07:00
Ari Webb
1d3e2d14d6 use LLMError instead of ValueError (#5389)
Co-authored-by: Ari Webb <ariwebb@Aris-MacBook-Pro.local>
2025-10-24 15:11:31 -07:00
cthomas
15a4fe3228 test: revert comments (#5384) 2025-10-24 15:11:31 -07:00
Matthew Zhou
25f140bd13 fix: Fix anthropic step parallel tool calling and add tests [LET-5438] (#5379)
* Fix anthropic step parallel tool calling and add tests

* Remove print statements
2025-10-24 15:11:31 -07:00
Matthew Zhou
b466cfdb1f fix: Fix parallel tool calling test for streaming (#5376)
Fix parallel tool calling test
2025-10-24 15:11:31 -07:00
Matthew Zhou
b205acf1f1 fix: Fix send message tests v2 (#5374)
Fix send message tests
2025-10-24 15:11:31 -07:00
Matthew Zhou
10a3d86507 test: Add basic parallel tool calling test to send_message v2 for anthropic [LET-5362] (#5355)
Add basic parallel tool calling test to send_message v2 for anthropic
2025-10-24 15:11:31 -07:00
cthomas
128afeb587 feat: fix cancellation bugs and add testing (#5353) 2025-10-24 15:11:31 -07:00
jnjpng
31ba71de15 chore: skip invalid schema tool attach test (#5350)
skip

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:11:31 -07:00
Matthew Zhou
bb8a7889e0 feat: Add parallel tool call streaming for anthropic [LET-4601] (#5225)
* wip

* Fix parallel tool calling interface

* wip

* wip adapt using id field

* Integrate new multi tool return schemas into parallel tool calling

* Remove example script

* Reset changes to llm stream adapter since old agent loop should not enable parallel tool calling

* Clean up fallback logic for extracting tool calls

* Remove redundant check

* Simplify logic

* Clean up logic in handle ai response

* Fix tests

* Write anthropic dict conversion to be back compatible

* wip

* Double write tool call id for legacy reasons

* Fix override args failures

* Patch for approvals

* Revert comments

* Remove extraneous prints
2025-10-24 15:11:31 -07:00
cthomas
fe91987749 feat: extend approvals validation to parallel tool calling (#5333) 2025-10-24 15:11:31 -07:00
cthomas
3128b5e126 feat: add client side tool calling support (#5313) 2025-10-24 15:11:31 -07:00
Matthew Zhou
bbc3de5845 test: Add custom tests for streaming on test_sdk_client (#5315)
Add new test
2025-10-24 15:11:31 -07:00
Matthew Zhou
b06619c290 feat: Return nested tool returns (#5305)
* Adapt to support multiple tool returns

* remove unused create_tool_return_message

* Add explanation to otid index

* Simplify explicit tool returns

* Simplify function return to only return single object
2025-10-24 15:11:31 -07:00
jnjpng
b3fef4b5a8 feat: double write to all encrypted columns and decrypt on read (#5265)
* base

* use secret field

* fix

* auth code

* stage publish

* decouple backfill

* revert uncomment

* providers and agent vars

* mcp

* mcp

* stage and publish

* fix oauth

* double encrypt

* sandbox

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:11:31 -07:00
cthomas
ed74c595a6 feat: ensure trailing thinking block doesn't break token counter (#5271)
* repro pr for claude 4-5 only returns reasoning

* add new test instead of overloading existing one

* update test

* filter out trailing thinking message to patch context bug
2025-10-09 13:20:53 -07:00
Shubham Naik
7eae22f77c feat: allow suers to test their own key [LET-5312] (#5257)
* feat: allow suers to test their own key

* chore: add unit test

---------

Co-authored-by: Shubham Naik <shub@memgpt.ai>
2025-10-09 13:20:53 -07:00
Matthew Zhou
609e63cb12 feat: Adjust message conversion to support multiple tool calls [LET-5336] (#5270)
* Adjust message conversion

* Make collection logic cleaner
2025-10-09 13:20:52 -07:00
cthomas
9cb5156ac7 chore: sync 0.12.0 version (#3023)
Co-authored-by: Matthew Zhou <mattzh1314@gmail.com>
Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-10-08 16:10:51 -07:00
Caren Thomas
a5354d7534 chore: bump version 0.11.8 2025-10-07 18:31:26 -07:00
Shelley Pham
346db5ce60 feat: add status to runs api [PRO-1529] (#5214) 2025-10-07 17:50:50 -07:00
Matthew Zhou
126e51d584 feat: Support returning multiple tool returns [LET-4678] (#5202)
* Support returning multiple tool returns

* Fix test run managers
2025-10-07 17:50:50 -07:00
Sarah Wooders
324933edd3 feat: exception handling middleware for sandbox_configs + identities + tools (#5143) 2025-10-07 17:50:50 -07:00
Sarah Wooders
307c85ca9a fix: patch summarizer tests (#5196) 2025-10-07 17:50:50 -07:00
cthomas
a7fa6bb33f feat: amend hitl tests for new agent loop (#5176) 2025-10-07 17:50:49 -07:00
Sarah Wooders
7aff9aa659 feat: error handling for rest api for agents + blocks [LET-4625] (#5142) 2025-10-07 17:50:49 -07:00
Sarah Wooders
e07a589796 chore: rm composio (#5151) 2025-10-07 17:50:49 -07:00
Charles Packer
10a301cc4b fix: use new agent loop in hitl test (#5145)
* feat: rewrite hitl test with new agent loop

* fix: codex changes (#5144)

---------

Co-authored-by: Caren Thomas <carenthomas@gmail.com>
2025-10-07 17:50:49 -07:00
cthomas
2d8e3efd9e feat: update reasoning toggle test (#5136) 2025-10-07 17:50:49 -07:00
cthomas
89321ff29a feat: handle flaky reasoning in v2 tests (#5133) 2025-10-07 17:50:49 -07:00
cthomas
93d9ff01c6 feat: add gemini native thinking (#5124)
* feat: add gemini native thinking

* update test

* revert comments
2025-10-07 17:50:49 -07:00
Sarah Wooders
eb95c1330e fix: patch summarizer for gpt-5 [LET-4562] (#5040) 2025-10-07 17:50:48 -07:00
Sarah Wooders
ef07e03ee3 feat: add run_id to input messages and step_id to messages (#5099) 2025-10-07 17:50:48 -07:00
Sarah Wooders
7b73b25a95 fix: fix mcp for complex schemas and add tests (#5063) 2025-10-07 17:50:48 -07:00
Matthew Zhou
b5e848ff18 feat: Implement child tool rules args override [LET-4570] (#5060)
* Implement child tool rules args override

* Add zod types

* Run fern autogen and put ToolCallNode in new field

* Fix test_tool_rule_solver.py

* Fix types

* Fix types again

* Add tests to tool rule solver
2025-10-07 17:50:48 -07:00
Matthew Zhou
803b837c64 feat: Support pre-filling arguments on InitToolRule [LET-4569] (#5057)
* Add args

* Add testing to tool rule solver

* Add live integration tests for args prefilling

* Add args override
2025-10-07 17:50:48 -07:00
cthomas
a3545110cf feat: add full responses api support in new agent loop (#5051)
* feat: add full responses api support in new agent loop

* update matrix in workflow

* relax check for reasoning messages for high effort gpt 5

* fix indent

* one more relax
2025-10-07 17:50:48 -07:00
cthomas
ad42c886b7 feat: add new agent loop tests to ci (#5049) 2025-10-07 17:50:48 -07:00
Matthew Zhou
df5c997da0 feat: Enable dynamic toggling of tool choice in v3 agent loop for OpenAI [LET-4564] (#5042)
* Add subsequent flag

* Finish integrating constrained/unconstrained toggling on v3 agent loop

* Update tests to run on v3

* Run lint
2025-10-07 17:50:47 -07:00
cthomas
f235dfb356 feat: add tool call test for new agent loop (#5034) 2025-10-07 17:50:47 -07:00
Matthew Zhou
bc2218b0ca feat: Add should_force_tool_call to tool rule solver (#5032)
Add  to tool rule solver
2025-10-07 17:50:47 -07:00
cthomas
cd900a6f4d feat: check run completion in send message tests (#5030) 2025-10-07 17:50:47 -07:00
cthomas
2d36002fc5 feat: add background mode test for new agent loop (#5025) 2025-10-07 17:50:47 -07:00