Skip to content

feat: 五方向认知升级定稿实装 — E安全模块 + C集成模块 + 验证体系 + 设计资产 - #2

Open
Liber1917 wants to merge 43 commits into
mainfrom
e-modules-impl
Open

feat: 五方向认知升级定稿实装 — E安全模块 + C集成模块 + 验证体系 + 设计资产#2
Liber1917 wants to merge 43 commits into
mainfrom
e-modules-impl

Conversation

@Liber1917

Copy link
Copy Markdown
Owner

概要

基于「Agent 认知升级」五方向(A 联网/B 环境/C 具身/D 控制/E 安全)调研定稿的首次大规模实装。

变更内容

1. setup-opencode.sh 新增步骤 12「安全与能力增强」(SKIP_SECURITY=1 可跳过)

  • 部署 e-modules 到 ~/.config/opencode/opencode-setup-modules/
  • 权限红线合并(53 条 bash 规则: 18 deny / 7 ask / 23 allow + edit 9)
  • 审计初始化(JSONL + 密钥脱敏 + 熔断器 + 30 天轮转)
  • 安全自检(密钥治理/offline/provenance/注入扫描)+ AGENT-CARD 生成
  • 合规文档(CN/EU 双地区)

2. e-modules/ — E 方向六模块落地

模块 文件 实测
权限红线 gen-permissions.sh ✅ 53 规则 JSON 合法
审计 audit-init.sh ✅ 脱敏+熔断验证通过
安全自检+AGENT-CARD security-check.sh ✅ 4通过/3警告/0失败
合规 gen-compliance.sh ✅ CN/EU 双版
devcontainer(C 档) devcontainer/ 静态验证
bwrap(B 档) bwrap-setup.sh 静态验证

3. c-modules/ — C 方向集成(集成而非自研)

  • 通道① 用户偏好 recall → mem0(Apache-2.0, 原生支持 OpenCode)
  • 通道② 流程改进 → SkillOpt-Sleep(MIT, 官方支持 OpenCode transcripts)
  • 双通道审批设计(轻/重审批分离, spec C-2)

4. benchmarks/ — 验证体系 + 实测报告

  • VERIFICATION-PIPELINE.md(四关验证: 静态碰撞/动态帕累托/碰撞裁决/泛化)
  • skill-overlap(38×38 矩阵)/ triple-gate(33 skill 三关)/ collision-bench(碰撞裁决 3 次采样)/ graphify-vs-codegraph(五仓光谱)

5. preset-skills/ — ai-communication 沟通协议

6. docs/design/ — 五方向规格 + 调研报告(HTML+MD)

测试

  • ✅ bash -n 全部脚本语法通过
  • ✅ Docker ubuntu:22.04 干净容器实测: 权限合并/审计初始化/安全自检全链路
  • ✅ 降级路径(无 python3)不崩
  • ⚠️ 完整 12 步安装流程未在本 PR 重跑(与 main 的 1-11 步无变更, 仅追加 12)

设计文档

docs/design/harness-env-awareness-spec.md(五方向定稿)与 docs/design/VERIFICATION-PIPELINE.md(验证体系)

- 新增步骤12: 部署e-modules(权限红线/审计/安全自检/合规)到CONFIG_DIR, SKIP_SECURITY=1跳过
- e-modules/: gen-permissions(53条规则)/audit-init(脱敏+熔断+轮转)/security-check(自检+AGENT-CARD)/gen-compliance(CN/EU)
- benchmarks/: VERIFICATION-PIPELINE(四关验证体系)+ skill-overlap + triple-gate + collision-bench + graphify-vs-codegraph
- preset-skills/: ai-communication(沟通协议)
- 步骤号 1-12 分母统一
- 依据: harness-env-awareness-spec.md 五方向定稿
@ecc-tools

ecc-tools Bot commented Aug 28, 2026

Copy link
Copy Markdown

Analyzing 200 commits...

@ecc-tools

ecc-tools Bot commented Aug 28, 2026

Copy link
Copy Markdown

Analysis Complete

Generated ECC bundle from 3 commits | Confidence: 60%

