Commit Graph

6309 Commits

Author SHA1 Message Date
Kian Jones
cdde791b11 chore: publish nightly from closed source (#5892)
publish nightly from closed source
2025-11-13 15:36:28 -08:00
Kian Jones
193c4f7c4a chore: continued logging cleanup and bugfixes (#5882)
* gracefully handle mcp error, runs/temporal error, and otel exporter bug fixes

* move error handling to managers

* remove migrated error handling from routers

* move logger.error calls to logger.warnings
2025-11-13 15:36:20 -08:00
Christina Tong
381ca5bde8 chore: migrate built in tools integration test to sdk v1 [LET-5980] (#5883)
* chore: migrate built in tools integration test to sdk v1

* fix

* remove trialing commas
2025-11-13 15:36:20 -08:00
Christina Tong
255fdfecf2 feat: migrate integration_test_human_in_the_loop to sdk v1 [LET-5979] (#5878)
* feat: migrate integration_test_human_in_the_loop to sdk v1

* update modify

* parallel tool calling fixes

* fix

* updat aparallel tool calling

* remove regex matching
2025-11-13 15:36:20 -08:00
Kian Jones
185031882a fix: prevent huge otel spans causing pods to be OOMKilled (#5871)
* otel fix

* add unit test

* log the resource id

* iterables support and fix unittest

* fix some edge cases
2025-11-13 15:36:20 -08:00
Charles Packer
95f5d12b9f docs: add parallel tool calling docs (#5876)
* docs: add parallel tool calling docs

* docs: forgot the yaml

* fix: update
2025-11-13 15:36:20 -08:00
Sarah Wooders
cfeed463a9 Revert "feat: provider-specific model configuration " (#5873)
Revert "feat: provider-specific model configuration  (#5774)"

This reverts commit 34a334949a3ef72cd49ff0ca3da9e85d16daa57c.
2025-11-13 15:36:20 -08:00
Matthew Zhou
d3ab51b822 feat: Support parallel tool calling streaming for responses OpenAI [LET-5977] (#5867) 2025-11-13 15:36:20 -08:00
Charles Packer
60ed435727 fix(core): patch summarizer on letta_agent_v3.py (letta_agent_v1 loop) (#5863)
* fix(core): patch summarizer

* fix: misc fixes

* refactor: remove fallbacks, instead throw a warning

* refactor: pull out magic number to constant
2025-11-13 15:36:20 -08:00
Sarah Wooders
1f05872b10 fix: patch attaching archival tools (#5869) 2025-11-13 15:36:20 -08:00
Cameron
e8eb2d53e9 docs: fix multimodal content order in examples (#5843)
Updates multimodal examples to place text content before image content,
which prevents request failures.

Changes:
- Reordered content array in all SDK examples to have text first, then image
- Fixed TypeScript mediaType casing (media_type -> mediaType)
- Applied to both URL-based and base64-encoded image examples

🐾 Generated with [Letta Code](https://letta.com)

Co-authored-by: Letta <noreply@letta.com>
2025-11-13 15:36:18 -08:00
Matthew Zhou
ff81f4153b feat: Support parallel tool calling streaming for OpenAI chat completions [LET-4594] (#5865)
* Finish chat completions parallel tool calling

* Undo comments

* Add comments

* Remove test file
2025-11-13 15:36:14 -08:00
Christina Tong
599adb4c26 chore: migrate integration test send message to v1 sdk [LET-5940] (#5794)
* chore: migrate integration test send message to v1 sdk

* new folder

* set up new workflows for integration test

* remove file

* update stainless workflow

* fix import err

* add letta-client version logging

* fix: SDK cache miss should fall back to PyPI instead of failing

When the Stainless SDK cache is not available, the workflow should
fall back to installing the published SDK from PyPI rather than
failing the CI build. The workflow already has this fallback logic
in the "Install Stainless SDK" step, but the "Check SDK cache"
step was failing before it could reach that point.

This change converts the hard failure (exit 1) to a warning message,
allowing the workflow to continue and use the PyPI fallback.

Co-Authored-By: Claude <noreply@anthropic.com>

* force upgrade

* remove frozen

* install before running

* add no sync

* use upgrade instead of upgrade package

* update

* fix llm config

* fix

* update

* update path

* update workflow

* see installed version

* add fallback

* update

* fix mini

* lettaping

* fix: handle o1 token streaming and LettaPing step_id validation

- Skip LettaPing messages in step_id validation (they don't have step_id)
- Move o1/o3/o4 token streaming check before general assertion in assert_tool_call_response
- o1 reasoning models omit AssistantMessage in token streaming mode (6 messages instead of 7)

---------

Co-authored-by: Kian Jones <kian@letta.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-11-13 15:36:14 -08:00
Sarah Wooders
aaa12a393c feat: provider-specific model configuration (#5774)
* initial code updates

* add models

* cleanup

* support overriding

* add apis

* cleanup reasoning interfaces to match models

* update schemas

* update apis

* add new field

* remove parallel

* various fixes

* modify schemas

* fix

* fix

* make model optional

* undo model schema change

* update schemas

* update schemas

* format

* fix tests

* attempt to patch web

* fic docs

* change schemas

* update error

* fix tests

* delete tests

* clean up undefined matching conditional

---------

Co-authored-by: jnjpng <jin@letta.com>
Co-authored-by: Letta Bot <noreply@letta.com>
2025-11-13 15:36:14 -08:00
Ari Webb
48cc73175b feat: parallel tool calling for openai non streaming [LET-4593] (#5773)
* first hack

* clean up

* first implementation working

* revert package-lock

* remove openai test

* error throw

* typo

* Update integration_test_send_message_v2.py

* Update integration_test_send_message_v2.py

* refine test

* Only make changes for openai non streaming

* Add tests

---------

Co-authored-by: Ari Webb <ari@letta.com>
Co-authored-by: Matt Zhou <mattzh1314@gmail.com>
2025-11-13 15:36:14 -08:00
Ari Webb
7cc9471f40 chore: downgrade log to info instead of error (#5858)
* downgrade log to warning instead of error

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:14 -08:00
Charles Packer
f6e6c85c46 fix(core): patch counting bug (#5857) 2025-11-13 15:36:14 -08:00
Sarah Wooders
6654473514 fix: handle block race conditions (#5819) 2025-11-13 15:36:14 -08:00
Shubham Naik
95816b9b28 Shub/let 5962 add perfomranceduration search to runs [LET-5962] (#5850)
* feat: add perfomrance/search to list internal runs

* chore: add tests

* chore: fix ui

* feat: support UI for this

* chore: update tests

* chore: update types

---------

Co-authored-by: Shubham Naik <shub@memgpt.ai>
2025-11-13 15:36:14 -08:00
Sarah Wooders
d109bab587 feat: handle overloaded errors [LET-5969] (#5856)
feat: handle overloaded errors
2025-11-13 15:36:14 -08:00
jnjpng
bd61ba85dd chore: update stainless mcp config (#5830)
* base

* try

* client no token

* session

* try tests

* fix mcp_servers_test

* remove deprecated test

* remove reference to mcp_serverS

* use fastmcp for mocking

* uncomment

---------

Co-authored-by: Letta Bot <noreply@letta.com>
Co-authored-by: Ari Webb <ari@letta.com>
Co-authored-by: Ari Webb <arijwebb@gmail.com>
2025-11-13 15:36:14 -08:00
Charles Packer
e4c864f5a5 docs: point to new leaderboard site (#5854) 2025-11-13 15:36:14 -08:00
Ari Webb
015a209f40 fix: prevent cross tenancy attaching sources
patch

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:14 -08:00
Kian Jones
ff5f8d9a85 fix: on error send (#5851)
on error send
2025-11-13 15:36:14 -08:00
Sarah Wooders
0c454d6eaf fix: patch unknown error type handling for agent (#5848) 2025-11-13 15:36:14 -08:00
Christina Tong
9524d7937c fix: add project id during run creation [LET-5960] (#5846) 2025-11-13 15:36:14 -08:00
Sarah Wooders
f61a4b8319 Revert "feat: add input data to pydantic validation error logging" (#5847)
Revert "feat: add input data to pydantic validation error logging (#5748)"

This reverts commit 0a61c0c2c1fa0e09867120af93f17ab6304a795f.
2025-11-13 15:36:14 -08:00
Sarah Wooders
24a14490d8 fix: add more error logging and tests for streaming LLM errors (#5844) 2025-11-13 15:36:14 -08:00
Sarah Wooders
29c4ed20eb fix: patch sleeptime integration test (#5845) 2025-11-13 15:36:14 -08:00
Kian Jones
0036976448 feat: add input data to pydantic validation error logging (#5748)
* idk letta coded lemme review in gh

* remove unused imports
2025-11-13 15:36:14 -08:00
Kevin Lin
f65eaa10c1 feat: Remove view from anthropic tool (#5832)
remove view from anthropic tool
2025-11-13 15:36:14 -08:00
Ari Webb
f699eda6c9 fix: add agent exists check [LET-5954] (#5823)
add agent exists check to prevent reading from different org

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:14 -08:00
Ari Webb
9d5fdc6de7 feat: migrate integration test mcp serverspy to use 1.0 client [LET-5945] (#5814)
* new test first hack, should still break

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:14 -08:00
Cameron
da2e8aee8c docs: move Human-in-the-Loop out of experimental section (#5828)
Moves Human-in-the-Loop documentation from the Experimental section
to the Tool Use section, as it is a stable feature for tool approval
workflows.

Changes:
- Moved Human-in-the-Loop page to Tool Use section after Tool Variables
- Removed from Experimental section in docs navigation
- Removed experimental warning from human_in_the_loop.mdx

Human-in-the-Loop is now positioned alongside other tool-related
features, making it easier for users to discover when implementing
tool approval workflows.

🐾 Generated with [Letta Code](https://letta.com)

Co-authored-by: Letta <noreply@letta.com>
2025-11-13 15:36:12 -08:00
jnjpng
4a35148a60 fix: duplicate LettaStreamingResponse in fern override (#5824)
base

Co-authored-by: Letta Bot <noreply@letta.com>
2025-11-13 15:36:08 -08:00
Shubham Naik
90091d8383 feat: allow templates to preserve agent reconcilation [LET-5935] (#5788)
* feat: allow templates to preserve agent reconcilation

* chore: udpate routes

---------

Co-authored-by: Shubham Naik <shub@memgpt.ai>
2025-11-13 15:36:08 -08:00
Ari Webb
66ccc1d4df chore: silence exa search failed [LET-5952] (#5815)
silence exa search failed

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:08 -08:00
Cameron
a75a825e60 docs: fix broken link to example prompts (#5813)
Fix broken link in prompts documentation that was pointing to
/prompts instead of /letta/prompts in the GitHub repository.

Reported by user feedback at docs.letta.com/prompts
2025-11-13 15:36:06 -08:00
jnjpng
a85abe71b7 feat: add streaming response type to messages stream for stainless [LET-5949] (#5807)
* base

* generate

* fix

* update

* done

* yaml

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-11-13 15:36:02 -08:00
Sarah Wooders
f37197f00d fix: undo recent changes to handle matching (#5808) 2025-11-13 15:36:02 -08:00
Sarah Wooders
655c9489d8 fix: re-raise the error and send [DONE] for known LLM errors in stream (#5805) 2025-11-13 15:36:02 -08:00
Sarah Wooders
7f128544d7 fix: patch handle matching for LLMs (#5801) 2025-11-13 15:36:02 -08:00
jnjpng
678167720f fix: toggle off stainless pagination for list endpoints that require id field [LET-5948] (#5804)
* base

* update stainless

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-11-13 15:36:02 -08:00
Ari Webb
0596a66c04 feat: new stainless sdk tests working locally [LET-5939] (#5793)
* new stainless sdk tests working locally

* Update conftest.py

* Update conftest.py

---------

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:36:02 -08:00
Sarah Wooders
a566900533 chore: add back test_server.py (#5783) 2025-11-13 15:36:00 -08:00
Kian Jones
3f78c93be5 chore: add new primitive types and replace id_prefixes everywhere (#5749)
add new primitive types and replace id_prefixes everywhere
2025-11-13 15:35:41 -08:00
Kian Jones
f0de0b5812 feat: stainless sdk generation in CI [LET-5908] (#5768)
* letta coded

* migrate to stainless from fern

* revert core workflows

* fix if statement

* fix typo

* run on self-hosted ci runners

* add empty check

* change file

* fix upstream renaming and special character escaping

* fix letta-code with opus

* remove random client type import

* remove env localhost

* remove fialing tests

* ignore ts for now

* fix caching maybe

* tar.gz -> whl

* retain name metadata

* don't build on cache hit

* add sdk_v1 tests
2025-11-13 15:35:41 -08:00
Ari Webb
9cab61fe3f feat: create sdk_v1 test folder [LET-5937] (#5790)
create sdk_v1 test folder

Co-authored-by: Ari Webb <ari@letta.com>
2025-11-13 15:35:41 -08:00
Charles Packer
c17a06ebb2 docs: pricing docs fix (#5791)
* fix: patch pricing

* fix: point out byok

* fix: updated

* fix: another boost
2025-11-13 15:35:39 -08:00
Kian Jones
60226ad203 fix: missing cursor kwargs (#5763)
* accept cursor logic

* add test
2025-11-13 15:35:34 -08:00