Skip to content

Commit 32f0b77

Browse files
authored
Merge pull request #31 from deepagent-ltd/dev
V3.8
2 parents a3e07e2 + e363249 commit 32f0b77

197 files changed

Lines changed: 19358 additions & 4843 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 52 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -15,25 +15,53 @@
1515

1616
---
1717

18-
DeepAgent Code is an AI coding agent built on persistent document memory. It keeps [opencode](https://github.com/sst/opencode)'s runtime foundations and adds a control plane for **durable knowledge**, **cross-session memory**, **context assembly**, **learning lifecycle**, and **runtime intelligence**.
18+
DeepAgent Code is an AI coding agent built on persistent document memory. It keeps [opencode](https://github.com/sst/opencode)'s runtime foundations and adds a control plane so the agent behaves less like a one-shot chat and more like a teammate that remembers your project, sharpens vague asks, and goes deep on hard problems.
1919

20-
## What Makes It Different
20+
The features below start from a real need — something a plain coding agent, opencode included, leaves on the table — and work down to the architecture we built to serve it.
2121

22-
**Persistent document system** — Knowledge, decisions, diagnostics, and learnings are stored as typed documents in a searchable graph. The agent builds understanding across sessions instead of starting from scratch each time.
22+
## What You Can Do
2323

24-
**Project memory sharing** — Multiple conversations within the same project share knowledge, coding patterns, common pitfalls, and build commands. What one session learns becomes available to the next.
24+
### Keep one conversation going indefinitely
2525

26-
**AI IDE microservice** — Query code by symbol name and intent (not file:line coordinates). Get definitions, references, call chains, type hierarchies, and diagnostics in one call. Built on LSP with 38 language servers.
26+
**The need:** Long tasks overflow the context window. Most agents respond by truncating history or summarizing everything at a threshold — so mid-task the agent forgets a decision you made an hour ago, or the window fills with stale tool output and quality falls off a cliff.
2727

28-
**Preset MCP catalog** — Curated MCP servers for Git platforms, file search, read-only databases, and browser automation. Risk tiers derived at runtime from catalog structure, not user config.
28+
**What DeepAgent does:** Your conversation is treated as a continuously maintained work state, not a growing chat log. Before every turn, the agent rebuilds a working set — the task anchor, the most recent exchanges verbatim, active file references, and only the older facts that are relevant right now — while the full history is archived durably and stays queryable. The working set is held to a hard fraction of the model window, so there's always room for the model to actually think and respond. You just keep talking; the agent keeps focus.
2929

30-
**Domain packs** — Specialized knowledge packages for specific domains (GPU kernels, React, backend APIs, security, testing). Each pack contains typed documents (strategies, methodologies, knowledge, skills) + validation/diagnostic adapters. Packs compose: activate multiple domains for your task.
30+
### Switch windows, fork freely, never lose memory
3131

32-
**Learning lifecycle** — After completing work, the agent can generate candidate memories, facts, strategies, and methodologies. Evidence and approval gates control what gets persisted.
32+
**The need:** You want to try two approaches, or hand the work to a fresh conversation, without starting from amnesia and without polluting the original thread.
3333

34-
**Work strength ladder** `general`, `high`, `xhigh`, `max`, `ultra` scale capability without breaking contracts. Higher strengths add control-plane abilities (multi-agent orchestration, adversarial validation) on top of base behavior.
34+
**What DeepAgent does:** Fork any conversation from a chosen message. The fork opens carrying the parent's memory up to that point, shows a full-width "derived from" marker at the top of its transcript, and nests folder-style under its origin in the session tree (subagents and forks alike, up to three levels deep). Knowledge flows up a scope hierarchy — what one session learns can be promoted to the whole project, and cross-project preferences live at the user-global layer — so switching windows is a clean handoff, not a reset.
3535

36-
**Scenario modes**`direct` executes immediately; `wish` refines intent first, shows draft plan, waits for confirmation before automation.
36+
### Ask roughly, and let the agent sharpen it
37+
38+
**The need:** A half-formed prompt gets a half-useful answer, and you don't always know how to phrase what you want.
39+
40+
**What DeepAgent does:** Two scenario modes on the composer. **Direct** sends your prompt as-is — you own the wording. **Intelligence** refines a rough ask into a sharper prompt, surfaces a draft plan and decision suggestions, and waits for your confirmation before it automates anything. You decide how much the agent shapes the request.
41+
42+
### Go deep on genuinely hard problems
43+
44+
**The need:** Complex work — an architecture decision, a tricky migration, a subtle bug — needs more than a single confident pass. It needs research, a second opinion, and someone actively trying to poke holes.
45+
46+
**What DeepAgent does:** At higher work strengths the primary agent decomposes the task, fans it out to focused subagents that research modules in parallel, synthesizes their findings, and then runs independent reviewers whose job is to *break* the plan rather than agree with it. Fan-out is bounded by a configurable concurrency ceiling, and live subagents surface in a session side panel and inline in the transcript so you can watch and jump into any of them.
47+
48+
### Chat with your team and your agents in one place
49+
50+
**The need:** Coordinating with teammates and driving agents usually happens in two different tools.
51+
52+
**What DeepAgent does:** A per-project group chat lives in the session side panel. @mention an agent as a chat member and it runs the full agent loop — query code, generate, fix — pulling project knowledge and recent messages for context, then replies inline with live progress streaming.
53+
54+
## How It Works
55+
56+
Each capability above is served by a control-plane primitive underneath. These are the parts a plain runtime doesn't have.
57+
58+
**Four-graph unification** — Code, knowledge, project memory, and the document graph are unified into one typed, bidirectionally-linked store. When the agent pulls context, a change to a symbol surfaces the design decisions, past diagnoses, and knowledge actually linked to it — connected context, not four disconnected keyword searches.
59+
60+
**Domain packs** — 140+ composable knowledge packages spanning languages, frameworks, platforms (cloud, Kubernetes, CI), hardware, and business/risk domains (security, privacy, compliance). Each pack bundles typed documents (strategies, methodologies, knowledge, skills, failure dossiers) with detectors that auto-activate the right packs for your task; conflicts resolve stricter-policy-wins, and the active set is version-locked so a run is reproducible. Core stays domain-neutral — expertise is data on disk, not hardcoded.
61+
62+
**Tiered knowledge invocation** — A monotonic strength ladder (`general → high → xhigh → max → ultra`) gates how much control-plane machinery engages. `general` stays close to the plain runtime — fast and cheap. Higher rungs progressively unlock durable knowledge, project handoff summaries, heavier strategy/methodology tiers, and multi-agent orchestration. You pay for depth only when you dial it up.
63+
64+
**Self-learning** — After work lands, the agent proposes candidate knowledge, facts, and methodologies. Promotion is evidence-gated (a test passed, a diagnostic cleared, a validation confirmed) and user-controllable — durable knowledge is carried over deliberately, not silently guessed. Session-stable conclusions consolidate into project memory over time, so the next session starts smarter about *your* codebase.
3765

3866
## Installation
3967

@@ -61,43 +89,41 @@ The agent will:
6189

6290
1. Use LSP to find the endpoint definition and understand its structure
6391
2. Check project memory for existing middleware patterns
64-
3. Implement rate limiting following project conventions
65-
4. Run tests and capture diagnostics
66-
5. Generate a candidate memory: "This project uses express-rate-limit middleware"
92+
3. Activate the relevant domain packs (backend API, the project's language)
93+
4. Implement rate limiting following project conventions
94+
5. Run tests, capture diagnostics, and propose a candidate memory: "This project uses express-rate-limit middleware"
6795

6896
On your next session, when you ask to add rate limiting elsewhere, the agent already knows the pattern.
6997

7098
## Core Concepts
7199

72-
**Document graph** — All persistent state lives in typed documents: `knowledge`, `strategy`, `methodology`, `skill`, `memory`, `design`, `worklog`, `diagnosis`, `eval`. Documents link to each other (supports/blocks/conflicts/validates), forming a graph.
100+
**Document graph** — All persistent state lives in typed documents: `knowledge`, `strategy`, `methodology`, `skill`, `memory`, `design`, `worklog`, `diagnosis`, `eval`. Documents link to each other (supports/blocks/conflicts/validates), forming a graph you can traverse.
73101

74102
**Scope layers**`session-private` (current conversation), `project-shared` (all sessions in this project), `user-global` (cross-project preferences), `public-system` (built-in skills), `sealed` (audit-only, never enters context).
75103

76-
**Domain packs** — Each pack (e.g., `code.frontend.react`, `code.gpu-kernel`, `risk.security`) is a bundle of typed documents + adapters. Documents include strategies (directions), methodologies (multi-step workflows), knowledge (facts), skills (executable capabilities), and failure dossiers. Packs auto-activate based on problem profile or explicit selection. Core stays domain-neutral.
77-
78-
**Context admission** — Retrieval hits go through admission gates. Sensitive information (SSH hosts, tokens, internal paths) gets suggested but not auto-expanded into prompts.
104+
**Context admission** — Retrieval hits pass through admission gates. Full tool output (raw LSP dumps, diagnostics, capability indexes) is written to evidence artifacts, ref-linked and tool-only; only summaries and `file:line` snippets enter the model context. Sensitive values (SSH hosts, tokens, internal paths) are suggested, never auto-expanded.
79105

80-
**Evidence-gated learning**Learnings require evidence (test pass, diagnostic clear, validation confirmed). Candidates enter a queue; auto-merge or manual review depends on policy.
106+
**AI IDE microservice**Query code by symbol name and intent (e.g. `code_intel({ symbol: "AgentGateway.open", intent: "overview" })`), not file:line coordinates. Get definitions, references, call chains, type hierarchies, and diagnostics in one call. Built on LSP with 38 language servers; degrades gracefully to grep/read when no server is configured.
81107

82-
**Symbol-driven navigation**Code intelligence tools accept symbol names (e.g., "AgentGateway.open"), not coordinates. The agent resolves names to locations internally via LSP workspace/document symbols.
108+
**Preset MCP catalog**Curated MCP servers for Git platforms, file search, read-only databases, and browser automation. Risk tiers are derived at load time from the catalog template (not user config, so they can't be injected), and servers default to not-connected with write and external-fetch operations behind approval gates.
83109

84110
## Architecture
85111

86112
```
87113
┌─────────────────────────────────────────────────────────────┐
88114
│ Control Plane (DeepAgent additions) │
89-
│ • Document graph (persistent memory) │
115+
│ • Four-graph unified store (code + knowledge + memory + doc)│
116+
│ • Continuously maintained working state (memory + compaction)│
117+
│ • Domain pack system (composable, auto-activating knowledge)│
90118
│ • Context assembly & admission gates │
91-
│ • Learning worker (background, non-blocking) │
92-
│ • Evidence & approval gates │
93-
│ • Work strength orchestration │
94-
│ • Domain pack system (composable knowledge) │
119+
│ • Multi-agent orchestration & adversarial review │
120+
│ • Evidence-gated learning & work-strength ladder │
95121
└─────────────────────────────────────────────────────────────┘
96122
97123
┌─────────────────────────────────────────────────────────────┐
98124
│ Runtime Foundations (from opencode) │
99125
│ • Agent loop & tool execution │
100-
│ • Session & provider management
126+
│ • Session, fork & provider management │
101127
│ • MCP client runtime │
102128
│ • Permission system │
103129
└─────────────────────────────────────────────────────────────┘
@@ -111,7 +137,7 @@ On your next session, when you ask to add rate limiting elsewhere, the agent alr
111137
└─────────────────────────────────────────────────────────────┘
112138
```
113139

114-
DeepAgent's control plane operates at provider-turn boundaries: it selects context before each model call and writes evidence back into the document graph afterward. It does not replace opencode's runtimeit layers on top.
140+
DeepAgent's control plane operates at provider-turn boundaries: it selects context before each model call and writes evidence back into the document graph afterward. It does not replace opencode's runtimeit layers on top.
115141

116142
## Documentation
117143

@@ -127,22 +153,6 @@ DeepAgent Code is licensed under **AGPL-3.0-or-later**. If you modify and run it
127153

128154
This project is derived from [opencode](https://github.com/sst/opencode) (MIT License). See [NOTICE](NOTICE) for the upstream license and attribution. No endorsement by opencode or its contributors is implied.
129155

130-
## Project Status
131-
132-
**V3.4.1** is the first public pre-release hardening milestone. It includes:
133-
134-
- LSP-to-AI-IDE transformation (symbol-driven code intelligence)
135-
- Preset MCP catalog with security model
136-
- License and attribution cleanup
137-
- Secret scan baseline
138-
- Design documentation consolidation
139-
140-
**V3.5** (planned) will add:
141-
142-
- DAP integration (debug adapter protocol for runtime intelligence)
143-
- PAP (performance analysis protocol for profiling: NVIDIA NCU/nsys, AMD rocprof, Intel VTune, CPU perf)
144-
- OS-backed credential storage for MCP servers
145-
146156
---
147157

148158
<p align="center">

0 commit comments

Comments
 (0)