证据快照复核于 2026-09-10GitHub 数据核对日期: 2026-08-21
证据已验证Plugin Bundle自动化与智能体Web Profile

GraphFlow

一个通过 MCP 为编码代理提供本地优先代码图谱上下文与规划能力的 DeepSeek Harness 插件包。

快速了解

它能做什么

一个通过 MCP 为编码代理提供本地优先代码图谱上下文与规划能力的 DeepSeek Harness 插件包。

本站提供的是中文说明,不代表该项目或 Plugin 自身提供中文界面;语言支持请以上游文档为准。

使用场景
自动化与智能体上下文记忆编码
适配技术
deepseek-harnessMCP
兼容性

Web Profile
Not declared in supplied evidence

可信度与状态

证据已验证
核对日期 2026/9/10 UTC 13:59

有代码证据的贡献

它为 DSH 增加什么

GraphFlow MCP 工具

提供 10 个 MCP 工具,用于压缩代码上下文、规划、索引、诊断、产物管理和结果回报。

机制证据
GraphFlow

一个“上下文优先”的技能,指导编码代理在大范围探索代码库或复杂修改前先查询 GraphFlow。

机制证据

选择前先看

GraphFlow 会作为 MCP 客户端和 DSH glue 安装到 DeepSeek Harness profile 中。它提供 10 个工具,用于压缩代码上下文、任务规划、索引、诊断、产物管理和结果回报。其定位是记忆与上下文 harness,实际代码修改仍由宿主代理执行。

适合谁

适合希望让 DeepSeek Harness 中的编码代理在探索或修改项目之前先查询持久化、本地优先代码知识图谱的开发者。

常见任务

  • 为 DSH web profile 接入基于 MCP 的代码上下文能力。
  • 在多文件排查、重构或调试前获取压缩上下文。
  • 在修改后索引工作区,并对复杂工作使用规划或诊断工具。

权限与数据

该 bundle 会在当前工作区运行本地 MCP 服务,并用于索引项目代码、保留图谱化上下文和学习数据。

权限
  • 通过 stdio 运行由 npx 启动的 GraphFlow MCP 服务。
  • 将当前进程工作目录作为 MCP 工作区。
  • 安装时可能运行已声明的 postinstall 和 prepare 生命周期脚本。
数据处理
  • 工作区代码可能被索引到本地知识图谱中。
  • 文档描述的学习流程会跨会话保存结果、经验、技能和项目知识。
外部服务
  • 文档中的离线 AST 索引路径不需要 API 密钥。
  • 文档描述了可选的远程团队存储和模型路由,但本次未验证其安装或运行。
凭据
  • 文档中的离线快速开始不需要 API 密钥。

局限

  • 本次审查未实际执行安装或运行。
  • 提供的证据未声明 DSH 版本范围。
  • GraphFlow 只提供上下文和执行描述,不会自行执行代码修改。
  • 该包声明了安装生命周期脚本。
  • 远程团队存储、模型提供商和可选文档转换等功能在配置后可能需要网络或凭据。

DSHub 已核对

  • 已验证固定 Git 源和 DSH bundle 结构。
  • manifest 要求 Node.js >=20 与 npm >=10。
  • bundle 配置定义了 stdio GraphFlow MCP 服务和 DSH glue。
  • 声明了 Apache-2.0 许可证。

DSHub 未核对

  • 是否能在 DSH profile 中成功安装。
  • MCP 启动、索引质量和工具运行时行为。
  • 与特定 DeepSeek Harness 版本的兼容性。
  • 未审计 npm registry tarball 内容。

固定版本安装

安装 GraphFlow

这个Plugin Bundle没有 DSH Plugin 安装操作,请根据源码文档使用真实交付方式。

访问源码项目

维护者原文

项目 README

查看 commit 950670e 对应的 README
维护者编写的上游内容原文于 2026/9/10README.md 获取,正文和仓库相对媒体固定到 commit 950670ebc158,内容哈希为 1f10344ae4dd。以下是未经 DSHub 翻译的上游原文,语言可能与当前页面不同;第三方托管的 badge 可能独立更新。

