Bcy2020/dsh-cc-ecosystem
| 包 | 月下载 (npm latest) | 版本 | |---|---|---| | dsh-cc-loader | | | | dsh-cc-skills | | | | dsh-cc-permissions | | | | dsh-cc-agents | | | | dsh-cc-hooks | | | | dsh-cc-mcp | | |
catalog descriptioncatalog 简介 / catalog description:让 DeepSeek Harness 用上 Claude Code 全家桶:技能、命令、规则、权限、子代理、hooks—— .claude/ 资产原样加载
Project Overview项目介绍
dsh-cc-ecosystem is a DSH plugin suite that parses Claude Code .claude/ assets (skills, commands, rules, permissions, agents, hooks, MCP) into an in-memory IR and maps them to DSH plugins, with .claude as the single source of truth and each component installable independently. Use it to reuse CC workflows and permission semantics inside DSH. Caveat: agents with isolation: worktree are blocked, and hooks/mcpServers/permissionMode fields in agent frontmatter are ignored.
dsh-cc-ecosystem 是 DSH 插件集,把 Claude Code 的 .claude/ 资产(技能/命令/规则/权限/子代理/hooks/MCP)解析为内存 IR 后映射为 DSH 插件,单一事实来源为 .claude 原文,组件可独立安装演进。适用于需要在 DSH 复用 CC 工作流与权限语义的场景。注意:isolation: worktree 的 agent 被拦截,hooks/mcpServers/permissionMode 字段在 agent 中忽略。
请帮我了解并安装插件:【dsh-cc-ecosystem】【https://github.com/Bcy2020/dsh-cc-ecosystem】
Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。
Or use CLI install (for developers)或使用命令行安装(适合开发者)
CLI Install命令行安装
dsh plugin --profile web add dsh-cc-loader dsh-cc-skills dsh-cc-permissions dsh-cc-agents dsh-cc-hooks dsh-cc-mcp
把 Bcy2020/dsh-cc-ecosystem 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-cc-ecosystem
| 包 | 月下载 (npm latest) |
版本 |
|---|---|---|
| dsh-cc-loader | ||
| dsh-cc-skills | ||
| dsh-cc-permissions | ||
| dsh-cc-agents | ||
| dsh-cc-hooks | ||
| dsh-cc-mcp |
Load Claude Code .claude/ assets (skills, commands, rules, permissions, agents, hooks) into DeepSeek Harness as a DSH plugin ecosystem.
把 Claude Code 的 .claude/ 资产(技能 / 命令 / 规则 / 权限 / 子代理 / hooks)以 DSH 插件生态的形式加载进 DeepSeek Harness。
设计核心:一个内存 IR 解析层(
dsh-cc-loader)把.claude解析成独立中间表示,不落盘、零写路径——单一事实来源永远是.claude原文,与 Claude Code 天然同步;每个 CC 组件对应一个独立插件包,可单独安装、独立演进。权限是只读桥:CCsettings.json的 allow/deny/ask 规则在 DSH 上强制,DSH 侧审批不写回.claude。
Packages
| 包 | 职责 | 状态 |
|---|---|---|
| dsh-cc-loader | 共享解析层:.claude(项目 + 全局 ~/.claude)→ 内存 IR;组件分类 DIRECT/ADAPTED/UNSUPPORTED/BLOCKED;权限规则语法解析与 deny→ask→allow 求值;agent 目录发现与分类;plugin.json 解析 + marketplace 发现 + plugin 根盘点(M4) |
✅ M1 / M4 |
| dsh-cc-skills | 适配器:IR skills/commands → DSH skill provider;rules 按 CC prependUserContext 信封注入会话(仅顶层会话) |
✅ M1 |
| dsh-cc-permissions | 适配器:tools/pre-execute 门强制 CC 权限规则;裸名 deny 隐藏工具;defaultMode=dontAsk → 审批 never;enableAllProjectMcpServers → 项目 MCP 工具自动 allow(M4);allow 规则自动应答 approval/request(含沙箱提升,CC 语义 = 免审批完整放行) |
✅ M1.5 / M4 |
| dsh-cc-agents | 适配器:.claude/agents(身份锚定子代理)→ 会话启动注入 agent 目录(CC @-mention 语义)+ cc_agent 派发工具(persona = 正文,tools/disallowedTools → toolFilter,skills 预载,model 经 modelAliases 映射);插件 agent 合并(plugin-- 命名空间, M4c) |
✅ M2 / M4c |
| dsh-cc-hooks | 适配器:发现项目/全局/插件 hooks.json → 合并 → 经 dsh-hook-protocol(官方库)按 CC 语义运行(7 事件,command 型),per-session 发现突破官方桥进程级限制 |
✅ M2 |
| dsh-cc-mcp | 适配器:发现 CC MCP 配置(项目根 .mcp.json + 插件 .mcp.json/plugin.json 内联 mcpServers)→ 经官方 @modelcontextprotocol/sdk 运行时注册为 DSH 工具(项目级 mcp__<server>__<tool>,插件级 mcp__plugin_<name>_<server>__<tool> CC 官方命名);env 值运行时展开不落盘;lazy 连接 + idle 回收 + .mcp.json 热重载 |
✅ M3 |
M4(plugin.json / marketplace / plugin 命名空间 / enableAllProjectMcpServers)已完成;6 包已发布 npm(dsh-cc-loader / dsh-cc-skills / dsh-cc-agents / dsh-cc-hooks / dsh-cc-mcp @ v0.1.2,dsh-cc-permissions @ v0.2.2),npm i dsh-cc-loader dsh-cc-skills dsh-cc-permissions dsh-cc-agents dsh-cc-hooks dsh-cc-mcp;规划中:M5 dsh-cc-misc + dsh-cc 全家桶 meta 包;LSP 桥接(mcpls)研究完成,实现待生态需求确认后启动。
实装与发布
- 安装技能(另一台电脑实装经验总结):完整的热挂载步骤 —— junction hub 依赖解析、
cordis.patch.ymlfile:///挂载(含?v=N热更新)、宿主 Loader 树验证(pluginInventory/list)、逐插件行为验证、M4 插件目录(pluginRoots)配置。 - npm 发布(v0.1.2 / cc-permissions v0.2.2,2026-09-06):6 包已全部发布;
dsh-cc-loader先发(其余包^0.1.0依赖它,cc-permissions 因 allow 规则自动应答 + marketplace peer 修复领先到 0.2.2);本机 npm 源为镜像时发布需--registry=https://registry.npmjs.org,开 2FA 的账号需 granular token + 2FA bypass。
支持的 CC 权限语义(与 Claude Code 一致)
- 规则语法
Tool/Tool(spec):Bash/PowerShell 命令 glob(*、:*后缀、词边界)、Read/Edit gitignore 路径锚定(//绝对、~/家目录、/相对 settings 源)、WebFetch(domain:…)、mcp__server__tool、Agent(name)、Skill(name)、Tool(param:value) - 求值顺序 deny → ask → allow,特异性不改变顺序;裸工具名 deny 从上下文移除工具
- Bash 复合命令拆分(
&& || ; | &等)、wrapper 剥离(timeout/nice/nohup…)、前置 env 剥离;PowerShell 别名规范化(del/rm/ri→Remove-Item) - Read deny 同时拦 Edit/Write 工具与 Bash 文件命令(
cat/head/tail/sed…) - Windows 路径 POSIX 化(
C:\Users\alice→/c/Users/alice,规则写//c/**) - Bash 与 PowerShell 是独立工具(
Bash(rm -rf *)不覆盖 pwsh),规则各自生效
支持的 CC agents 语义
.claude/agents/*.md(项目 > 全局优先级):frontmatter 支持官方 16 字段(name/description/tools/disallowedTools/model/skills/background/initialPrompt/maxTurns/effort/memory/color/permissionMode/mcpServers/hooks/isolation)+ 社区扩展context;正文 = 系统提示词cc_agent派发:persona 通道注入身份;tools白名单 →toolFilter.allow,disallowedTools黑名单 →toolFilter.deny(CC 桶名如Read/Bash自动展开为 DSH 工具名);skills预载全文;model只经modelAliases映射(CC 模型名不直传)- 分类:
isolation: worktree→ BLOCKED 不出现在目录;hooks/mcpServers/permissionMode→ UNSUPPORTED 忽略并报告(CC 对插件 agent 同样禁止)
安装
推荐:新机器按 DSHCCECO-INSTALL-SKILL.md 的 junction hub +
cordis.patch.yml热挂载(已在另一台电脑实装验证)。
# 先装共享库,再装插件(开发期本地 checkout 需在包内 pnpm link ../cc-loader)
dsh plugin --profile <name> add dsh-cc-loader dsh-cc-skills dsh-cc-permissions dsh-cc-agents dsh-cc-hooks dsh-cc-mcp
本地 patch 挂载(Web profile 热更新)见各包 README;Windows 绝对路径必须 file:/// 前缀。
HMR 提示:改插件源码后需重启 GUI 生效(hmr watcher 只可靠监视 profile 目录内文件);
cordis.patch.yml覆盖已存在条目(bundle 里的)要用非 insert 顶层条目按 id 定位,- insert:只追加不覆盖。
验证
- 单元测试:
node --test test/— 共 164 用例全绿(含 loader、agents、hooks、mcp、permissions、plugin、LSP 等;hooks 矩阵由并行工作线维护) - 端到端验证:各包自带 smoke test(
packages/cc-mcp/test/mcp-smoke.test.mjs、packages/cc-permissions/test/gate.test.mjs、packages/cc-skills/test/scope.test.mjs、packages/cc-agents/test/persona.test.mjs) - 真实插件实测:obra/superpowers v6.3.0 → 14 技能零警告,
plugin-superpowers-*命名空间 + 斜杠调用 + 模型调用全部验证通过
License
MIT — dsh-cc-skills 为 dsh-claude-compat(MIT, © biedongbin) 的派生;dsh-cc-loader 的发现逻辑亦源自该基座。hooks 语义基于官方 @deepseek-ai/dsh-hook-protocol。
lusblead/dsh-Kingdom
Guard42/dsh-humanize
Minglink/dsh-infinite-gen-4
howmp/dsh-pentest
SeaOf0/dsh-redteam-model