Claude Code 兼容性
dsh-cc 追求的是有用的 Claude-Code 风格工作流:你熟悉的 agent 循环、工具 名称、hooks、斜杠命令和权限模式,运行在 dsh 之上。它不是对 Claude Code 的逐字节模拟,也不以克隆每一个绑定厂商的特性为目标。
dsh-cc 不是 Claude Code,也不是 Claude Code 的包装器。
如何诚实地解读一致性
这里的兼容性按能力逐项评判,而不是一个笼统的声明。对每个能力,跟踪四个 独立的维度:
- Recognized(识别) —— dsh-cc 是否理解 Claude Code 的形式(某个 hook 事件、斜杠命令、配置键)?
- Mounted(挂载) —— 它是否真的接入了发布的 profile,还是只存在于代码库中?
- Behavior(行为) —— 底层行为是否与上游一致(full/partial/missing)?
- UX(体验) —— 用户可见的界面是否一致?
一个能力可以是已识别但未挂载,或者行为正确而 UX 不同。"partial" 不是 藏起来的脚注:它表示今天可用,但存在已知的、已记录的差异。若干行被有意 标记为 missing——要么是尚无设计,要么是该特性绑定厂商、不在兼容范围内。
唯一的事实来源
生成的 parity 矩阵按上述维度跟踪每个能力行,附证据链接和偏差说明:
它由机器可读的能力清单重新生成,因此请把它视为高于任何散文描述——包括 本页——的权威。
WARNING
下方的例子描述的是 dsh-cc v0.9.0(cdfcca16)时的状态。在依赖其中任何一项之前,请先 查看矩阵了解当前状态。
几个示例亮点(截至 v0.9.0)
- Hook 执行器 ——
command和http执行器始终开启;prompt和agent执行器由enablePromptHooks/enableAgentHooks控制,默认 关闭。Partial。 - /resume —— 列出会话,但切换由宿主负责(
dsh --resume <id>)。 Partial。 - Schedule / 提醒 —— 支持
after_seconds/at/every_seconds(>=300s);尚不支持 cron 表达式选择器。Partial。 - 后台任务 —— dsh 的 jobs 工具以 dsh 命名提供等价能力;CC 的
TaskCreate/TaskOutput/TaskStop命名未做别名。Partial。 - WebSearch 和 plan mode —— 完全一致,默认挂载。
- 设计上就不同的扩展能力 —— v0.9.0 新增了若干超出 Claude Code 的 扩展行,矩阵中标记为 divergent:
engine.moa(主对话的分层级联路由; 其路由范围仅限主会话轮次——子代理会话永远不会被分类、叠加 overlay 或 判定;overlay 激活期间,一个通知 sanitizer 会丢弃幽灵般的[model changed: …]通知;会话中途的/model选择会解除 moa,直到 回到启动模型对)、engine.acp-front-end(ACP 通道)、engine.completion-gate、engine.verify-before-retry、engine.config-snapshot、sessions.progress-rebuild(自 2026-10-16 起默认开启,此前 ships dark)和subagents.ephemeral-agents(白名单只读一次性代理)。同一版本还新增了skills.usage-telemetry——一条完全对等的能力行。 - Git worktree —— worktree 相关行(
workspace.worktree-ecosystem、workspace.worktree-launcher、workspace.worktree-lifecycle、workspace.worktree-tools)均为 behavioral/ux partial,偏差类型为 downgrade(例如 launcher--worktree会话不支持.worktreeinclude拷贝)。参见 /zh/guide/worktrees。 - Subagent 与插件 ——
subagents.isolation为 behavioral/ux partial (downgrade);plugins.rules(Cursor 方言)behavioral divergent、ux partial;settings.actor-contractbehavioral divergent、ux partial;hooks.worktree-events(WorktreeCreate/WorktreeRemove)为 behavioral/ux partial。 - 权限与 auto 模式 —— auto 模式现在是严格规则的,内容求值为 deny 优先, 与 Claude Code 一致;
permissions.rules仍为 partial。/auto-mode按设计 为 partial:它是只读自检,而不是 Claude Code 那样的配置文件编辑器。参见 /zh/reference/permission-modes。 - Workflow 引擎 ——
engine.workflow为 behavioral divergent、ux partial (只支持同会话重放,用户级目录位于$DSH_HOME下);Ralph loop 现在单独 成行,完全一致。同会话的 workflow 重放现在按请求哈希而非到达顺序匹配每条 journal 行,因此对pipeline/parallel这类并发组合器,重放与顺序无关。 - Hooks ——
SubagentStart/SubagentStop现在为 partial:它们报告固定的agent_type(general-purpose)和子代理作用域的session_id。 - 新的 dsh-cc 扩展 ——
plugins.codex-bridge和plugins.grok-bridge(第一方插件,见 /zh/guide/plugins)、plugins.foreign-rules(从会话 cwd 导入 cline/windsurf/copilot 规则文件; 用cc-foreign-rules.disabled关闭)以及engine.advisor-watchdog都标记为 divergent。/export现在是 divergent,因为它会脱敏密钥,而 Claude Code 不会。
下一步
- /zh/reference/cli ——
dsh-cc可执行文件及其参数。 - /zh/reference/commands —— TUI 中可用的斜杠命令。