🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

ECC 工作约定 denceee/dsh-everything-claude-code

DeepSeek Harness
denceee21 天前有提交已提供中文文档扫描:含敏感能力

为会话装上测试先行与安全审查的工程规范

29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/12 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add denceee/dsh-everything-claude-code
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · skill
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 21 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 14 处,展示前 9 条)
  • 读取本地文件
    index.js:79
    if (!existsSync(SKILLS_DIR)) return [];
  • 读取本地文件
    index.js:81
    for (const entry of readdirSync(SKILLS_DIR)) {
  • 读取本地文件
    index.js:83
    if (!statSync(dir).isDirectory()) continue;
  • 读取本地文件
    index.js:85
    if (!existsSync(file)) continue;
  • 读取本地文件
    index.js:87
    const { attributes } = parseFrontmatter(readFileSync(file, 'utf8'));
  • 读取本地文件
    index.js:139
    if (!existsSync(full)) return 0;
  • 写入本地文件
    index.js:221
    mkdirSync(dirname(file), { recursive: true });
  • 写入本地文件
    index.js:222
    appendFileSync(file, `${line}\n`, 'utf8');
  • 发起网络请求
    client.js:199
    fetch(STATUS_ROUTE, { signal: controller.signal })
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 测试先行规范
  • 安全审查
  • 中文设置页

把 everything-claude-code 适配到 DeepSeek Harness:11 个技能、一套 ECC 智能体预设、改造过的 Claude Code 钩子,还有一个中文设置页。

README

由 DeepSeek 最新模型翻译生成
Everything Claude Code · DSH 插件 把 WorldFlowAI/everything-claude-code (下称 ECC)适配成 DeepSeek Harness(DSH)插件,包含: | 内容 | 数量 | | 技能(skills) | 11 | | 提示词(commands) | 15 | | 角色(agents) | 9 | | 规则(rules) | 8 | | 上下文(contexts) | 3 | | 钩子脚本 | 10 | | 会话模式(agent preset) | 1 | 已在 DSH 0.2.0-rc.2、desktop profile 上验证。 一、会话模式(Mode) 安装后,新会话的 Agent 预设选择器里会多出 Everything Claude Code,设置 → Agent 预设里也能看到。
展开完整文档(README 剩余 1 节)
Everything Claude Code · DSH 插件

把 WorldFlowAI/everything-claude-code (下称 ECC)适配成 DeepSeek Harness(DSH)插件,包含:

| 内容 | 数量 |
| 技能(skills) | 11 |
| 提示词(commands) | 15 |
| 角色(agents) | 9 |
| 规则(rules) | 8 |
| 上下文(contexts) | 3 |
| 钩子脚本 | 10 |
| 会话模式(agent preset) | 1 |

已在 DSH 0.2.0-rc.2、desktop profile 上验证。

一、会话模式(Mode)

安装后,新会话的 Agent 预设选择器里会多出 Everything Claude Code,设置 → Agent 预设里也能看到。选中它即启用 ECC 工作约定:

- 测试先行:先写失败的测试,再写最小实现,然后重构;覆盖率目标 80%+
- 先验证再声称完成:跑真实命令、读真实输出,绝不凭假设报成功
- 绝不硬编码密钥:从环境变量读取,缺失就报错
- 不可变数据、小文件优先、每次改动做安全审查
- 提示模型按需加载 tdd-workflow、verification-loop、security-review 等技能

另含完整的工具面(文件、搜索、技能加载、计划模式、压缩、子代理委派、待办、联网)和 agent-instructions,因此项目的 AGENTS.md 依旧生效。

为什么用 preset 而不是全局挂载:preset 是唯一能同时组合人格 + 工具 + 上下文的座位。全局挂载会改变每个会话;preset 让单个会话按需开启。order: 4,排在官方
standard(1) / ptc(2) / minimal(3) 之后,所以它是"可选模式"而不是抢默认位。

二、设置页面

设置 里会多出 Everything Claude Code 一项,显示插件实际发布的内容: 11 个已注册技能、每个钩子的接入点与 matcher、资源统计、迁移说明、上游仓库链接。

- 默认中文,切换界面语言时页面即时跟随,无需刷新
- 数据来自 GET /api/everything-claude-code/status(在已鉴权的 /api 围栏内),统计值每次请求现读包目录,改文件后数字即变
- 只用宿主主题令牌 --dsw-alias-* 着色,明暗主题都正常

三、安装

git clone https://github.com/<you>/dsh-everything-claude-code.git

然后用 DSH 的 plugin_manager 工具安装:

- action: install_bundle
- target: <该目录的绝对路径>

desktop profile 由 Electron 应用独占管理,dsh --profile desktop 会被拒绝,必须走 plugin_manager。

四、三个必须知道的坑

1. 阻断必须用 permissionDecision,不能用 exit 2

Claude Code 文档和 dsh-hook-protocol 源码都写着 exit 2 → block,但在 DSH 0.2.0-rc.2 实测拦不住:钩子确实运行了、stderr 也写了原因,桥却把它记成 exitCode: 1, decision: "pass",工具照常执行。

可用通道是 stdout JSON + 退出码 0:

{"hookSpecificOutput":{"hookEventName":"PreToolUse",
"permissionDecision":"deny","permissionDecisionReason":"…"}}

必须 exit 0——桥只在干净退出时解析结构化 stdout。

2. bundle patch 里 baseUrl 是 profile 根目录,不是 patch 所在目录

错:解析成 <profile>/hooks/hooks.json(不存在),钩子静默全部失效 configPath: !!js "...new URL('hooks/hooks.json', baseUrl)" 对:锚定到被安装包 configPath: !!js "...new URL('node_modules/dsh-everything-claude-code/hooks/hooks.json', baseUrl)"

3. 首次新增 client 半端必须重启 DSH

dsh-client-modules 的 pkgMeta 是只写一次的缓存,无失效路径。若进程启动时包还没声明 dsh.client,会被永久记成 null。之后改 client.js 可以热更新,但第一次出现必须重启。

五、测试

node tests/run-all.mjs

| 套件 | 项数 | 验证内容 |
| hooks.test.mjs | 18 | 每个钩子的决策符合本桥真正认的契约 |
| preset.test.mjs | 15 | preset 满足 schema,且写明 ECC 准则 |
| client-bundle.test.mjs | 14 | 浏览器工厂能加载、导出、渲染 |
| status-payload.test.mjs | 11 | 路由能应答,页面读的字段都存在 |
| skills.test.mjs | 9 | 每个技能符合真实 dsh-skill 语法 |
| bridge-parse.test.mjs | 7 | 没有事件或 matcher 被静默丢弃 |

诊断工具(读会话日志这一权威来源,不靠猜):

node tests/hook-timeline.mjs <session-dir> # 每个 matcher 何时触发、决策为何
node tests/analyze-hook-decisions.mjs <dir> # 决策与退出码分布
node tests/replay-hook.mjs '<json>' # 原始退出码 / stdout / stderr

会话日志是多个 Zstandard 帧拼接(实测一个日志 570 帧)。Node 的流式解码只返回第一帧,会解出 1 条记录而误判"日志为空"。这些脚本逐帧解码。

六、已知缺失(不是"适配完成")

1. PreCompact / SessionEnd 未移植 —— 桥不支持这两个事件,ECC 的 memory-persistence 记忆持久化能力没有复现。
2. Stop 钩子只能警告、不能阻断 —— 桥永远报 stop_hook_active: false,无条件阻断会死循环。
3. ECC 的 slash command 在此是提示词文档(DSH 的 command 是人面向的,不进模型); agent 定义是角色提示词(DSH 没有按文件注册子代理的机制)。

七、许可

MIT。上游 ECC 素材亦为 MIT,详见 NOTICE。
预览分享卡片长什么样 ↓denceee/dsh-everything-claude-code
分享 · DeepSeek Harness Hub
denceee/dsh-everything-claude-code

为会话装上测试先行与安全审查的工程规范

回到顶部