GraphFlow

English | 中文

npm version

The memory & context harness for coding agents. Local-first code knowledge graph · bounded context compression (95.6% vs a realistic top-K-files read; see both baseline arms) · cross-session learning flywheel.

The community is converging on an "agent harness" vocabulary: memory + hooks + skills are the harness primitives that turn a stateless model into a reliable long-running agent. GraphFlow implements all three for coding agents and ships them through a portable MCP surface (Cursor, Claude Code, 15+ agents):

Harness primitive GraphFlow implementation
Memory 12-language AST code graph + Episodic / Skill / Decision nodes — project knowledge and project experience persist across sessions
Hooks Outcome auto-capture (on by default) + Claude Code SessionEnd / Stop and DeepSeek Harness agent/disposed glue close the learning loop automatically — no manual outcome reporting required
Skills A four-class flywheel (proven / correctable / anti-pattern / noise) with canary validation — skills are promoted by evidence, not by assertion

Pure TypeScript/Node. CLI + MCP + VS Code extension. Fully offline, no API key required.

Why a harness, not another RAG

Most "memory" products are either static injection (load CLAUDE.md / rules files in full on every session) or plain RAG (retrieve chunks, no learning). Both fail in long-lived projects:

  • Static injection pays the same token cost every session regardless of the task, and grows until it is truncated or ignored.
  • Plain RAG retrieves text but never accumulates experience — the thousandth task pays the same cost as the first.

GraphFlow is a harness: memory is dynamic and typed. Each request retrieves only what the current decision needs — graph anchors, compressed summaries, similar past episodes, applicable skills — under an explicit token budget (L0–L3 layered compression; measured against a realistic top-K-files read, see benchmarks/RESULTS.md). What the agent learns (outcomes, lessons, skills) is written back through hooks, so the harness gets better with use.

It is also local-first and portable: everything runs offline with no API key, and the whole surface is exposed over MCP, so the same memory travels across agents instead of being locked into one vendor's format.

Proof, not promises

Third-party reproduction entry: npm run proof:flywheel — one command, offline, no API key. Guide: docs/flywheel-reproduction.md. Independent runs are welcome; open a GitHub issue titled [benchmark] Independent reproduction — <commit>.