View Pull Request #3

Repository Profile
Attribute Value
Language TypeScript
Framework Not detected
Commit Convention conventional
Test Directory separate
Changed Files (63)
Metric Value
Files changed 63
Additions 14930
Deletions 12

Top hotspots

Path Status +/-
benchmarks/skill-overlap/skill-data/jaccard_pairs.json added +705 / -0
benchmarks/skill-overlap/skill-data/superpowers/writing-skills.md added +679 / -0
docs/design/agent-cognition-report.html added +602 / -0
benchmarks/skill-overlap/skill-data/superpowers/subagent-driven-development.md added +568 / -0
benchmarks/skill-overlap/skill-data/agent-skills/security-and-hardening.md added +499 / -0

Top directories

Directory Files Total changes
benchmarks/skill-overlap/skill-data/agent-skills 24 7208
benchmarks/skill-overlap/skill-data/superpowers 14 3377
docs/design 6 1761
benchmarks/skill-overlap/skill-data 3 835
e-modules 5 493
Analysis Depth Readiness (evidence-backed, 50%)

ECC Tools uses this to decide whether recommendations should stay at commit-history/setup guidance or expand into CI, security, harness, reference-set, AI-routing, and team backlog work.

Area Status Evidence / Next Step
Commit history Partial 3 commits sampled
CI/CD signals Missing Add workflow files or CI troubleshooting evidence so ECC Tools can reason about pipeline setup.
Security evidence Ready benchmarks/skill-overlap/skill-data/agent-skills/security-and-hardening.md, e-modules/audit-init.sh, e-modules/security-check.sh
Harness configuration Missing Add Claude, Codex, OpenCode, Zed, dmux, MCP, plugin, or cross-harness config evidence for harness-agnostic recommendations.
Reference/eval evidence Ready benchmarks/VERIFICATION-PIPELINE.md, benchmarks/collision-bench/report.md, benchmarks/graphify-vs-codegraph/report.md
AI routing and cost controls Ready benchmarks/skill-overlap/skill-data/agent-skills/planning-and-task-breakdown.md, benchmarks/skill-overlap/skill-data/superpowers/executing-plans.md, benchmarks/skill-overlap/skill-data/superpowers/writing-plans.md
Team handoff and project tracking Missing Add roadmap, runbook, project, Linear, or follow-up tracking docs so generated work can land in a team queue.
Reference Set Readiness (2/7, 29%)
Area Status Evidence / Next Step
Deep analyzer corpus Missing Add analyzer fixture, golden, benchmark, or reference-set files that can catch analyzer regressions.
RAG/evaluator comparison Present benchmarks/VERIFICATION-PIPELINE.md, benchmarks/collision-bench/report.md, benchmarks/graphify-vs-codegraph/report.md
PR salvage/review corpus Missing Add stale-PR, review-thread, reopen-flow, or salvage reference cases for queue cleanup automation.
Discussion triage corpus Missing Add public discussion triage fixtures, golden cases, or reference sets for informational, answered, and no-response classifications.
Harness compatibility Missing Add cross-harness, adapter-compliance, or harness-audit evidence for Claude, Codex, OpenCode, Zed, dmux, and agent surfaces.
Security evidence Present benchmarks/skill-overlap/skill-data/agent-skills/security-and-hardening.md, e-modules/audit-init.sh, e-modules/security-check.sh
CI failure-mode evidence Missing Add captured CI failure logs, dry-run fixtures, or troubleshooting docs for common workflow failure modes.
Generated Instincts (6)
Domain Count
git 2
code-style 3
testing 1

After merging, import with:

/instinct-import .claude/homunculus/instincts/inherited/opencode-setup-instincts.yaml

Files

  • .claude/ecc-tools.json
  • .claude/skills/opencode-setup/SKILL.md
  • .agents/skills/opencode-setup/SKILL.md
  • .agents/skills/opencode-setup/agents/openai.yaml
  • .claude/identity.json
  • .codex/config.toml
  • .codex/AGENTS.md
  • .codex/agents/explorer.toml
  • .codex/agents/reviewer.toml
  • .codex/agents/docs-researcher.toml
  • .claude/homunculus/instincts/inherited/opencode-setup-instincts.yaml

