Give your AI agents
memory, context & eyes
Open-source toolkit for AI coding agents. Persistent memory, automatic context injection, multi-provider transport, project management, and observability — everything your harness needs.
Built for how agents actually work
Memory that persists
Decisions, preferences, and project context survive across every session. Your agents never start from zero.
Provider agnostic
Claude, Codex, Gemini, OpenCode — swap with a flag. Same interface, same memory, any model.
MCP native
Every service speaks MCP. Works with Claude Code, Cursor, Windsurf — any MCP-compatible client.
Markdown-driven
Tasks, docs, and roadmaps in plain text. Git-friendly, human-readable, always portable.
Observable
Tokens, costs, tool usage, success rates. Know exactly what your agents do and what they cost.

Your distributed mind
Persistent knowledge that follows your AI agents across sessions, tools, and projects. SQLite + FTS5, REST API + MCP protocol, federation across brains, and a React dashboard.
- Entities, facts, and conversations with automatic tiering (hot / warm / cold)
- Full-text search with FTS5 across all memories
- MCP server — works with Claude Code, Cursor, Windsurf
- Federation — connect personal and shared team brains
- React dashboard for browsing, searching, and managing
$ npm install -g @dtoolkit/dbrain 
AI-native project manager
Markdown files are the source of truth. Tasks, docs, roadmaps — all in plain text, indexed with FTS5, served via MCP. Your agents create tasks, update status, and search across projects.
- BACKLOG.md as kanban — parsed and indexed automatically
- Numbered docs with full-text search
- Code intelligence: symbol search, call graphs, impact analysis
- React dashboard with kanban board, file tree, and code graph
- 21 MCP tools including 5 graph tools
$ npm install -g @dtoolkit/dwork 
Datadog for AI agents
Agent observability platform. Ingest telemetry from Claude, Codex, Gemini, and OpenCode sessions — track tokens, costs, tool usage, and errors across your team.
- Ingest from 4 CLI sources — scan local transcripts automatically
- Cost estimation by model with built-in pricing
- Tool analytics — call count, success rate, duration
- MCP server for querying observability data from agents
- React dashboard with overview, sessions, tools, and costs views
$ npm install -g @dtoolkit/dops Automatic context injection
Hooks into your coding CLI to inject identity, project facts, and memory at session start. No manual setup — your agents know who you are and what you're working on from the first message.
- Hooks for Claude Code, Codex, Gemini CLI, and OpenCode
- Injects identity, soul, and project facts automatically
- Saves conversation exchanges before context compaction
- Zero-config after install — just works
$ npm install -g @dtoolkit/dcontext # Connect to dbrain and map projects $ dcontext init ? dbrain URL: http://localhost:7878 ? Map directory to entity: my-app ✓ Connected to dbrain # Install hooks for your CLI $ dcontext install claude ✓ Hook added to .claude/settings.json # Every new session now starts with: ## Session Context (from dbrain) - Identity, soul, project facts, tasks
One CLI, any model
Universal adapter for invoking models through local CLIs. Swap between Claude, Codex, Gemini, and OpenCode with a flag. Built-in context pipeline, templates, memory, and an HTTP API.
- Single-shot (ask) and interactive (chat) modes
- HTTP API via serve command — integrate anywhere
- Context pipeline: memory + workspace + day log
- Template system for reusable prompts
- 4 providers: Claude, Codex, Gemini, OpenCode
$ npm install -g @dtoolkit/dproxy # Ask any model from the terminal $ dproxy "explain this error" --provider claude → The error occurs because... # Pipe code for review $ cat src/index.ts | dproxy "review this" # Start as HTTP API $ dproxy serve --port 7880 ✓ API ready on :7880 # Interactive REPL $ dproxy chat --provider gemini
The full ecosystem
20 packages organized in clusters. Install what you need — each works standalone or together.
Memory & Context
Give your agents persistent memory and automatic context injection.
Persistent memory server — the brain. SQLite + FTS5, REST + MCP, federation across brains.
Hook-based context injection. Identity, project facts, and conversation logs — automatic.
Typed HTTP clients for dbrain, dproxy, and dwork. Shared auth and error handling.
Shared types and Zod schemas — Entity, Fact, Tier, ContextBlock, adapters.
Code intelligence SDK — semantic knowledge graph via tree-sitter. Fork of codegraph by Colby McHenry.
Transport
One CLI to invoke any model provider. Swap Claude, Codex, Gemini or OpenCode with a flag.
Universal adapter for invoking models via local CLIs. ask, chat, serve, templates.
Shell-out adapter for Claude Code CLI with streaming and delta support.
Shell-out adapter for Codex CLI with JSONL streaming.
Shell-out adapter for Gemini CLI with stream-json support.
Shell-out adapter for OpenCode CLI with JSONL streaming.
Project Management
AI-native project management. Markdown is the source of truth.
Multi-agent debate for architecture decisions — security, performance, simplicity.
Pre-commit for agents — validate LLM output before applying.
Policy-as-code for the team harness — centralized rules, versioned, repo-synced.
Model router (Haiku/Sonnet/Opus) with cost tracking and per-project policies.
Real-time pair-programming with a shared agent between two devs.
Session browser for the team — tools, decisions, files touched (privacy-aware).
Daily digest — what each agent learned, decided, or blocked today.
Internal marketplace for skills, hooks, and slash commands.
How it all fits together
Each package is independent. Combine what you need — the dependency graph keeps it clean.
dbrain memory · MCP :7878 · :7879
dwork projects · tasks · docs :7881 · :7882
dops observability · costs :7883 · :7884 one interface, any provider
Full environment in 5 steps
From zero to a fully instrumented AI coding harness.
Install
All 5 products, one command.
$ npm install -g \ @dtoolkit/dbrain \ @dtoolkit/dcontext \ @dtoolkit/dwork \ @dtoolkit/dops \ @dtoolkit/dproxy
Memory
Create a brain, start the server, connect your CLI.
$ dbrain init && dbrain start ✓ API on :7878 — Dashboard on :7879 $ dbrain connect claude ✓ MCP configured — CLAUDE.md written
Context
Automatic identity and project facts at every session.
$ dcontext init ✓ Connected to dbrain $ dcontext install claude ✓ Hooks installed
The rest
Project management, observability, multi-provider.
$ dwork init && dwork start ✓ API on :7881 — Dashboard on :7882 $ dops init && dops start ✓ API on :7883 — Dashboard on :7884 $ dproxy init ✓ Default provider: claude
Build
Open your CLI. The full harness is active.
$ claude ✓ Memory · Context · Tasks Observability · Multi-model
Documentation
Everything you need to set up, configure, and master the dtoolkit ecosystem.
Getting Started
Install dtoolkit and store your first memory in under 5 minutes.
Core Concepts
Architecture overview, package relationships, and design principles.
Configuration
Config files, ports, environment variables, and authentication.
Product guides
@dtoolkit/sdk
Typed HTTP clients for all dtoolkit services. DBrainClient, DWorkClient, DProxyClient, DOpsClient — connect from any Node.js app.
npm install @dtoolkit/sdk Examples
Ready-to-run TypeScript examples for every SDK client. Auto-setup script starts temp servers, runs demos, and cleans up. Zero config.
cd examples && npm start Reference
Ready to give your agents a brain?
Start with dbrain for memory. Add context injection, project management, and observability as you grow. All MIT, all composable.