关于 crucible-meta-governance
面向需要在关键决策中调整方向、继续推进或停止项目的元治理技能。它提供约束优先、保留研究记录、解读 Agent 分歧和管理上下文等决策模式。
主要功能
- 01依据执行约束调整假设
- 02及时持久化经验证的成果
- 03按失败关卡收窄结论范围
- 04将 Agent 分歧作为诊断信号
- 05分层压缩上下文
- 06以新增记录取代改写历史
适用场景
- 01交易条件限制策略设计时重新设定假设
- 02研究结果通过独立测试后归档
- 03多个 Agent 对结论意见不同时调查分歧
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ terrylica/ cc-skills --skill crucible-meta-governance安装后在 Claude Code 中输入/crucible-meta-governance确认已加载。
附带文件references/evolution-log.md
详细介绍
元治理——6 种决策层模式
自我进化技能:如果这里的任何模式误导了决策,请更新本节,并追加到
references/evolution-log.md。不要拖延。
这些模式处于元层级——关注的是调查本身,而不是调查内容。当必须做出决策时调用:转向还是坚持、终止还是收窄范围、发布还是暂缓。
1. 物理约束优先的转向
当蛮力尝试无果时,提取执行约束,并重新设计假设类别以适应约束。不要反复尝试忽视现实的假设。
会话示例:17 轮方向信号无果后,用户转向:
“对于高度随机游走的市场,最佳策略是什么?” “我只能在允许对冲持仓的传统 MT5 经纪商处交易。”
由此诞生了合成跨式策略(BUY_STOP + SELL_STOP 挂单,OCO)。由约束驱动的设计解锁了新的策略类别。数学依据(随机游走中的扩散位移:E[|ΔS|] > 0)一直存在;缺失的是对交易执行场所的考量。
问问自己:
- 用户实际使用的是什么执行场所?
- 可以使用哪些类型的订单?
- 实际的滑点、佣金和点差是多少?
- 有哪些仓位规模约束?
如果假设经不起这些问题的检验,就转向调整假设,而不是统计数据。
2. 渐进式提升成果(尽早从 /tmp 移入仓库)
当一项结果通过两项独立测试后,立即将发现从 /tmp/ 移至持久化仓库(audits/YYYY-MM-DD-slug/),而不是等到“全部完成”。
会话中的反面模式:探索期间将复现脚本写在 /tmp/,导致重启后无法复现。结果通过 Gate C(样本外)后就应立即提升,而不是等到 4 道门槛全部完成后再处理。
提升触发条件(至少满足一项):
- 结果通过 shuffled-null z > 3,且尚未被反驳
- 某个 Agent 综合得出取代先前结论的判定
- 复现脚本成功运行两次
操作方式:
mkdir -p findings/evolution/audits/$(date +%Y-%m-%d)-slug
cp /tmp/reproducer.py /tmp/artifact.json findings/evolution/audits/.../
# Write CLAUDE.md navigator + verdict.md
# Append to evolution.jsonl
无法持久保存的内容终将丢失。
3. 门槛失败应收窄范围,而非终止
当信号未通过某个串行门槛(见 Skill B §2)时,应降低其适用范围,而不是直接终止。
| 未通过的门槛 | 操作 |
|---|---|
| Gate A(方向拆解) | 判断是哪一侧——通常可简化为单边策略 |
| Gate B(镜像对称性) | 记录不对称性;标记为“方向偏置”特征 |
| Gate C(样本外时间切分) | **终止。**收窄范围无法挽救样本内过拟合。 |
| Gate D(跨资产) | 降级为 <asset>-specific;保留 |
| Gate E(逐年) | 将表现不佳的年份标记为“机制不利”;探索机制过滤器 |
NGRAM3FU-STRADDLE-001 未通过 Gate D(XAUUSD、GBPUSD),但通过了 A/B/C/E。其状态降级为 eur-only,而非终止。一年后,如果 XAUUSD 的微观结构发生变化,可以重新测试——这就是 resurrect_if: 触发条件(见 Skill D)。
原则:收窄范围可以保留选择权。彻底终止会丢失负面知识。
4. 将 Agent 间的分歧视为信号
并行 Agent 出现分歧时,分歧本身就具有诊断价值。
会话示例:4 个 Agent 都将“底部拒绝程度较低 → 67.8% 看涨”报告为一个信号。Agent 5(隐蔽信号猎手、批评者)指出这是标签泄漏。分歧恰好指向了这个错误。
Agent 出现分歧时:
- 不要取平均或投票,而要明确他们具体在哪些方面存在分歧
- 检查:是否有一个 Agent 的证据包含另一方不接受的隐含假设?
- 对机制存在分歧 → 调查机制(可能是标签泄漏、混杂因素,或真实但受视角限制的效应)
- 对显著性存在分歧 → 检查哪项主张是在运行前登记的,并在未使用的数据上得到确认(不做试验次数校正)
反模式:选择给出你想要的答案的 Agent。如果批评者 Agent 与提议者 Agent 存在分歧,通常批评者是对的。
5. 上下文预算纪律
对话和数据上下文都很有限。把它们留给最模糊的问题;对已验证可靠的发现则要毫不留情地压缩。
压缩层级:
- 原始柱线(不供 Agent 使用;67 MB)
- 以 Token 渲染的柱线序列(60 KB;适合一个 Agent)
- 统计表(60 KB;可供 5 个并行 Agent 使用)——首选
- 台账条目(1 KB;跟踪发现)
上下文开始吃紧时:
- 生成一个包含材料的新审计文件夹;后续会话加载该文件夹,而不是读取对话记录
- 从 Agent 提示词中移除详细原始数据;改用 Markdown 摘要
- 如果必须在会话中途交接,请在
.planning/中编写交接文件(不属于插件范围;参见项目根目录)
信号:出现上下文阻塞的情况:你发现自己在一次会话中反复阅读同一个文件;或 Agent 要求重新介绍背景;或你记不起 10 轮对话前做了什么决定。请压缩到审计文件夹。
6. 新增取代,不要改写
后续发现取代早期发现时,新增一条带有 supersedes: "OLD-ID" 的台账条目;并在旧条目中更新 superseded_by: "NEW-ID"。绝不要改写或删除。
原因:
- 后续审计人员需要的是完整轨迹,而不是最终答案
- 被取代的发现可能包含负面知识(失败原因),可为后续工作提供参考
- 删除会造成“莫名的空白”,Agent 无法解读
会话中的规范链条:
NGRAM3FU-STRADDLE-001 preliminary-positive
↓ supplemented by
NGRAM3FU-STRADDLE-001-GATES gates-validated (Gate D failed → eur-only)
↓ supplemented by
NGRAM3FU-STRADDLE-001-FULL-HISTORY confirmed at 7.18M bars
↓ supplemented by
NGRAM3FU-STRADDLE-001-FILTERED Phase-L filter validated
↓ supplemented by
NGRAM3FU-STRADDLE-001-FULL-STACK Phase-L + Phase-M final
注意 supplements 与 supersedes 的区别:supplement 用于扩展;supersede 用于取代。请选对关系。
反模式:因为某项发现“变好了”就编辑旧台账条目。这是在改写历史。请新增一条。
确认次数
| 模式 | 已确认 | 备注 |
|---|---|---|
| 1. 物理约束转向 | 1 | 定义会话方向的转向(方向性 → 跨式) |
| 2. 材料晋升 | 多次 | 每次从 /tmp 移入审计文件夹 |
| 3. 门槛失败范围 | 1 | NGRAM3FU-STRADDLE 的 Gate D → 仅限 eur |
| 4. 将分歧视为信号 | 2 | Act-2 标签泄漏排查;Phase L Agent 差异 |
| 5. 上下文预算 | 隐式 | 每次优先使用统计表而非原始数据时 |
| 6. 新增取代,不要改写 | 5 | NGRAM3FU-STRADDLE 链条,共 5 条 |
执行后反思
调用此技能后:
- 某个模式是否帮你避免了错误决策?增加
confirmed计数;并记录在references/evolution-log.md中。 - 某个模式是否导致了错误判断?降低其优先级;记录上下文,并链接到它造成误导的位置。
- 是否出现了此处尚未涵盖的新决策模式?起草一个新章节。
- 某个模式是否可以改写得更便于后续 Agent 理解?直接编辑文本,并记录原因。