Files
deepagentsjs/.vscode
David Duong 605e311a0a feat: rewrite deep agents on top of createAgent (#42)
* feat: migrate to createAgent API and middleware architecture

BREAKING CHANGE: Major refactor from custom LangGraph implementation to new langchain createAgent API

**Architecture Migration:**
- Replace createReactAgent with createAgent API from langchain package
- Migrate from custom state management to middleware-based architecture
- Remove custom DeepAgentState and model configuration in favor of built-in patterns

**Package Updates:**
- Upgrade to @langchain/anthropic@alpha, @langchain/langgraph@next
- Add langchain package as main dependency with createAgent support
- Update @langchain/core to local development version

**Code Reorganization:**
- Move tools from src/tools.ts to modular middleware pattern (src/middleware/)
- Simplify type definitions in src/types.ts with Zod schema validation
- Refactor src/subAgent.ts to use createAgent with middleware integration
- Update src/graph.ts and src/index.ts for new API patterns

**Removed Files:**
- src/state.ts: Custom state management no longer needed
- src/model.ts: Default model configuration handled by createAgent
- src/interrupt.ts: Interrupt handling integrated into middleware

**New Middleware System:**
- src/middleware/fs.ts: File system operations middleware
- src/middleware/todo.ts: Todo management middleware
- src/middleware/index.ts: Middleware exports and configuration

**Configuration:**
- Fix tsconfig.json extends path for @tsconfig/recommended
- Update examples/research/research-agent.ts for new API
- Upgrade TypeScript ESLint and other dev dependencies

This migration provides a more maintainable architecture with better separation of concerns
and aligns with the latest LangChain patterns for agent development.

* consolidate imports

* progress

* push remaining update

* fix ci

* cr

* fix

* add anthropicPromptCachingMiddleware

* prettier

* prettier

* allow sub agents to have middleware

* prettier

* Merge pull request #37 from wuchangming/cb/createAgent-migration

feat: Add a name property value to ToolMessage

* fix types

* First stab at porting deepagents

* Cleanup

* wip: middleware review

* Fix to work on LSD

* Use Zod 4

* Revert "Use Zod 4"

This reverts commit 2292cd27ae.

* fix: use store from runnable config

* Exclude `jumpTo` from subgraph state

* Auto-infer filesystem middleware

* Include `strict` in tests

* Further cleanup of test files

* Remove any, remove only

* Fix invalid types for filesystem

* Fix invalid condition

* Fix file system tests, make those concurrent

* Replace _getType with type

* Remove Annotation

* Cleanup rest of test files

* Bump to 1.0.0

* Use PNPM

* Fix scripts

* Build using tsdown

* Bump to 1.0.0-beta.1

* Update CI

* Update again

* Fix formatting

* Add stub prettierrc for VSCode

* Add pluggable filesystem

* linting

* Full test coverage

* Add coerce option

* Bump to 1.0.0-beta.2

* Bump to 1.0.0-beta.3

* Add windows to matrix

* Address comments

* Add examples

* tweak prompt

* Linting

* Remove checkpointer=False

* Add missing env files

* Update README

* add missing dev deps

* add lockfile

* Fix broken test

* Normalize paths for linux

* Fix tests to be OS agnostic

* Normalize for glob search

---------

Co-authored-by: Christian Bromann <git@bromann.dev>
Co-authored-by: Wu Changming <wuchangmingnice@163.com>
Co-authored-by: Nick Huang <nick@langchain.dev>
Co-authored-by: Hunter Lovell <hunter@hntrl.io>
2025-11-05 11:52:40 -08:00
..