ECC Tools | Everything Claude Code

…opencode 拒绝未知字段) ②webfetch 改为 Action 字符串(非对象)
修复(评审实测驱动):
- U-1 setup 相对路径静默跳过安全模块 → SCRIPT_DIR 绝对化
- U-2 /tmp/.perm.json 固定路径符号链接攻击面 → mktemp+trap
- G-1 gen-permissions 零参自覆写 → 显式参数解析(case 分离)
- W-1 webmap 注入扫描 fail-open → fail-closed(grep 缺失/异常=拒绝)
- W-2 name 路径穿越 → 清洗白名单+限长
- A-1 审计 JSONL printf 拼接损坏 → python json.dumps 组装(实测引号命令合法)
- A-2 熔断器假连续 → 末尾连续计数(实测交错0告警/连续1告警)
- U-3 路由自检 grep -c 双行值 → 单值化
- U-4 权限合并假成功回显 → MERGE_OUT 门控
- O-1/O-2/O-3/O-6 opstate 假成功+rtk依赖+sed注入+格式漂移 → require_task+转义+整行改写
- C-1 self-portrait python 源码内插 → 环境变量传参(实测注入免疫)
- P-1/P-2/P-3/P-4 plugin.js commit注入面+which spawn → 纯fs读.git/PATH扫描
- U-6/U-7/U-9/U-10/U-11 失败透出/删bashrc source/seq12/管道守卫/GSD_DIR
TOP3:
- SCRIPT_DIR 定义缺失(上轮只换用法漏定义,所有调用路径下步骤12静默死)→ 补定义
- webmap W-1 fail-open 修复丢失重落(fail-closed+系统grep,实测grep缺失=拒)
- README 承诺对齐(curl|bash 拿不到步骤12已明示+步骤编号+规则数59+模块发现性)

spec 兑现补齐:
- A/B/D 部署接线(webmap→~/.local/bin, opencode-env插件→plugins/并接线, opstate)
- webmap robots.txt 遵守+探测审计日志+sha256 指纹
- E-2⑤ 成本上限(≥300事件/会话告警,实测触发) + offline --offline 动作
- AGENT-CARD escalation/成本措辞对齐实际能力
- opstate claim 假成功(sed后置复核,空owner形态实测)
- plugin 单测落盘(test-plugin.mjs,README宣称可复核)

UX: 权限真合并(保留用户段,deny不稀释)/安全自检全量透出/路由自检给可复制命令/
交互版加39条常用allow(日常零弹窗)/WSL条件打印/skill语法提示/trap泄漏/UX-9话术

验证: 干净沙箱 HOME 全新跑 setup exit=0 214s,步骤12全链绿
(59规则+14deny/审计四通道/AGENT-CARD/合规/webmap/opstate/插件接线/self-portrait 0600)
- webmap update 解析损坏(sha256 新格式)→ 修复+实现指纹比对(实测篡改→告警拒装+审计)+install 去重
- setup omo patch 漏运行时副本(~/.cache/packages/ 才是加载点)→ 补打+路由自检核对两副本标记
- security-check 无 skills 目录 pipefail 死 → find 计数
- 虚假折衷清理: D-2 skill 数量/E-2 @latest 与延迟数字全部如实披露
- AGENT-CARD 删虚构'审计写 30s'
- sp-router: ~400tok 能力清单替代 9.2k 急加载(实测 936 vs 9158, -90%);
  调试任务路由触发→Read 技能正文→遵循方法论 全链验证
- 加载规则踩坑实录(5 种姿势实测): 本地插件必须 plugins/ 顶层 .ts;
  .mjs 毒丸崩全管线; plugin 数组只认 npm 包 → 修正 setup 的 sp-router
  与 opencode-env 部署(此前子目录 .js 从未生效,接线宣告为假)
- SUPERPOWERS_ROUTER=1 选装; 已知 opencode run 短命服务器插件竞态
  (上游通病,TUI 不受影响)已如实记录
