{"id":"0249a179-eba8-43d5-9494-8ed58b60e2af","entityType":"agent","slug":"clawhub-ebandao777-oss-luban-skill-2","name":"Luban Skill","canonicalUrl":"https://www.xpersona.co/agent/clawhub-ebandao777-oss-luban-skill-2","canonicalPath":"/agent/clawhub-ebandao777-oss-luban-skill-2","generatedAt":"2026-10-10T13:41:19.421Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":null},"description":"鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。 Skill: Luban Skill Owner: ebandao777-oss Summary: 鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。 Tags: latest:0.1.0 Version history: v0.1.0 | 2026-08-15T17:29:24.245Z | auto 鲁班.Skill 1.0.0 全新发布——工业级智能体技能优化器。 - 首次发布，系统性阐述设计哲学，明确“12条原则”及双模式（Quick/Full）自适应流程。 - 引入 10 维度 Rubric 综合评估体系，细","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.5K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17en637qww2q9z3kz1ep6w79988dec4:luban-skill-2","sourceUrl":"https://clawhub.ai/ebandao777-oss/luban-skill-2","homepage":"https://clawhub.ai/ebandao777-oss/skills/luban-skill-2","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/ebandao777-oss/luban-skill-2","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/ebandao777-oss/skills/luban-skill-2","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":64,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“s"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":null},"stars":null,"forks":null,"downloads":1507,"packageName":null,"latestVersion":"0.1.0","tractionLabel":"1.5K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T10:03:37.524Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T10:03:37.525Z","lastCrawledAt":"2026-10-10T10:03:37.524Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T10:03:37.524Z","lastVerifiedAt":null,"highlights":[{"version":"0.1.0","createdAt":"2026-08-15T17:29:24.245Z","changelog":"鲁班.Skill 1.0.0 全新发布——工业级智能体技能优化器。 - 首次发布，系统性阐述设计哲学，明确“12条原则”及双模式（Quick/Full）自适应流程。 - 引入 10 维度 Rubric 综合评估体系，细化权重与评分标准，结合 LLM 和确定性指标判分。 - 完善分层治理（L0-L4），区分不同优化场景并动态激活关键能力。 - 明确全流程路径、分支管理、资源文件规范和自动回滚棘轮机制。 - 集成多模块（SkillOps/HASP/Distill/Sentinel/CASCADE/EvoSkill）产出维度子分，实现评分、优化、验证一体化。 - 丰富异常处理、反例约束、dry_run 测试评价和安全门控细则，确保可追溯与可迁移性。","fileCount":28,"zipByteSize":121496}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17en637qww2q9z3kz1ep6w79988dec4:luban-skill-2","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T13:41:19.419Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ebandao777-oss-luban-skill-2/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":null},"readme":"Skill: Luban Skill\n\nOwner: ebandao777-oss\n\nSummary: 鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。\n\nTags: latest:0.1.0\n\nVersion history:\n\nv0.1.0 | 2026-08-15T17:29:24.245Z | auto\n\n鲁班.Skill 1.0.0 全新发布——工业级智能体技能优化器。\n\n- 首次发布，系统性阐述设计哲学，明确“12条原则”及双模式（Quick/Full）自适应流程。\n- 引入 10 维度 Rubric 综合评估体系，细化权重与评分标准，结合 LLM 和确定性指标判分。\n- 完善分层治理（L0-L4），区分不同优化场景并动态激活关键能力。\n- 明确全流程路径、分支管理、资源文件规范和自动回滚棘轮机制。\n- 集成多模块（SkillOps/HASP/Distill/Sentinel/CASCADE/EvoSkill）产出维度子分，实现评分、优化、验证一体化。\n- 丰富异常处理、反例约束、dry_run 测试评价和安全门控细则，确保可追溯与可迁移性。\n\nArchive index:\n\nArchive v0.1.0: 28 files, 121496 bytes\n\nFiles: .gitattributes (66b), QUICKSTART.md (7044b), README.md (7504b), REFERENCE.md (17891b), references (0b), references/faq.md (5916b), references/modules.md (9088b), references/SA-DM.md (23692b), scripts (0b), scripts/__pycache__ (0b), scripts/__pycache__/cascade_updater.cpython-311.pyc (16718b), scripts/__pycache__/distill_analyzer.cpython-311.pyc (6130b), scripts/__pycache__/evo_skill_patcher.cpython-311.pyc (18040b), scripts/__pycache__/hasp_hardener.cpython-311.pyc (16919b), scripts/__pycache__/luban_common.cpython-311.pyc (5061b), scripts/__pycache__/muse_generator.cpython-311.pyc (12277b), scripts/__pycache__/skillops_scanner.cpython-311.pyc (9109b), scripts/cascade_updater.py (10084b), scripts/distill_analyzer.py (5601b), scripts/evo_skill_patcher.py (11335b), scripts/hasp_hardener.py (19036b), scripts/luban_common.py (2923b), scripts/muse_generator.py (9451b), scripts/security_audit.py (8107b), scripts/skillops_scanner.py (5676b), skill-card.md (2817b), SKILL.md (42975b), _meta.json (132b)\n\nFile v0.1.0:SKILL.md\n\n---\nname: luban-skill\nversion: \"1.0.0\"\nauthor: \"智慧半岛\"\ndescription: \"鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。\"\n---\n\n# 鲁班.Skill\n\n> 天工开物 工匠鲁班\n\n---\n\n## 设计哲学\n\nautoresearch + SkillOpt 场景自适应。\n\n### 12 条原则\n\n1. **单一可编辑资产**：每次只改一个 SKILL.md\n2. **双重评估**：结构评分（静态分析）+ 效果验证（实际跑测试看输出）\n3. **棘轮机制**：只保留改进，自动回滚退步\n4. **独立评分**：评分用子 agent，消除「自己改自己评」的偏差\n5. **人在回路**：每个 skill 优化完暂停，用户确认再继续\n6. **文本学习率预算**：每次编辑字符变化量 ≤ 原文件 10%\n7. **拒绝编辑缓冲区**：被回滚的方案留作负反馈，后续绕行\n8. **Epoch Meta-Review**：跨 skill 汇总优化规律，沉淀可迁移经验\n9. **场景自适应双模**：Quick（轻量 Self-Refine）/ Full（完整循环 + 仪表盘监控）\n10. **ROI 前置评估**：基线分 ≥85 且最低维度分 ≥7 跳过（天花板已近）\n11. **消费者能力基线**：Full 模式先测目标模型裸能力，低于阈值直接阻断\n12. **全链路审计**：Full 模式所有操作记录 git commit 可追溯\n\n### 路径约定\n\n- `luban-workspace` = 本 SKILL.md 所在目录（即本 skill 目录本身是一个 git 仓库）\n- `skills 目录` = 父目录\n- 分支命名 `auto-optimize/YYYYMMDD-HHMM`\n- 被优化技能的数据文件（`diagnostics.tsv` / `rejected_edits.md` / `test-prompts.json` / `results.tsv`）放在**被优化 skill 自己的目录**下\n- 鲁班全局文件（`meta_learnings.md` / `luban-profile.json` / `optimization-registry.tsv`）放在 `luban-workspace/`\n\n### 架构底座：L0-L4 分层治理\n\n5 个正交层级，按场景模式动态激活：\n\n| 层级 | 名称 | Quick | Full |\n|:---|:---|:---|:---|\n| L0 | 确定性执行层 | 启用 | 启用 |\n| L1 | 多智能体协作层 | 按需 | 按需 |\n| L2 | 技能自适应优化层 | 启用（鼓励探索） | 严格审查后启用 |\n| L3 | 价值对齐层 | 软性约束（风格对齐） | 硬性约束（合规对齐） |\n| L4 | 元认知审计层 | 不激活 | 激活（跨 skill 经验沉淀） |\n\n**L0 原子操作**（所有编辑必须走这三步）：\n\n1. **读**：`read_text` 读取目标 SKILL.md 全文\n2. **改**：`edit_file` 执行编辑（Quick 模式直接用 `.bak` 备份；Full 模式先 `git commit` 暂存）\n3. **验**：按 Rubric 逐项自检本次改动影响的维度（dim1/4/7a/9 按评分标准逐条核对，dim2/3/5 通读确认未引入新问题），不通过则回退\n\n---\n\n## 📋 阅读导航\n\n| 如果你想… | 读哪里 | 预计耗时 |\n|:---|:---|:---|\n| 只想快速开始 | [QUICKSTART.md](./QUICKSTART.md) | 2 分钟 |\n| 知道怎么评分 | [评估 Rubric](#评估-rubric10-维度总分-100) | 5 分钟 |\n| 了解优化全流程 | [优化流程（Phase 0-3）](#优化流程phase-0-3) | 10 分钟 |\n| 遇到错误不知道怎么处理 | [异常与边界条件](#异常与边界条件) / [反模式与FAQ](#反模式与faq) | 3 分钟 |\n| 查某个模块做什么 | [资源文件速查](#资源文件速查) | 2 分钟 |\n| 查优化策略怎么选 | [优化策略库](#优化策略库) | 5 分钟 |\n| 了解学术背景 | [学术依据](#学术依据) | 1 分钟 |\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 评估 Rubric\n\n## 评估 Rubric（10 维度，总分 100）\n\n> SkillLens（arXiv 2605.23899）实证 LLM-as-judge 准确率仅 46.4%，加入 meta-skill 三维度后提升到 73.8%。\n\n### 评分类型\n\n| 维度 | 权重 | 类型 | 评分方式 |\n|:---|:---:|:---|:---|\n| dim1 Frontmatter质量 | 7 | 确定性 | name 规范、description 含做什么+何时用+触发词、≤1024 字符、禁结尾空话。三项全过=10，任一缺失=0 |\n| dim2 工作流清晰度 | 12 | LLM | 步骤明确可执行、有序号、每步有明确输入/输出 |\n| dim3 失败模式编码 | 12 | LLM | 显式编码失败模式（\"如果 X 失败 → Y\"）；有 fallback 路径和错误恢复。只写正向流程不写失败分支扣 ≥3 分 |\n| dim4 检查点设计 | 6 | 确定性 | 正则 `/CHECKPOINT\\|STOP\\|🔴\\|⛔/`：≥1 处 STOP 级=10，仅 CHECKPOINT=5，无=0 |\n| dim5 可执行具体性 | 17 | LLM | 有具体参数/格式/示例；前置扫描软化词（建议/可考虑/根据情况/灵活把握/视情况而定/可能/大概）注入评分上下文。HASP 模块独立产出 dim5 确定性子分 3/17。 |\n| dim6 资源整合度 | 4 | LLM | references/assets 引用正确、路径可达。SkillOps 模块独立产出 dim6 确定性子分 3/4。 |\n| dim7 整体架构 | 12 | 混合 | **7a 结构合规(6)**：确定性，标题层级连续不跳跃 + 含 ≥3/4 必含章节→6 分，每缺一项 −2。<br>**7b 语义质量(6)**：LLM judge，冗余段落/AI 腔废话（\"说白了/换句话说/首先其次综上\"/花叔禁用词）/重复描述→一处 −1，下限 0 |\n| dim8 实测表现 | 20 | LLM | 子维度：**8a 意图完成度(8)**——输出是否完成用户意图、偏离程度；**8b 净提升幅度(7)**——带 skill vs 不带 baseline 质量提升是否明显；**8c 副作用(5)**——skill 是否引入过度冗余/跑偏/格式异常。总分/20×20 |\n| dim9 反例与黑名单 | 6 | 混合 | **两段式**：①关键词扫描（`不要\\|禁止\\|不允许\\|反例`）→≥3 处方进入 ②LLM judge 评估反例质量（是否独立章节、含反模式+为什么+替代做法、覆盖核心风险场景）。Step 1 不通过=0，通过后 Step 2 产出 0-10 映射为最终分 |\n| dim10 安全与审查门控度 | 4 | 公式 | Sentinel 2 + P0/P1 审查 2 占比合并。Quick 模式默认满分。P0 任一未闭合→上限锁死 ≤40。 |\n\n权重和：7+12+12+6+17+4+12+20+6+4 = **100**。确定性维度覆盖 25/100=25%，LLM 承担 71 分，dim10 公式计算 4 分。\n\n### 评分公式\n\n维度总分 = Module 子分 + Rubric 子分（同维占比加权合并）。dim5/dim6/dim7b/dim10 四维有模块介入，其余维度仅 Rubric。\n\n```\n加权原始分 = (dim1×7 + dim2×12 + dim3×12 + dim4×6 + dim5×17 + dim6×4 + dim7a×6 + dim7b×6 + dim8×20 + dim9×6 + dim10×4) / 10\n```\n\n### 架构总览\n\n```\n                          ┌──────────────────────────────────────┐\n                          │      鲁班.Skill 技能自进化调度器       │\n                          │   事件驱动 + 定时轮询 + 按需触发       │\n                          └────────────────┬─────────────────────┘\n                                           │\n              ┌────────────────────────────┼────────────────────────────┐\n              │                            │                            │\n    ┌─────────┴──────────┐      ┌─────────┴──────────┐      ┌─────────┴────────────┐\n    │   模块层（缺陷检测）   │    │ 核心引擎（评分+修复）│      │   事件钩子（旁路）    │\n    │ SkillOps 定期体检   │      │                    │      │  编辑完成 → MUSE 回归 │\n    │ EvoSkill 失败驱动   │ 子分 │  Phase 0   初始化   │      │  错误反馈 → EvoSkill  │\n    │ HASP     规则硬化   │───→  │  Phase 0.3 模块检测 │      │  规则连续忽略 → HASP  │\n    │ CASCADE  知识更新   │      │  🔴 CHECKPOINT     │      └──────────────────────┘\n    │ Distill  精简瘦身   │      │  Runtime Gate      │\n    │ Sentinel  安全审计  │      │  Phase 0.5 测试设计 │\n    └────────────────────┘      │  🔴 CHECKPOINT     │\n              │                 │  Phase 1  基线评估 │\n              │                 │  🔴 CHECKPOINT     │\n              │                 │  Phase 2  优化循环 │\n              │                 │  Phase 2.5探索重写 │\n              │                 │  Phase 3  汇总报告  │\n              │                 └─────────┬──────────┘\n              │                           │\n              │      diagnostics.tsv      │   results.tsv\n              │      (模块子分清单)        │   (评分+优化记录)\n              │                           │\n              └─────────────┬─────────────┘\n                            │\n                            ▼\n                 ┌─────────────────────┐\n                 │    技能文件仓库      │\n                 │  SKILL.md           │\n                 │  references/        │\n                 │  tests.yaml         │\n                 │  test-prompts.json  │\n                 └─────────────────────┘\n```\n\n### dry_run 降权规则\n\ndry_run 模式下确定性维度不受影响；LLM 维度处理：\n\n| 维度 | dry_run 处理 | 原因 |\n|:---|:---|:---|\n| dim2/3/5/6/7b/9 | 标注 `[confidence: degraded]`，不降分 | 结构/语义维 LLM 评估不受执行模式影响 |\n| dim8a 意图完成度 | 原始分 ×0.5 | 无实测，推演值置信度低 |\n| dim8b 净提升幅度 | 原始分 ×0.3 | 无 baseline 对照，推演几乎无意义 |\n| dim8c 副作用 | 正则扫描可用（冗余段落/格式异常检测），不降权 | 部分可静态检测 |\n| dim10 | 默认 100（同 Quick 模式） | full_test 才能触发门控 |\n\n反例 #6 强制约束：total dry_run_ratio > 30% 时必须至少跑 1 个 full_test。\n\n### 模块子分规则（Phase 0.3 产出 → Phase 1 同维合并）\n\n模块不独立扣分，而是产出同维内的确定性子分，与 Rubric LLM 子分合并为维度总分。\n\n**子分占比**（模块 / Rubric）：\n\n| 维度 | 权重 | Module 子分 | Rubric 子分 | 依据 |\n|:---|:---:|:---|:---|:---|\n| dim5 | 17 | HASP 3 | LLM 14 | 软化词是 gate，具体性是核心 |\n| dim6 | 4 | SkillOps 3 | LLM 1 | 路径断裂是致命缺陷，编排判断在可用前提下才有意义 |\n| dim7b | 6 | Distill 2 | LLM 4 | 文件级冗余信号粗，段落级语义细 |\n| dim10 | 4 | Sentinel 2 | P0/P1 审查 2 | 模式覆盖广度 + 推理深度互补 |\n\n**Module 子分计算**：\n\n| 模块 | 检测项 | 子分计算 | 满分 | 关联维度 |\n|:---|:---|:---|:---:|:---|\n| SkillOps | 引用路径可达性 | 全完整=3，断裂 ≥3 处=0，1-2 处→线性 | 3 | dim6 |\n| SkillOps | YAML/Frontmatter 非法 | 计入 dim1 确定性评分，不计子分 | — | dim1 |\n| HASP | 软化词 ≥5 处 | 0 处=3，≥5=0，1-4→线性 | 3 | dim5 |\n| HASP | 违规计数 ≥2 次 | 计入 Sentinel 子分，不计独立子分 | — | dim10 |\n| CASCADE | 外部引用过期 >180 天 | 0 处过期=dim6 SkillOps 子分不变；≥1 处→标注但由 SkillOps 子分反映 | — | dim6 |\n| Distill | 完全未被引用的 references | 0 个=2，≥1 个=0 | 2 | dim7b |\n| Distill | F_approx ≥0.7 文件 ≥2 个 | ≥2 个→子分 −1（与死文件子分累加，下限 0） | — | dim7b |\n| EvoSkill | 历史振荡（同维度 2+ 轮反复涨跌） | 仅标注 `[oscillation]`，**不产生子分** | — | dim3 |\n| Sentinel | 恶意指令（exec/system/subprocess/rm−rf/format 等） | 0 类命中=2，每类命中 −0.5，下限 0 | 2 | dim10 |\n| Sentinel | 硬编码凭据（API Key/密码/token 明文） | 同上 | 2 | dim10 |\n| Sentinel | Prompt 注入模式（DAN/越狱/simulate/system override 等） | 同上 | 2 | dim10 |\n| Sentinel | 数据外泄路径（SMTP/上传外网/SCP 等） | 同上 | 2 | dim10 |\n| Sentinel | 权限越权（chmod/chown/sudo/icacls 等） | 同上 | 2 | dim10 |\n\n**dim10 Sentinel 子分**：5 类独立计分，每类 0-2 分（0 命中=2，≥2 处命中=0，1 处=1），5 类取均值直接作为 Sentinel 子分（范围 [0,2]）。\n\n**dim10 审查子分**：起始 2 分，P0 未闭合每项 −2.0，P1 未闭合每项 −0.5，下限 0。即 `审查子分 = max(0, 2 − P0未闭合数 × 2.0 − P1未闭合数 × 0.5)`。任一 P0 未闭合即清零审查子分，P1 累积 4 项可归零。结合 dim10 上限锁死 ≤40 规则形成双重门控。\n\n模块子分存入 `diagnostics.tsv`（子分列替代原扣分列），Phase 1 从 diagnostics.tsv 读取，与 Rubric 子分合并为维度总分。\n\n### Runtime 中立性 Gate（前置于 Phase 1）\n\n参照 darwin 设为独立 gate，在 Phase 0.3 之后、Phase 1 之前执行。扫描 SKILL.md 全文：\n\n| 检测项 | 判定 | 命中动作 |\n|:---|:---|:---|\n| 单 runtime 措辞（\"在 Claude Code 里\"/\"Cursor 用户请\"等） | ❌ 不通过 | 标记 `[runtime_gate: fail]`，强制 Phase 2 第一轮 P0 修复 |\n| 安装路径写死单一工具链 | ❌ 不通过 | 同上 |\n| 单一 badge/标识语 | ❌ 不通过 | 同上 |\n| 例外：skill name 含单 runtime 标识（如 `xxx-codex`） | ✅ 豁免 | 不触发 gate |\n\n命中任一项则打断流程，报告具体违规位置（行号+原文），要求修复后重新通过此 Gate → Phase 0.5。免检白名单：skill name 明确绑定单一 runtime。\n\n### 十维执行模式\n\n| 维度 | Quick 模式 | Full 模式 | 评分方 |\n|:---|:---|:---|:---|\n| dim1 Frontmatter | agent 按评分标准逐项检查 | 同 Quick | 确定性 |\n| dim2 工作流 | LLM judge | LLM judge（多评委中位数） | LLM |\n| dim3 失败模式 | LLM judge | LLM judge（多评委中位数） | LLM |\n| dim4 检查点 | agent 正则扫描 CHECKPOINT/STOP/🔴/⛔ | 同 Quick | 确定性 |\n| dim5 具体性 | LLM judge（前置软化词扫描注入上下文） | LLM judge（多评委中位数+软化词扫描）+ HASP 3 占比合并 | LLM |\n| dim6 资源整合 | LLM judge | SkillOps 3 + LLM 1 占比合并 | 混合 |\n| dim7a 结构合规 | agent 检查标题层级 + 必含章节 | 同 Quick | 确定性 |\n| dim7b 语义质量 | LLM judge（冗余/AI 腔/重复） | Distill 2 + LLM 4 占比合并 | LLM |\n| dim8 实测 | dry_run 推演（降权规则见上） | full_test（子 agent 跑 test-prompts） | LLM |\n| dim9 反例 | 两段式：关键词扫描→LLM judge | 同 Quick | 混合 |\n| dim10 安全与审查门控度 | 默认 100 | Sentinel 2 + P0/P1 审查 2 占比合并 | 公式 |\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 双模策略\n\n## 双模策略\n\n### 模式选择（前置网关）\n\n```\n输入：用户指令 + skill 历史评分\nif 用户明确要求\"完整/深度/全面/工业/生产\" → Full\nelif baseline 分 < 70 → Full（需要完整优化）\nelif results.tsv 有 revert 记录 → Full（曾退化）\nelif delta > 5 且连续 2 轮保持 → Full（有金矿）\nelif 用户说\"看看/评一下/扫一眼\" → Quick\nelse → Quick（默认）\n```\n\n| | Quick | Full |\n|:---|:---|:---|\n| **触发** | 默认 | 用户明确要求 / ROI>5 分 / 曾被 revert |\n| **评分** | 结构评分（dim1-7,9）+ dry_run 推演 | 全维度 + full_test + 多评委 + 多角色 |\n| **优化** | 直接编辑 SKILL.md，self-refine 循环（不建 git 分支，用 `.bak` 文件回退） | git 分支 + 独立 judge + 仪表盘监控 |\n| **审查** | dim10 默认 100 | P0/P1/P2 全量门控 |\n| **基线** | 跳过 | 消费者能力基线测试 |\n| **停止** | MAX_ROUNDS=3 或触顶信号 | MAX_ROUNDS=5 或触顶信号 |\n| **meta** | 不激活 | L4 激活，输出 meta_learnings.md |\n\n触顶信号：连续 2 轮 Δ < 2 分 → break，见好就收。\n\n### 双轨反馈\n\n- **Quick→Full**：Quick 模式下 3 轮内 Δ > 5 分，自动升级 Full（有金矿）\n- **Full→Quick**：Full 模式下连续 3 个 skill 稳定 delta < 3，后续降级 Quick（成熟稳定）\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 约束规则\n\n## 约束规则\n\n1. **不改变 skill 核心功能和用途** — 只优化\"怎么写\"和\"怎么执行\"，不改\"做什么\" → 白话：鲁班只是润色师，不是重写师。skill 该干嘛还干嘛，只把话说得更清楚\n2. **不引入新依赖** — 不添加 skill 原本没有的 scripts 或 references 文件 → 白话：不能为了让评分好看就给 skill 偷偷塞新文件，只能用现有的东西优化\n3. **每轮只改一个维度** — 避免多个变更导致无法归因；相关簇（dim2/3/4）改其一时观察另两个是否跟涨 → 白话：一次只动一个地方，改完看效果，别东改西改不知道哪一步起了作用\n4. **保持文件大小合理** — 优化后 SKILL.md ≤ 原文件 150% 体积 → 白话：优化不是堆字数，膨胀超过一半就是水内容了\n5. **尊重花叔风格** — 中文为主、简洁为上 → 白话：别把简洁的中文改成长篇英文论文腔\n6. **可回滚** — 所有改动在 git 分支上，用 `git checkout` 而非 `git reset --hard` → 白话：改坏了能一键退回，而且退回记录留痕可查\n7. **评分独立性** — 效果维度必须用子 agent 独立评分，禁止同一 context「改完直接评」→ 白话：不能自己改完自己打分，那等于既当运动员又当裁判\n8. **Runtime 中立性** — skill 必须能在 Claude Code、Codex、Cursor、OpenClaw 等任何 skills-compatible runtime 正常运行。除非 skill name 明确绑定单一 runtime（如 `xxx-codex`），任何单 runtime 措辞、单一 badge、安装路径写死均视为 gate 不通过，须在 P0 优先修复 → 白话：skill 不能只在某一个工具里能用，写的时候要通用，除非名字本身就标明了只给某个工具用\n9. **编辑同源检测** — 编辑 agent 与评分 agent 来自同一 context → dim8 所有子维度分 ×0.5，results.tsv 记录 `redline_1_violation=true` → 白话：如果编辑和评分是同一个 agent 做的，效果分直接砍半——因为很可能有偏见\n\n### 架构红线运行时检测\n\n1. **禁止 self-edit-self-evaluate**：同一 agent 不得既编辑又评分。违反 → dim8 降权 ×0.5\n2. **禁止跨维度打包修改**：一轮只改一个维度。违反 → 整轮回滚\n3. **禁止 dry_run 为 full_test**：dim8 全部 dry_run 等于跳过效果验证。违反 → results.tsv 标记 invalid\n4. **禁止 bypass gate**：P0 未闭合不得进入下一 phase。违反 → 中断流程\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 多评委与多角色评分\n\n## 多评委与多角色评分（Full 模式）\n\n### 同质多评委（压制采样噪声）\n\nFull 模式采用 2 个独立 file-agent 评委（dispatch_task），评分取中位数。2 个评委读同一份 SKILL.md 和同一套量规，系统性高估方向一致——中位数不纠正共享偏误。\n\n### 异质评委（按需触发）\n\n| 触发条件 | 异质评委 | 复核焦点 |\n|:---|:---|:---|\n| dim1≥9 且 dim8a ≤5 | search-agent | dim1/dim3 真实性抽查 |\n| dim8c =5 且 dim9≤3 | computer-agent | 副作用复核 |\n| dim4≥9 但从未触发过 revert | computer-agent | dim4/dim10 架构抽查 |\n\n异质评委不计入标准评委数量，结果以 `[orthogonality]` 标注追加到评分卡。\n\n### 多角色并行审查（P0/P1/P2 分级）\n\n当 dim8c < 5 或 dim10 原始分 < 60 时触发。角色组合按文档类型选派：\n\n| 文档类型 | 角色组合 |\n|:---|:---|\n| 架构设计 | 系统架构师（分层一致性/接口完整性/模块耦合度）+ 安全架构师（审计链完整性/熔断回滚安全性/红线可绕过性）+ SRE（故障恢复路径/降级策略覆盖/告警闭环） |\n| 安全规范 | 安全架构师 + 系统架构师 + 技术文档编辑（术语一致性/引用完整性/格式规范） |\n| ML 论文 | ML 研究员（测量有效性/退化检测/偏差控制/过拟合防御）+ 系统架构师 + 技术文档编辑 |\n| 综合类 | 系统架构师 + 安全架构师 + SRE + ML 研究员 + 技术文档编辑 |\n\n**审查严重度分级**（直接影响 dim10 审查子分）：\n\n| 级别 | 定义 | 审查影响 | 门控 |\n|:---|:---|:---|:---|\n| P0 | 影响正确性或安全性 | −30/项 | 任一未闭合→阻断，dim10 上限锁死 ≤40 |\n| P1 | 影响可靠性或可维护性 | −5/项 | ≥3 个未闭合→阻断 |\n| P2 | 影响一致性或可读性 | 不扣分 | 不设门控 |\n\n### 审查流程（阶段 0-4）\n\n**阶段 0 — 前置**：识别文档类型 → 选派角色 → 公开分级声明\n\n**阶段 1 — 独立审查**：角色间绝对隔离（不通信、不协商、不共享发现），逐章覆盖登记，输出结构化问题清单（`<角色缩写>-<序号>`，字段含章节/角色/P级/问题描述/建议修复方向）\n\n**阶段 2 — 问题归一化**：同类合并（同章节+同根源→保留最高 P 级）、侧面互补（不同视角→合并注明\"双重视角\"）、独立保留（不同章节/根源→各自独立）；输出归一化清单（ID 重编号 N-01…）+ 原始ID→归一化ID 映射表\n\n**阶段 3 — 编辑修复**：按 P0→P1→P2 逐项修复，禁止\"顺手改\"（仅修清单内条目），修复后全文档交叉验证\n\n**阶段 4 — 复审闭环**：P0 由原审查角色逐条确认闭合（不通过打回阶段 3）；P1 由编辑方自检 + 原角色 30% 抽查（不通过降级 P0）；P2 由编辑方自检（不通过升级 P1）\n\n### 子 Agent 不可用降级\n\n当 `dispatch_task` 无法派发独立 judge 时（工具报错或 agent 类型不可用），触发降级：\n\n| 受影响功能 | 降级行为 | results.tsv 标记 |\n|:---|:---|:---|\n| 同质多评委 | 主 agent 单次 LLM 评分，不取中位数 | `judge_count=1`，`eval_mode=fallback` |\n| 异质评委 | 跳过，不执行 | — |\n| 多角色并行审查 | 跳过阶段 0-4，dim10 默认 100 | `eval_mode=fallback` |\n| dim8 效果维度 | 无法跑 full_test，降为 dry_run 推演 | `eval_mode=fallback_dry` |\n| Phase 2 Step 5 重评 | 主 agent 单次评分，不 spawn 子 agent | `judge_count=1` |\n\n降级模式下 dim8 子维度处理：8a 意图完成度 → 推演值 ×0.3（无实测置信度低）、8b 净提升 → 推演值 ×0.3（无 baseline 对照）、8c 副作用 → 正则扫描（格式异常/冗余文本检测）。降级原因写入 results.tsv note 字段。\n\n**警告**：降级模式评分不可与 full_test 评分直接比较——降级分虚高。连续 3 轮降级需在汇总报告中显式标注。\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 优化流程\n\n## 优化流程（Phase 0-3）\n\n### Phase 0: 初始化\n\n> **Quick 模式**：跳过 step 2（不建 git 分支），其余相同。\n\n```\n1. 确认优化范围：全部 skills 或用户指定列表\n2. git checkout -b auto-optimize/YYYYMMDD-HHMM\n3. 检查 results.tsv 是否存在，不存在则创建并写入表头（12 列）\n4. 读取 results.tsv 了解历史评分\n5. ROI 前置评估：若历史基线分 ≥85 且最低维度分 ≥7 → 跳过优化，告知用户「天花板已近，建议仅评估不改」\n6. 从 results.tsv 读取 status=revert 的历史维度，标记为「绕行」；对照反例黑名单 8 条，确认当前方案不命中\n7. 检查 diagnostics.tsv 是否存在，不存在则创建并写入表头（模块/维度/子分/文件/行号/详情）\n```\n\n### Phase 0.3: 模块缺陷检测（子分清单）\n\n六模块对目标 skill 做静态检测，输出确定性子分到 diagnostics.tsv。**模块不产生评分，只产子分**。\n\n```\nfor each skill:\n  1. 按优先级顺序执行：SkillOps → EvoSkill → HASP → CASCADE → Distill → Sentinel\n  2. 每模块按「模块子分规则」逐项检测\n  3. 命中缺陷 → 追加 diagnostics.tsv 一行（模块/维度/子分/文件/行号/详情）\n  4. 模块完成后不回写 SKILL.md，仅写入子分记录\n```\n\nEvoSkill 例外：振荡检测仅标注 `[oscillation]`，不产生子分，供 Phase 2 Step 1 人工决策。\n\nSentinel 执行方式：运行 `scripts/security_audit.py <skill_dir> --diagnostics <path>`，扫描目标 skill 的 scripts/ + references/ 中所有文本文件（排除 SKILL.md 文档层描述），匹配 5 类模式：\n- **恶意指令**：`exec(` / `system(` / `subprocess` / `rm -rf` / `format` / `del /f` / `reg delete`\n- **硬编码凭据**：`api_key=` / `password=` / `token=` / `secret=` / 私钥 PEM\n- **Prompt 注入**：`DAN` / `jailbreak` / `simulate` / `system override` / `ignore.*instructions`\n- **数据外泄**：`smtp` / `upload.*external` / `scp` / `ftp upload`\n- **权限越权**：`chmod` / `chown` / `sudo` / `su -` / `icacls`\n\n🔴 CHECKPOINT：展示子分摘要（各维度子分、哪些模块有输出、EvoSkill 振荡告警、Sentinel 安全告警），确认后进入 Runtime 中立性 Gate → Phase 0.5。\n\n### Runtime 中立性 Gate\n\n扫描 SKILL.md 全文，命中 Runtime 中立性 Gate 中任一未豁免项则打断流程，报告违规行号+原文，要求修复后重新进 Phase 1。通过后进入 Phase 0.5。\n\n### Phase 0.5: 测试 Prompt 设计\n\n```\nfor each skill:\n  1. 读 SKILL.md，理解功能\n  2. 设计 2-3 个测试 prompt（典型场景 + 歧义场景）\n  3. 保存到 skill目录/test-prompts.json\n```\n\n**test-prompts.json 模板**：\n\n```json\n[\n  {\n    \"id\": \"tp-01\",\n    \"prompt\": \"帮我优化这个skill的frontmatter\",\n    \"expected_behavior\": \"能正确读取并识别 frontmatter 字段\",\n    \"category\": \"典型场景\"\n  },\n  {\n    \"id\": \"tp-02\",\n    \"prompt\": \"改一下\",\n    \"expected_behavior\": \"歧义输入，应追问具体需求而非直接修改\",\n    \"category\": \"歧义场景\"\n  }\n]\n```\n\n展示所有 prompt 给用户，🔴 CHECKPOINT · 🛑 STOP 确认后进入 Phase 1。\n\n### Phase 1: 基线评估\n\n维度总分 = Module 子分 + Rubric 子分（同维内按比例加权合并）。dim5/dim6/dim7b/dim10 四维有模块介入，其余维度仅 Rubric。\n\n```\nfor each skill:\n  1. 按 Rubric 表逐维评分，得各维度 Rubric 子分\n  2. 读取 diagnostics.tsv，取 Module 子分\n  3. 同维合并：dim5 = (HASP子分 × 3 + Rubric子分 × 14) / 17 × 10\n              dim6 = (SkillOps子分 × 3 + Rubric子分 × 1) / 4 × 10  # SkillOps=0 不归零 Rubric（Rubric 评估语义完整性，与引用可达性正交）\n              dim7b = (Distill子分 × 2 + Rubric子分 × 4) / 6 × 10\n              dim10 = (Sentinel子分 × 2 + P0/P1审查子分 × 2) / 4 × 10\n              其余维度 = Rubric子分 × 10\n  4. 效果评分：spawn 子 agent 跑 test-prompts\n     - with_skill: 带 SKILL.md 执行\n     - baseline: 不带 skill 直接执行（裸 prompt）\n  5. 加权计算总分，记录到 results.tsv\n```\n\nFull 模式额外执行消费者能力基线测试：若 `references/baseline-skill.md` 不存在，则按当前所评估 skill 的核心领域自动生成一份通用基线 skill（含 name/description/workflow/约束规则 等基本结构），保存到该路径。用 baseline-skill 测目标模型裸能力，若 baseline-skill 评分 < 60 则输出能力不足报告并阻断后续优化。此测试独立于 dim8 的 with_skill vs baseline 对比，不要混淆。\n\n🔴 CHECKPOINT：展示基线分 + diagnostics 诊断摘要，确认后进入 Phase 2。\n\n### Phase 2: 优化循环\n\n> **Quick 模式**：不建 git 分支，Step 3 用 `cp SKILL.md SKILL.md.bak` 代替 git commit，Step 6 用 `cp SKILL.md.bak SKILL.md` 代替 git checkout 回滚。\n\n```\nfor each skill（按基线分数升序，先优化最弱的）:\n  round = 0\n  while round < MAX_ROUNDS:\n    round += 1\n\n    # Step 0: 模块检测（每轮重新执行）\n    重新运行 Phase 0.3 六模块检测 → 更新 diagnostics.tsv（子分清单）\n    EvoSkill 读取最新的 results.tsv，HASP 读取最新的 SKILL.md，Distill 重算密度\n\n    # Step 1: 诊断\n    读取更新后的 diagnostics.tsv + results.tsv 最新评分\n    找子分最低或得分最低维度。注意 dim2/3/4 是相关簇——修一个时另两个常跟涨。\n    EvoSkill 振荡标注 `[oscillation]` 的维度→跳过不改，除非用户明确要求。\n\n    # Step 2: 提方案\n    1 个具体改进方案：改什么（段落/行）+ 为什么（对应 rubric 哪条）+ 预期提升。\n    对照反例黑名单 8 条 + rejected_edits.md + luban-profile.json oscillation_guard，命中 → 改方案重写。\n\n    # Step 3: 编辑前备份\n    git add -A && git commit -m \"pre-edit: {skill_name}\"\n\n    # Step 4: 执行改进\n    编辑 SKILL.md（字符变化 ≤10%） → 按 Rubric 逐项自检 dim1/4/7a/9\n\n    # Step 5: 重新评分\n    结构维度：主 agent 重评；效果维度：spawn 独立子 agent（不同 context）\n\n    # Step 6: 决策\n    if 新总分 > 旧总分:\n      git commit -m \"optimize: {skill_name} +{delta}分 [{dimension}]\"\n      触顶信号 → break\n    else:\n      git checkout HEAD~1  # 回滚\n      记录到 rejected_edits.md\n      break\n```\n\n🔴 CHECKPOINT · 每个 skill 优化完展示改动摘要 + 分数变化，等用户确认再继续。\n\n**Phase 2 出口**：全部 skill 优化完成后 → 检查 Phase 2.5 触发条件：满足则进入 Phase 2.5，否则进入 Phase 3。\n\n### Phase 2.5: 探索性重写（按需触发）\n\n连续 2 个 skill 都在 round 1 break 时触发（或单 skill 连续 2 轮 round 1 break）：git stash → 从头重写 SKILL.md → 重新评估 → 重写版 > stash 版则采用，否则 git stash pop。🛑 STOP：必须征得用户同意。\n\n### Phase 3: 汇总报告\n\n展示全局战绩：\n\n| 项目 | 内容 |\n|:---|:---|\n| 优化 skill 数 | N 个，保留 M 个 |\n| 分数变化 | 表格（skill名/旧分/新分/Δ/主要改进维度） |\n| 主要改进摘要 | 按维度聚类，标注高频改进方向 |\n| 健康度仪表盘 | Full 模式：dry_run 比例、revert 率、同源检测触发次数、oscillation 告警 |\n\n#### Epoch Meta-Review（Full 模式）\n\n```\n1. 汇总本次所有 skill 的优化记录\n2. 提炼可迁移规律 → 追加到 meta_learnings.md\n3. 识别 oscillation 模式：同一维度在 2+ skill 间反复涨跌 → 追加到 luban-profile.json：\n\n{\n  \"oscillation_guard\": [\n    {\"dimension\": \"dim5\", \"skills\": [\"skill-a\", \"skill-b\"], \"pattern\": \"细化→回滚→细化→回滚\", \"recommendation\": \"跳过 dim5 优化，先加固 dim3\"}\n  ]\n}\n\n此字段供后续 Phase 2 Step 2 查阅，命中则跳过该维度。\n```\n\n### 备份轮转策略\n\ngit 分支无限增长会导致仓库膨胀。Phase 3 完成后触发清理：\n\n- 每个 skill 目录保留最近 **5 轮编辑**的备份（`latest-5`）\n- baseline 备份和首轮备份**永久保留**，不受轮转影响\n- 超出 5 轮的历史备份移至 `luban-backups-archive/{skill_name}/` 归档\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 优化流程 > 异常与边界条件\n\n## 异常与边界条件\n\n流程假设环境理想，但实操常遇异常。以下预定义 fallback，保证优化不会「一跑就卡住」。\n\n| 场景 | 触发条件 | 处理动作 | 通俗解释 |\n|:---|:---|:---|:---|\n| 不在 git 仓库 | `git rev-parse` 失败 | 询问用户：执行 `git init` 或回退到文件备份；用户选后者则 `cp SKILL.md SKILL.md.bak.YYYYMMDD-HHMM` 代替 revert | 找不到 Git 仓库，优化历史无法记录。可以新建仓库或用文件备份代替 |\n| results.tsv 缺失 | 文件不存在 | 新建并写表头行（12 列） | 评分记录文件还没创建，这是第一次跑优化，自动建一个 |\n| results.tsv 损坏 | 列数不匹配 / 非 TSV | 备份为 `.bak.YYYYMMDD-HHMM` 后重建，告知用户 | 评分记录文件格式坏了（可能是手动编辑过），旧文件备份后再建新的 |\n| 分支已存在 | `git checkout -b` 失败 | 分支名末尾加 `-2` / `-3`；第 3 次失败切回现有分支并询问继续还是新起 | Git 分支名冲突了，自动换名字重试，最多 3 次 |\n| git revert 失败 | 冲突 / 工作树脏 | 先 `git stash` 重试；仍失败则从上一个 commit 读出 SKILL.md 覆盖当前文件手动恢复 | 回滚时文件有冲突，先暂存当前修改再试，实在不行直接读上一个版本覆盖 |\n| MAX_ROUNDS 触顶 | 已达上限仍有短板 | 不强制 break，展示当前最弱维度问用户「继续加 1 轮 / 进入探索性重写 / 收工」 | 优化轮数到上限了但还有改进空间，让你决定要不要继续 |\n| 优化后超 150% 体积 | 新文件 > 原 × 1.5 | 拒绝提交，回精简（删冗余/合并重复）后重评 | 改完后文件膨胀太厉害（超过原来的 1.5 倍），先瘦身再提交 |\n| test-prompts.json 已存在 | 文件已在 skill 目录 | 默认复用并展示，问用户「复用 / 重写 / 追加」三选一 | 测试题已经有了，问你是直接复用还是重新出题 |\n| SKILL.md 找不到 | 目录存在但无 SKILL.md | 该 skill 终止，results.tsv 记 `status=error`，继续下一个 | 这个 skill 目录里没有主文件，跳过它继续处理下一个 |\n| 消费者基线失败 | 目标模型裸能力不足 | 输出能力不足报告，阻断后续优化 | 当前模型的裸能力不够，强行优化效果会差，先停掉 |\n| 子 Agent 不可用 | `dispatch_task` 返回错误 | 触发降级模式（见多评委章节），results.tsv 记 `eval_mode=fallback` | 独立评分工具不可用（环境限制），降级为单 agent 评分 |\n| 分数精度漂移 | 总分差 < 0.05 | 总分保留 1 位小数，改进需严格 > 旧分（不靠四舍五入） | 分数变化太小（不到 0.05 分），不算真正提升 |\n\n**原则**：异常先告知用户，再按规则处理；绝不静默跳过或静默失败。\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 关键数据结构\n\n## 关键数据结构\n\n### results.tsv（12 列）\n\n```\ntimestamp\tcommit\tskill\tround\told_score\tnew_score\tstatus\tdim_changed\tdelta\tnote\teval_mode\tjudge_count\n2026-06-11T10:00\tbaseline\tluban-slides\t0\t-\t78\tbaseline\t-\t-\t初始评估\tfull_test\t2\n2026-06-11T10:05\ta1b2c3d\tluban-slides\t1\t78\t84\tkeep\tdim3\t+6\t补充 fallback 三段式\tfull_test\t2\n2026-06-11T10:10\tb2c3d4e\tluban-slides\t2\t84\t82\trevert\tdim5\t-2\t过度细化，回滚\tdry_run\t1\n```\n\n- `eval_mode`: `full_test`（跑了子 agent 测试）或 `dry_run`（模拟推演）\n- `judge_count`: 参与评分的独立 judge 数量\n- 文件位置：被优化 skill 目录下的 `results.tsv`\n\n### diagnostics.tsv\n\n模块子分清单（Phase 0.3 产出），每模块对目标 skill 的静态缺陷检测结果：\n\n```\n模块\t维度\t子分\t文件\t行号\t详情\nSkillOps\tdim6\t3\t-\t-\t全引用路径可到达\nHASP\tdim5\t1\tSKILL.md\t-\t软化词 3 处（建议×2/可考虑×1）\nEvoSkill\tdim3\t—\t-\t-\t[oscillation] dim5 历史 3 轮回弹\n```\n\n- 文件位置：被优化 skill 目录下的 `diagnostics.tsv`\n- Phase 0.3 每次运行前**清空重建**（保持最新一轮子分）\n- Phase 1 读子分按维度取 Module 子分，与 Rubric 子分占比加权合并\n- EvoSkill 不产生子分，`子分=—`，详情标注 `[oscillation]`\n\n### optimization-registry.tsv\n\n鲁班全局优化登记表（鲁班自己的目录下），记录每次对某个 skill 执行的优化：\n\n- `skill_name`：被优化的 skill 名\n- `timestamp`：运行时间戳（ISO 8601）\n- `score_before`：优化前分数\n- `score_after`：优化后分数\n- `rounds`：本次运行的优化轮次\n- `eval_mode`：`full_test` / `dry_run`\n- 只增不删，每次 `luban optimize` 追加一行\n- 文件位置：`luban-workspace/optimization-registry.tsv`\n\n### rejected_edits.md\n\n被回滚的编辑方案，每轮回滚追加一条：\n\n```markdown\n## REJ-{序号} | {时间戳} | {skill名}\n\n- **目标维度**: dim5\n- **改动段落**: L120-L135\n- **方案摘要**: 将三处\"建议\"改为\"必须\"\n- **被拒原因**: 改变了 skill 核心语义，违反约束规则 #1\n- **绕行建议**: dim5 已触顶，优先修 dim3\n```\n\n### meta_learnings.md\n\n跨 skill 可迁移规律，Phase 3 Meta-Review 追加：\n\n```markdown\n## ML-{序号} | {时间戳}\n\n- **规律**: dim2/3/4 相关簇——修 dim3（三段式 fallback）时 dim2 平均跟涨 1.5 分\n- **来源 skill**: luban-slides, code-reviewer（2/2 验证）\n- **置信度**: 高\n- **可复用场景**: 任何有\"步骤描述\"+\"错误处理\"双薄弱点的 skill\n```\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 反例黑名单\n\n## luban 操作反例黑名单\n\n来自早期 40 次 0 revert 的教训。每轮 Phase 2 Step 2 改动前对照一次，命中 → 改方案重写。\n\n| # | 反模式 | 替代做法 |\n|---|--------|----------|\n| 1 | 同 context 自评自改 | 必须 spawn 独立子 agent 评分 |\n| 2 | `git reset --hard` 当回滚 | 用 `git checkout` 保留追溯链 |\n| 3 | 为凑分增冗余 | 触顶信号（连续 2 轮 Δ<2）→ break |\n| 4 | 跳过 test-prompts 直接评分 | Phase 0.5 强制设计 2-3 prompts |\n| 5 | 轮内改多个维度 | 每轮 1 个维度 |\n| 6 | dry_run 比例 > 30% | 强制至少 1 个 full_test |\n| 7 | 静默跳过异常 | 异常表 fallback 必须先告知 |\n| 8 | 忽视维度相关性单独优化 | 看相关簇短板再决定 |\n\n> 📎 HASP / CASCADE / Distill / MUSE / 调度器 模块完整流程 → [references/modules.md](./references/modules.md)\n\n\n## 优化策略库\n\n按优先级排序，每轮只做最高优先级的一个。命中即停止向下检索。\n\n### P0: 适配性与效果问题（gate 项，必须先修）\n\n| 类型 | 识别特征 | 优化策略 | 关联维度 |\n|:---|:---|:---|:---|\n| Runtime 绑定 | SKILL.md 出现单 runtime 措辞（如「在 Claude Code 里」）、安装指引只给一种路径、工作流硬编码 runtime 工具无 fallback | 替换为 runtime-neutral 措辞；安装改为「一行命令自动检测 + 手动路径表」；标注「仅在某 runtime 可用」 | dim6/dim8 |\n| 效果倒退 | 带 skill 比不带还差 | skill 过度约束，精简指令 | dim8 |\n| 输出偏离 | 测试输出不符合预期 | 检查是否有误导性指令；补充明确输出模板 | dim8 |\n| 副作用触发 | dim8c 命中 | 逐项检查副作用来源，修复后重测 | dim8/dim10 |\n| Sentinel 安全告警 | security_audit.py 命中恶意指令/硬编码凭据/Prompt注入/数据外泄/权限越权 | 恶意指令→移除或授权；凭据→环境变量替代；注入→增加 guards；外泄→去除网络出口；越权→降级为普通操作 | dim10 |\n\n**例外**：skill name 明确标注单 runtime（如 `xxx-codex`）的，跳过 Runtime 绑定检查。\n\n### P1: 结构性问题\n\n| 类型 | 识别特征 | 优化策略 | 关联维度 |\n|:---|:---|:---|:---|\n| Frontmatter 缺触发词 | name 无触发场景描述、description 无\"何时用\" | 补充中英文触发词；掐掉结尾空话 | dim1 |\n| 无 Phase/Step 结构 | 流程缺编号、步骤间跳跃 | 重组为线性流程，每步标注输入→输出 | dim2 |\n| 无检查点 | 关键决策处无视觉标记 | 插入 🔴 CHECKPOINT / 🛑 STOP | dim4 |\n| 标题跳跃 | H1→H3 无 H2，章节重复 | 补中间层级，合并重复章节 | dim7 |\n| 无错误处理 | 只写正常路径 | 补三段式 fallback：触发条件 / 一线修复 / 仍失败兜底 | dim3 |\n\n### P2: 具体性问题\n\n| 类型 | 识别特征 | 优化策略 | 关联维度 |\n|:---|:---|:---|:---|\n| 步骤模糊 | \"处理图片\"\"优化代码\"等无参数描述 | 改为具体操作 + 参数（工具名/格式/阈值） | dim5 |\n| 缺输入/输出规格 | 步骤未标明输入格式和输出格式 | 补充格式（JSON Schema/文件路径/示例） | dim5 |\n| 缺异常处理 | 无\"如果 X 失败，则 Y\" | 补 if-then 兜底路径 | dim3 |\n| 软化词过多 | \"建议/可考虑/根据情况\"频繁出现 | 改\"建议\"为\"必须\"，补具体数值 | dim5 |\n| 资源引用断裂 | 引用文件路径不存在 | 删除死链接或补建引用文件 | dim6 |\n\n### P3: 可读性问题\n\n| 类型 | 识别特征 | 优化策略 | 关联维度 |\n|:---|:---|:---|:---|\n| 段落过长 | 单段 > 200 字符 | 拆分；适合对比/参数的内容改用表格 | dim7 |\n| 重复描述 | 同信息在多处出现 | 合并去重，保留最清晰版本 | dim7 |\n| 缺反例标注 | 全文无\"不要/禁止/反例\"关键词 | 在关键操作步骤旁加反例标注（≥3 处不同语境） | dim9 |\n| 缺速查入口 | 用户需通读全文才能上手 | 添加 TL;DR 或决策树 | dim5/dim7 |\n\n**维度相关簇提醒**：dim2/3/4 联动——修 dim3（fallback 三段式）时 dim2 常跟涨 1-2 分。\n\n**优先级公式**：弱点深度 = (10 − 当前维度分) × 权重。同级策略内按弱点深度降序选目标。\n\n---\n\n> 📍 你在这里: 鲁班.Skill > HL 操作速查\n\n## HL 操作速查\n\n3 条高杠杆操作：\n\n- **HL-1（dim4）显性视觉标记是杠杆**：加 🔴 CHECKPOINT / 🛑 STOP。4 行改动撬动 dim4 +3 分\n- **HL-2（dim2/3/4 相关簇）三段式 fallback 一石三鸟**：修 dim3（触发条件/一线修复/仍失败兜底）→ dim2 跟涨 1-2 分，dim4 顺便补检查点\n- **HL-3（Phase 2 退出）触顶自动 break**：+0.15 是停手信号，不是继续信号\n\n完整红线定义见上文「架构红线运行时检测」4 条。\n\n---\n\n> 📎 HASP / CASCADE / Distill / MUSE / 调度器 模块完整流程 → [references/modules.md](./references/modules.md)\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 资源文件速查\n\n## 资源文件速查\n\n| 路径 | 用途 |\n|------|------|\n| `optimization-registry.tsv` | 鲁班全局优化登记表（哪些 skill 跑过、分数） |\n| `{skill目录}/test-prompts.json` | 每个 skill 的测试 prompt |\n| `{skill目录}/tests.yaml` | MUSE 回归测试用例（持续沉淀） |\n| `scripts/skillops_scanner.py` | SkillOps 工具化扫描（路径/YAML/引用链结构分析） |\n| `scripts/evo_skill_patcher.py` | EvoSkill 失败驱动补丁建议生成 |\n| `scripts/hasp_hardener.py` | HASP 规则硬化（软化词检测→Must/PF 升级） |\n| `scripts/cascade_updater.py` | CASCADE 外部引用过时检测与更新建议 |\n| `scripts/distill_analyzer.py` | Distill 引用矩阵构建与 F_approx 计算 |\n| `scripts/muse_generator.py` | MUSE 测试用例自动生成与回归执行 |\n| `scripts/security_audit.py` | Sentinel 安全审计（恶意指令/凭据/注入/外泄/越权） |\n| `references/SA-DM.md` | SkillOps 设计方法论完整论文 |\n| `references/baseline-skill.md` | 消费者能力基线测试参考 skill（首次运行时自动生成） |\n\n---\n\n> 📎 反模式、FAQ、架构红线 → [references/faq.md](./references/faq.md)\n\nFile v0.1.0:README.md\n\n# 鲁班.Skill\n\n> 天工开物 工匠鲁班 —— 工业级智能体技能优化器\n> 任何的技能自进化原则上依然是线性回归动作，高度依赖模型的自身能力\n> 请尽量在可使用的模型里使用最高的模型去优化技能，尽量使用Claude GPT-5.4 Pro GLM-5.1这种高性能模型作为基础优化底座模型\n\n鲁班.Skill 是一套技能自进化系统，基于 **EvoSkill / SkillOps / CASCADE / Skill Distill / HASP / MUSE-Autoskill** 六篇论文构建。它为 AI Agent 技能（SKILL.md）提供全生命周期优化：从静态质量评估、自动化缺陷检测、多评委评分，到规则硬化、知识更新、精简瘦身和回归测试。\n\n---\n\n## 核心能力\n\n| 能力 | 说明 | 依赖说明 |\n|------|------|----------|\n| **十维 Rubric 评分** | 100 分制量化技能质量，确定性维度 + LLM 维度混合评估 | 无脚本依赖，纯 agent 逻辑 |\n| **六模块缺陷检测** | SkillOps / EvoSkill / HASP / CASCADE / Distill / Sentinel 静态扫描产出子分 | 依赖 `scripts/skillops_scanner.py` / `hasp_hardener.py` / `cascade_updater.py` / `distill_analyzer.py` / `security_audit.py` |\n| **双模优化引擎** | Quick（轻量 Self-Refine）和 Full（多评委 + git 分支 + 仪表盘）自适应 | 无额外脚本依赖；Full 模式需 git 环境 |\n| **安全审计** | Sentinel 检测恶意指令、硬编码凭据、Prompt 注入、数据外泄、权限越权 | 依赖 `scripts/security_audit.py` |\n| **棘轮回滚** | 自动保留改进，退步回滚，反例黑名单防止重复踩坑 | Quick 模式靠 `.bak` 文件，Full 模式靠 git |\n| **跨技能经验沉淀** | Epoch Meta-Review 提炼可迁移优化规律 | 纯 agent 逻辑，无脚本依赖 |\n\n---\n\n## 文档导航\n\n| 文档 | 内容 |\n|------|------|\n| [README.md](./README.md) | 项目概览（当前文档） |\n| [QUICKSTART.md](./QUICKSTART.md) | 5 分钟快速上手 |\n| [REFERENCE.md](./REFERENCE.md) | 完整技术参考（Rubric / Phase 流程 / 模块 / 数据结构） |\n| [SKILL.md](./SKILL.md) | 技能主文件（Agent 执行指令） |\n| [references/SA-DM.md](./references/SA-DM.md) | 设计方法论论文 |\n\n---\n\n## 触发词\n\n说以下任意关键词即可激活鲁班：\n\"优化skill\"、\"skill评分\"、\"自动优化\"、\"skill质量检查\"、\"小鲁班\"、\"luban\"、\"优化技能\"、\"帮我改skill\"、\"skill怎么样\"、\"提升skill质量\"、\"skill review\"、\"skill打分\"\n\n---\n\n## 快速使用\n\n```\n# 评估一个技能\n\"给 prompt-optimizer 评个分\"\n\n# 优化一个技能\n\"帮我优化 make-to-markdown\"\n\n# 批量优化\n\"优化所有 skills\"\n\n# 安全审计\n\"安全审计 luban-skill\"\n```\n\n详细命令见 [QUICKSTART.md](./QUICKSTART.md)。\n\n---\n\n## 架构总览\n\n```\n                          ┌──────────────────────────────────────┐\n                          │      鲁班.Skill 技能自进化调度器       │\n                          └────────────────┬─────────────────────┘\n                                           │\n              ┌────────────────────────────┼────────────────────────────┐\n              │                            │                            │\n    ┌─────────┴──────────┐      ┌─────────┴──────────┐      ┌─────────┴────────────┐\n    │   模块层（缺陷检测）   │    │ 核心引擎（评分+修复）│      │   事件钩子（旁路）    │\n    │ SkillOps / EvoSkill │      │  Phase 0  初始化   │      │  MUSE 回归 / 错误反馈 │\n    │ HASP / CASCADE      │───→  │  Phase 0.3 模块检测│      │  HASP 硬化 / 规则忽略│\n    │ Distill / Sentinel  │      │  Phase 1  基线评估 │      └──────────────────────┘\n    └────────────────────┘      │  Phase 2  优化循环 │\n                                │  Phase 3  汇总报告 │\n                                └────────────────────┘\n```\n\n---\n\n## 学术依据\n\n| 论文 | arXiv | 核心贡献 |\n|------|-------|---------|\n| EvoSkill | [2603.02766](https://arxiv.org/abs/2603.02766) | 失败驱动的技能缺口发现与修补 |\n| SkillOps | [2605.13716](https://arxiv.org/abs/2605.13716) | 技能库运维框架，五维健康诊断 |\n| CASCADE | [2512.23880](https://arxiv.org/abs/2512.23880) | 持续学习 + 自我反思驱动进化 |\n| Skill Distill | [2604.01608](https://arxiv.org/abs/2604.01608) | 指标自由度 F 驱动的精简决策 |\n| HASP | [2605.17734](https://arxiv.org/abs/2605.17734) | 技能升格为可执行程序函数 |\n| MUSE-Autoskill | [2605.27366](https://arxiv.org/abs/2605.27366) | 全生命周期管理 + 回归测试 |\n| SkillLens | [2605.23899](https://arxiv.org/abs/2605.23899) | 九维 rubric 实证基础 |\n| SkillOpt | [2605.23904](https://arxiv.org/abs/2605.23904) | validation-gated edits 形式化框架 |\n\n---\n\n## 文档结构\n\n```\nluban-skill/\n│\n├── README.md              ← 项目概览、核心能力、学术依据（你在看这里）\n│\n├── QUICKSTART.md          ← 5 分钟快速上手\n│   ├── 触发词\n│   ├── 常用命令（评分 / 优化 / 专项检查）\n│   ├── Quick vs Full 模式\n│   ├── 端到端实战示例        ★ 新增\n│   ├── 优化前后对比示例      ★ 新增\n│   └── 自检清单              ★ 新增\n│\n├── SKILL.md               ← Agent 执行指令（核心）\n│   ├── 设计哲学 + 阅读导航   ★ 新增导航\n│   ├── 评估 Rubric（10 维 100 分）\n│   ├── 双模策略（Quick / Full）\n│   ├── 约束规则（9 条 + 白话解释）★ 新增白话\n│   ├── 多评委与多角色评分\n│   ├── 优化流程（Phase 0-3）\n│   ├── 异常与边界条件（+ 通俗解释）★ 新增通俗解释列\n│   ├── 关键数据结构\n│   ├── 反例黑名单\n│   ├── 模块详解（CASCADE / Distill / HASP / MUSE）\n│   ├── 优化策略库\n│   ├── 调度器 + 使用方式\n│   └── 反模式与FAQ            ★ 新增（集中速查）\n│\n├── REFERENCE.md            ← 完整技术参考（Rubric 细则 / Phase 流程 / 模块 / 数据结构）\n│\n├── references/\n│   └── SA-DM.md            ← 设计方法论论文\n│\n└── scripts/                ← 底层工具脚本\n    ├── skillops_scanner.py\n    ├── evo_skill_patcher.py\n    ├── hasp_hardener.py\n    ├── cascade_updater.py\n    ├── distill_analyzer.py\n    ├── muse_generator.py\n    └── security_audit.py\n```\n\n| 文档 | 阅读顺序 | 适合人群 |\n|:---|:---|:---|\n| README.md | 第 1 步 | 所有人，了解这是什么 |\n| QUICKSTART.md | 第 2 步 | 新用户，5 分钟上手 |\n| SKILL.md | 第 3 步 | 深度用户、开发者，了解全部规则 |\n| REFERENCE.md | 参考查阅 | 需要查具体评分标准或流程细节时 |\n| references/SA-DM.md | 扩展阅读 | 对设计方法论感兴趣的读者 |\n\nFile v0.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn7096hdmqr56bh0825xpz8ft188dh24\",\n  \"slug\": \"luban-skill-2\",\n  \"version\": \"0.1.0\",\n  \"publishedAt\": 1786814964245\n}\n\nFile v0.1.0:references/faq.md\n\n# 反模式与FAQ\n\n> 将分散在各章节的反例黑名单、架构红线、异常场景、指令映射集中于此，方便一次性查阅。\n\n---\n\n### FAQ：常见问题速查\n\n**Q: 我想给一个 skill 打分，但不想修改它，怎么做？**\nA: 说\"评估 {skill_name} 质量\"或\"给 {skill_name} 评个分\"。鲁班会走 Phase 0.5-1（仅评估不改），输出十维评分卡。\n\n**Q: 优化卡住了怎么办？**\nA: 查看[异常与边界条件](#异常与边界条件)表，找到对应场景，按\"处理动作\"列操作。常见卡住原因：不在 git 仓库、results.tsv 损坏、子 agent 不可用。\n\n**Q: Quick 和 Full 模式有什么区别？**\nA: Quick 模式轻量快速（3 轮、dry_run 推演、.bak 回退），适合日常快速检查。Full 模式深度完整（5 轮、多评委、git 分支、安全门控），适合生产级优化。鲁班默认 Quick，分数低或有 revert 记录时自动升级。\n\n**Q: 优化后分数下降了怎么办？**\nA: 鲁班的棘轮机制会自动回滚退步——如果新分不如旧分，会自动 `git checkout` 恢复到优化前状态。你不需要手动干预。\n\n**Q: 哪些指令触发哪个模块？**\nA: 见下表：\n\n| 指令 | 触发模块 |\n|------|----------|\n| \"优化所有 skills\" | 鲁班核心引擎 Phase 0-3（全量） |\n| \"优化 {skill_name}\" | 鲁班核心引擎 Phase 0-3（单个） |\n| \"评估所有 skills 质量\" | Phase 0.5-1（仅评估不改） |\n| \"检查技能健康\" | SkillOps 巡检 |\n| \"这个技能有问题 / 不对\" | EvoSkill 失败修补 |\n| \"更新技能知识\" | CASCADE 知识更新 |\n| \"精简技能 / 瘦身\" | Skill Distill |\n| \"规则硬化 / 硬一点\" | HASP 规则硬化 |\n| \"安全审计 / 安全检查\" | Sentinel 安全扫描 |\n| \"看看优化历史\" | 读取 optimization-registry.tsv |\n\n**Q: dim8 得分很低怎么办？**\nA: dim8（实测表现）占 20 分权重最高。低分通常意味着 skill 在实际使用时效果差。检查：①是否在 dry_run 模式（降权严重）；②是否触发了编辑同源检测（×0.5）；③测试 prompt 是否合理。\n\n**Q: 什么是\"触顶信号\"？**\nA: 连续 2 轮优化后总分提升 < 2 分 → 说明当前 skill 已经接近天花板，继续优化收益很低，鲁班会自动停止。\n\n**Q: 优化后的 skill 怎么恢复到优化前？**\nA: Full 模式下在 git 分支上操作，用 `git checkout` 回到优化前的 commit。Quick 模式下用 `.bak` 备份文件恢复。\n\n---\n\n### 反模式黑名单（操作层面）\n\n来自早期 40 次 0 revert 的教训。每轮 Phase 2 Step 2 改动前对照一次。\n\n| # | 反模式 | 为什么是坑 | 正确做法 |\n|---|--------|-----------|----------|\n| 1 | 同一 context 自评自改 | 既当运动员又当裁判，评分天然偏高 | 必须 spawn 独立子 agent 评分 |\n| 2 | `git reset --hard` 当回滚 | 销毁历史记录，无法追溯\"改了什么→为什么回滚\" | 用 `git checkout` 保留追溯链 |\n| 3 | 为凑分增冗余 | 总分涨了但 skill 变臃肿，实际可用性下降 | 触顶信号（连续 2 轮 Δ<2）→ break，见好就收 |\n| 4 | 跳过 test-prompts 直接评分 | dim8 没有实测支撑，效果分纯靠猜 | Phase 0.5 强制设计 2-3 prompts |\n| 5 | 轮内改多个维度 | 多处改动混杂，无法判断哪个有效哪个是噪声 | 每轮只改 1 个维度 |\n| 6 | dry_run 比例 > 30% | 大量评分基于推演而非实测，分数虚高 | 强制至少跑 1 个 full_test |\n| 7 | 静默跳过异常 | 用户完全不知道出了问题，误以为一切正常 | 异常表 fallback 必须先告知用户 |\n| 8 | 忽视维度相关性单独优化 | dim2/3/4 是相关簇，单修 dim3 时 dim2 常跟涨，反过来单修 dim2 可能拉低 dim3 | 看相关簇短板再决定先修哪个 |\n\n---\n\n### 架构红线（运行时检测）\n\n违反任一条即触发阻断或降权：\n\n| # | 红线 | 为什么是坑 | 检测后果 |\n|---|------|-----------|----------|\n| 1 | 禁止 self-edit-self-evaluate | 同一 agent 编辑后又评分，缺乏独立视角 | dim8 降权 ×0.5 |\n| 2 | 禁止跨维度打包修改 | 一轮改动多个维度，无法归因效果 | 整轮回滚 |\n| 3 | 禁止 dry_run 冒充 full_test | dim8 全靠推演等于没测效果 | results.tsv 标记 invalid |\n| 4 | 禁止 bypass gate | P0 安全问题没修就进入下一 phase | 中断流程，必须回头修 |\n\n---\n\n### 异常场景速查\n\n| 场景 | 触发条件 | 处理动作 | 通俗解释 |\n|:---|:---|:---|:---|\n| 不在 git 仓库 | `git rev-parse` 失败 | 询问用户：`git init` 或文件备份 | 找不到 Git 仓库，优化历史无法记录 |\n| results.tsv 缺失 | 文件不存在 | 新建并写表头 | 第一次跑优化，自动创建评分记录 |\n| results.tsv 损坏 | 列数不匹配 | 备份后重建 | 评分记录格式坏了，旧文件备份再建新的 |\n| 分支已存在 | `git checkout -b` 失败 | 分支名加 `-2`/`-3` | Git 分支名冲突，自动换名重试 |\n| git revert 失败 | 冲突/工作树脏 | `git stash` 重试；仍失败手动恢复 | 回滚冲突，先暂存再试，不行就手动覆盖 |\n| MAX_ROUNDS 触顶 | 已达上限 | 询问用户继续/重写/收工 | 轮数到上限，让你决定要不要加轮 |\n| 优化后超 150% 体积 | 新文件 > 原 ×1.5 | 拒绝提交，先精简 | 文件膨胀太厉害，先瘦身 |\n| test-prompts.json 已存在 | 文件已存在 | 复用/重写/追加三选一 | 测试题已有，问你怎么处理 |\n| SKILL.md 找不到 | 目录无主文件 | 终止此 skill，继续下一个 | 目录里没有主文件，跳过 |\n| 消费者基线失败 | 模型能力不足 | 阻断优化 | 模型不够强，强行优化效果差 |\n| 子 Agent 不可用 | dispatch_task 报错 | 降级模式 | 独立评分工具不可用，单 agent 顶上 |\n| 分数精度漂移 | 总分差 < 0.05 | 不靠四舍五入 | 变化太小，不算真正提升 |\n\nFile v0.1.0:references/modules.md\n\n# 模块与调度器参考\n\n## CASCADE 知识更新\n\n### 触发条件\n\n- 定时任务：每季度自动执行\n- 用户指令：\"更新技能知识\"\"补最新\"\"刷新 references\"\n- 技能 references 中引用外部知识且距上次更新 > 90 天\n\n### 执行流程\n\n```\nStep 1: 扫描 references/ 目录\n  - 工具化扫描：`scripts/cascade_updater.py <skill_dir> --threshold 90` 自动提取 arXiv/URL/标准引用并判定过时\n  - 识别所有外部引用（arXiv ID、API 文档 URL、标准编号等）\n  - 记录每个引用的最后更新日期（优先 git log，回退至文件 mtime）\n\nStep 2: 筛选过时引用\n  - 距上次更新 > 90 天（可通过 --threshold 调整）→ 标记待更新\n  - 优先处理用户最近高频使用的技能\n\nStep 3: 知识检索\n  - 论文：搜索引用 arXiv ID，检查是否有新版本\n  - API：抓取最新文档，对比 changelog\n  - 标准：搜索是否发布了新版本\n\nStep 4: 自我反思（内省）\n  - 对比新旧知识差异\n  - 判断是否影响技能规则的有效性\n  - 仅在有实质性变化时生成更新\n\nStep 5: 追加式更新\n  - 追加新知识（不删除旧内容，标注版本号）\n  - 格式：## [YYYY-MM-DD] 更新：xxx → 新内容\n\nStep 6: 写入诊断记录\n  - 每个过时引用追加一行到目标技能的 diagnostics.tsv（仅当确实找到更新时）\n  - 格式：CASCADE | dim6 | 子分 | 文件 | 行号 | 详情\n```\n\n### 关键设计\n\n- 只追加不删除：旧知识的废弃留给 SkillOps 的 `retire` 动作\n- 标注版本：每次更新附带日期和版本号\n- 不自动修改规则：仅更新 references，不自动改 SKILL.md 中的规则引用\n\n---\n\n## Distill 精简\n\n### F_approx 计算公式\n\n```\nF_approx = 1 - (模块被规则引用的次数 / 模块总字符数归一化)\n\n归一化方式：模块总字符数 / 所有模块总字符数的均值。分母过小时取 max(均值, 100)。\n```\n\n- F ≈ 1：模块内容庞大但很少被引用 → 可精简\n- F ≈ 0：模块内容紧凑且多处引用 → 保留\n- F_approx ≥ 0.7：标记「可精简」；≤ 0.3：标记「核心资产」\n\n### 精简优先级\n\n| 优先级 | 类型 | 处理 |\n|--------|------|------|\n| P0 | 完全未被引用的 references | 直接建议删除 |\n| P1 | 文件大但仅 1-2 处引用 | 提取引用段落到 SKILL.md，删原文件 |\n| P2 | 多处重复的示例代码块 | 合并为一个 reference |\n| P3 | 历史版本累积的旧内容 | 归档到 archive/ 子目录 |\n\n### 执行流程\n\n```\nStep 1: 构建引用矩阵\n  - 执行 `scripts/distill_analyzer.py <skill_dir>` 自动扫描引用关系\n  - SKILL.md 每条规则 → 引用了 references/ 的哪些段落\n  - 计算每个 references 文件的「有效引用密度」\n\nStep 2: 计算 F_approx，分级标记\n\nStep 3: 生成精简方案\n  - 展示「删除后文件大小变化」预估\n  - 标注「保留的核心内容」\n  - 🔴 CHECKPOINT：待用户确认后执行\n\nStep 4: 写入诊断记录\n  - 确认执行后，每个 P0 删除 / P1-P3 精简项追加一行到目标技能的 diagnostics.tsv\n  - 格式：Distill | dim7b | 子分 | 文件 | 行号 | 详情\n```\n\n---\n\n## HASP 硬化规则\n\n> 论文：[arXiv:2605.17734](https://arxiv.org/abs/2605.17734)\n> 核心理念：技能升格为可执行程序函数（PF），含 should_activate + intervene，从\"建议\"变\"硬纠正\"。\n\n### 触发条件\n\n- 同一规则在同一场景下连续 2 次以上被忽略\n- 用户指令：\"规则硬化\"\"硬一点\"\"这个规则总被忽略\"\n\n### 硬化层级\n\n#### 层级 1：Should → Must（措辞强化）\n\n```\n原文：建议在生成 SKILL.md 时控制文件大小在 30KB 以内\n\n硬化后：强制约束：SKILL.md 文件大小不得超过 30KB。\n超限时，必须将详细内容拆分到 references/，SKILL.md 仅保留导航链接。\n```\n\n#### 层级 2：Should → PF（可执行程序函数）\n\n在 SKILL.md frontmatter 中追加硬规则元数据：\n\n```yaml\nhard_rules:\n  - id: rule_001\n    should_activate: \"SKILL.md 文件大小 > 30KB\"\n    intervene:\n      type: \"block_and_restructure\"\n      action: \"禁止继续在 SKILL.md 追加内容，将超出部分写入新 reference 文件\"\n    severity: \"critical\"\n    last_violated: \"2026-06-10\"\n    violation_count: 3\n```\n\n### 执行流程\n\n```\nStep 1: 执行日志分析\n  - 工具化扫描：`scripts/hasp_hardener.py <skill_dir> [--results <results.tsv>]` 自动提取软规则、匹配违规历史\n  - 从 `results.tsv` 和 EvoSkill 失败捕获记录中提取规则违规实例\n  - 识别「规则被忽略」的实例（同一场景下规则未被遵循）\n\nStep 2: 分级处理\n  - 工具自动判定 T0（基线）/ T1（措辞强化，违规 2 次）/ T2（PF 硬化，违规 ≥3 次）\n  忽略 1 次 → 暂不处理\n  忽略 2 次 → 生成措辞强化建议（层级 1：建议 → 必须）\n  忽略 ≥3 次 → 生成 PF 硬化建议（层级 2：注入 hard_rules YAML 块）\n\nStep 3: 硬化规则注入\n  - 定义 should_activate 条件 + intervene 动作\n  - 🔴 CHECKPOINT：待用户确认后执行\n\nStep 4: 写入诊断记录\n  - 确认执行后，追加一行到目标技能的 diagnostics.tsv\n  - 违规 ≥2 次：subtype=wording_harden；违规 ≥3 次：subtype=pf_harden\n  - 格式：HASP | dim5 | 子分 | 文件 | 行号 | 详情\n```\n\n### 硬化适用性\n\n| 规则类型 | 适合硬化 | 原因 |\n|----------|---------|------|\n| 输出格式约束 | ✅ | 可精确检测和修正 |\n| 文件大小限制 | ✅ | 可精确检测 |\n| 必须包含的章节/字段 | ✅ | 结构化检查 |\n| 语义风格约束 | ❌ | 难以精确检测 |\n| 创造性建议 | ❌ | 无法形式化 |\n\n---\n\n## MUSE 回归测试\n\n> 论文：[arXiv:2605.27366](https://arxiv.org/abs/2605.27366)\n> 核心理念：双驱动评估（单元测试 + 运行反馈），自动触发修补和重测，首次实证跨智能体技能迁移。\n\n### 触发条件\n\n- 任何对技能文件（SKILL.md 或 references/）的编辑操作完成后\n- 自动触发，无需用户指令\n\n### 测试用例生成维度\n\n| 维度 | 生成方法 | 示例 |\n|------|----------|------|\n| 触发词识别 | 从 SKILL.md 提取所有触发词，逐一构造输入 | 输入\"小鲁班\" → 预期触发 |\n| 输出格式 | 提取格式约束，构造验收条件 | 输出必须包含 YAML frontmatter |\n| 关键规则遵守 | 提取\"必须\"/\"禁止\"语句，构造边界测试 | 输入超限请求 → 预期拒绝 |\n| 流程完整性 | 按技能 Step 列表逐项模拟 | Step 3 依赖 Step 2 的输出 → 断链测试 |\n| references 可达性 | 遍历所有文件路径引用 | 逐条检查文件是否存在 |\n| 反例测试 | 构造明确不在范围内的输入 | \"帮我写操作系统\" → 预期不触发 |\n\n### 执行流程\n\n```\nStep 1: 修改前快照\n  - 执行 `scripts/muse_generator.py <skill_dir>` 保存修改前 hash 并生成测试用例\n  - 保存修改前完整文件 hash\n  - 自动生成 5-10 条测试用例（基于 6 维度）\n\nStep 2: 执行修改\n\nStep 3: 回归测试\n  - 逐条运行测试用例\n  - 逐条检查修改后的技能行为\n\nStep 4: 结果判定\n  全部通过 → 「回归测试通过，无退化」\n  部分失败 → 列出失败项 + 偏差 + 建议回滚\n  全部失败 → 强制建议回滚\n\nStep 5: 测试用例沉淀\n  - 通过的用例追加到 tests.yaml（如不存在则创建）\n  - 形成持续增长的回归测试集\n```\n\n### tests.yaml 格式\n\n```yaml\nskill: {skill_name}\ngenerated_at: {date}\ntests:\n  - id: trigger_001\n    dimension: \"触发词识别\"\n    input: \"{test_input}\"\n    expected: \"{expected_behavior}\"\n    status: pass | fail\n    last_run: {date}\n    \n  - id: format_001\n    dimension: \"输出格式\"\n    condition: \"{constraint}\"\n    check: \"{check_method}\"\n    status: pass | fail\n    last_run: {date}\n```\n\n---\n\n## 调度器触发策略\n\n### 事件驱动 / 按需触发 / 定时驱动\n\n```\n事件驱动（立即响应）\n  ├── P0: 用户明确反馈技能错误         → EvoSkill\n  ├── P0: 技能编辑操作完成              → MUSE 回归测试\n  ├── P1: 同一规则连续忽略 3 次         → HASP 层级 2\n  └── P2: 同一规则连续忽略 2 次         → HASP 层级 1\n\n按需触发（用户指令）→ 详见 FAQ 指令映射表\n\n定时驱动（周期扫描）\n  ├── 每周：SkillOps 健康巡检\n  ├── 每月：Skill Distill 精简检查（仅当冗余评分低时）\n  └── 每季度：CASCADE 知识更新检查（仅当有外部引用时）\n```\n\n### 并发控制与冲突仲裁\n\n| 场景 | 仲裁规则 |\n|------|----------|\n| 任何模块 vs 用户正在手动编辑 | 用户优先，模块排队 |\n| Phase 2 编辑中 vs 事件模块同时触发 | Phase 2 优先（按需触发等同用户指令），事件模块排队 |\n| SkillOps 巡检 vs 用户正在编辑 | 巡检只读执行，仅输出报告 |\n| Skill Distill vs HASP 同时触发 | HASP 优先（质量保障），精简让步 |\n| MUSE 回归测试运行中 | 锁定技能文件，其他模块等待 |\n| 同一技能多个任务排队 | FIFO 顺序执行 |\n\nFile v0.1.0:references/SA-DM.md\n\n# Agent智能体技能进化方法论\n\n## Scenario-Adaptive Dual-Mode Architecture (SA-DM)\n\n### 核心法则\n\n- **\"有道之魂.有术之能\"**\n\n- **【单模型架构的“幻觉”风险】**\n  单模型在处理复杂任务时极易产生“幻觉”（即生成看似自信但完全虚构的信息）。这源于大模型的概率预测本质与知识边界盲区。在长链路推理中，单步的“事实性错误”或“执行漂移”会不断累积放大，导致任务彻底失败。因此，必须摒弃单模型单角色架构，通过多角色协同与S级模型的全局视野来精准捕捉隐性错误，避免“低水平裁判”导致的进化方向偏移。\n\n- **【评审架构的阶梯式能力要求】**\n  Agent 智能体的自主进化高度依赖评审模型（Evaluator）的判别力。在工程实践中，评审架构的有效性遵循严格的降维规律：\n  **S级模型多角色协同评审 > A级模型多角色评审 > 单模型多角色评审 > 单模型单角色评审**。\n\n- **【基座模型的“高杠杆”优化策略】**\n  在技能专项优化阶段，必须摒弃算力平均主义。采用顶级 S 级模型（如 Claude / GPT-5 / Qwen3.7-Max / DeepSeek-V4 Pro）作为基座进行专项打磨，是获取最高 ROI 的唯一解。\n  顶级模型具备卓越的长程自主执行与自我纠错能力，能够突破单体智能瓶颈，实现从“单次问答”到“复杂工程闭环”的质变。\n\n## 1. EvoSkill — 失败驱动的技能修补\n\n- **地址**：[arXiv:2603.02766](https://arxiv.org/abs/2603.02766)\n- **简介**：三 Agent 协同，让 AI 从失败中自动发现能力缺口，自主构建结构化技能文件夹（含元数据/指令/脚本）。生成的不是不可解释的 Prompt 变体，而是可迁移的技能资产。\n- **落地思路**：当前 skill 执行报错时，自动抓取失败上下文 → 分析缺口类型（规则缺失？触发词遗漏？指令冲突？）→ 输出修改建议。做成 workflow，不再人工排查。\n\n## 2. SkillOps — 定期健康巡检\n\n- **地址**：[arXiv:2605.13716](https://arxiv.org/abs/2605.13716)\n- **简介**：首次将技能库维护形式化为「库时」问题。核心是五维健康诊断：效用、冗余、兼容性、失败风险、验证缺口，并自动执行 merge/repair/retire/add_validator 等维护动作。\n- **落地思路**：对已有技能做定时巡检任务。检查 references 引用是否断裂、SKILL.md 是否有规则冲突、是否有未测试的新增规则、是否有可合并的去重项。一次扫描输出一份体检清单。\n\n## 3. CASCADE — 领域知识自动补充\n\n- **地址**：[arXiv:2512.23880](https://arxiv.org/abs/2512.23880)\n- **简介**：两大元技能驱动自进化——持续学习（网页搜索/代码提取/记忆利用）和自我反思（内省/知识图谱探索）。技能以可执行代码累积，跨智能体共享。\n- **落地思路**：当技能 references 中引用的外部知识过时时，自动 web_search + 验证 → 更新到 references/ 对应文件。适合 prompt-optimizer 这种依赖外部论文/技术发展的技能。\n\n## 4. Skill Distill — 判断何时该精简\n\n- **地址**：[arXiv:2604.01608](https://arxiv.org/abs/2604.01608)\n- **简介**：提出「指标自由度 F」——第一个可先验计算的技能效用预测器。F 通过 Mantel 检验量化输出多样性与得分方差的耦合强度。高 F 指标可直接精简，低 F（≤0.6）才需保留。\n- **落地思路**：扫描技能文件大小和 references 数量，超阈值时计算各模块的 F 值 → 高 F 模块标记可合并/删除 → 低 F 模块保留。避免 skill 越长越臃肿。\n\n## 5. HASP — 将建议规则硬化\n\n- **地址**：[arXiv:2605.17734](https://arxiv.org/abs/2605.17734)\n- **简介**：技能升格为可执行程序函数（PF），每个 PF 含 should_activate（状态感知触发）和 intervene（动作重写或上下文注入）两个接口，从\"建议\"变成\"硬纠正\"。\n- **落地思路**：分析执行日志，定位 SKILL.md 中写了但 Agent 经常忽略的规则 → 加上触发条件和硬执行描述 → 改为 `强制：当 X 发生时必须执行 Y` 格式，而非 `建议/应该`。\n\n## 6. MUSE-Autoskill — 修改后自动回归测试\n\n- **地址**：[arXiv:2605.27366](https://arxiv.org/abs/2605.27366)\n- **简介**：技能全生命周期管理框架，核心是双驱动评估：单元测试 + 运行反馈，自动触发修补和重测。首次实证跨智能体技能迁移。\n- **落地思路**：每次编辑 skill 文件前，自动生成一组测试用例（覆盖触发词识别、输出格式、关键规则遵守）→ 修改完成后跑回归 → 退化则回滚。确保改不坏。\n\n## 核心闭环：EvoSkill + SkillOps 双轮驱动\n\n```\n技能执行 → 出错了\n    ↓\nEvoSkill 分析失败，生成补丁\n    ↓\nMUSE-Autoskill 自动验证补丁（测试用例）\n    ↓\nSkillOps 定期做体检，防退化\n    ↓\nCASCADE 补领域新知识（内容陈旧时）\n    ↓\nHASP 硬化关键规则（规则被忽略时）\n    ↓\nSkill Distill 精简冗余（文件臃肿时）\n```\n\n**适用对象**：tiangong-skill、luban-skill、prompt-optimizer 等任何已有 skill 文件，均可纳入此优化流程。\n\n# 技能自进化系统 —— 落地方案\n\n> 基于 EvoSkill / SkillOps / CASCADE / Skill Distill / HASP / MUSE-Autoskill 六篇论文，设计一套可直接实施的技能自动进化流程。\n\n---\n\n## 一、整体架构\n\n```\n                    ┌──────────────────────────────────────┐\n                    │         技能自进化调度器              │\n                    │  (轮询 / 事件驱动 / 按需触发)         │\n                    └──────┬───────────────────────────────┘\n          ┌────────┬───────┼───────┬──────────┬──────────┐\n          ▼        ▼       ▼       ▼          ▼          ▼\n     ┌────────┐┌────────┐┌────────┐┌────────┐┌────────┐┌────────┐\n     │EvoSkill││SkillOps││CASCADE ││ Distill││  HASP  ││  MUSE  │\n     │ 执行   ││ 定期   ││ 知识   ││ 精简   ││ 规则   ││ 回归   │\n     │ 失败   ││ 体检   ││ 更新   ││ 触发   ││ 硬化   ││ 测试   │\n     └───┬────┘└───┬────┘└───┬────┘└───┬────┘└───┬────┘└───┬────┘\n         │         │         │         │         │         │\n         └─────────┴─────────┴─────────┴─────────┴─────────┘\n                              │\n                              ▼\n                    ┌──────────────────────┐\n                    │    技能文件仓库       │\n                    │  (SKILL.md + refs/)  │\n                    └──────────────────────┘\n```\n\n**调度器职责**：决定何时触发哪个模块，避免并发修改冲突。采用事件队列 + 单线程执行。\n\n---\n\n## 二、各模块详细设计\n\n### 模块 1：EvoSkill —— 失败驱动的技能修补\n\n**触发条件**：用户反馈技能执行不符合预期，或 Agent 执行时遇到明确能力缺口。\n\n**执行流程**：\n\n```\n用户反馈 / 执行异常\n      │\n      ▼\nStep 1: 捕获失败上下文\n  - 用户的原始指令\n  - 技能被调用的完整参数（触发词、task 参数）\n  - 技能执行后的输出 / 报错信息\n  - 用户的具体反馈（\"不对\"、\"没效果\"、\"缺少XX\"）\n      │\n      ▼\nStep 2: 定位缺口类型\n  ┌──────────────────┬─────────────────────────────┐\n  │ 缺口类型          │ 判定特征                    │\n  ├──────────────────┼─────────────────────────────┤\n  │ 触发词遗漏        │ 用户输入含关键意图但技能未触发│\n  │ 规则缺失/模糊     │ 技能没有覆盖用户场景的指引    │\n  │ 指令冲突          │ 多条规则给出矛盾建议          │\n  │ 流程漏洞          │ 技能规定的流程某环节不可行    │\n  │ 输出格式不当      │ 技能输出格式不符合预期        │\n  │ 版本兼容          │ 依赖的外部工具版本已变更      │\n  └──────────────────┴─────────────────────────────┘\n      │\n      ▼\nStep 3: 生成补丁\n  - 定位技能文件中需要修改的具体位置（文件路径 + 行号范围）\n  - 给出 old_str → new_str 的具体修改内容\n  - 附带修改理由（为什么这样改能解决缺口）\n      │\n      ▼\nStep 4: 输出到确认队列\n  - 格式：Markdown 修复建议卡片\n  - 状态：待用户确认 → 确认后自动执行 edit_file\n```\n\n**输出格式示例**：\n\n```markdown\n## 技能修复建议\n\n**目标技能**：tiangong-skill\n**缺口类型**：触发词遗漏\n**定位**：SKILL.md 第 12 行触发条件列表\n\n**当前**：\n- \"优化skill\"、\"小鲁班\"\n\n**建议新增**：\n- \"skill打分\"、\"skill评分\"、\"技能评分\"\n\n**理由**：用户最近 3 次使用\"给这个技能打个分\"未触发 tiangong-skill，而路由到了错误的能力。\n```\n\n---\n\n### 模块 2：SkillOps —— 定期健康巡检\n\n**触发条件**：定时任务（建议每周一次），或手动触发\"检查技能健康\"。\n\n**五维诊断矩阵**：\n\n| 维度 | 检查项 | 方法 | 严重程度 |\n|------|--------|------|----------|\n| **效用** | SKILL.md 中每条规则是否有对应的触发条件 | 扫描 trigger 字段覆盖率 | 🟡 |\n| | references 文件是否被 SKILL.md 引用 | 交叉比对引用链 | 🟢 |\n| **冗余** | 是否存在内容高度重复的 references | 计算文件相似度（Jaccard） | 🟢 |\n| | SKILL.md 中是否有可合并的重复描述 | 段落语义去重 | 🟢 |\n| **兼容性** | 文件路径引用是否存在断裂 | 逐条检查相对路径可访问性 | 🔴 |\n| | 外部链接是否失效 | HTTP HEAD 请求检查 | 🟡 |\n| | YAML frontmatter 是否合法 | YAML 解析校验 | 🔴 |\n| **失败风险** | 是否有未定义触发条件的强制性规则 | 扫描\"必须\"/\"禁止\"等关键词 | 🟡 |\n| | 规则粒度是否过粗导致歧义 | 统计每条规则的约束项数量 | 🟢 |\n| **验证缺口** | 是否缺少对应 rules 的验证步骤 | 检查\"验证\"关键词覆盖 | 🟡 |\n| | references 是否缺少示例和反例 | 扫描 example/counterexample | 🟢 |\n\n**执行流程**：\n\n```\nStep 1: 加载目标技能文件（SKILL.md + references/ 下所有文件）\n\nStep 2: 逐维度扫描\n  - 工具化扫描：Python 脚本做结构分析（路径、YAML、引用链）\n  - 语义化扫描：Agent 做内容分析（规则一致性、重复、歧义）\n\nStep 3: 汇总诊断报告\n  - 按严重程度排序：🔴 断裂 > 🟡 风险 > 🟢 优化\n  - 每项附：位置、问题描述、建议修复动作\n\nStep 4: 生成维护动作清单\n  - merge：合并重复的 references\n  - repair：修复断裂的路径/链接\n  - retire：标记废弃的规则（已不再适用）\n  - add_validator：补充验证步骤\n```\n\n**维护动作定义**（对齐 SkillOps 论文概念）：\n\n| 动作 | 含义 | 示例 |\n|------|------|------|\n| `merge` | 合并内容高度重复的 references | ref-a.md 和 ref-b.md 语义相似度 > 0.8 → 合并 |\n| `repair` | 修复断裂引用或非法格式 | 路径 `/old/path.md` 不存在 → 改为 `/new/path.md` |\n| `retire` | 标记过时规则（加 `[DEPRECATED]`） | 规则提到已停用的 API → 标记待清理 |\n| `add_validator` | 补充验证/测试用例 | 规则 A 无验证流程 → 自动生成测试样例 |\n\n---\n\n### 模块 3：CASCADE —— 领域知识自动补充\n\n**触发条件**：技能 references 中引用外部知识（论文、API、规范），且距上次更新时间超过阈值（默认 90 天）。\n\n**执行流程**：\n\n```\nStep 1: 扫描技能 references/ 目录\n  - 识别所有外部引用（论文 arXiv ID、API 文档 URL、标准编号等）\n  - 记录每个引用的最后更新日期\n\nStep 2: 筛选过时引用\n  - 距上次更新 > 阈值 → 标记为待更新\n  - 优先处理用户最近高频使用的技能\n\nStep 3: 知识检索（web_search + web_fetch）\n  - 论文：搜索引用的 arXiv ID，检查是否有新版本\n  - API：抓取最新文档，对比 changelog\n  - 标准：搜索是否发布了新版本\n\nStep 4: 自我反思（内省）\n  - 对比新旧知识差异\n  - 判断是否影响技能规则的有效性\n  - 仅在有实质性变化时生成更新\n\nStep 5: 更新 references/ 文件\n  - 追加新知识（不删除旧内容，标注版本号）\n  - 格式：## [YYYY-MM-DD] 更新：xxx → 新内容\n```\n\n**关键设计**：不做自动替换旧规则，只做追加+标注。规则的废弃留给 SkillOps 的 `retire` 动作。\n\n---\n\n### 模块 4：Skill Distill —— 判断何时该精简\n\n**触发条件**：SkillOps 体检报告中「冗余」维度评分低于阈值，或技能 references 文件数超过 15 个。\n\n**指标自由度 F 的近似计算**：\n\n由于原论文的 Mantel 检验需要实际执行数据，我们用一个启发式近似：\n\n```\nF_approx = 1 - (模块被规则引用的次数 / 模块总字符数归一化)\n```\n\n- F ≈ 1：模块内容庞大但很少被规则引用 → 可精简\n- F ≈ 0：模块内容紧凑且多处引用 → 保留\n\n**执行流程**：\n\n```\nStep 1: 构建引用矩阵\n  - SKILL.md 中每条规则 → 引用了 references/ 的哪些段落\n  - 计算每个 references 文件的「有效引用密度」\n\nStep 2: 计算 F_approx\n  - F_approx ≥ 0.7：标记为「可精简」\n  - F_approx ≤ 0.3：标记为「核心资产，保护」\n  - 0.3 < F_approx < 0.7：暂不处理\n\nStep 3: 生成精简建议\n  - 针对「可精简」文件：\n    a. 提取被引用的核心段落\n    b. 建议删除未引用部分\n    c. 建议将高引用密度段落提升到 SKILL.md\n\nStep 4: 输出精简方案\n  - 展示「删除后文件大小变化」预估\n  - 标注「保留的核心内容」\n  - 待用户确认后执行\n```\n\n**精简优先级**：\n\n| 优先级 | 类型 | 典型处理 |\n|--------|------|----------|\n| P0 | 完全未被引用的 references 文件 | 直接建议删除 |\n| P1 | 文件大但仅 1-2 处引用 | 提取引用段落到 SKILL.md，删原文件 |\n| P2 | 多处重复的示例代码块 | 合并为一个 reference |\n| P3 | 历史版本累积的旧内容 | 归档到 archive/ 子目录 |\n\n---\n\n### 模块 5：HASP —— 将建议规则硬化\n\n**触发条件**：同一技能在同一场景下连续 2 次以上未遵守关键规则。\n\n**规则硬化的两种层级**：\n\n#### 层级 1：Should → Must（措辞强化）\n\n不改架构，只升级措辞。\n\n```\n原文：建议在生成 SKILL.md 时控制文件大小在 30KB 以内\n\n硬化后：强制约束：SKILL.md 文件大小不得超过 30KB。超限时，必须将详细内容拆分到 references/，SKILL.md 仅保留导航链接。\n```\n\n#### 层级 2：Should → PF（可执行程序函数）\n\n在 SKILL.md 中为关键规则附加触发条件 + 执行逻辑。\n\n```yaml\n# 规则元数据（YAML frontmatter 中）\nhard_rules:\n  - id: rule_001\n    should_activate: \"SKILL.md 文件大小 > 30KB\"\n    intervene:\n      type: \"block_and_restructure\"\n      action: \"禁止继续在 SKILL.md 追加内容，将超出部分写入新的 reference 文件，SKILL.md 仅保留一行引用链接\"\n    severity: \"critical\"\n    last_violated: \"2026-06-10\"\n    violation_count: 3\n```\n\n**执行流程**：\n\n```\nStep 1: 执行日志分析\n  - 从调度器中提取每次技能调用的结果\n  - 对比 SKILL.md 中的关键规则 vs 实际执行行为\n  - 识别「规则被忽略」的实例\n\nStep 2: 分级处理\n  忽略次数 1 次 → 不做处理（可能是一次性特殊情况）\n  忽略次数 2 次 → 生成措辞强化建议（层级 1）\n  忽略次数 ≥3 次 → 生成 PF 硬化建议（层级 2）\n\nStep 3: 硬化规则生成\n  - 提取被忽略规则的核心约束\n  - 定义 should_activate 条件（何时该触发）\n  - 定义 intervene 动作（触发后做什么）\n  - 注入到 SKILL.md 的 hard_rules 字段\n\nStep 4: 输出硬化建议\n  - 展示「原规则 → 硬化后规则」对比\n  - 标注触发条件和干预动作\n  - 待用户确认后执行\n```\n\n**硬化适用性判断**：\n\n| 规则类型 | 是否适合硬化 | 原因 |\n|----------|-------------|------|\n| 输出格式约束 | ✅ 适合 | 可精确检测和强制修正 |\n| 文件大小限制 | ✅ 适合 | 可精确检测 |\n| 必须包含的章节/字段 | ✅ 适合 | 结构化检查 |\n| 语义风格约束 | ❌ 不适合 | 难以精确检测 |\n| 创造性建议 | ❌ 不适合 | 无法形式化 |\n\n---\n\n### 模块 6：MUSE-Autoskill —— 修改后自动回归测试\n\n**触发条件**：任何对技能文件（SKILL.md 或 references/）的编辑操作完成后。\n\n**测试用例生成规则**：\n\n| 测试维度 | 生成方法 | 示例 |\n|----------|----------|------|\n| **触发词识别** | 从 SKILL.md 提取所有触发词，逐一构造输入 | 输入\"小鲁班\" → 预期触发 tiangong-skill |\n| **输出格式** | 从 SKILL.md 提取格式约束，构造验收条件 | 输出必须包含 YAML frontmatter |\n| **关键规则遵守** | 提取\"必须\"/\"禁止\"语句，构造边界测试 | 输入导致超限的请求 → 预期技能拒绝 |\n| **流程完整性** | 按技能的 Step 列表逐项模拟 | Step 3 依赖 Step 2 的输出 → 断链测试 |\n| **references 可达性** | 遍历所有文件路径引用 | 逐条检查文件是否存在 |\n| **反例测试** | 构造明确不在技能范围内的输入 | \"帮我写个操作系统\" → 预期不触发技能 |\n\n**执行流程**：\n\n```\nStep 1: 修改前快照\n  - 保存修改前的完整文件 hash\n  - 自动生成 5-10 条测试用例（基于上述 6 维度）\n\nStep 2: 执行修改（用户确认的编辑操作）\n\nStep 3: 回归测试\n  - 逐条运行 Step 1 生成的测试用例\n  - 逐条检查修改后的技能行为\n\nStep 4: 结果判定\n  全部通过 → 输出「回归测试通过，无退化」\n  部分失败 → 列出失败项 + 具体偏差 + 建议回滚\n  全部失败 → 强制建议回滚到修改前版本\n\nStep 5: 测试用例沉淀\n  - 通过的测试用例追加到技能目录下的 tests.yaml\n  - 形成持续增长的回归测试集\n```\n\n**tests.yaml 格式**：\n\n```yaml\n# 技能自进化 —— 回归测试用例（自动生成 + 人工补充）\nskill: tiangong-skill\ngenerated_at: 2026-06-11\ntests:\n  - id: trigger_001\n    dimension: \"触发词识别\"\n    input: \"小鲁班帮我优化下这个skill\"\n    expected: \"触发 tiangong-skill，执行优化流程\"\n    status: pass\n    last_run: 2026-06-11\n\n  - id: format_001\n    dimension: \"输出格式\"\n    condition: \"SKILL.md 输出必须包含 description 字段\"\n    check: \"YAML frontmatter 解析通过\"\n    status: pass\n    last_run: 2026-06-11\n\n  - id: rule_001\n    dimension: \"关键规则遵守\"\n    input: \"在不分析问题的情况下直接修改文件\"\n    expected: \"技能应拒绝，要求先分析再修改\"\n    status: fail\n    fail_reason: \"技能未拦截直接修改请求\"\n    last_run: 2026-06-11\n```\n\n---\n\n## 三、调度策略\n\n### 3.1 触发优先级\n\n```\n事件驱动（立即响应）\n  ├── P0: 用户明确反馈技能错误         → 触发 EvoSkill\n  ├── P0: 技能编辑操作完成              → 触发 MUSE 回归测试\n  ├── P1: 同一规则连续被忽略 3 次        → 触发 HASP 硬化\n  └── P2: 同一规则连续被忽略 2 次        → 触发 HASP 措辞强化\n\n定时驱动（周期扫描）\n  ├── 每周：SkillOps 健康巡检\n  ├── 每月：Skill Distill 精简检查（仅当冗余评分低时）\n  └── 每季度：CASCADE 知识更新检查（仅当有外部引用时）\n```\n\n### 3.2 并发控制\n\n- 同一技能同时只允许一个演化任务运行\n- 新任务到达时排队，FIFO 顺序执行\n- 回归测试（MUSE）运行期间锁定技能文件，其他模块等待\n\n### 3.3 修改冲突仲裁\n\n| 场景 | 仲裁规则 |\n|------|----------|\n| EvoSkill 生成补丁 vs 用户正在手动编辑 | 用户优先，EvoSkill 补丁排队 |\n| SkillOps 巡检 vs 用户正在手动编辑 | 巡检只读执行，仅输出报告不自动修改 |\n| Skill Distill 精简 vs HASP 硬化冲突 | HASP 优先（硬化是质量保障），精简让步 |\n\n---\n\n## 四、输出规范\n\n所有模块的输出统一为以下格式：\n\n```markdown\n## [模块名] 分析报告 —— [目标技能] —— [时间戳]\n\n### 发现项列表\n\n| # | 严重程度 | 位置 | 问题描述 | 建议动作 | 是否自动执行 |\n|---|---------|------|----------|----------|-------------|\n| 1 | 🔴 | SKILL.md:42 | 引用路径断裂 | repair | 否，需确认 |\n| 2 | 🟡 | ref-faq.md | 规则缺少验证 | add_validator | 否，需确认 |\n\n### 待确认操作（如有）\n\n - [ ] 修复 SKILL.md:42 的断裂引用 → 新路径: references/faq.md\n- [ ] 为 ref-faq.md 补充验证步骤 → 自动生成测试用例已就绪\n\n### 自动执行操作（已应用的变更）\n\n- merge: ref-a.md + ref-b.md → ref-merged.md\n```\n\n---\n\n## 五、与调度器的集成\n\n本方案作为一个独立技能，命名为 `skill-evolution`，由 Marvis 调度：\n\n```\nMarvis 收到「检查技能健康」「这个技能为什么不行」「精简技能」等指令\n      │\n      ▼\ndispatch_task → skill-evolution 技能\n      │\n      ▼\nskill-evolution 内部按上述模块执行\n      │\n      ▼\n返回分析报告 / 修改建议 / 自动修复结果\n```\n\n**调度判断表**：\n\n| 用户指令关键词 | 触发模块 | 是否需要用户确认 |\n|---------------|----------|-----------------|\n| \"检查技能\"、\"技能体检\" | SkillOps | 否（仅输出报告） |\n| \"这个技能有问题\"、\"技能出错了\" | EvoSkill | 是（修改需确认） |\n| \"更新技能知识\"、\"补最新\" | CASCADE | 否（仅追加不修改） |\n| \"精简技能\"、\"技能太长了\" | Skill Distill | 是（删除需确认） |\n| \"这个规则总被忽略\"、\"硬一点\" | HASP | 是（修改需确认） |\n| \"改完后测试下\"、\"不会退化吧\" | MUSE | 否（自动跑） |\n\n---\n\n## 六、渐进落地路线\n\n### Phase 1（MVP，1-2 天实现）\n\n只落 SkillOps + EvoSkill，覆盖 90% 高频场景。\n\n- SkillOps：纯读扫描，输出 Markdown 体检报告，不自动修改\n- EvoSkill：失败时生成补丁建议，用户手动确认后执行\n\n### Phase 2（完善，3-5 天）\n\n补充 MUSE + CASCADE。\n\n- MUSE：每次技能编辑后自动生成测试用例并跑回归\n- CASCADE：季度检查外部引用是否有更新\n\n### Phase 3（进阶，视需求）\n\nHASP + Skill Distill，处理长尾问题。\n\n- HASP：累积足够执行日志后启用规则硬化\n- Skill Distill：技能文件明显臃肿时触发精简\n\nFile v0.1.0:QUICKSTART.md\n\n# 鲁班.Skill 快速上手\n\n5 分钟掌握鲁班的核心用法。\n\n---\n\n## 触发鲁班\n\n说出以下任一词即可：\n\n```\n小鲁班 / luban / 优化skill / skill评分 / skill打分 / skill review\n```\n\n---\n\n## 常用命令\n\n### 评分（只读，不改文件）\n\n```\n\"给 prompt-optimizer 评个分\"\n\"评估所有 skills 质量\"\n\"看看 knowledge-engineering 怎么样\"\n```\n\n输出：十维度评分卡 + 诊断摘要。\n\n### 优化（评分 + 自动改进）\n\n```\n\"帮我优化 make-to-markdown\"\n\"优化所有 skills\"\n\"完整优化 tiangong-skill\"    # 强制 Full 模式\n```\n\n流程：模块检测 → 基线评估 → 编辑优化 → 重评 → 保留改进 / 回滚退步。\n\n### 专项检查\n\n| 指令 | 触发模块 | 说明 |\n|------|----------|------|\n| \"检查技能健康\" | SkillOps | 引用断裂 / YAML 合法性 / 规则冲突扫描 |\n| \"这个技能有问题\" | EvoSkill | 失败驱动修补，分析缺口并生成补丁 |\n| \"更新技能知识\" | CASCADE | 检查外部引用是否过时（> 90 天） |\n| \"精简技能\" | Skill Distill | 检测死引用、冗余段落，生成精简方案 |\n| \"规则硬化\" | HASP | 软规则升级为 Must 或 PF（可执行程序函数） |\n| \"安全审计\" | Sentinel | 恶意指令 / 硬编码凭据 / Prompt 注入扫描 |\n| \"看看优化历史\" | — | 读取 optimization-registry.tsv |\n\n---\n\n## Quick vs Full 模式\n\n鲁班默认使用 **Quick 模式**（轻量快速），满足以下条件自动升级 **Full 模式**：\n\n| 条件 | 说明 |\n|------|------|\n| 用户明确要求\"完整/深度/全面\" | 强制 Full |\n| 基线分 < 70 | 需要完整优化 |\n| 有历史 revert 记录 | 曾退化，需更谨慎 |\n| delta > 5 且连续 2 轮保持 | 有金矿，值得深度挖掘 |\n\n| | Quick | Full |\n|---|---|---|\n| 评分 | 结构评分 + dry_run 推演 | 全维度 + full_test + 多评委 |\n| 优化 | self-refine，`.bak` 回退 | git 分支 + 独立 judge |\n| MAX_ROUNDS | 3 | 5 |\n| 安全审查 | dim10 默认满分 | P0/P1/P2 全量门控 |\n\n---\n\n## 看懂评分卡\n\n鲁班用 **10 个维度、总分 100** 评估技能质量：\n\n| 维度 | 权重 | 含义 |\n|------|:---:|------|\n| dim1 Frontmatter 质量 | 7 | name / description / 触发词是否规范 |\n| dim2 工作流清晰度 | 12 | 步骤是否有序号、有明确输入/输出 |\n| dim3 失败模式编码 | 12 | 是否有 fallback 路径和错误恢复 |\n| dim4 检查点设计 | 6 | 是否有关键 STOP / CHECKPOINT 标记 |\n| dim5 可执行具体性 | 17 | 参数/格式/示例是否具体，软化词是否过多 |\n| dim6 资源整合度 | 4 | references/assets 引用是否正确 |\n| dim7 整体架构 | 12 | 标题层级 + 语义质量（冗余/AI 腔） |\n| dim8 实测表现 | 20 | 带 skill vs 不带 skill 效果对比 |\n| dim9 反例与黑名单 | 6 | 是否标注\"不要/禁止/反例\"并有替代做法 |\n| dim10 安全与审查门控 | 4 | 恶意指令/凭据/注入/外泄/越权检测 |\n\n---\n\n## 关键约束\n\n优化过程中鲁班严格遵守：\n\n1. **不改变技能核心功能**——只优化\"怎么写\"，不改\"做什么\"\n2. **不引入新依赖**——不添加原本没有的 scripts 或 references\n3. **每轮只改一个维度**——避免无法归因\n4. **文件大小 ≤ 原 150%**——防止膨胀\n5. **棘轮机制**——改进保留，退步自动回滚\n6. **评分独立**——效果维度用子 agent 评分，不「自己改自己评」\n\n---\n\n## 端到端实战示例\n\n以\"给 prompt-optimizer 评个分\"为例，完整展示从输入到报告的流程。\n\n### 用户输入\n```\n给 prompt-optimizer 评个分\n```\n\n### 鲁班做了什么\n\n1. **Phase 0 初始化**：识别目标 skill `prompt-optimizer`，检查 `results.tsv` 历史记录\n2. **Phase 0.3 模块检测**：六模块静态扫描（SkillOps/HASP/Sentinel 等），产出诊断子分\n3. **Phase 0.5 测试设计**：生成 2-3 个测试 prompt\n4. **Phase 1 基线评估**：十维评分 + 效果验证，输出完整评分卡\n\n### 用户看到的输出\n\n```\n📊 prompt-optimizer 评分卡\n\n总分: 72.3 / 100\n\n| 维度 | 得分 | 权重 | 加权 | 状态 |\n|:---|:---:|:---:|:---:|:---|\n| dim1 Frontmatter质量 | 10.0 | 7 | 7.0 | ✅ |\n| dim2 工作流清晰度 | 7.5 | 12 | 9.0 | ⚠️ |\n| dim3 失败模式编码 | 4.0 | 12 | 4.8 | 🔴 |\n| dim4 检查点设计 | 10.0 | 6 | 6.0 | ✅ |\n| dim5 可执行具体性 | 8.0 | 17 | 13.6 | ⚠️ |\n| dim6 资源整合度 | 5.0 | 4 | 2.0 | ⚠️ |\n| dim7 整体架构 | 8.0 | 12 | 9.6 | ✅ |\n| dim8 实测表现 | 6.0 | 20 | 12.0 | ⚠️ |\n| dim9 反例与黑名单 | 5.0 | 6 | 3.0 | ⚠️ |\n| dim10 安全与审查门控 | 6.0 | 4 | 2.4 | ⚠️ |\n\n模块诊断摘要:\n- HASP: 软化词 5 处（\"建议\"×3、\"可考虑\"×2）→ dim5 子分 1/3\n- SkillOps: 引用路径全部可达 → dim6 子分 3/3\n- Sentinel: 无安全告警 → dim10 子分 2/2\n\n主要短板:\n🔴 dim3 (4.0): 缺少失败分支，只写了正向流程\n⚠️ dim5 (8.0): 软化词过多，部分步骤缺具体参数\n```\n\n---\n\n### 优化前后对比示例\n\n#### 示例 1：dim5 软化词修正\n\n**优化前**（dim5 = 6.0）：\n```markdown\n建议在生成报告时控制篇幅在 2000 字以内。\n可根据情况选择表格或列表展示数据。\n```\n\n**优化后**（dim5 = 8.5）：\n```markdown\n必须控制报告篇幅 ≤ 2000 字。超出时截断并标注省略。\n数据 ≥ 3 列 → 用表格；数据 ≤ 2 列 → 用列表。\n```\n\n变化：2 处\"建议/可\"改为\"必须\"并补充具体阈值，软化词从 5 处减至 1 处。\n\n#### 示例 2：dim3 补 fallback 路径\n\n**优化前**（dim3 = 4.0）：\n```markdown\nStep 2: 读取目标文件内容\nStep 3: 分析内容并生成摘要\n```\n\n**优化后**（dim3 = 8.0，dim2 跟涨 +1.5）：\n```markdown\nStep 2: 读取目标文件内容\n  → 如果文件不存在: 提示用户检查路径，等待重新输入\n  → 如果文件无法解析: 尝试用 legac-doc-parser 兜底\n  → 如果以上均失败: 输出原始文件路径供用户手动查看\nStep 3: 分析内容并生成摘要\n```\n\n变化：每个步骤补了三段式 fallback（触发条件 / 一线修复 / 兜底），dim2 因流程更清晰而跟涨。\n\n---\n\n## 自检清单\n\n运行以下命令确认鲁班各脚本可用：\n\n```bash\n# 安全审计\npython scripts/security_audit.py --help\n\n# 技能健康巡检\npython scripts/skillops_scanner.py --help\n\n# 软化词检测与规则硬化\npython scripts/hasp_hardener.py --help\n\n# 外部引用过时检测\npython scripts/cascade_updater.py --help\n\n# 引用矩阵分析（精简检测）\npython scripts/distill_analyzer.py --help\n\n# 回归测试生成\npython scripts/muse_generator.py --help\n\n# 失败补丁建议\npython scripts/evo_skill_patcher.py --help\n```\n\n全部脚本输出 `--help` 信息（而非报错）即表示可用。如有 `ModuleNotFoundError`，执行 `pip install -r requirements.txt`。\n\n---\n\n## 下一步\n\n- 完整 Rubric 细则 → [REFERENCE.md](./REFERENCE.md)\n- 设计方法论 → [references/SA-DM.md](./references/SA-DM.md)\n- 技能主文件 → [SKILL.md](./SKILL.md)\n\nFile v0.1.0:REFERENCE.md\n\n# 鲁班.Skill 技术参考\n\n完整的技术文档，覆盖 Rubric 评分体系、优化流程（Phase 0-3）、六模块、数据结构和双模策略。\n\n---\n\n## 目录\n\n1. [十维 Rubric 评分体系](#1-十维-rubric-评分体系)\n2. [六模块缺陷检测](#2-六模块缺陷检测)\n3. [双模策略](#3-双模策略)\n4. [优化流程（Phase 0-3）](#4-优化流程phase-0-3)\n5. [多评委与多角色审查](#5-多评委与多角色审查)\n6. [关键数据结构](#6-关键数据结构)\n7. [优化策略库](#7-优化策略库)\n8. [异常与边界条件](#8-异常与边界条件)\n9. [12 条设计原则](#9-12-条设计原则)\n\n---\n\n## 1. 十维 Rubric 评分体系\n\n总分 100。确定性维度覆盖 25%，LLM 承担 71 分，dim10 公式计算 4 分。\n\n### 1.1 维度总览\n\n| 维度 | 权重 | 类型 | 评分方式 | Quick | Full |\n|:---|:---:|:---|:---|:---|:---|\n| dim1 Frontmatter 质量 | 7 | 确定性 | name 规范、description 含做什么+何时用+触发词、≤1024 字符、禁结尾空话。三项全过=10，任一缺失=0 | agent 逐项检查 | 同 Quick |\n| dim2 工作流清晰度 | 12 | LLM | 步骤明确可执行、有序号、每步有明确输入/输出 | LLM judge | 多评委中位数 |\n| dim3 失败模式编码 | 12 | LLM | 显式编码失败模式（\"如果 X 失败 → Y\"）；有 fallback 路径和错误恢复 | LLM judge | 多评委中位数 |\n| dim4 检查点设计 | 6 | 确定性 | 正则 `/CHECKPOINT\\|STOP\\|🔴\\|⛔/`：≥1 处 STOP=10，仅 CHECKPOINT=5，无=0 | agent 正则扫描 | 同 Quick |\n| dim5 可执行具体性 | 17 | LLM | 有具体参数/格式/示例；前置扫描软化词注入上下文。HASP 模块产出确定性子分 3/17 | LLM judge + 软化词扫描 | 多评委中位数 + HASP 3 |\n| dim6 资源整合度 | 4 | LLM | references/assets 引用正确、路径可达。SkillOps 模块产出确定性子分 3/4 | LLM judge | SkillOps 3 + LLM 1 |\n| dim7a 结构合规 | 6/12 | 确定性 | 标题层级连续不跳跃 + 含 ≥3/4 必含章节→6 分，每缺一项 −2 | agent 检查 | 同 Quick |\n| dim7b 语义质量 | 6/12 | LLM | 冗余段落/AI 腔废话/重复描述→一处 −1。Distill 模块产出确定性子分 2/6 | LLM judge | Distill 2 + LLM 4 |\n| dim8 实测表现 | 20 | LLM | 8a 意图完成度(8) + 8b 净提升幅度(7) + 8c 副作用(5) | dry_run 推演 | full_test（子 agent） |\n| dim9 反例与黑名单 | 6 | 混合 | 两段式：①关键词扫描 → ②LLM 评估反例质量（独立章节/含反模式+替代做法/覆盖核心风险） | 同 Full | 同 Quick |\n| dim10 安全与审查门控 | 4 | 公式 | Sentinel 2 + P0/P1 审查 2。Quick 默认满分 | 默认 100 | Sentinel + 审查合并 |\n\n### 1.2 评分公式\n\n```\n加权原始分 = (dim1×7 + dim2×12 + dim3×12 + dim4×6 + dim5×17 + dim6×4 + dim7a×6 + dim7b×6 + dim8×20 + dim9×6 + dim10×4) / 10\n```\n\n### 1.3 模块子分合并规则\n\n| 维度 | 权重 | Module 子分 | Rubric 子分 | 合并公式 |\n|:---|:---:|:---|:---|:---|\n| dim5 | 17 | HASP 3 | LLM 14 | `(HASP×3 + Rubric×14) / 17 × 10` |\n| dim6 | 4 | SkillOps 3 | LLM 1 | `(SkillOps×3 + Rubric×1) / 4 × 10` |\n| dim7b | 6 | Distill 2 | LLM 4 | `(Distill×2 + Rubric×4) / 6 × 10` |\n| dim10 | 4 | Sentinel 2 | 审查 2 | `(Sentinel×2 + 审查×2) / 4 × 10` |\n\n### 1.4 dry_run 降权规则\n\n| 维度 | 处理 |\n|:---|:---|\n| dim2/3/5/6/7b/9 | 标注 `[confidence: degraded]`，不降分 |\n| dim8a 意图完成度 | 原始分 ×0.5 |\n| dim8b 净提升幅度 | 原始分 ×0.3 |\n| dim8c 副作用 | 正则扫描可用，不降权 |\n| dim10 | 默认 100 |\n\n---\n\n## 2. 六模块缺陷检测\n\nPhase 0.3 执行，产出确定性子分到 `diagnostics.tsv`。模块不独立评分，只产子分。\n\n### 2.1 模块清单\n\n| 模块 | 检测内容 | 关联维度 | 子分范围 |\n|:---|:---|:---|:---:|\n| **SkillOps** | 引用路径可达性、YAML/Frontmatter 合法性 | dim6 | 0-3 |\n| **EvoSkill** | 历史振荡检测（同维度 2+ 轮反复涨跌） | dim3 | 不产子分（仅标注 `[oscillation]`） |\n| **HASP** | 软化词计数（建议/可考虑/根据情况等） | dim5 | 0-3 |\n| **CASCADE** | 外部引用过期 > 180 天 | dim6 | 标注，子分由 SkillOps 反映 |\n| **Distill** | 完全未被引用的 references、F_approx ≥0.7 文件 | dim7b | 0-2 |\n| **Sentinel** | 恶意指令/硬编码凭据/Prompt 注入/数据外泄/权限越权 | dim10 | 0-2（每类独立） |\n\n### 2.2 Sentinel 五类检测\n\n每类独立计分（0 命中=2 分，≥2 处=0 分，1 处=1 分），5 类取均值。\n\n| 类别 | 匹配模式 |\n|:---|:---|\n| 恶意指令 | `exec(` / `system(` / `subprocess` / `rm -rf` / `format` / `del /f` / `reg delete` |\n| 硬编码凭据 | `api_key=` / `password=` / `token=` / `secret=` / 私钥 PEM |\n| Prompt 注入 | `DAN` / `jailbreak` / `simulate` / `system override` / `ignore.*instructions` |\n| 数据外泄 | `smtp` / `upload.*external` / `scp` / `ftp upload` |\n| 权限越权 | `chmod` / `chown` / `sudo` / `su -` / `icacls` |\n\n### 2.3 HASP 软化词列表\n\n检测词：`建议` / `可考虑` / `根据情况` / `灵活把握` / `视情况而定` / `可能` / `大概`\n\n计分：0 处=3 分，≥5 处=0 分，1-4 处线性映射。\n\n### 2.4 Distill F_approx 公式\n\n```\nF_approx = 1 - (模块被规则引用的次数 / 模块总字符数归一化)\n归一化：模块总字符数 / 所有模块总字符数均值（分母取 max(均值, 100)）\n```\n\n- F ≥ 0.7 → 标记「可精简」\n- F ≤ 0.3 → 标记「核心资产」\n\n---\n\n## 3. 双模策略\n\n### 3.1 模式选择网关\n\n```\nif 用户明确要求\"完整/深度/全面/工业/生产\" → Full\nelif baseline 分 < 70 → Full\nelif results.tsv 有 revert 记录 → Full\nelif delta > 5 且连续 2 轮保持 → Full\nelif 用户说\"看看/评一下/扫一眼\" → Quick\nelse → Quick（默认）\n```\n\n### 3.2 对比\n\n| | Quick | Full |\n|:---|:---|:---|\n| **触发** | 默认 | 用户明确 / ROI>5 分 / 曾被 revert |\n| **评分** | 结构评分 + dry_run 推演 | 全维度 + full_test + 多评委 |\n| **优化** | self-refine，`.bak` 回退 | git 分支 + 独立 judge + 仪表盘 |\n| **审查** | dim10 默认 100 | P0/P1/P2 全量门控 |\n| **基线** | 跳过 | 消费者能力基线测试 |\n| **停止** | MAX_ROUNDS=3 | MAX_ROUNDS=5 |\n| **Meta** | 不激活 L4 | 激活 L4，输出 meta_learnings.md |\n\n### 3.3 双轨反馈\n\n- **Quick→Full**：Quick 下 3 轮内 Δ > 5 分，自动升级\n- **Full→Quick**：Full 下连续 3 个 skill 稳定 delta < 3，后续降级\n\n### 3.4 触顶信号\n\n连续 2 轮 Δ < 2 分 → break，见好就收。\n\n---\n\n## 4. 优化流程（Phase 0-3）\n\n### 4.1 Phase 0: 初始化\n\n```\n1. 确认优化范围（全部 / 指定列表）\n2. git checkout -b auto-optimize/YYYYMMDD-HHMM（Quick 跳过）\n3. 检查/创建 results.tsv（12 列表头）\n4. 读取历史评分\n5. ROI 前置评估：基线分 ≥85 且最低维度分 ≥7 → 跳过\n6. 读取 revert 历史，标记绕行维度\n7. 检查/创建 diagnostics.tsv\n```\n\n### 4.2 Phase 0.3: 模块缺陷检测\n\n六模块按优先级顺序执行：SkillOps → EvoSkill → HASP → CASCADE → Distill → Sentinel。\n\n每模块检测后追加 diagnostics.tsv，不清空旧记录（Phase 1 前重建）。🔴 CHECKPOINT：展示子分摘要。\n\n### 4.3 Runtime 中立性 Gate\n\n扫描 SKILL.md 全文：\n\n| 检测项 | 判定 | 动作 |\n|:---|:---|:---|\n| 单 runtime 措辞 | ❌ 不通过 | 强制 Phase 2 P0 修复 |\n| 安装路径写死单一工具链 | ❌ 不通过 | 同上 |\n| 单一 badge/标识语 | ❌ 不通过 | 同上 |\n| skill name 含单 runtime 标识 | ✅ 豁免 | — |\n\n### 4.4 Phase 0.5: 测试 Prompt 设计\n\n为每个 skill 设计 2-3 个测试 prompt（典型场景 + 歧义场景），保存到 `{skill目录}/test-prompts.json`。🔴 CHECKPOINT · 🛑 STOP。\n\n### 4.5 Phase 1: 基线评估\n\n```\n1. 按 Rubric 表逐维评分，得各维度 Rubric 子分\n2. 读取 diagnostics.tsv，取 Module 子分\n3. 同维合并（dim5/6/7b/10 有模块介入）\n4. 效果评分：spawn 子 agent 跑 test-prompts\n5. 加权计算总分，记录到 results.tsv\n```\n\nFull 模式额外执行消费者能力基线测试（用 baseline-skill.md 测目标模型裸能力，< 60 分阻断）。\n\n### 4.6 Phase 2: 优化循环\n\n```\nfor each skill（按基线分升序）:\n  round = 0\n  while round < MAX_ROUNDS:\n    round += 1\n    Step 0: 重新运行六模块检测 → 更新 diagnostics.tsv\n    Step 1: 诊断 → 找最弱维度\n    Step 2: 提方案（1 个具体改进，对照反例黑名单+rejected_edits+luban-profile）\n    Step 3: 编辑前备份（git commit 或 .bak）\n    Step 4: 执行改进（字符变化 ≤10%）→ 自检 dim1/4/7a/9\n    Step 5: 重新评分（spawn 独立子 agent）\n    Step 6: 决策\n      if 新分 > 旧分: commit + 触顶检测\n      else: 回滚 + 记录 rejected_edits.md\n```\n\n🔴 CHECKPOINT：每个 skill 优化完展示摘要，等用户确认。\n\n### 4.7 Phase 2.5: 探索性重写\n\n触发条件：连续 2 个 skill 都在 round 1 break，或单 skill 连续 2 轮 round 1 break。\n流程：git stash → 重写 → 评估 → 优于 stash 版则采用。🛑 STOP：必须用户同意。\n\n### 4.8 Phase 3: 汇总报告\n\n| 项目 | 内容 |\n|:---|:---|\n| 优化 skill 数 | N 个，保留 M 个 |\n| 分数变化 | 表格（skill 名 / 旧分 / 新分 / Δ / 主要改进维度） |\n| 主要改进摘要 | 按维度聚类 |\n| 健康度仪表盘 | dry_run 比例、revert 率、oscillation 告警 |\n\n**Epoch Meta-Review**（Full 模式）：\n\n1. 汇总优化记录\n2. 提炼可迁移规律 → `meta_learnings.md`\n3. 识别 oscillation 模式 → `luban-profile.json`\n\n### 4.9 备份轮转策略\n\n- 每个 skill 保留最近 5 轮编辑备份\n- baseline 和首轮备份永久保留\n- 超出 5 轮移至 `luban-backups-archive/{skill_name}/`\n\n---\n\n## 5. 多评委与多角色审查\n\n### 5.1 同质多评委\n\nFull 模式采用 2 个独立 file-agent 评委（dispatch_task），评分取中位数。\n\n### 5.2 异质评委（按需触发）\n\n| 触发条件 | 异质评委 | 复核焦点 |\n|:---|:---|:---|\n| dim1≥9 且 dim8a≤5 | search-agent | dim1/dim3 真实性抽查 |\n| dim8c=5 且 dim9≤3 | computer-agent | 副作用复核 |\n| dim4≥9 但从未触发 revert | computer-agent | dim4/dim10 架构抽查 |\n\n### 5.3 多角色并行审查（P0/P1/P2）\n\n当 dim8c < 5 或 dim10 原始分 < 60 时触发。\n\n**审查严重度**：\n\n| 级别 | 定义 | 审查影响 | 门控 |\n|:---|:---|:---|:---|\n| P0 | 影响正确性或安全性 | −30/项 | 任一未闭合→阻断，dim10 上限锁死 ≤40 |\n| P1 | 影响可靠性或可维护性 | −5/项 | ≥3 个未闭合→阻断 |\n| P2 | 影响一致性或可读性 | 不扣分 | 不设门控 |\n\n**审查流程（阶段 0-4）**：\n\n1. 阶段 0 — 前置：识别文档类型 → 选派角色 → 公开分级声明\n2. 阶段 1 — 独立审查：角色间绝对隔离，输出结构化问题清单\n3. 阶段 2 — 问题归一化：同类合并、侧面互补、独立保留\n4. 阶段 3 — 编辑修复：按 P0→P1→P2 逐项修复，禁止顺手改\n5. 阶段 4 — 复审闭环：P0 原角色逐条确认，P1 自检+30% 抽查，P2 自检\n\n### 5.4 子 Agent 不可用降级\n\n| 受影响功能 | 降级行为 | 标记 |\n|:---|:---|:---|\n| 同质多评委 | 主 agent 单次 LLM 评分 | `judge_count=1`, `eval_mode=fallback` |\n| 异质评委 | 跳过 | — |\n| 多角色审查 | 跳过，dim10 默认 100 | `eval_mode=fallback` |\n| dim8 效果维度 | 降为 dry_run 推演 | `eval_mode=fallback_dry` |\n\n---\n\n## 6. 关键数据结构\n\n### 6.1 results.tsv\n\n位置：`{skill目录}/results.tsv`，12 列 TSV。\n\n```\ntimestamp\tcommit\tskill\tround\told_score\tnew_score\tstatus\tdim_changed\tdelta\tnote\teval_mode\tjudge_count\n```\n\n- `status`: `baseline` / `keep` / `revert` / `error`\n- `eval_mode`: `full_test` / `dry_run` / `fallback`\n\n### 6.2 diagnostics.tsv\n\n位置：`{skill目录}/diagnostics.tsv`，Phase 0.3 产出，每次运行清空重建。\n\n```\n模块\t维度\t子分\t文件\t行号\t详情\n```\n\n### 6.3 optimization-registry.tsv\n\n位置：`luban-workspace/optimization-registry.tsv`，鲁班全局登记表。\n\n```\nskill_name\ttimestamp\tscore_before\tscore_after\trounds\teval_mode\n```\n\n### 6.4 rejected_edits.md\n\n位置：`{skill目录}/rejected_edits.md`，被回滚的编辑方案。\n\n```markdown\n## REJ-{序号} | {时间戳} | {skill名}\n- **目标维度**: dim5\n- **改动段落**: L120-L135\n- **方案摘要**: ...\n- **被拒原因**: ...\n- **绕行建议**: ...\n```\n\n### 6.5 meta_learnings.md\n\n位置：`luban-workspace/meta_learnings.md`，跨 skill 可迁移规律。\n\n```markdown\n## ML-{序号} | {时间戳}\n- **规律**: ...\n- **来源 skill**: ...\n- **置信度**: 高/中/低\n- **可复用场景**: ...\n```\n\n### 6.6 luban-profile.json\n\n位置：`luban-workspace/luban-profile.json`，oscillation guard。\n\n```json\n{\n  \"oscillation_guard\": [\n    {\"dimension\": \"dim5\", \"skills\": [\"skill-a\", \"skill-b\"], \"pattern\": \"...\", \"recommendation\": \"...\"}\n  ]\n}\n```\n\n---\n\n## 7. 优化策略库\n\n按优先级排序，每轮只做最高优先级的一个。\n\n### 7.1 P0: 适配性与效果问题（gate 项，必须先修）\n\n| 类型 | 识别特征 | 策略 | 维度 |\n|:---|:---|:---|:---|\n| Runtime 绑定 | 单 runtime 措辞、安装路径写死 | 替换为 runtime-neutral 措辞 | dim6/dim8 |\n| 效果倒退 | 带 skill 比不带还差 | 精简指令 | dim8 |\n| 输出偏离 | 测试输出不符合预期 | 补充明确输出模板 | dim8 |\n| 副作用触发 | dim8c 命中 | 逐项检查副作用来源 | dim8/dim10 |\n| Sentinel 告警 | 安全审计命中 | 移除恶意指令/凭据替换/增加 guards | dim10 |\n\n### 7.2 P1: 结构性问题\n\n| 类型 | 策略 | 维度 |\n|:---|:---|:---|\n| Frontmatter 缺触发词 | 补充中英文触发词 | dim1 |\n| 无 Phase/Step 结构 | 重组为线性流程 | dim2 |\n| 无检查点 | 插入 🔴 CHECKPOINT / 🛑 STOP | dim4 |\n| 标题跳跃 | 补中间层级，合并重复章节 | dim7 |\n| 无错误处理 | 补三段式 fallback | dim3 |\n\n### 7.3 P2: 具体性问题\n\n| 类型 | 策略 | 维度 |\n|:---|:---|:---|\n| 步骤模糊 | 改为具体操作+参数 | dim5 |\n| 缺输入/输出规格 | 补充格式（JSON Schema/示例） | dim5 |\n| 缺异常处理 | 补 if-then 兜底路径 | dim3 |\n| 软化词过多 | 改为\"必须\"，补具体数值 | dim5 |\n| 资源引用断裂 | 删除死链接或补建文件 | dim6 |\n\n### 7.4 P3: 可读性问题\n\n| 类型 | 策略 | 维度 |\n|:---|:---|:---|\n| 段落过长 | 拆分或改用表格 | dim7 |\n| 重复描述 | 合并去重 | dim7 |\n| 缺反例标注 | 加 ≥3 处反例标注 | dim9 |\n| 缺速查入口 | 添加 TL;DR 或决策树 | dim5/dim7 |\n\n### 7.5 高杠杆操作（HL）\n\n- **HL-1**：加 🔴 CHECKPOINT / 🛑 STOP，4 行改动撬动 dim4 +3 分\n- **HL-2**：三段式 fallback 一石三鸟（dim3→dim2 跟涨 + dim4 补检查点）\n- **HL-3**：触顶自动 break，+0.15 是停手信号\n\n---\n\n## 8. 异常与边界条件\n\n| 场景 | 触发条件 | 处理动作 |\n|:---|:---|:---|\n| 不在 git 仓库 | `git rev-parse` 失败 | 询问用户：`git init` 或文件备份 |\n| results.tsv 缺失 | 文件不存在 | 新建并写表头 |\n| results.tsv 损坏 | 列数不匹配 | 备份后重建 |\n| 分支已存在 | `git checkout -b` 失败 | 末尾加 `-2`/`-3`；3 次后询问 |\n| git revert 失败 | 冲突/工作树脏 | 先 stash；仍失败则从 commit 读 SKILL.md 手动恢复 |\n| MAX_ROUNDS 触顶 | 已达上限仍有短板 | 展示最弱维度，问用户选择 |\n| 优化后超 150% 体积 | 新文件 > 原 ×1.5 | 拒绝提交，回精简后重评 |\n| test-prompts.json 已存在 | 文件已在 skill 目录 | 复用/重写/追加，三选一 |\n| SKILL.md 找不到 | 目录存在但无 SKILL.md | 终止，results.tsv 记 `status=error` |\n| 消费者基线失败 | 目标模型裸能力不足 | 输出能力不足报告，阻断 |\n| 子 Agent 不可用 | dispatch_task 返回错误 | 触发降级模式 |\n| 分数精度漂移 | 总分差 < 0.05 | 改进需严格 > 旧分（不靠四舍五入） |\n\n原则：异常先告知用户，再按规则处理；绝不静默跳过。\n\n---\n\n## 9. 12 条设计原则\n\n1. **单一可编辑资产**：每次只改一个 SKILL.md\n2. **双重评估**：结构评分 + 效果验证\n3. **棘轮机制**：只保留改进，自动回滚退步\n4. **独立评分**：用子 agent 消除偏差\n5. **人在回路**：每个 skill 优化完暂停确认\n6. **文本学习率预算**：每次编辑字符变化 ≤10%\n7. **拒绝编辑缓冲区**：回滚方案留作负反馈\n8. **Epoch Meta-Review**：跨 skill 汇总，沉淀可迁移经验\n9. **场景自适应双模**：Quick / Full 自动选择\n10. **ROI 前置评估**：基线分 ≥85 且最低维度分 ≥7 跳过\n11. **消费者能力基线**：Full 模式先测目标模型裸能力\n12. **全链路审计**：Full 模式所有操作记录 git commit 可追溯\n\n---\n\n## 架构红线（运行时检测）\n\n1. **禁止 self-edit-self-evaluate**：同一 agent 不得既编辑又评分 → dim8 降权 ×0.5\n2. **禁止跨维度打包修改**：一轮只改一个维度 → 整轮回滚\n3. **禁止 dry_run 为 full_test**：dim8 全部 dry_run → results.tsv 标记 invalid\n4. **禁止 bypass gate**：P0 未闭合不得进入下一 phase → 中断流程\n\n### 反例黑名单\n\n| # | 反模式 | 替代做法 |\n|---|--------|----------|\n| 1 | 同 context 自评自改 | spawn 独立子 agent 评分 |\n| 2 | `git reset --hard` 当回滚 | 用 `git checkout` 保留追溯链 |\n| 3 | 为凑分增冗余 | 触顶信号 → break |\n| 4 | 跳过 test-prompts | Phase 0.5 强制设计 |\n| 5 | 轮内改多个维度 | 每轮 1 个维度 |\n| 6 | dry_run 比例 > 30% | 强制至少 1 个 full_test |\n| 7 | 静默跳过异常 | 异常表 fallback 必须先告知 |\n| 8 | 忽视维度相关性 | 看相关簇短板再决定 |\n\nFile v0.1.0:skill-card.md\n\n## Description:\n\nLuban Skill helps agents evaluate, optimize, harden, and regression-check AI agent skills using a ten-dimension rubric and adaptive Quick or Full workflows.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[ebandao777-oss](https://clawhub.ai/user/ebandao777-oss)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and skill maintainers use this skill to review, score, harden, and iteratively improve agent skill files while preserving auditability and rollback paths.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Automated optimization may edit and persist changes across skill repositories beyond a simple review workflow.\n\nMitigation: Use review-only or dry-run mode for assessment, limit target repositories, and require human approval before broad optimization commands.\n\nRisk: Backup files, git operations, and persistent optimization history can change workspace state.\n\nMitigation: Run the skill only in repositories where those state changes are acceptable, then inspect diffs, diagnostics, and rollback points before deployment.\n\nRisk: Live URL checking and scheduled or event-driven maintenance can interact with external resources or alter reference material in sensitive workspaces.\n\nMitigation: Disable or gate live URL checks and scheduled maintenance unless the workspace policy explicitly allows them.\n\n## Reference(s):\n\n- [ClawHub release page](https://clawhub.ai/ebandao777-oss/skills/luban-skill-2)\n- [Server-resolved GitHub provenance](https://github.com/ebandao777-oss/luban-skill)\n- [Scenario-Adaptive Dual-Mode Architecture reference](references/SA-DM.md)\n- [Module and scheduler reference](references/modules.md)\n- [FAQ and anti-patterns](references/faq.md)\n- [EvoSkill paper](https://arxiv.org/abs/2603.02766)\n- [SkillOps paper](https://arxiv.org/abs/2605.13716)\n- [Skill Distill paper](https://arxiv.org/abs/2604.01608)\n- [HASP paper](https://arxiv.org/abs/2605.17734)\n- [MUSE-Autoskill paper](https://arxiv.org/abs/2605.27366)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown reports, JSON diagnostics, patch guidance, and shell command snippets]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May propose or apply skill edits, diagnostics, test cases, backup files, and optimization history depending on mode and user approval.]\n\n## Skill Version(s):\n\n0.1.0 (source: server release metadata; artifact frontmatter lists 1.0.0)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.","readmeExcerpt":"Skill: Luban Skill Owner: ebandao777-oss Summary: 鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。 Tags: latest:0.1.0 Version history: v0.1.0 | 2026-08-15T17:29:24.245Z | auto 鲁班.Skill 1.0.0 全新发布——工业级智能体技能优化器。 - 首次发布，系统性阐述设计哲学，明确“12条原则”及双模式（Quick/Full）自适应流程。 - 引入 10 维度 Rubric 综合评估体系，细","codeSnippets":[],"executableExamples":[{"language":"text","snippet":"加权原始分 = (dim1×7 + dim2×12 + dim3×12 + dim4×6 + dim5×17 + dim6×4 + dim7a×6 + dim7b×6 + dim8×20 + dim9×6 + dim10×4) / 10"},{"language":"text","snippet":"┌──────────────────────────────────────┐\n                          │      鲁班.Skill 技能自进化调度器       │\n                          │   事件驱动 + 定时轮询 + 按需触发       │\n                          └────────────────┬─────────────────────┘\n                                           │\n              ┌────────────────────────────┼────────────────────────────┐\n              │                            │                            │\n    ┌─────────┴──────────┐      ┌─────────┴──────────┐      ┌─────────┴────────────┐\n    │   模块层（缺陷检测）   │    │ 核心引擎（评分+修复）│      │   事件钩子（旁路）    │\n    │ SkillOps 定期体检   │      │                    │      │  编辑完成 → MUSE 回归 │\n    │ EvoSkill 失败驱动   │ 子分 │  Phase 0   初始化   │      │  错误反馈 → EvoSkill  │\n    │ HASP     规则硬化   │───→  │  Phase 0.3 模块检测 │      │  规则连续忽略 → HASP  │\n    │ CASCADE  知识更新   │      │  🔴 CHECKPOINT     │      └──────────────────────┘\n    │ Distill  精简瘦身   │      │  Runtime Gate      │\n    │ Sentinel  安全审计  │      │  Phase 0.5 测试设计 │\n    └────────────────────┘      │  🔴 CHECKPOINT     │\n              │                 │  Phase 1  基线评估 │\n              │                 │  🔴 CHECKPOINT     │\n              │                 │  Phase 2  优化循环 │\n              │                 │  Phase 2.5探索重写 │\n              │                 │  Phase 3  汇总报告  │\n              │                 └─────────┬──────────┘\n              │                           │\n              │      diagnostics.tsv      │   results.tsv\n              │      (模块子分清单)        │   (评分+优化记录)\n              │                           │\n              └─────────────┬─────────────┘\n                            │\n                            ▼\n                 ┌─────────────────────┐\n                 │    技能文件仓库      │\n                 │  SKILL.md           │\n                 │  references/        │\n                 │  tests.yaml         │\n                 │  test-prompts.json  │\n                 └─────────────────────┘"},{"language":"text","snippet":"输入：用户指令 + skill 历史评分\nif 用户明确要求\"完整/深度/全面/工业/生产\" → Full\nelif baseline 分 < 70 → Full（需要完整优化）\nelif results.tsv 有 revert 记录 → Full（曾退化）\nelif delta > 5 且连续 2 轮保持 → Full（有金矿）\nelif 用户说\"看看/评一下/扫一眼\" → Quick\nelse → Quick（默认）"},{"language":"text","snippet":"1. 确认优化范围：全部 skills 或用户指定列表\n2. git checkout -b auto-optimize/YYYYMMDD-HHMM\n3. 检查 results.tsv 是否存在，不存在则创建并写入表头（12 列）\n4. 读取 results.tsv 了解历史评分\n5. ROI 前置评估：若历史基线分 ≥85 且最低维度分 ≥7 → 跳过优化，告知用户「天花板已近，建议仅评估不改」\n6. 从 results.tsv 读取 status=revert 的历史维度，标记为「绕行」；对照反例黑名单 8 条，确认当前方案不命中\n7. 检查 diagnostics.tsv 是否存在，不存在则创建并写入表头（模块/维度/子分/文件/行号/详情）"},{"language":"text","snippet":"for each skill:\n  1. 按优先级顺序执行：SkillOps → EvoSkill → HASP → CASCADE → Distill → Sentinel\n  2. 每模块按「模块子分规则」逐项检测\n  3. 命中缺陷 → 追加 diagnostics.tsv 一行（模块/维度/子分/文件/行号/详情）\n  4. 模块完成后不回写 SKILL.md，仅写入子分记录"},{"language":"text","snippet":"for each skill:\n  1. 读 SKILL.md，理解功能\n  2. 设计 2-3 个测试 prompt（典型场景 + 歧义场景）\n  3. 保存到 skill目录/test-prompts.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: luban-skill\nversion: \"1.0.0\"\nauthor: \"智慧半岛\"\ndescription: \"鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。\"\n---\n\n# 鲁班.Skill\n\n> 天工开物 工匠鲁班\n\n---\n\n## 设计哲学\n\nautoresearch + SkillOpt 场景自适应。\n\n### 12 条原则\n\n1. **单一可编辑资产**：每次只改一个 SKILL.md\n2. **双重评估**：结构评分（静态分析）+ 效果验证（实际跑测试看输出）\n3. **棘轮机制**：只保留改进，自动回滚退步\n4. **独立评分**：评分用子 agent，消除「自己改自己评」的偏差\n5. **人在回路**：每个 skill 优化完暂停，用户确认再继续\n6. **文本学习率预算**：每次编辑字符变化量 ≤ 原文件 10%\n7. **拒绝编辑缓冲区**：被回滚的方案留作负反馈，后续绕行\n8. **Epoch Meta-Review**：跨 skill 汇总优化规律，沉淀可迁移经验\n9. **场景自适应双模**：Quick（轻量 Self-Refine）/ Full（完整循环 + 仪表盘监控）\n10. **ROI 前置评估**：基线分 ≥85 且最低维度分 ≥7 跳过（天花板已近）\n11. **消费者能力基线**：Full 模式先测目标模型裸能力，低于阈值直接阻断\n12. **全链路审计**：Full 模式所有操作记录 git commit 可追溯\n\n### 路径约定\n\n- `luban-workspace` = 本 SKILL.md 所在目录（即本 skill 目录本身是一个 git 仓库）\n- `skills 目录` = 父目录\n- 分支命名 `auto-optimize/YYYYMMDD-HHMM`\n- 被优化技能的数据文件（`diagnostics.tsv` / `rejected_edits.md` / `test-prompts.json` / `results.tsv`）放在**被优化 skill 自己的目录**下\n- 鲁班全局文件（`meta_learnings.md` / `luban-profile.json` / `optimization-registry.tsv`）放在 `luban-workspace/`\n\n### 架构底座：L0-L4 分层治理\n\n5 个正交层级，按场景模式动态激活：\n\n| 层级 | 名称 | Quick | Full |\n|:---|:---|:---|:---|\n| L0 | 确定性执行层 | 启用 | 启用 |\n| L1 | 多智能体协作层 | 按需 | 按需 |\n| L2 | 技能自适应优化层 | 启用（鼓励探索） | 严格审查后启用 |\n| L3 | 价值对齐层 | 软性约束（风格对齐） | 硬性约束（合规对齐） |\n| L4 | 元认知审计层 | 不激活 | 激活（跨 skill 经验沉淀） |\n\n**L0 原子操作**（所有编辑必须走这三步）：\n\n1. **读**：`read_text` 读取目标 SKILL.md 全文\n2. **改**：`edit_file` 执行编辑（Quick 模式直接用 `.bak` 备份；Full 模式先 `git commit` 暂存）\n3. **验**：按 Rubric 逐项自检本次改动影响的维度（dim1/4/7a/9 按评分标准逐条核对，dim2/3/5 通读确认未引入新问题），不通过则回退\n\n---\n\n## 📋 阅读导航\n\n| 如果你想… | 读哪里 | 预计耗时 |\n|:---|:---|:---|\n| 只想快速开始 | [QUICKSTART.md](./QUICKSTART.md) | 2 分钟 |\n| 知道怎么评分 | [评估 Rubric](#评估-rubric10-维度总分-100) | 5 分钟 |\n| 了解优化全流程 | [优化流程（Phase 0-3）](#优化流程phase-0-3) | 10 分钟 |\n| 遇到错误不知道怎么处理 | [异常与边界条件](#异常与边界条件) / [反模式与FAQ](#反模式与faq) | 3 分钟 |\n| 查某个模块做什么 | [资源文件速查](#资源文件速查) | 2 分钟 |\n| 查优化策略怎么选 | [优化策略库](#优化策略库) | 5 分钟 |\n| 了解学术背景 | [学术依据](#学术依据) | 1 分钟 |\n\n---\n\n> 📍 你在这里: 鲁班.Skill > 评估 Rubric\n\n## 评估 Rubric（10 维度，总分 100）\n\n> SkillLens（arXiv 2605.23899）实证 LLM-as-judge 准确率仅 46.4%，加入 meta-skill 三维度后提升到 73.8%。\n\n### 评分类型\n\n| 维度 | 权重 | 类型 | 评分方式 |\n|:---|:---:|:---|:---|\n| dim1 Frontmatter质量 | 7 | 确定性 | name 规范、description 含做什么+何时用+触发词、≤1024 字符、禁结尾空话。三项全过=10，任一缺失=0 |\n| dim2 工作流清晰度 | 12 | LLM | 步骤明确可执行、有序号、每步有明确输入/输出 |\n| dim3 失败模式编码 | 12 | LLM | 显式编码失败模式（\"如果 X 失败 → Y\"）；有 fallback 路径和错误恢复。只写正向流程不写失败分支扣 ≥3 分 |\n| dim4 检查点设计 | 6 | 确定性 | 正则 `/CHECKPOINT\\|STOP\\|🔴\\|⛔/`：≥1 处 STOP 级=10，仅 CHECKPOINT=5，无=0 |\n| dim5 可执行具体性 | 17 | LLM | 有具体参数/格式/示例；前置扫描软化词（建议/可考虑/根据情况/灵活把握/视情况而定/可能/大概）注入评分上下文。HASP 模块独立产出 dim5 确定性子分 3/17。 |\n| dim6 资源整合度 | 4 | LLM | references/assets 引用正确、路径可达。SkillOps 模块独立产出 dim6 确定性子分 3/4。 |\n| dim7 整体架构 | 12 | 混合 | **7a 结构合规(6)**：确定性，标题层级连续不跳跃 + 含 ≥3/4 必含章节→6 分，每缺一项 −2。<br>**7b 语义质量(6)**：LLM judge，冗余段落/AI 腔废话（\"说白了/换句话说/首先其次综上\"/花叔禁用词）/重复描述→一处 −1，下限 0 |\n| dim8 实测表现 | 20 | LLM | 子维度：**8a 意图完成度(8)**——"},{"path":"README.md","content":"# 鲁班.Skill\n\n> 天工开物 工匠鲁班 —— 工业级智能体技能优化器\n> 任何的技能自进化原则上依然是线性回归动作，高度依赖模型的自身能力\n> 请尽量在可使用的模型里使用最高的模型去优化技能，尽量使用Claude GPT-5.4 Pro GLM-5.1这种高性能模型作为基础优化底座模型\n\n鲁班.Skill 是一套技能自进化系统，基于 **EvoSkill / SkillOps / CASCADE / Skill Distill / HASP / MUSE-Autoskill** 六篇论文构建。它为 AI Agent 技能（SKILL.md）提供全生命周期优化：从静态质量评估、自动化缺陷检测、多评委评分，到规则硬化、知识更新、精简瘦身和回归测试。\n\n---\n\n## 核心能力\n\n| 能力 | 说明 | 依赖说明 |\n|------|------|----------|\n| **十维 Rubric 评分** | 100 分制量化技能质量，确定性维度 + LLM 维度混合评估 | 无脚本依赖，纯 agent 逻辑 |\n| **六模块缺陷检测** | SkillOps / EvoSkill / HASP / CASCADE / Distill / Sentinel 静态扫描产出子分 | 依赖 `scripts/skillops_scanner.py` / `hasp_hardener.py` / `cascade_updater.py` / `distill_analyzer.py` / `security_audit.py` |\n| **双模优化引擎** | Quick（轻量 Self-Refine）和 Full（多评委 + git 分支 + 仪表盘）自适应 | 无额外脚本依赖；Full 模式需 git 环境 |\n| **安全审计** | Sentinel 检测恶意指令、硬编码凭据、Prompt 注入、数据外泄、权限越权 | 依赖 `scripts/security_audit.py` |\n| **棘轮回滚** | 自动保留改进，退步回滚，反例黑名单防止重复踩坑 | Quick 模式靠 `.bak` 文件，Full 模式靠 git |\n| **跨技能经验沉淀** | Epoch Meta-Review 提炼可迁移优化规律 | 纯 agent 逻辑，无脚本依赖 |\n\n---\n\n## 文档导航\n\n| 文档 | 内容 |\n|------|------|\n| [README.md](./README.md) | 项目概览（当前文档） |\n| [QUICKSTART.md](./QUICKSTART.md) | 5 分钟快速上手 |\n| [REFERENCE.md](./REFERENCE.md) | 完整技术参考（Rubric / Phase 流程 / 模块 / 数据结构） |\n| [SKILL.md](./SKILL.md) | 技能主文件（Agent 执行指令） |\n| [references/SA-DM.md](./references/SA-DM.md) | 设计方法论论文 |\n\n---\n\n## 触发词\n\n说以下任意关键词即可激活鲁班：\n\"优化skill\"、\"skill评分\"、\"自动优化\"、\"skill质量检查\"、\"小鲁班\"、\"luban\"、\"优化技能\"、\"帮我改skill\"、\"skill怎么样\"、\"提升skill质量\"、\"skill review\"、\"skill打分\"\n\n---\n\n## 快速使用\n\n```\n# 评估一个技能\n\"给 prompt-optimizer 评个分\"\n\n# 优化一个技能\n\"帮我优化 make-to-markdown\"\n\n# 批量优化\n\"优化所有 skills\"\n\n# 安全审计\n\"安全审计 luban-skill\"\n```\n\n详细命令见 [QUICKSTART.md](./QUICKSTART.md)。\n\n---\n\n## 架构总览\n\n```\n                          ┌──────────────────────────────────────┐\n                          │      鲁班.Skill 技能自进化调度器       │\n                          └────────────────┬─────────────────────┘\n                                           │\n              ┌────────────────────────────┼────────────────────────────┐\n              │                            │                            │\n    ┌─────────┴──────────┐      ┌─────────┴──────────┐      ┌─────────┴────────────┐\n    │   模块层（缺陷检测）   │    │ 核心引擎（评分+修复）│      │   事件钩子（旁路）    │\n    │ SkillOps / EvoSkill │      │  Phase 0  初始化   │      │  MUSE 回归 / 错误反馈 │\n    │ HASP / CASCADE      │───→  │  Phase 0.3 模块检测│      │  HASP 硬化 / 规则忽略│\n    │ Distill / Sentinel  │      │  Phase 1  基线评估 │      └──────────────────────┘\n    └────────────────────┘      │  Phase 2  优化循环 │\n                                │  Phase 3  汇总报告 │\n                                └────────────────────┘\n```\n\n---\n\n## 学术依据\n\n| 论文 | arXiv | 核心贡献 |\n|------|-------|---------|\n| EvoSkill | [2603.02766](https://arxiv.org/abs/2603.02766) | 失败驱动的技能缺口发现与修补 |\n| SkillOps | [2605.13716](https://arxiv.org/abs/2605.13716) | 技能库运维框架，五维健康诊断 |\n| CASCADE | [2512.23880](https://arxiv.org/abs/2512.23880) | 持续学习 + 自我反思驱动进化 |\n| Skill Distill | [2604.01608](https://arxiv.org/abs/2604.01608) | 指标自由度 F 驱动的精简决策 |\n| HASP | [2605.17734]"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7096hdmqr56bh0825xpz8ft188dh24\",\n  \"slug\": \"luban-skill-2\",\n  \"version\": \"0.1.0\",\n  \"publishedAt\": 1786814964245\n}"},{"path":"references/faq.md","content":"# 反模式与FAQ\n\n> 将分散在各章节的反例黑名单、架构红线、异常场景、指令映射集中于此，方便一次性查阅。\n\n---\n\n### FAQ：常见问题速查\n\n**Q: 我想给一个 skill 打分，但不想修改它，怎么做？**\nA: 说\"评估 {skill_name} 质量\"或\"给 {skill_name} 评个分\"。鲁班会走 Phase 0.5-1（仅评估不改），输出十维评分卡。\n\n**Q: 优化卡住了怎么办？**\nA: 查看[异常与边界条件](#异常与边界条件)表，找到对应场景，按\"处理动作\"列操作。常见卡住原因：不在 git 仓库、results.tsv 损坏、子 agent 不可用。\n\n**Q: Quick 和 Full 模式有什么区别？**\nA: Quick 模式轻量快速（3 轮、dry_run 推演、.bak 回退），适合日常快速检查。Full 模式深度完整（5 轮、多评委、git 分支、安全门控），适合生产级优化。鲁班默认 Quick，分数低或有 revert 记录时自动升级。\n\n**Q: 优化后分数下降了怎么办？**\nA: 鲁班的棘轮机制会自动回滚退步——如果新分不如旧分，会自动 `git checkout` 恢复到优化前状态。你不需要手动干预。\n\n**Q: 哪些指令触发哪个模块？**\nA: 见下表：\n\n| 指令 | 触发模块 |\n|------|----------|\n| \"优化所有 skills\" | 鲁班核心引擎 Phase 0-3（全量） |\n| \"优化 {skill_name}\" | 鲁班核心引擎 Phase 0-3（单个） |\n| \"评估所有 skills 质量\" | Phase 0.5-1（仅评估不改） |\n| \"检查技能健康\" | SkillOps 巡检 |\n| \"这个技能有问题 / 不对\" | EvoSkill 失败修补 |\n| \"更新技能知识\" | CASCADE 知识更新 |\n| \"精简技能 / 瘦身\" | Skill Distill |\n| \"规则硬化 / 硬一点\" | HASP 规则硬化 |\n| \"安全审计 / 安全检查\" | Sentinel 安全扫描 |\n| \"看看优化历史\" | 读取 optimization-registry.tsv |\n\n**Q: dim8 得分很低怎么办？**\nA: dim8（实测表现）占 20 分权重最高。低分通常意味着 skill 在实际使用时效果差。检查：①是否在 dry_run 模式（降权严重）；②是否触发了编辑同源检测（×0.5）；③测试 prompt 是否合理。\n\n**Q: 什么是\"触顶信号\"？**\nA: 连续 2 轮优化后总分提升 < 2 分 → 说明当前 skill 已经接近天花板，继续优化收益很低，鲁班会自动停止。\n\n**Q: 优化后的 skill 怎么恢复到优化前？**\nA: Full 模式下在 git 分支上操作，用 `git checkout` 回到优化前的 commit。Quick 模式下用 `.bak` 备份文件恢复。\n\n---\n\n### 反模式黑名单（操作层面）\n\n来自早期 40 次 0 revert 的教训。每轮 Phase 2 Step 2 改动前对照一次。\n\n| # | 反模式 | 为什么是坑 | 正确做法 |\n|---|--------|-----------|----------|\n| 1 | 同一 context 自评自改 | 既当运动员又当裁判，评分天然偏高 | 必须 spawn 独立子 agent 评分 |\n| 2 | `git reset --hard` 当回滚 | 销毁历史记录，无法追溯\"改了什么→为什么回滚\" | 用 `git checkout` 保留追溯链 |\n| 3 | 为凑分增冗余 | 总分涨了但 skill 变臃肿，实际可用性下降 | 触顶信号（连续 2 轮 Δ<2）→ break，见好就收 |\n| 4 | 跳过 test-prompts 直接评分 | dim8 没有实测支撑，效果分纯靠猜 | Phase 0.5 强制设计 2-3 prompts |\n| 5 | 轮内改多个维度 | 多处改动混杂，无法判断哪个有效哪个是噪声 | 每轮只改 1 个维度 |\n| 6 | dry_run 比例 > 30% | 大量评分基于推演而非实测，分数虚高 | 强制至少跑 1 个 full_test |\n| 7 | 静默跳过异常 | 用户完全不知道出了问题，误以为一切正常 | 异常表 fallback 必须先告知用户 |\n| 8 | 忽视维度相关性单独优化 | dim2/3/4 是相关簇，单修 dim3 时 dim2 常跟涨，反过来单修 dim2 可能拉低 dim3 | 看相关簇短板再决定先修哪个 |\n\n---\n\n### 架构红线（运行时检测）\n\n违反任一条即触发阻断或降权：\n\n| # | 红线 | 为什么是坑 | 检测后果 |\n|---|------|-----------|----------|\n| 1 | 禁止 self-edit-self-evaluate | 同一 agent 编辑后又评分，缺乏独立视角 | dim8 降权 ×0.5 |\n| 2 | 禁止跨维度打包修改 | 一轮改动多个维度，无法归因效果 | 整轮回滚 |\n| 3 | 禁止 dry_run 冒充 full_test | dim8 全靠推演等于没测效果 | results.tsv 标记 invalid |\n| 4 | 禁止 bypass gate | P0 安全问题没修就进入下一 phase | 中断流程，必须回头修 |\n\n---\n\n### 异常场景速查\n\n| 场景 | 触发条件 | 处理动作 | 通俗解释 |\n|:---|:---|:---|:---|\n| 不在 git 仓库 | `git rev-parse` 失败 | 询问用户：`git init` 或文件备份 | 找不到 Git 仓库，优化历史无法记录 |\n| results.tsv 缺失 | 文件不存在 | 新建并写表头 | 第一次跑优化，自动创建评分记录 |\n| results.tsv 损坏 | 列数不匹配 | 备份后重建 | 评分记录格式坏了，旧文件备份再建新的 |\n| 分支已存在 | `git checkout -b` 失败 | 分支名加 `-2`/`-3` | Git 分支名冲突，自动换名重试 |\n| git revert 失败 | 冲突/工作树脏 | `git stash` 重试；仍失败手动恢复 | 回滚冲突，先暂存再试，不行就手动覆盖 |\n| MAX_ROUNDS 触顶 | 已达上限 | 询问用户继续/重写/收工 | 轮数到上限，让你决定要不要加轮 |\n| 优化后超 150% 体积 | 新文件 > 原 ×1.5 | 拒绝提交，先精简 | 文件膨胀太厉害，先瘦身 |\n| test-prompts.json 已存在 | 文件已存在 | 复用/重写/追加三选一 | 测试题已有，问你怎么处理 |\n| SKILL.md 找不到 | 目录无主文件 | 终止此 skill，继续下一个 | 目录里没有主文件，跳过 |\n| 消费者基线失败 | 模型能力不足 |"},{"path":"references/modules.md","content":"# 模块与调度器参考\n\n## CASCADE 知识更新\n\n### 触发条件\n\n- 定时任务：每季度自动执行\n- 用户指令：\"更新技能知识\"\"补最新\"\"刷新 references\"\n- 技能 references 中引用外部知识且距上次更新 > 90 天\n\n### 执行流程\n\n```\nStep 1: 扫描 references/ 目录\n  - 工具化扫描：`scripts/cascade_updater.py <skill_dir> --threshold 90` 自动提取 arXiv/URL/标准引用并判定过时\n  - 识别所有外部引用（arXiv ID、API 文档 URL、标准编号等）\n  - 记录每个引用的最后更新日期（优先 git log，回退至文件 mtime）\n\nStep 2: 筛选过时引用\n  - 距上次更新 > 90 天（可通过 --threshold 调整）→ 标记待更新\n  - 优先处理用户最近高频使用的技能\n\nStep 3: 知识检索\n  - 论文：搜索引用 arXiv ID，检查是否有新版本\n  - API：抓取最新文档，对比 changelog\n  - 标准：搜索是否发布了新版本\n\nStep 4: 自我反思（内省）\n  - 对比新旧知识差异\n  - 判断是否影响技能规则的有效性\n  - 仅在有实质性变化时生成更新\n\nStep 5: 追加式更新\n  - 追加新知识（不删除旧内容，标注版本号）\n  - 格式：## [YYYY-MM-DD] 更新：xxx → 新内容\n\nStep 6: 写入诊断记录\n  - 每个过时引用追加一行到目标技能的 diagnostics.tsv（仅当确实找到更新时）\n  - 格式：CASCADE | dim6 | 子分 | 文件 | 行号 | 详情\n```\n\n### 关键设计\n\n- 只追加不删除：旧知识的废弃留给 SkillOps 的 `retire` 动作\n- 标注版本：每次更新附带日期和版本号\n- 不自动修改规则：仅更新 references，不自动改 SKILL.md 中的规则引用\n\n---\n\n## Distill 精简\n\n### F_approx 计算公式\n\n```\nF_approx = 1 - (模块被规则引用的次数 / 模块总字符数归一化)\n\n归一化方式：模块总字符数 / 所有模块总字符数的均值。分母过小时取 max(均值, 100)。\n```\n\n- F ≈ 1：模块内容庞大但很少被引用 → 可精简\n- F ≈ 0：模块内容紧凑且多处引用 → 保留\n- F_approx ≥ 0.7：标记「可精简」；≤ 0.3：标记「核心资产」\n\n### 精简优先级\n\n| 优先级 | 类型 | 处理 |\n|--------|------|------|\n| P0 | 完全未被引用的 references | 直接建议删除 |\n| P1 | 文件大但仅 1-2 处引用 | 提取引用段落到 SKILL.md，删原文件 |\n| P2 | 多处重复的示例代码块 | 合并为一个 reference |\n| P3 | 历史版本累积的旧内容 | 归档到 archive/ 子目录 |\n\n### 执行流程\n\n```\nStep 1: 构建引用矩阵\n  - 执行 `scripts/distill_analyzer.py <skill_dir>` 自动扫描引用关系\n  - SKILL.md 每条规则 → 引用了 references/ 的哪些段落\n  - 计算每个 references 文件的「有效引用密度」\n\nStep 2: 计算 F_approx，分级标记\n\nStep 3: 生成精简方案\n  - 展示「删除后文件大小变化」预估\n  - 标注「保留的核心内容」\n  - 🔴 CHECKPOINT：待用户确认后执行\n\nStep 4: 写入诊断记录\n  - 确认执行后，每个 P0 删除 / P1-P3 精简项追加一行到目标技能的 diagnostics.tsv\n  - 格式：Distill | dim7b | 子分 | 文件 | 行号 | 详情\n```\n\n---\n\n## HASP 硬化规则\n\n> 论文：[arXiv:2605.17734](https://arxiv.org/abs/2605.17734)\n> 核心理念：技能升格为可执行程序函数（PF），含 should_activate + intervene，从\"建议\"变\"硬纠正\"。\n\n### 触发条件\n\n- 同一规则在同一场景下连续 2 次以上被忽略\n- 用户指令：\"规则硬化\"\"硬一点\"\"这个规则总被忽略\"\n\n### 硬化层级\n\n#### 层级 1：Should → Must（措辞强化）\n\n```\n原文：建议在生成 SKILL.md 时控制文件大小在 30KB 以内\n\n硬化后：强制约束：SKILL.md 文件大小不得超过 30KB。\n超限时，必须将详细内容拆分到 references/，SKILL.md 仅保留导航链接。\n```\n\n#### 层级 2：Should → PF（可执行程序函数）\n\n在 SKILL.md frontmatter 中追加硬规则元数据：\n\n```yaml\nhard_rules:\n  - id: rule_001\n    should_activate: \"SKILL.md 文件大小 > 30KB\"\n    intervene:\n      type: \"block_and_restructure\"\n      action: \"禁止继续在 SKILL.md 追加内容，将超出部分写入新 reference 文件\"\n    severity: \"critical\"\n    last_violated: \"2026-06-10\"\n    violation_count: 3\n```\n\n### 执行流程\n\n```\nStep 1: 执行日志分析\n  - 工具化扫描：`scripts/hasp_hardener.py <skill_dir> [--results <results.tsv>]` 自动提取软规则、匹配违规历史\n  - 从 `results.tsv` 和 EvoSkill 失败捕获记录中提取规则违规实例\n  - 识别「规则被忽略」的实例（同一场景下规则未被遵循）\n\nStep 2: 分级处理\n  - 工具自动判定 T0（基线）/ T1（措辞强化，违规 2 次）/ T2（PF 硬化，违规 ≥3 次）\n  忽略 1 次 → 暂不处理\n  忽略 2 次 → 生成措辞强化建议（层级 1：建议 → 必须）\n  忽略 ≥3 次 → 生成 PF 硬化建议（层级 2：注入 hard_rules YAML 块）\n\nStep 3: 硬化规则注入\n  - 定义 should_activate 条件 + intervene 动作\n  - 🔴 CHECKPOINT：待用户确认后执行\n\nStep 4: 写入诊断记录\n  - 确认执行后，追加一行到目标技能的 diagnostics.tsv\n  - 违规 ≥2 次：subtype=wording_harden；违规 ≥3 次：subtype=pf_harden\n  - 格式："}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。 Skill: Luban Skill Owner: ebandao777-oss Summary: 鲁班.Skill（luban Skill）：工业级智能体技能优化器。当用户提及以下关键词时调用：“优化skill”、“skill评分”、“自动优化”、“auto optimize”、“skill质量检查”、“小鲁班”、“luban”、“优化技能”、“帮我改skill”、“skill怎么样”、“提升skill质量”、“skill review”、“skill打分”。 Tags: latest:0.1.0 Version history: v0.1.0 | 2026-08-15T17:29:24.245Z | auto 鲁班.Skill 1.0.0 全新发布——工业级智能体技能优化器。 - 首次发布，系统性阐述设计哲学，明确“12条原则”及双模式（Quick/Full）自适应流程。 - 引入 10 维度 Rubric 综合评估体系，细","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":868,"uniquenessScore":48,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T10:03:37.525Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T13:41:19.421Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}