Commit Graph

1898 Commits

Author SHA1 Message Date
cthomas
3e17b4289a feat: gracefully handle gemini empty content parts (#5116) 2025-10-07 17:50:48 -07:00
Charles Packer
09b173668a feat(core): rename fetch_webpage to web_fetch (#5110) 2025-10-07 17:50:48 -07:00
cthomas
b7c599ee5b feat: pass gemini content parts back into future requests (#5112)
* feat: pass gemini content parts back into future requests

* fix import
2025-10-07 17:50:48 -07:00
cthomas
f7755d837a feat: add gemini streaming to new agent loop (#5109)
* feat: add gemini streaming to new agent loop

* add google as required dependency

* support storing all content parts

* remove extra google references
2025-10-07 17:50:48 -07:00
cthomas
6b6b82a07a feat: add streaming support to vertex client (#5106) 2025-10-07 17:50:48 -07:00
Sarah Wooders
af2a28b1b1 fix: add schema patching for mcp list tools (#5105) 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
cthomas
7c03288c05 feat: add pagination to agent blocks endpoint (#5087)
* feat: add pagination to agent blocks endpoint

* chore: regenerate API client with pagination parameters

* feat: implement pagination logic in list_blocks endpoint

- Fix list_blocks implementation to use pagination parameters that were already in the route signature
- Add in-memory pagination logic for core memory blocks (sorting, cursor filtering, limit)
- Sort blocks by created_at timestamp with proper asc/desc ordering
- Apply cursor-based pagination with before/after filters
- Apply limit to results
- Regenerate API client code to reflect pagination functionality

* fix: correct sorting logic in list_blocks endpoint

- Fix AttributeError where blocks don't have created_at attribute
- Sort blocks by id instead of created_at (core memory blocks don't have timestamps)
- Maintains consistent pagination behavior while fixing runtime error

* feat: implement database-level pagination for list_blocks endpoint

- Replace inefficient in-memory filtering with proper SQLAlchemy query
- Use BlocksAgents join table to filter blocks by agent_id at database level
- Apply pagination filters (before, after, limit) in SQL query for better performance
- Sort by BlockModel.created_at instead of in-memory sorting
- Add necessary imports: select from sqlalchemy, db_registry from letta.server.db
- Verify agent access before querying blocks

* refactor: move database logic from route to agent manager service layer

- Add list_agent_blocks_async method to AgentManager for proper separation of concerns
- Move SQLAlchemy query logic from REST route to service layer
- Keep routes focused on request/response handling
- Remove unnecessary imports from router (select, db_registry)
- Database pagination logic now properly encapsulated in service layer
2025-10-07 17:50:48 -07:00
cthomas
6e3e45fb2d feat: add pagination to agent groups endpoint (#5089)
feat: add pagination to list_agent_groups endpoint

- Add pagination parameters to list_groups_async method (before, after, limit, ascending)
- Update list_agent_groups endpoint to include pagination parameters (before, after, limit, order, order_by)
- Add proper cursor-based pagination and sorting in SQL query
- Pass pagination parameters from route to underlying service method
- Regenerate API client to reflect pagination parameter changes
2025-10-07 17:50:48 -07:00
cthomas
1b4780fa27 feat: add back async list_groups in agent manager [LET-4597] (#5095)
feat: convert list_groups to async in agent manager

- Add list_groups_async method to AgentManager to replace sync version
- Method filters groups by agent_id using join with GroupsAgents table
- Supports optional manager_type filtering
- Update list_agent_groups endpoint to use new async method
- No functional changes to endpoint behavior or parameters
2025-10-07 17:50:48 -07:00
cthomas
874ac0dd5c feat: add pagination to agent tools endpoint (#5084)
* feat: add pagination to agent tools endpoint

* chore: regenerate API client with pagination parameters

* feat: implement pagination logic in list_agent_tools endpoint

- Update list_attached_tools_async method to support pagination parameters (before, after, limit, ascending)
- Update list_agent_tools route to pass pagination parameters to underlying service method
- Add proper cursor-based pagination and sorting in SQL query

* feat: update default limit for list_agent_tools to 10

* feat: regenerate API client after limit parameter change
2025-10-07 17:50:48 -07:00
cthomas
cb5e89cfa2 feat: add pagination to agent messages endpoint (#5088)
* feat: add pagination to agent messages endpoint

* chore: regenerate API client with pagination parameters

* fix: remove limit fallback and use order parameter for reverse logic
2025-10-07 17:50:48 -07:00
cthomas
d9c7da643a feat: remove redundant docstring for runs steps (#5092) 2025-10-07 17:50:48 -07:00
cthomas
0794a6db69 feat: add pagination to run steps endpoint (#5083)
* feat: add pagination to run steps endpoint

* chore: regenerate API client with pagination parameters
2025-10-07 17:50:48 -07:00
cthomas
af23e6cda1 feat: add pagination to run messages endpoint (#5082)
* feat: add pagination to run messages endpoint

* chore: regenerate API client with pagination parameters
2025-10-07 17:50:48 -07:00
cthomas
e96fd83adf feat: add pagination to list jobs endpoint (#5078)
* feat: add pagination to list jobs endpoint

* chore: regenerate API client with pagination parameters
2025-10-07 17:50:48 -07:00
Shubham Naik
832d6275b9 Deprecate project (#5079)
* feat: deprecate project and template and from_template

* feat: deprecate project and template and from_template

---------

Co-authored-by: Shubham Naik <shub@memgpt.ai>
2025-10-07 17:50:48 -07:00
cthomas
c176835a1b feat: add pagination to list runs endpoint [LET-4580] (#5077)
feat: add pagination to list runs endpoint
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
cthomas
d7b2d3c6ba feat: make agent_ids field as deprecated on list runs [LET-4573] (#5067)
* feat: make agent_ids field as deprecated on list runs

* api sync
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
29515e9a7d feat: Make exa get_contents async [LET-4574] (#5068)
Make exa async
2025-10-07 17:50:48 -07:00
Matthew Zhou
7390edeb00 feat: Add exa for fetch webpage (#5066)
Add exa for fetch webpage
2025-10-07 17:50:48 -07:00
cthomas
976c3bdc31 feat: add feature flag for new agent type (#5062)
feat: add new feature flag for new agent type
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
Matthew Zhou
6c7c12ad0f fix: Remove requires_force_tool_call field so it doesn't show up in documentation (#5054)
Remove internal field so it doesn't show up in documentation
2025-10-07 17:50:48 -07:00
Shubham Naik
74008fb0ed feat: batch block creation [PRO-1422] (#5050)
feat: batch block creation

Co-authored-by: Shubham Naik <shub@memgpt.ai>
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
cthomas
7565fc4a00 feat: remove boot messages for new agent loop (#5048) 2025-10-07 17:50:47 -07:00
cthomas
b0363eb7fd feat: remove force tool call for new agent loop (#5043) 2025-10-07 17:50:47 -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
c465da27e6 feat: always populate run id in letta message load (#5039) 2025-10-07 17:50:47 -07:00
cthomas
67f8e46619 feat: add run id to streamed messages (#5037) 2025-10-07 17:50:47 -07:00
cthomas
6255d59bba chore: sync api (#5038) 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
d3c5d0c330 feat: Add missing import for SimpleOpenAIResponsesStreamingInterface (#5036)
Add missing import
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
2916095e86 feat: use assistant message in runs read path (#5026) 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
cthomas
e248ac27e2 feat: add messages.create_async test for new agent loop (#5024)
feat: add async test for new agent loop
2025-10-07 17:50:47 -07:00
cthomas
2af3130be1 feat: add integration test for new agent loop (#5020) 2025-10-07 17:50:47 -07:00
cthomas
4304a2e2ef feat: integrate simple adapter for non-streaming letta v1 agent (#5017) 2025-10-07 17:50:47 -07:00
cthomas
74cf625f39 feat: add content var to base adapter (#5008) 2025-10-07 17:50:47 -07:00
cthomas
76d1bc8cbc feat: move new streaming adapters into own files (#5001) 2025-10-07 17:50:47 -07:00
Sarah Wooders
5502134e7a fix: don't override callback data if using temporal (#5004) 2025-10-07 17:50:47 -07:00
Kevin Lin
09d9c3ffd4 feat: anthropic tools for claude sonnet 4.5 (#4988)
* add anthropic memory tools

* memory view working

* update memory examples

* tools

* feat: some changes (#5003)

* feat: added the ability to modify and add descriptions on creation

* fix: kill dead code & write into core_tool_executor instead

* fix: use block_manager not agent_manager where possible, also turn the return string errors into raising exceptions

* fix: cleanup, get rid of more return string errors replaced with valueerror, also drop deadcode

---------

Co-authored-by: Charles Packer <packercharles@gmail.com>
2025-10-07 17:50:47 -07:00
cthomas
4173de955d test: add reasoning toggle tests for new agent type (#5000) 2025-10-07 17:50:47 -07:00
cthomas
e5d364d043 fix: test sdk client fixtures (#4997)
* fix: test sdk client fixtures

* make server fixture not async
2025-10-07 17:50:47 -07:00