Commit Graph

210 Commits

Author SHA1 Message Date
Matthew Zhou
74e08f038e feat: Fix race condition with creating archival memories in parallel [LET-4205] (#4464)
* Test archive manager and add race condition handling

* Fix client tests

* Remove bad test
2025-09-08 12:01:35 -07:00
Matthew Zhou
def95050e2 feat: Add ranks to archival memory search [LET-4193] (#4426)
* Add ranks to archival memory search

* Fix test managers

* Fix archival memory test
2025-09-04 13:35:54 -07:00
Matthew Zhou
051a5cde6a feat: Add archival search endpoint [LET-4184] (#4390)
* Add archival search endpoint

* Run fern autogen

* Add de-dupe logic
2025-09-03 10:55:20 -07:00
Shubham Naik
98e8fcdee6 feat: allow list tools by tool type [PRO-870] (#4036)
* feat: allow list tools by tool type

* chore: update list

* chore: respond to comments

* chore: refactor tools hella

* Add tests to managers

* chore: branch

---------

Co-authored-by: Shubham Naik <shub@memgpt.ai>
Co-authored-by: Matt Zhou <mattzh1314@gmail.com>
2025-09-02 15:53:36 -07:00
Matthew Zhou
598b62462c fix: Fix test managers (#4310)
* Fix test managers

* Mock
2025-08-29 13:03:06 -07:00
Kian Jones
fecf6decfb chore: migrate to ruff (#4305)
* base requirements

* autofix

* Configure ruff for Python linting and formatting

- Set up minimal ruff configuration with basic checks (E, W, F, I)
- Add temporary ignores for common issues during migration
- Configure pre-commit hooks to use ruff with pass_filenames
- This enables gradual migration from black to ruff

* Delete sdj

* autofixed only

* migrate lint action

* more autofixed

* more fixes

* change precommit

* try changing the hook

* try this stuff
2025-08-29 11:11:19 -07:00
Matthew Zhou
c1f8c48818 feat: Support arbitrary string tagging filtering [LET-3467] (#4285)
* Finish tagging

* Add comprehensive tags functionality

* Add fern autogen

* Create passage tags table

* Add indices

* Add comments explaining dual storage

* Fix alembic heads

* Fix alembic

---------

Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
2025-08-28 16:57:36 -07:00
cthomas
2d19903252 feat: add new modify approvals api (#4288)
* feat: add new modify approvals api

* remove path params override
2025-08-28 16:45:07 -07:00
cthomas
e3d3bc09eb feat: add new default_requires_approval flag on tools (#4287) 2025-08-28 15:38:59 -07:00
Matthew Zhou
d797296032 feat: Support basic upload/querying on tpuf [LET-3465] (#4255)
* wip implementing turbopuffer

* Move imports up

* Add type of archive

* Integrate turbopuffer functionality

* Debug turbopuffer tests failing

* Fix turbopuffer

* Run fern

* Fix multiple heads
2025-08-28 10:39:16 -07:00
Matthew Zhou
13d8eae9ef chore: Move environment to settings [LET-4080] (#4265)
Move environment to settings
2025-08-27 14:52:35 -07:00
cthomas
436706c410 fix: test managers failure on main [LET-4061] (#4243)
fix: test managers failure on main
2025-08-27 10:11:33 -07:00
Sarah Wooders
250d8b8006 feat: add cloud template fields to blocks/groups/agents [LET-3979]
* commit

* fix tests

* add routes

* remove old fields

* remove entity from group

* generate, migrate

* update

* keep from_template, etc.

* keep block fields

* final

* generate

* pass tests

* generate

* keep defaults

---------

Co-authored-by: jin <jin@letta.com>
2025-08-26 23:17:06 -07:00
Andy Li
ff718d8c40 feat: uv migration (#3493)
* uv migration

smaller runners, freeze test runs, remove dev, ruff,hatchling, previw,
poetry, generates wheel, installs wheel, docker

* fix tests and dependency groups

* test fixes

* test fixing and main

* resolve merge conflict

* dev + test dependency group

* Test

* trigger CI

* trigger CI

* add debugging info

* trigger CI

* uv for reusable and sdk preview

* resolve mc and reformat black

* staged-api

* mypy

* fix fern

* prod Dockerfile

* model sweep, and project.toml and uvlock

* --group test -> --extra dev

* remove redundant --extra dev and rename tests to dev

* sdk backwards compat install sqlite

* install sqlite group for sdk-backwards-compat

* install uv on gh runner for cloud-api-integration-tests

* stage+publish

* pytest asyncio

* bug causing pytest package to get removed

* try to fix async event loop issues

* migrate to --with google-cloud-secret-manager

---------

Co-authored-by: Kian Jones <kian@letta.com>
2025-08-26 18:11:09 -07:00
Kian Jones
82495b68a3 chore(ci): Add uv support and use for unit tests (#4127)
* cherrypick just relevant commits?

* make work with poetry

* update poetry?

* regen?

* change tests and dev to dependency groups instead of optional extras

* Fix Poetry/UV compatibility issues

- Fix sqlite-vec dependency: Remove optional flag from Poetry section to match main deps
- Regenerate poetry.lock to sync with pyproject.toml changes
- Test both package managers successfully:
  - Poetry: `poetry install --with dev --with test -E postgres -E external-tools -E cloud-tool-sandbox`
  - UV: `uv sync --group dev --group test --extra postgres --extra external-tools --extra cloud-tool-sandbox`

Resolves Poetry lock sync errors and ensures sqlite-vec is available for tests.

🤖 Generated with [Claude Code](https://claude.ai/code)

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

* more robust pip install

* Fix fern SDK wheel installation in CI workflow

Replace unreliable command substitution with proper error handling:
- Check if directory exists before attempting to find wheels
- Store wheel file path in variable to avoid empty arguments
- Provide clear error messages when directory/wheels are missing
- Prevents "required arguments were not provided" error in uv pip install

Fixes: error: the following required arguments were not provided: <PACKAGE>

🤖 Generated with [Claude Code](https://claude.ai/code)

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

* debugging

* trigger CI

* ls

* revert whl installation to -e

* programmatic HIT version insertion

* version templating properly

* set var properly

* labelling

* remove version insertion

* ?

* try using sed '2r /dev/stdin'

* version

* try again smh

* not trigger on poetry version

* only add once

* filter only for project not poetry

* hand re-construct the file

* save tail?

* fix docker command

* please please please

* rename test -> tests

* update poetry and rename group to -E

* move async into tests extra and regen lock files and add sqlite extra

* remove loading cached venv from cloud api integration

* add uv dependency to CI runners

* test removing the custom event loop

* regen poetry.lock and try to fix async tests

* wrap async pg exception and event loop tweak in plugins

* remove event loop from plugins test and remove caching from cloud-api-integration-test

* migrate all tests away from event loop for pytest-asyncio

* pin firecrawl

* pin e2b

* take claude's suggestion

* deeper down the claude rabbit hole

* increase timeout for httpbin.org

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-26 11:51:31 -07:00
Matthew Zhou
1be8b89031 feat: Support override tool functionality to agent file v2 (#4092) 2025-08-21 16:58:19 -07:00
Matthew Zhou
6010331064 feat: Make embedding async (#4091) 2025-08-21 16:52:23 -07:00
Matthew Zhou
a07c47b5b3 fix: Fix bugs with exporting/importing agents with files (#4089) 2025-08-21 16:23:37 -07:00
Matthew Zhou
a4860eb72d feat: Add endpoint to list files attached to an agent (#4082) 2025-08-21 13:57:39 -07:00
Kian Jones
1cb4d679ca fix(ci): test_managers missing uuid import (#4049) 2025-08-20 11:52:43 -07:00
Matthew Zhou
8abbdd3622 feat: Fix test managers (#4024) 2025-08-19 15:26:42 -07:00
Sarah Wooders
891da984a6 fix: fix various ease of use problems (#3934)
Co-authored-by: Matt Zhou <mattzh1314@gmail.com>
2025-08-15 00:07:12 -07:00
jnjpng
0179901e79 feat: record step metrics to table
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-13 11:29:18 -07:00
jnjpng
93e41bbf0a fix: delete associated mcp oauth sessions on delete and link existing mcp oauth sessions on create
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-12 15:32:33 -07:00
Matthew Zhou
617ec9e87b feat: Add comprehensive error tracking to steps table (#3765) 2025-08-06 20:19:29 -07:00
Kevin Lin
bba9753e1c fix: update default include_base_tool_rules to None (#3762)
Co-authored-by: Matthew Zhou <mattzh1314@gmail.com>
2025-08-06 15:58:29 -07:00
Andy Li
ca6f474c4e feat: track metrics for runs in db 2025-08-06 15:46:50 -07:00
Kevin Lin
ec04ca99f7 feat: exclude stronger models from default base tool rules (#3703)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-08-05 20:33:05 +00:00
cthomas
b4810633af chore: deprecate orm enum file (#3724) 2025-08-04 11:59:55 -07:00
Matthew Zhou
10f6f1d247 feat: Implement archival sharing (#3689) 2025-08-01 23:34:49 -07:00
Sarah Wooders
2823d1a84e feat: change default agent type to memgpt_v2_agent (#3624) 2025-07-31 16:14:13 -07:00
Andy Li
73e74270f4 feat: modal sandbox 2025-07-30 11:25:40 -07:00
Matthew Zhou
2f87cd4393 feat: Polishing open files tools (#3575)
Co-authored-by: Charles Packer <packercharles@gmail.com>
Co-authored-by: Shubham Naik <shub@letta.com>
Co-authored-by: Shubham Naik <shub@memgpt.ai>
Co-authored-by: cthomas <caren@letta.com>
Co-authored-by: jnjpng <jin@letta.com>
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
Co-authored-by: Cameron Pfiffer <cameron@pfiffer.org>
Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
Co-authored-by: Kian Jones <kian@Kians-MacBook-Pro.local>
2025-07-29 15:46:51 -07:00
Kian Jones
064951bfe6 fix(ci): Flaky test fix (#3629) 2025-07-29 14:58:52 -07:00
jnjpng
04511d1ffc feat: allow mcp authentication overrides per agent (#3318)
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-07-28 18:20:58 -07:00
Matthew Zhou
d77eb1230f feat: Add ability to disable reasoning (#3594) 2025-07-28 15:30:10 -07:00
jnjpng
aa30da9169 fix: test_agent_serialization_v2.py and use bulk fetch when fetching mcp servers
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-07-25 18:13:05 +00:00
jnjpng
df738ba34a feat: support mcp server export/import with agent files
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-07-24 18:17:08 -07:00
Matthew Zhou
99af0039fc fix: Fix test managers state transition tests (#3551) 2025-07-24 15:14:00 -07:00
Matthew Zhou
d629f47d75 fix: Fix state transitions for file processing (#3541) 2025-07-24 13:48:08 -07:00
Kian Jones
fc891cc29f fix(ci): test_managers test was flaky on SQLite (#3520) 2025-07-24 10:52:51 -07:00
Kian Jones
ae19e6b088 feat: Add support for vectors in SQLite (#3505) 2025-07-23 16:09:06 -07:00
Matthew Zhou
d74db3e89a feat: Add transition state validation (#3509) 2025-07-23 14:08:41 -07:00
Matthew Zhou
fcb03be382 feat: Bulk remove from context window on source detach (#3495) 2025-07-22 17:22:51 -07:00
Matthew Zhou
84b27d6a07 feat: Improve attach/detach missing file tools performance (#3486) 2025-07-22 15:35:42 -07:00
Matthew Zhou
e62ddf8355 feat: Add per-agent file management controls with context-aware defaults (#3467) 2025-07-22 10:43:37 -07:00
Matthew Zhou
3cf9580d9b feat: Add bulk source upsert mechanism (#3456) 2025-07-21 14:52:20 -07:00
Matthew Zhou
45f09b1dfb feat: Reduce database calls in import/export agent file (#3455) 2025-07-21 11:27:21 -07:00
cthomas
4895a58799 fix: remove fk constraint test (#3444) 2025-07-20 22:36:03 -07:00
cthomas
9392adc8f5 feat: skip job load in step logging (#3433) 2025-07-20 14:41:40 -07:00