{"_id":"@atlas.agents/langchain-claude-agent-sdk-adapter","name":"@atlas.agents/langchain-claude-agent-sdk-adapter","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@atlas.agents/langchain-claude-agent-sdk-adapter","version":"1.0.0","description":"LangChain adapter for Claude Agent SDK with LangSmith tracing and LangGraph integration","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./tools":{"import":{"types":"./dist/tools/index.d.ts","default":"./dist/tools/index.js"},"require":{"types":"./dist/tools/index.d.cts","default":"./dist/tools/index.cjs"}},"./executor":{"import":{"types":"./dist/executor/index.d.ts","default":"./dist/executor/index.js"},"require":{"types":"./dist/executor/index.d.cts","default":"./dist/executor/index.cjs"}},"./tracing":{"import":{"types":"./dist/tracing/index.d.ts","default":"./dist/tracing/index.js"},"require":{"types":"./dist/tracing/index.d.cts","default":"./dist/tracing/index.cjs"}},"./langgraph":{"import":{"types":"./dist/langgraph/index.d.ts","default":"./dist/langgraph/index.js"},"require":{"types":"./dist/langgraph/index.d.cts","default":"./dist/langgraph/index.cjs"}}},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest","test:run":"vitest run","prepublishOnly":"npm run build","typecheck":"tsc --noEmit"},"keywords":["langchain","claude","agent-sdk","anthropic","langsmith","langgraph","ai","agents","tools"],"author":{"name":"Atlas Agents"},"repository":{"type":"git","url":"git+https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter.git"},"bugs":{"url":"https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter/issues"},"homepage":"https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter#readme","license":"MIT","dependencies":{"@anthropic-ai/claude-agent-sdk":"^0.2.31","@langchain/core":"^1.1.17","@langchain/langgraph":"^1.1.2","@langchain/langgraph-checkpoint-sqlite":"^1.0.0","langsmith":"^0.4.12","uuid":"^9.0.0","zod":"^3.25.32"},"devDependencies":{"@types/node":"^22.12.0","@types/uuid":"^9.0.0","tsup":"^8.0.0","typescript":"^5.7.3","vitest":"^1.0.0"},"peerDependencies":{"@langchain/anthropic":">=1.0.0","@langchain/openai":">=1.0.0"},"peerDependenciesMeta":{"@langchain/anthropic":{"optional":true},"@langchain/openai":{"optional":true}},"engines":{"node":">=18.0.0"},"gitHead":"faef2813801237a97a7f2e5d71fa6a78319b2766","_id":"@atlas.agents/langchain-claude-agent-sdk-adapter@1.0.0","_nodeVersion":"20.20.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-sdU4ATu6XZZ0GAUKYC+POtZ7kQJbiMWVg9SDFS6QUh18egDaSqunOIDnLYqjJx6WmspYPGiqyHtNi1nCXLPBEg==","shasum":"ba7b6fe8ccf46cb725eb9a4b5da0aba035b50449","tarball":"https://registry.npmjs.org/@atlas.agents/langchain-claude-agent-sdk-adapter/-/langchain-claude-agent-sdk-adapter-1.0.0.tgz","fileCount":37,"unpackedSize":805410,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICgDBfKMl7ZfdpqTj5c5WfKg/OmWyBN5RjSgtm0807elAiBfPV/kUNVb+6wo5nRwElotv54pTl1aMqRtTMVPMCxJdg=="}]},"_npmUser":{"name":"davincidreams","email":"lisamegawatts@gmail.com"},"directories":{},"maintainers":[{"name":"davincidreams","email":"lisamegawatts@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/langchain-claude-agent-sdk-adapter_1.0.0_1770397726070_0.46927350062190687"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-06T17:08:45.977Z","1.0.0":"2026-02-06T17:08:46.285Z","modified":"2026-02-06T17:08:46.501Z"},"maintainers":[{"name":"davincidreams","email":"lisamegawatts@gmail.com"}],"description":"LangChain adapter for Claude Agent SDK with LangSmith tracing and LangGraph integration","homepage":"https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter#readme","keywords":["langchain","claude","agent-sdk","anthropic","langsmith","langgraph","ai","agents","tools"],"repository":{"type":"git","url":"git+https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter.git"},"author":{"name":"Atlas Agents"},"bugs":{"url":"https://github.com/atlas-agents/langchain-claude-agent-sdk-adapter/issues"},"license":"MIT","readme":"# langchain-claude-agent-sdk-adapter\n\nLangChain adapter for Claude Agent SDK with automatic LangSmith tracing and LangGraph integration.\n\n## Installation\n\n```bash\nnpm install langchain-claude-agent-sdk-adapter\n# or\npnpm add langchain-claude-agent-sdk-adapter\n```\n\n## Features\n\n- **8 LangChain Tools**: Read, Write, Edit, Bash, Glob, Grep, Task, Agent\n- **Automatic LangSmith Tracing**: All executions traced for observability\n- **LangGraph Integration**: Pre-built state schemas and workflow factories\n- **Streaming Support**: Stream agent responses in real-time\n- **TypeScript First**: Full type safety with Zod schemas\n\n## Quick Start\n\n### Basic Tools\n\n```typescript\nimport { createAgentSDKTools } from \"langchain-claude-agent-sdk-adapter\";\n\nconst tools = createAgentSDKTools({\n  permissionMode: \"bypassPermissions\",\n});\n\n// Use individual tools\nconst content = await tools.read.invoke({ filePath: \"/path/to/file.ts\" });\nconst output = await tools.bash.invoke({ command: \"ls -la\" });\nconst files = await tools.glob.invoke({ pattern: \"**/*.ts\" });\n\n// Use all tools with a LangChain agent\nconst allTools = tools.all;\n```\n\n### Agent Executor\n\n```typescript\nimport { createAgentExecutor } from \"langchain-claude-agent-sdk-adapter\";\n\nconst executor = createAgentExecutor({\n  langsmithProject: \"my-project\",\n  systemPromptPrefix: \"You are a helpful coding assistant.\",\n});\n\nconst result = await executor.execute(\"Read and summarize /src/index.ts\");\nconsole.log(result.result);\nconsole.log(`Trace ID: ${result.traceId}`);\n```\n\n### LangSmith Tracing\n\n```typescript\nimport { withLangSmithTracing, createAgentSDKTools } from \"langchain-claude-agent-sdk-adapter\";\n\n// Set environment variables:\n// LANGSMITH_API_KEY=your-api-key\n// LANGSMITH_PROJECT=my-project\n\nconst { callbacks, tracer } = withLangSmithTracing({\n  projectName: \"my-traces\",\n  tags: [\"production\"],\n});\n\n// All tool calls are automatically traced\nconst tools = createAgentSDKTools({ enableTracing: true });\n```\n\n### LangGraph Workflows\n\n```typescript\nimport { createAgentWorkflow, createToolRoutingWorkflow } from \"langchain-claude-agent-sdk-adapter\";\n\n// Simple agent workflow\nconst workflow = createAgentWorkflow({\n  executor: { langsmithProject: \"my-project\" },\n  checkpointerPath: \"./checkpoints.db\",\n});\n\nconst result = await workflow.invoke(\n  { input: \"Analyze this codebase\" },\n  { configurable: { thread_id: \"session-1\" } }\n);\n\n// Tool routing workflow (routes based on prefix)\nconst router = createToolRoutingWorkflow();\nawait router.invoke({ input: \"bash:echo Hello\" }); // Routes to bash\nawait router.invoke({ input: \"read:/path/file\" }); // Routes to read\nawait router.invoke({ input: \"Complex task\" });    // Routes to agent\n```\n\n## API Reference\n\n### Tools\n\n| Tool | Description |\n|------|-------------|\n| `read` | Read files from the filesystem |\n| `write` | Write content to files |\n| `edit` | Find and replace in files |\n| `bash` | Execute shell commands |\n| `glob` | Find files by pattern |\n| `grep` | Search files with regex |\n| `task` | Spawn sub-agent tasks |\n| `agent` | Full agent execution |\n\n### Exports\n\n```typescript\n// Tool factory\nimport { createAgentSDKTools, createToolSubset } from \"langchain-claude-agent-sdk-adapter\";\n\n// Individual tool factories\nimport { readTool, writeTool, editTool, bashTool, globTool, grepTool, taskTool, agentTool } from \"langchain-claude-agent-sdk-adapter\";\n\n// Executor\nimport { AgentExecutor, createAgentExecutor } from \"langchain-claude-agent-sdk-adapter\";\n\n// Tracing\nimport { AgentSDKTracer, AgentSDKCallbackHandler, withLangSmithTracing } from \"langchain-claude-agent-sdk-adapter\";\n\n// LangGraph\nimport {\n  AgentSDKState,\n  createAgentNode,\n  createToolNode,\n  createAgentWorkflow,\n  createToolRoutingWorkflow\n} from \"langchain-claude-agent-sdk-adapter\";\n\n// Types\nimport type { AgentSDKConfig, ToolConfig, ExecutorConfig, AgentResult } from \"langchain-claude-agent-sdk-adapter\";\n```\n\n## Configuration\n\n### ToolConfig\n\n```typescript\ninterface ToolConfig {\n  permissionMode?: \"ask\" | \"bypassPermissions\";\n  allowedTools?: string[];\n  enableTracing?: boolean;\n  metadata?: Record<string, unknown>;\n}\n```\n\n### ExecutorConfig\n\n```typescript\ninterface ExecutorConfig {\n  permissionMode?: \"ask\" | \"bypassPermissions\";\n  langsmithProject?: string;\n  streaming?: boolean;\n  systemPromptPrefix?: string;\n  tags?: string[];\n}\n```\n\n### TracingConfig\n\n```typescript\ninterface TracingConfig {\n  apiKey?: string;           // Defaults to LANGSMITH_API_KEY\n  projectName?: string;      // Defaults to LANGSMITH_PROJECT\n  metadata?: Record<string, unknown>;\n  tags?: string[];\n}\n```\n\n## Examples\n\nSee the [examples](./examples) directory for complete usage examples:\n\n- `basic-tools.ts` - Using individual tools\n- `agent-executor.ts` - High-level agent execution\n- `with-langsmith.ts` - LangSmith tracing integration\n- `langgraph-workflow.ts` - LangGraph workflow patterns\n\n## Requirements\n\n- Node.js >= 18\n- Claude Agent SDK (`@anthropic-ai/claude-agent-sdk`)\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-9ab1ed37996186d7722a888fd01241c7"}