根因(实测坐实): omo 的 category 模型解析不经过 fallbackChain patch 的
两个插入点,空配置落到源码内置链(anthropic)→ task() 派发的 writing/deep
子代理路由 claude-opus-5 → 403 静默死。

修复: 生成段为 10 agents + 8 categories 全写显式 model(omo 优先级最高,
不随插件升级漂移)。OMO_MODEL=<provider/model> 可换。修前 3 次 claude /
修后 writing+deep 双双 glm-5.3。patch 降级为第二道防线保留。
决策定稿的结构化: gate/首跑init/路由日志/SkillOpt夜间审计四组件,
常驻按需分区(含 GSD 状态注入裁定), 多模式菜单演化, 10 条可测验收,
诚实折衷清单(发现延迟隔夜/gate单点/monorepo粗闸门/先验偏差缓解不消除)
… token 差距被 GSD 抹平; GSD=流程合规而非解题增强; 单样本方差警告
…不劣于带GSD; '去掉GSD会变差'基本排除; 完成率真杠杆=自测覆盖域+耗时动作启动时机
…ing文件可见=0/2自发调用('GSD stuff, ignore'),Phase2必须env块注入; GSD唯一可复现正效应=流程产物+提交质量
- setup 步骤9 默认跳过 GSD(三轮基准定案:完成率零收益/常驻~4k tok/
  模型自发调用 0%,证据链 benchmarks/terminal-bench/gsd-*.md)
- env 插件新增 GsdFragment:.planning 在时把当前 phase 注入 env 块
  (C2 判决机制:文件可见≠进决策,'GSD stuff, ignore',必须 system 层注入;
  非 GSD 项目静默零成本)
- test-plugin.mjs 3 组断言全过;README/specs README 证据链同步
1. plugin 数组尾逗号(SUPERPOWERS_ROUTER 改造引入)——生成的 opencode.json
   天生非法,权限合并的 except 救援静默重置丢 model+plugin(403 根因回归);
   改单行式数组,双模式渲染验证合法
2. 生成后强校验:JSON 合法且 model/plugin 在位,损坏即中止(command -v python3
   前置判断,缺 python3 降级为警告)——静默损坏曾致 403
3. 步骤12 插件部署 mkdir -p plugins/(此前依赖 rtk init 副作用,RTK 下载
   失败时目录不存在,cp 炸)——sp-router 部署段同修

Docker 复测: exit=0/301s, plugin+model 在位, 59规则/14deny/四通道,
GSD 默认跳过, webmap+opstate+AGENT-CARD+env插件(.ts)+600 权限 全部在位
裁定: 本地 GSD(skills/agents/gsd-core runtime)保留——它是用户显式驱动的
全部价值载体; gsd MCP 移除——历史调用零次,0 个 skill 引用其工具,
models 直读 .planning 文件,phase 状态已由 env GsdFragment 注入
事故: 本机移除 GSD 时误删 hooks/(gsd-prompt-guard/read-guard/
injection-scanner 等 26 个安全钩子),它们是 S1 注入防线,与
'用不用 GSD 工作流'无关,已从备份恢复并验证。

同步:
- 跳过分支声明安全钩子保留
- INSTALL_GSD=1 安装后校验安全钩子在位,缺失即告警
- 原则: 降级剥的是工作流(skills/agents/gsd-core),不剥防线(hooks)
用户设计: 不接受纯 router 的漏触发风险 → 保留官方的强制先查纪律
(反合理化红旗信号),只把 9158 tok 的全量描述载荷换成一行目录。
echo 截获验证注入真实发生(user 消息 4855 字符块)。

调试副产物(修正此前结论):
- 插件加载/注入检测不能用 parts 表(opencode 不持久化 transform 注入),
  必须 echo 服务器截获真实请求——此前'4 连测 1 次成功'的判定方法有误
- .mjs 确认死路; .ts 顶层正确(rtk.ts 先例)
…(tribunal-kit 模式)+CJK bigram(SKRT)+Bradley-Terry 反馈(kernel.chat),零新增运行时依赖
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant