Commit Graph

50 Commits

Author SHA1 Message Date
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
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
Sarah Wooders
f4740b1388 chore: remove legacy embeddings (#3846) 2025-08-12 15:11:09 -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
73e74270f4 feat: modal sandbox 2025-07-30 11:25:40 -07:00
Andy Li
58081e3cea feat: support for providers 2025-07-22 16:09:50 -07:00
Matthew Zhou
a3c054bc92 feat: Ungate file upload for simple MIME types even without Mistral API key (#2898) 2025-06-18 15:11:30 -07:00
Matthew Zhou
e9ee2b0766 feat: Add errors when tool call violates tool rules (#2766) 2025-06-11 17:12:39 -07:00
cthomas
a190107afd fix: tool return message packing in stream (#2586) 2025-06-02 13:52:38 -07:00
Andy Li
275b75901d chore: cleanup (#2480) 2025-05-29 10:40:41 -07:00
cthomas
43cc87b3b7 feat(asyncify): migrate run tools (#2496) 2025-05-28 14:25:17 -07:00
cthomas
b3e021616b feat(asyncify): migrate list steps (#2418) 2025-05-24 12:06:04 -07:00
cthomas
d1b0756657 feat(asyncify): list model stragglers (#2362) 2025-05-23 00:42:05 -07:00
Sarah Wooders
e5e4ed5111 chore: move context window estimate to agent_manager for full async (#2354) 2025-05-22 20:30:41 -07:00
Sarah Wooders
9fad8487db feat(asyncify): migrate sources to async (#2332) 2025-05-22 19:39:44 -07:00
Matthew Zhou
917821a735 refactor: Deprecate local client (#2344) 2025-05-22 18:57:14 -07:00
Matthew Zhou
6148325da1 feat: Concurrently gather llm models in /models endpoint (#2288) 2025-05-21 11:19:13 -07:00
cthomas
1325cacbfe feat(asyncify): migrate list messages (#2272) 2025-05-20 16:52:11 -07:00
Andy Li
a78abc610e feat: track llm provider traces and tracking steps in async agent loop (#2219) 2025-05-19 15:50:56 -07:00
Andy Li
600ccb35e7 feat: async db client (#2076) 2025-05-12 17:15:14 -07:00
cthomas
db6982a4bc feat: add provider_category field to distinguish byok (#2038) 2025-05-06 17:31:36 -07:00
cthomas
18db9b9509 feat: byok 2.0 (#1963) 2025-04-30 21:26:50 -07:00
Matthew Zhou
59aefc322a feat: Create local sandbox config from env vars for OSS users (#1910) 2025-04-28 13:01:38 -07:00
cthomas
5d8d0e31e2 feat: stop creating new message for system prompt changes (#1559)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-04-08 10:25:43 -07:00
cthomas
aef866ef3d feat: more robust tools setup in agent creation (#1605) 2025-04-07 20:15:16 -07:00
Matthew Zhou
227b76fe0e feat: Add testing for SDK send_message variants (#1520) 2025-04-01 16:54:09 -07:00
Matthew Zhou
3e0c865d0e feat: Make the tool runner take a schema (#1328) 2025-03-18 12:06:02 -07:00
cthomas
eddd167f43 chore: remove message.text property (#1253) 2025-03-12 10:58:31 -07:00
cthomas
0202f90562 chore: change the name of user id to actor (#1098) 2025-02-25 11:35:19 -08:00
cthomas
7bc59d6612 feat: flatten content field in user message [RETRY] (#809) 2025-01-28 13:41:45 -08:00
cthomas
3e0f9b995f feat: add support for use_assistant_message in list_messages (#804) 2025-01-28 13:39:53 -08:00
cthomas
5ef26daf03 fix: reasoning messages dropped for gpt-4 (#803) 2025-01-28 13:39:18 -08:00
cthomas
530886a9cd revert: "feat: flatten content field in user message" (#808) 2025-01-28 11:06:30 -08:00
cthomas
148a44f165 feat: flatten content field in user message (#781) 2025-01-28 10:32:44 -08:00
Matthew Zhou
1e504a0b2b feat: Add voice-compatible chat completions endpoint (#774) 2025-01-27 14:25:05 -08:00
cthomas
b8ea2dc0b2 fix: handles bug (#765) 2025-01-23 20:25:30 -08:00
cthomas
df8e945fe9 feat: add content union type for requests (#762) 2025-01-23 20:25:00 -08:00
Matthew Zhou
3ed216673e feat: Use official OpenAI client (#752) 2025-01-23 15:45:06 -08:00
mlong93
d6be7809d0 fix: deprecate cursor param and replace with before, after (#736)
Co-authored-by: Mindy Long <mindy@letta.com>
2025-01-23 14:17:25 -08:00
cthomas
fa2fe8ec7c feat: support custom llm configs (#737) 2025-01-23 10:13:05 -08:00
cthomas
f5bcef2657 chore: rename metadata_ field to metadata in pydantic (#732) 2025-01-22 19:05:41 -08:00
cthomas
37e87a9e3e chore: rename llm handle field to model in create agent req (#718) 2025-01-21 17:55:39 -08:00
cthomas
ef6fce8e0f feat: add schema/db for new steps table (#669) 2025-01-18 12:20:10 -08:00
Matthew Zhou
463491358d feat: Extend tool runs to also take in environment variables (#554) 2025-01-08 16:16:19 -08:00
Matthew Zhou
4fd04c63fe chore: Merge OSS (#512) 2025-01-06 10:46:53 -08:00
Caren Thomas
fd8961c39e run black, add isort config to pyproject.toml 2024-12-26 19:43:11 -08:00
Caren Thomas
ea0cca7bad run isort on apps/core 2024-12-26 19:27:09 -08:00
Shubham Naik
0b8017853a fix: add tests to cypress 2024-12-23 14:44:08 -08:00
Shubham Naik
5a743d1dc4 Add 'apps/core/' from commit 'ea2a7395f4023f5b9fab03e6273db3b64a1181d5'
git-subtree-dir: apps/core
git-subtree-mainline: a8963e11e7a5a0059acbc849ce768e1eee80df61
git-subtree-split: ea2a7395f4023f5b9fab03e6273db3b64a1181d5
2024-12-22 20:31:22 -08:00