All headline numbers come from a public, reproducible benchmark suite (benchmarks/README.md) with published methodology (docs/benchmark-standards.md) and machine-readable JSON dumps pinned to commits. Authoritative percentages live in the tracked RESULTS markdown; this package does not invent new scores.

  • Token savings, two arms — quote them separately (8-query suite, independently re-counted with gpt-tokenizer): 95.6% against the fair counterfactual (the same ranker's top-10 anchors resolved to real files and read in full: 136,265 → 6,044 tokens) and 98.5% against a naive term-frequency grep baseline (410,725 → 6,044), whose denominator is an upper bound by construction. The realistic arm cannot inflate itself: anchors pointing at fewer or smaller files make its savings smaller. Details: benchmarks/RESULTS.md
  • 132-query golden retrieval set in CI (Hit@5 = 100%, MRR = 0.836, NDCG@5 = 0.601); downloadable open dataset: benchmarks/datasets/retrieval-golden-v1.json — run npm run bench:retrieval
  • Skill A/B: 100% vs 61.5% task success with the flywheel on vs off (26 tasks)
  • Memory ROI: 100% vs 56.5% with episodic memory on vs off (62 tasks, with attribution chains)

Results are commit-anchored so any number above can be checked out and re-run. See ROADMAP.md for the open invitation.

Memory poisoning protection

Shared and synced memory is only useful if it cannot be silently corrupted. Skills merged from external sources (e.g. skill sync imports) are treated as unproven until validated locally: imported skills carry provenance markers, never enter the proven class directly, must pass canary validation on real tasks before promotion, and anti-pattern skills are isolated rather than deleted so they can be audited. Promotion is gated by the four-class lifecycle, not by trust in the source. See docs/team-memory-security.md.

Quick start

No API key needed (offline AST indexing + graph compression):

# 1. Build the graph offline (AST indexing, no LLM)
npx @roarpeng/graphflow graph index .

# 2. Preview compressed context (anchors + summaries, 90%+ token savings)
npx @roarpeng/graphflow context preview "orchestrator" --json

Connect via MCP (Cursor / Claude Code / …):

{
  "mcpServers": {
    "graphflow": {
      "command": "npx",
      "args": ["-y", "--package=@roarpeng/graphflow", "graphflow-mcp"]
    }
  }
}

The agent calls graphflow_context for compressed context, then graphflow_plan to plan; without a provider API key GraphFlow automatically bridges the ATP thinking protocol to the host agent (agent-delegated mode). For symbol-precise edits, compose Serena as a second MCP server — GraphFlow + Serena (examples/graphflow-serena.mcp.json).

Why GraphFlow

Single-purpose tools each do one thing well; GraphFlow combines graph + compression + planning protocol + learning memory in one place:

Capability GraphFlow CodeGraph Serena Repomix
Code graph 12-language AST index more mature LSP symbols
Context compression layered + graph compression + vector recall partial partial whole-repo dump
Planning protocol ATP IR + DAG + agent bridge
Learning memory Episodic / Skill / Decision flywheel
Local-first
Open protocol ATP/IR public spec

The differentiator is the learning flywheel: graph indexing and token compression are replicable; project-private experience (skills, lessons, decisions) accumulated across sessions is not — it compounds with use. Serena is a complement, not a competitor — see GraphFlow + Serena: better together (中文; comparison).

Core capabilities (v1.17+)

Module Capability
Planning protocol ATP v1.1 (Intent / Requirement / Six Hats / 5-Why / First Principles / Decision Matrix / Planning / Reflection); simple / complex / insight modes; agent-delegated bridge without an LLM; skill-conditioned DAG (skillRefs / avoidPatterns on plan nodes); ATP/IR public spec v1.1
Goal alignment Goal anchor nodes (intent five-tuple as first-class citizen, original requirement auto-injected); low-confidence clarification gate (no plan below 0.6); runtime alignment-check; deviation classification (misread-requirement / scope-creep / tech-drift); goal version chain + diffs
Knowledge graph 12-language AST indexing; File / Module / Symbol + Concept / Requirement; cross-layer edges documents / implements / derived_from; Office/PDF → Markdown via optional @firecrawl/anydoc (MIT). CLI/npm: optionalDependency. VSIX: not bundled; on activate the extension auto-downloads the current-OS binary into ~/.graphflow/optional-deps when graphflow.downloadAnydoc is true (default). Disable the setting to skip network; source indexing still works.
Context compression L1/L2/L3 layered anchors; graph compression (edge weights + PageRank, LRU cache); stem-matching recall (orchestrate ↔ orchestration); vector recall + RRF; RepoMap overview; adaptive budget; post-packaging accounting (dialogue recall lines and workbench prompt lines count against the reported budget; dialogueHits reported separately as unbudgetedTokens so savings are computed on the true total)
Retrieval & fidelity Golden-set regression gate (132 queries, Hit@5=100%, MRR=0.836, NDCG@5=0.601); separate anchor-recall and normalized body-coverage metrics persisted beside token savings
Vector index In-process memoization + disk persistence (fingerprint-checked, seconds to restore after MCP restart)
Storage backends file / memory / sqlite (FTS5, tokenizer-enhanced searchtext, camelCase searchable) / auto (sqlite-first with fallback) / mcp-http
Learning flywheel Episodic memory, reflection, skill nodes (score ±1, bounded [-20,20]), nightly training, adaptive evidence-aware forgetting, auto-capture + Claude Code hooks (on by default), SkillOpt-lite bounded guidance edits, four-class lifecycle + canary gate for synced skills, portable SKILL.md import/export, npm run backfill:episodes, contribution reports (skill report / graphflow_diagnose / route diagnose)
Team sharing graphflow team serve (tenant + RBAC) + skill sync export/import/push/pull; imports/pulls are a bidirectional MERGE; golden queries via .graphflow/team-golden.json; security model + ops runbook
Benchmarks Comprehensive 92.9% · Independent-style 96.2% · context-readiness eval · token savings with two baseline arms95.6% realistic / 98.5% naive grep
Model routing Smart / Economy tiers; multi-provider health probes and fallback (DeepSeek, OpenAI, Anthropic, Bailian, Doubao)
Workbench Plan DAG seeds function-topic containers; collapsed outline; click topicId to resume; drift forks a side branch; original Q/A stored via assistantReply
Observability graphflow_diagnose / route diagnose: provider health + graph stats + token savings + flywheel health (auto-capture, episodes, skills by class, session journal) + workbench outline
Agent surfaces CLI --json; MCP stdio and Streamable HTTP (stateless JSON or stateful SSE, 10 tools); auto-install into 15+ agents (incl. Codex Windows NODE/NPX_CLI short-path MCP). HostAdapter registry owns install · uninstall · doctor for every registered host: 4 hand-written slices (Cursor / Claude Code / DeepSeek Harness / Kimi Code) + a generic profile-backed slice for the rest
Evidence & governance Outcome evidence packages (commit/diff/tests), evidence backfill, tamper-evident audit chains, ADR/Invariant/APIContract/Test review states, artifact three-way merge/signing/encryption, retention/quarantine, release gates
Engineering quality TypeScript strict; vitest suite; npm run ci includes extension packaging and smoke tests

Positioning

GraphFlow is not an orchestrating executor — it is the memory & context harness for coding agents. Task execution is delegated to the host coding agent via bridge mode (honest semantics, no faked COMPLETED); GraphFlow's job is to make the agent see clearly and remember.

MCP tools (10)

Tool Function
graphflow_context Compressed context package (query → anchors + summaries; topicId / assistantReply to resume a workbench node or fill the pending answer; anchorId → expand)
graphflow_plan Task planning (mode='simple' or 'insight'; seeds workbench.topics + workbench.outline; agent-delegated without an LLM)
graphflow_run Orchestration + bridge execution descriptor
graphflow_report_outcome Outcome backfill (incl. deviation classification), closes the learning flywheel
graphflow_insight ATP insight submit / merge (agent bridge protocol)
graphflow_index Incremental / full indexing; optional knowledgeExtract: true distills dialogue turns into Concept / Requirement nodes with provenance edges
graphflow_skill_insights Skill insights
graphflow_diagnose Diagnostics (provider + graph + token savings + flywheel + graph.workbenchOutline)
graphflow_artifact Graph artifact import / export
graphflow_skill_guide GraphFlow skill usage guide

MCP workspace resolution: the workspace is discovered automatically from the MCP client cwd; override with GRAPHFLOW_WORKSPACE_ROOT.

Workbench navigation (v1.9.14)

Everyday chat stays a single thread. Complex work seeds a workbench of function-topic containers from graphflow_plan — one canvas node per plan step, not one node per turn. Click a node and pass topicId to graphflow_context to refine that function or return to the mainline. Drift auto-forks an isolated side branch (co_occurs); the trunk is not overwritten. After answering, call graphflow_context({ assistantReply }) so the original reply is stored. Outline titles are display labels only; next-turn context is Goal + ancestor titles + the node's original Q/A.

Wake the collapsed outline when you need it (still 10 MCP tools):

graphflow workbench tree --json            # CLI
# VS Code / Cursor: GraphFlow: Workbench Tree (Activity Bar, default collapsed) or chat /tree
# MCP: graphflow_diagnose → graph.workbenchOutline
graphflow context preview --topic-id "<topic:...>" "continue from this node"
graphflow context preview --reply "original assistant answer"

CLI quick reference

graphflow graph index .                    # build the graph
graphflow context preview "orchestrator"   # preview compressed context
graphflow plan "refactor planner" --json   # plan (also seeds workbench topics)
graphflow workbench tree --json            # on-demand function DAG + side branches
graphflow run "update readme"              # orchestrate (bridge)
graphflow skill insights                   # skill insights
graphflow skill report                     # flywheel contribution report
graphflow mcp serve --http                 # stateless MCP Streamable HTTP (add --stateful for SSE sessions)
graphflow team serve                       # team graph JSON-RPC (tenant + RBAC; non-loopback requires auth)
graphflow outcome backfill --evidence evidence.jsonl  # close pending episodes with evidence packages
graphflow governance release-gate         # enforce proven-skill/fidelity/pending gates
graphflow skill sync export                # export team skill pack + golden queries (share via git)
graphflow skill sync import                # import team skill pack (MERGE; --force to overwrite) + golden merge into .graphflow/team-golden.json
graphflow route diagnose                   # routing diagnostics
graphflow learn nightly                    # nightly learning
graphflow doctor                           # install self-check

Configuration

Three-layer merge: global ~/.graphflow.config.json → project graphflow.config.json → project .graphflow/config.json. Copy graphflow.config.example.json to get started.

Key options:

Option Description
graphPolicy.transport file / memory / sqlite / auto (recommended: sqlite-first, falls back to file) / mcp-http
graphPolicy.maxContextTokens Context budget (default 1500)
graphPolicy.autoIndexOnSave Auto incremental index on save (default true)
embeddingPolicy.provider transformers (local default) / openai / hash
embeddingPolicy.vectorStorePath Vector index persistence path (.hnsw derived automatically)
skillPolicy.enableSkillFlywheel Learning flywheel switch

Team backend pilot

Set graphPolicy.transport to mcp-http to host the graph on a remote Graphify service (shared by the team); requires graphPolicy.mcpEndpoint (http(s) URL, optional mcpApiKey bearer token):

{ "graphPolicy": { "transport": "mcp-http", "mcpEndpoint": "http://graphify.team.internal:8080" } }

A missing/malformed endpoint fails at config validation; connection or runtime request failures degrade transparently to local JSON storage (graphPolicy.graphStorePath, default graphflow-out/graphflow-graph.json) with a logger.warn, consistent with the sqlite→file fallback, never interrupting the agent. HTTP 401/403 (auth / RBAC deny) do not degrade — they throw. graphflow team serve implements graph.read_snapshot and team.health; third-party Graphify servers without those methods still fall back to the local mirror. See docs/team-memory-security.md.

Benchmarks

  • Comprehensive: COMPREHENSIVE-RESULTS.md — P1–P6 six-dimension evaluation, overall 92.9% (indexing 100% / compression 64.9% / planning 100% / learning 100% / bridge 100% / performance 99.7%)
  • Independent-style: INDEPENDENT-RESULTS.md — CodeGraph-style 5-domain evaluation, Hit@5 96%, token savings 96.6%, overall 96.2%
  • SWE-bench-style: SWE-BENCH-RESULTS.md — self-built 12-instance context-readiness eval; SWE-BENCH-REAL-RESULTS.md — Flask real-project 10-instance file-recall eval (48.3%)
  • Token savings: RESULTS.md — 8 representative queries, 98.2% savings, re-counted with independent gpt-tokenizer
  • Retrieval quality: RETRIEVAL-EVAL-RESULTS.md — 132 queries, Hit@5=100%, MRR=0.836, NDCG@5=0.601
  • Skill flywheel A/B: SKILL-AB-RESULTS.md — injection rate 100%, recall 100%, overhead 25.6 tok/task

VS Code / Cursor extension

Download graphflow-<version>.vsix from GitHub Releases (or Open VSX: roarpeng.graphflow).

Commands: Settings / Show Graph (graph visualization) / Preview Context / Plan & Brainstorm / Run Task / Skill Insights / Install MCP; chat agent @graphflow (/run /plan /graph /skills /diagnose /learn /history).

Agent Plugins 1.0

Primary install path for hosts that support Agent Plugins. GraphFlow ships as a portable package at the repository root:

plugin.json              # Agent Plugins 1.0 manifest
mcp.json                 # stdio MCP (type required by the spec)
skills/graphflow/SKILL.md

Install in Cursor (local):

mkdir -p ~/.cursor/plugins/local
ln -s /absolute/path/to/GraphFlow ~/.cursor/plugins/local/graphflow
# then Restart Cursor / Developer: Reload Window

Install via Team Marketplace / Git: import this repository; clients discover plugin.json, then load skills/ and mcp.json.

Docs: Context Engineering contract · Experience memory

Uninstall: Removing the Agent Plugin in Cursor only drops the plugin package. Skills/Rules/MCP written by graphflow install remain and will keep steering the agent — run:

npx @roarpeng/graphflow uninstall

That removes user + workspace MCP entries, skills/graphflow folders, GraphFlow rules/instruction blocks, Claude Code hooks, and the DeepSeek Harness cordis.patch.yml overlay. Also delete any local symlink under ~/.cursor/plugins/local/graphflow if you used one.

DeepSeek Harness 插件(用法与能力)

GraphFlow 是 DeepSeek Harnessdsh-plugin。包内 dsh.bundle + cordis.patch.yml 会把 GraphFlow MCP 挂到内置 @deepseek-ai/dsh-mcp-client,并把 @roarpeng/graphflow/dsh glue 插入插件树。模型看到的工具名是 mcp__graphflow__graphflow_*。中文说明见 README.zh.md

在 dsh 上能工作 vs 不能工作:

能力 dsh
10 个 MCP 工具(mcp__graphflow__graphflow_*),stdio cwd = 会话工作区
Skill(on-demand skill({name:"graphflow"});bundle glue 注册,不必先 graphflow install
会话结束飞轮:仅 agent/disposed 关闭 pending episode(不是 live session/flushGRAPHFLOW_AUTO_CAPTURE=0 可关)
首轮短 hint:先调 graphflow_contextrootDir = cwd)
Workbench 数据(topicId / outline)经 MCP graphflow_context / graphflow_diagnose
VS Code/Cursor 图谱面板、Settings webview、Workbench Tree、@graphflow chat (宿主 UI,不移植)
Cursor Agent Plugins 1.0 发现 (dsh 用 dsh.bundle
Claude Code SessionStart/End/Stop 文件 hooks (dsh analog 是上面的 glue)

装进某个 profile(推荐):

dsh plugin --profile web add @roarpeng/graphflow
npx @deepseek-ai/dsh web

或在已有 ~/.dsh 时写 home 级 overlay(对所有 profile 生效):

npx @roarpeng/graphflow install

会写入 $DSH_HOME/cordis.patch.yml(MCP + glue)与 $DSH_HOME/skills/graphflow/SKILL.md。卸载:npx @roarpeng/graphflow uninstall,或 dsh plugin --profile web remove @roarpeng/graphflowgraphflow doctor 会检查 overlay、glue、skill。

用法: 第一轮先 mcp__graphflow__graphflow_context(传入 rootDir = 仓库绝对路径),复杂任务再 graphflow_plan;改完代码后 graphflow_index;若走了 graphflow_run,结束后必须 graphflow_report_outcome。不要在 patch 里写死 GRAPHFLOW_WORKSPACE_ROOT

Agent integrations

Use npx @roarpeng/graphflow install as the fallback when you need Rules, multi-agent wiring, or a host that does not load Agent Plugins:

npx @roarpeng/graphflow doctor     # detect installed agents
npx @roarpeng/graphflow install    # auto-install MCP + Skill + Rules
npx @roarpeng/graphflow uninstall  # remove MCP + Skill + Rules + hooks
npx @roarpeng/graphflow init       # write a minimal project config

Supported: Cursor, VS Code, Trae (incl. CN), Claude Code, Windsurf, Cline, Roo Code, Kilo Code, Gemini CLI, Codex, Antigravity, Opencode, Qoder, Amazon Q, Zed, Continue, DeepSeek Harness (dsh), Kimi Code CLI, and more (15+). Every registered host goes through the HostAdapter registry (installViaHostAdapter); the legacy installers now only cover host-scoped extras (Trae user Skills, project-level rules).

Path When to use
Agent Plugins Preferred single-host Skill + MCP discovery
graphflow install Rules / multi-agent / non-plugin hosts
graphflow uninstall After removing a plugin (or anytime) — clears leftover Skill/MCP/Rules

Protocol

ATP/IR — Agent Thinking Protocol public specification v1.0: work-item registry, submit/merge contract, compatibility rules. Third-party tools can implement compatible producers / consumers. Minimal Producer example: examples/atp-minimal-producer/. Dual-MCP compose snippet (GraphFlow + Serena, config only): examples/graphflow-serena.mcp.json.

Community

GraphFlow is a single-maintainer project (bus factor = 1); community collaboration is the key to reducing single-point risk. Contributions welcome:

  • Contributing guide: dev environment, code style, test requirements and PR checklist
  • Roadmap: completed milestones and next steps (P0–P2)
  • Issues: bug reports and feature requests (please use the built-in templates)
  • Discussions: questions and ideas

Development

npm install
npm run ci        # lint + build + tests + extension packaging + smoke

Requires Node.js ≥ 20, npm ≥ 10. Expected: lint clean, build succeeds, 961 tests pass.

Project structure

GraphFlow/
├── plugin.json         # Agent Plugins 1.0 manifest
├── mcp.json            # Agent Plugins MCP (stdio)
├── cordis.patch.yml    # DeepSeek Harness (dsh) bundle layer (MCP + glue)
├── dsh/plugin.mjs      # dsh ESM glue: skill register + session-end capture
├── skills/graphflow/   # portable Agent Skill (canonical SKILL.md)
├── src/
│   ├── core/           # orchestration core: orchestrator, triage, dag-engine, agent-delegation
│   ├── graph/          # indexing, context slicing, graph compression, sqlite/auto storage, snapshot
│   ├── routing/        # model routing and health probes (5 providers)
│   ├── learning/       # embeddings, episodic, skill-flywheel, hnsw, nightly
│   ├── agents/         # ATP schema, planner, insight, brainstormer
│   └── surfaces/
│       ├── cli/        # CLI + runtime
│       └── mcp/        # MCP server (10 tools)
├── tests/              # 142 files / 961 tests (incl. governance foundation and MCP HTTP/stdio matrix)
├── benchmarks/         # comprehensive + independent + SWE-bench + token savings + skill A/B (reproducible)
├── docs/               # ATP spec + context contract + experience memory + flywheel reproduction + GraphFlow/Serena
├── examples/           # ATP producer + team-memory config + GraphFlow/Serena dual-MCP snippet
├── vscode-extension/   # VS Code panel and commands
└── CHANGELOG.md

Changelog

Full history in CHANGELOG.md. License: Apache-2.0.

有意识地管理

安装与管理

前置条件与目标 Profile

目标 Web Profile

交付方式 Git Bundle — Roarpeng/GraphFlow#950670ebc158fc6da77f9c12e04917e87d2ce5e4

验证、更新与移除

显示生命周期命令
验证
dsh plugin --profile web list

兼容性与访问范围

DSH bundle; Node.js >=20 and npm >=10 required Not declared in supplied evidence

检查兼容性证据

风险事实

lifecycle-scripts

Install lifecycle scripts are declared

证据
local-project-data

Indexes workspace code and retains graph-based project memory

证据
证据与编辑审查Manifest、Bundle patch、分发与新鲜度

不可变证据

审查状态与源码活动

AI 已审查

建议优先使用固定提交的 Git bundle 路径;在敏感环境安装前请审查已声明的生命周期脚本。

AI 审查于 2026/9/10 UTC 14:00GitHub 事实核对日期: 2026/9/10 UTC 14:00

自当前证据基线以来,没有记录到重要源码变化。

下一步

按 Plugin 安装流程操作

订阅重要变化: GraphFlow