dsh-aoci
Verifieddsh-aoci · v0.2.0 · MIT · Web UI
AOCI-CODE cognition layer for DeepSeek Harness: one-shot /aoci command + dynamic MCP bridge for governed, Git-versioned repository/database cognition.
Install
dsh plugin add dsh-aoci Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Tags
Creators
Readme
dsh-aoci
面向 DeepSeek Harness 的 AOCI-CODE 认知层:一条斜杠命令即可让 AI 获得受治理、Git 版本化的仓库与数据库认知。
English | 简体中文
摘要
dsh-aoci 将 AOCI-CODE(实现 AOCI——AI 面向认知基础设施——范式的本地优先 stdio MCP 服务器与 Go CLI)接入 DeepSeek Harness(DSH)插件生态。它将确定性治理(初始化、基线建立、验证)与语义创作(由模型在 AOCI 治理协议约束下撰写 FRAS 条目)相分离,并通过三个互补的模型可见面暴露认知:
- 九个 MCP 工具(
mcp__aoci-<slug>__aoci_rules/aoci_overview/aoci_get_entries/aoci_search/aoci_maintain/aoci_update_entry/aoci_remove_entry/aoci_header/aoci_report),由动态 MCP 桥按需注册,免去"每仓库一条静态配置 + 重启"; - 十一个确定性工具(
aoci_status、aoci_verify、aoci_check、aoci_scan、aoci_panel、aoci_use、aoci_unbind、aoci_relations、aoci_impact、aoci_lineage、aoci_db),承担治理、System Cognition 查询、数据库预检与智能体自主选路; - 一键斜杠命令
/aoci [路径]:带路径时解析(绝对路径,或相对defaultRoot);不带路径时自动定位当前会话工作区仓库;条件初始化/建基线 → 绑定 MCP 桥 → 经agent.steer向当前智能体提交建索引指令——一次调用完成认知接入。可选标志:--locale、--scope、--agent、--skip-scan、--db。
AOCI-CODE 采用 FSL-1.1-MIT(source-available)许可;本插件不捆绑其二进制——仅引导从官方发布渠道下载并做 SHA-256 校验。
适用范围与兼容性
- 实测运行环境:DSH Desktop >= 2.7.0(API ^1.2.0);harness 运行时 ^0.1.1-rc.1 || ^0.1.5-alpha.1(cordis ^4.0.2);web profile。
- Peer 依赖(宿主启动时提供):
@deepseek-ai/cordis、dsh-settings、dsh-system-prompt、dsh-tools、dsh-jobs、dsh-llm、react、react-dom。 - 运行时依赖:
schemastery、@modelcontextprotocol/sdk。 - 前置二进制:官方 AOCI-CODE Release 下载并 SHA-256 校验的
aoci(默认C:/aoci/bin/aoci.exe)。
模型可见面
| 面 | 名称 | 用途 |
|---|---|---|
| 认知读取 | mcp__aoci-<slug>__aoci_rules、...__aoci_overview、...__aoci_get_entries、...__aoci_search |
加载与检索受治理的认知地图 |
| 认知维护 | ...__aoci_maintain、...__aoci_update_entry、...__aoci_remove_entry |
协议约束下的增量更新 |
| 认知证据 | ...__aoci_header、...__aoci_report |
索引身份与 attestation |
| 确定性治理 | aoci_status、aoci_verify、aoci_check、aoci_scan、aoci_panel |
健康、验证、基线、面板(status 同时报告 git head/工作区漂移) |
| System Cognition | aoci_relations、aoci_impact <object>、aoci_lineage |
依赖投影、影响分析、来源绑定链 |
| 数据库预检 | aoci_db <source> |
只读 database source access 预检(凭据仅环境变量引用) |
| 智能体自主选路 | aoci_use <路径>、aoci_unbind <slug> |
按需绑定/解绑仓库 |
| 斜杠命令 | /aoci <路径> |
一键接入(绑定 + 指示 AI 建索引) |
架构
DSH Web GUI (client) ── RPC/HTTP ──▶ DSH Host 半边(本插件)
│ ctx.tools 动态注册
▼
aoci mcp(stdio,按需拉起)
│ 九 MCP 工具
▼
仓库认知资产(aoci.txt 等,Git 版本化)
- 双面插件:包根为宿主(Node)半边;
./client导出为浏览器半边,经 DSH 的__ModuleLoader__.load协议注册。状态账本持久化于 profile 隔离的state/aoci/(projects.json、runs.jsonl)。 - 动态 MCP 桥(
AociBridge):经 Nodechild_process拉起aoci --repo <root> mcp,以@modelcontextprotocol/sdk的StdioClientTransport+Client连接,发现九工具并注册到ctx.tools;解绑时注销并终止进程。 - AOCI 治理语义(实测固化):
init仅对未初始化仓库执行(探测aoci.txt);scan仅在没有基线时执行(探测.aoci/baseline.json);既有基线以无参aoci_maintain+ 整批aoci_update_entry维护,由verify/check证明。 - 一键命令:
/aoci [路径](无参自动定位当前工作区)经ctx.inject(['commands'], …)注册,并以agent.steer(createUserMessage(...))(plan-mode 提交模式)提交建索引指令。 - 压缩契约桥接:
compactAociResults(将 Whole-Index 正文折叠为 receipt 的纯函数)与compaction/end恢复钩子(installAociCompactionGuard)将 AOCI 压缩纪律对齐到 DSH 会话压缩。
安装
前置
- DeepSeek Harness profile(desktop >= 2.7.0 / runtime ^0.1.5-alpha.1 线)。
- 从官方 AOCI-CODE Release下载
aoci二进制(如aoci_0.1.0-rc18_windows_amd64.zip),对照发布的SHA256SUMS做 SHA-256 校验,放到稳定绝对路径(默认C:/aoci/bin/aoci.exe)。
步骤
cd <插件工程目录>
pnpm install
pnpm check # typecheck + 单测 + 构建
pnpm pack # dsh-aoci-<version>.tgz
dsh plugin --profile <name> add ./dsh-aoci-<version>.tgz
# 重启 DSH Desktop 后,在输入框执行:
# /aoci D:\path\to\repo (绝对路径)
# /aoci ./relative (需先配置 defaultRoot)
/aoci 之后,智能体将构建索引(rules → 完整 Overview → 分批 Maintain → verify/check → aligned)。后续会话复用同一份 Git 版本化认知;任务收尾自动维护。
配置参考
| 键 | 默认值 | 说明 |
|---|---|---|
binaryPath |
C:/aoci/bin/aoci.exe |
已验证 aoci 二进制的稳定绝对路径。 |
defaultRoot |
``(空) | /aoci 与 aoci_use 相对路径的解析基准目录。 |
mcp.serverNamePrefix |
aoci |
动态注册 MCP 工具的命名空间前缀。 |
mcp.toolCallTimeoutMs |
120000 |
桥接 MCP 工具的单次调用超时。 |
projects[].root / slug / locale |
— | 静态项目(可选;动态绑定无需预配置)。 |
projects[].dbSources[] |
[] |
数据库数据源(sourceId、engine、databaseName、namespace、credentialEnv)。 |
projects[].schedule.cron |
0 3 * * * |
夜间健康检查(默认仅 verify)。 |
验证方法
插件经四种互补方式验证:
- 单元测试(15 例):slug/凭据引用派生、五段 cron 匹配、MCP 条目组装、压缩折叠、schema 默认值、相对路径解析。
- 端到端链路(真实
aoci0.1.0-rc18 二进制 + 真实 Git 仓库 + MCP SDK):init成功;scan建立基线(6 文件 / 586ms);verify输出 JSON;九个 MCP 工具全部发现;aoci_header经 MCP 返回索引身份。 - 集成自测(真实 Cordis 上下文 + 命令注入):
/aocihandler 注册、绑定 9/9 工具、agent.steer提交成功。 - 加载器合成:
dsh --profile web --dump-config无错误解析插件条目与配置。
已知局限
- 应用完全退出后不承诺后台调度继续执行。
- 首次建索引耗时随规模增长(约 1 小时 / 20 万行)且消耗 API 额度。
- 动态桥进程生命周期管理(崩溃重连)仍可强化。
- 数据库认知(MySQL/PostgreSQL/openGauss 表级 FRAS)与
aoci ui面板内嵌为后续里程碑。
安全说明
- 凭据仅以环境变量名引用(
AOCI_DB_<ID>_DSN);插件从不存储或嵌入密钥。 aoci二进制从官方 Release 下载并 SHA-256 校验;不捆绑、不分发(FSL-1.1-MIT)。- MCP/子进程环境在合并显式覆盖前会清洗形似凭据的变量。
- 所有
/aoci/*面板路由仅限 loopback。
致谢
- AOCI-CODE 团队与《AOCI: Symbolic-Semantic Indexing for Practical Repository-Scale Code Understanding with LLMs》作者(arXiv:2605.02421)—— 受治理的认知范式与本地优先 MCP 服务器是本插件的基础。
- DeepSeek Harness SDK 团队 —— 沙箱上下文与注入声明、
ctx.tools、ctx.commands、__ModuleLoader__.load前端契约等插件协议。 dsh-task-board(@linxin666/dsh-web-ui)与dsh-better-sidebar(omdsh-dev/DSH-better-sidebar)维护者 —— 双面插件架构与清单协议的直接参照。dsh-plan-mode(@deepseek-ai/dsh-plan-mode) ——ctx.inject(['commands'], …)注册与agent.steer提交模式。- 早期试用者与审阅者 —— 真实环境反馈驱动了 0.1.x 修复周期。
完整版本历史与致谢见 RELEASE.md。
许可与归属
MIT License(见 LICENSE)。AOCI-CODE 采用 FSL-1.1-MIT(source-available,github.com/aoci-spec/aoci-code);本项目不持有、不分发 AOCI-CODE 二进制。设计文档见 docs/DESIGN.md。