dsh-acp-demo/packages/examples/acp-demo官方

175.3kStar19.0kFork0Issue752Watching

ACP 自动化服务器应用,提供无 UI 的 agent spine、JSONL 持久化和语义 checkpointing,通过 JSON-RPC stdio 与程序化客户端通信

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科

此插件是大仓库 deepseek-ai/deepseek-harness 的子包,星数与活跃度统计的是整个仓库。

语言
TypeScript
License
MIT
分支
master
ai-agentscordisdshdsh-plugin

安装

$ dsh plugin --profile web add npm:@deepseek-ai/dsh-acp-demo

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 deepseek-ai/deepseek-harness/packages/examples/acp-demo:先查看仓库 https://github.com/deepseek-ai/deepseek-harness 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

English | 中文

ACP automation server app: the default agent spine, client-created agents through @deepseek-ai/dsh-acp, JSONL persistence, and semantic checkpointing behind one JSON-RPC stdio bin. Programmatic clients create fresh sessions; this package mounts no human UI.

Composition

PluginRole
@deepseek-ai/dsh-agent-spine-demoProviderless agent spine with no pre-created agents; session/new creates each agent.
@deepseek-ai/dsh-session-persistence-jsonlDurable session logs used by checkpointing, observability, and snapshot replay.
@deepseek-ai/dsh-session-checkpoint-policyDurability barriers before model calls and top-level tool effects, plus completed-step checkpoints.
@deepseek-ai/dsh-session-query-sqliteDerived exact/FTS session-query service, opened before the ACP transport so leaf consumers are ready for the first model request.
@deepseek-ai/dsh-acpAutomation-only ACP transport over stdin/stdout.

The app does not install commands, user interaction, session navigation, configuration pickers, or a stdout logger. It owns these plugins through one ordered effect so the query service is ready before ACP accepts work and ACP sessions quiesce before checkpointing and persistence detach. Leaf configurations supply LLM, executor, sandbox, approval, filesystem, and model-facing tool plugins.

Config

KeyDefaultRouted to
providerrequiredProvider route for each ACP-created agent.
modelrequiredModel for each ACP-created agent.
maxParallelToolCallsagent-loop defaultPositive-integer tool-call concurrency cap; 1 is serial.
personaDeployment persona template for dsh-system-prompt.
toolOrderlexicographicExplicit model-facing tool order for dsh-system-prompt.
tools{ mode: 'native' }Native, Code Mode, or combined model tool transport.
dshHome$DSH_HOME or ~/.dshHarness home shared by bash and local skill discovery.
sessionTitlespine example limitsDurable fallback-title limits; titles remain off the ACP wire.
persistenceRoot./.sessionsJSONL backend root and parent directory of the derived session-query.db index.
packChunkstruePack consecutive delta-chunk events in storage.
persistenceCompressionzstdChecksummed Zstandard frames or raw none.
workspaceContextrequiredWorkspace-instruction byte budget/config, or false.
skillsowner defaultsSkill registry, local provider, and model-facing skill tool.
toolBashowner defaultsModel-facing bash tool config.
jobs{ maxConcurrentJobsPerOwner: 10 }Process-local per-owner active-task admission.
toolJobsowner defaultsGeneric background-job control config, or false.
goalsowner defaultsPersisted same-session goal domain and model tools, or false.

The shipped examples/acp-agent/cordis.yml adds the DeepSeek adapter, sandboxed bash and filesystem providers, one-shot approval policy, compaction, subagents, workflows, hooks, and model-facing tools. The app supplies the derived session-query index, while the model-facing query consumer remains an explicit leaf opt-in. Snapshot overlays replace only nondeterministic providers or policy values.

Bin

dsh-acp-demo [--config path-to-cordis.yml] (short form -c; default ./cordis.yml) loads the gitignored .env, except in replay mode; DSH_SNAPSHOT=replay selects the sibling cordis.snapshot.yml; stdin EOF disposes the context and flushes sessions before exit. Loader's installed optional node-addon-require-builtin peer resolves bare plugin specifiers for the built bin under plain Node. Diagnostics use stderr because stdout is the ACP wire.

Model Experience

Indirectly, through dsh-agent-spine-demo and the leaf's model-facing plugins. ACP prompt text becomes the ordinary logged user message; protocol metadata and permission choices do not enter the model request.

KV Cache effect

Append-only per session; the app adds no request-prefix content itself.

Known Limitations and Deferred Work

  • JSONL persistence is fixed — a different backend requires another composition.
  • Sibling plugins can corrupt stdout — the app cannot prevent another entry from writing non-protocol bytes.
  • Fresh automation sessions only — resume and human interaction belong to other entry points.

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/deepseek-ai/deepseek-harness/packages/examples/acp-demo)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录
dsh-acp-demo/packages/examples/acp-demo — DeepSeek Harness 插件 | deepseek-plugin.org