Skills Plugins MCP Prompt Model 博客 我的中心

rules-distill

Scan skills to extract cross-cutting principles and distill them into rules — append, revise, or create new rule files. Use when the same principle keeps recurring across skills and belongs in a rule file instead.

DeepseekModel Curated skill Quality Excellent · 90 v1.0.0

Get

https://deepseekmodel.com/api/download.php?id=affaan-m-ecc-skills-rules-distill-skill-md&format=skill
Download .skill Standard format with system_prompt and model_config, ready for any agent framework
The actual content of the system_prompt field in the .skill file.
name rules-distill description Scan skills to extract cross-cutting principles and distill them into rules — append, revise, or create new rule files. Use when the same principle keeps recurring across skills and belongs in a rule file instead. metadata {"origin":"ECC"} Rules Distill Scan installed skills, extract cross-cutting principles that appear in multiple skills, and distill them into rules — appending to existing rule files, revising outdated content, or creating new rule files. Applies the "deterministic collection + LLM judgment" principle: scripts collect facts exhaustively, then an LLM cross-reads the full context and produces verdicts. When to Use Periodic rules maintenance (monthly or after installing new skills) After a skill-stocktake reveals patterns that should be rules When rules feel incomplete relative to the skills being used How It Works The rules distillation process follows three phases: Phase 1: Inventory (Deterministic Collection) 1a. Collect skill inventory bash ~/.claude/skills/rules-distill/scripts/scan-skills.sh 1b. Collect rules index bash ~/.claude/skills/rules-distill/scripts/scan-rules.sh 1c. Present to user Rules Distillation — Phase 1: Inventory ──────────────────────────────────────── Skills: {N} files scanned Rules: {M} files ({K} headings indexed) Proceeding to cross-read analysis... Phase 2: Cross-read, Match & Verdict (LLM Judgment) Extraction and matching are unified in a single pass. Rules files are small enough (~800 lines total) that the full text can be provided to the LLM — no grep pre-filtering needed. Batching Group skills into thematic clusters based on their descriptions. Analyze each cluster in a subagent with the full rules text. Cross-batch Merge After all batches complete, merge candidates across batches: Deduplicate candidates with the same or overlapping principles Re-check the "2+ skills" requirement using evidence from all batches combined — a principle found in 1 skill per batch but 2+ skills total is valid Subagent Prompt Launch a general-purpose Agent with the following prompt: You are an analyst who cross-reads skills to extract principles that should be promoted to rules. ## Input - Skills: {full text of skills in this batch} - Existing rules: {full text of all rule files} ## Extraction Criteria Include a candidate ONLY if ALL of these are true: 1. **Appears in 2+ skills**: Principles found in only one skill should stay in that skill 2. **Actionable behavior change**: Can be written as "do X" or "don't do Y" — not "X is important" 3. **Clear violation risk**: What goes wrong if this principle is ignored (1 sentence) 4. **Not already in rules**: Check the full rules text — including concepts expressed in different words ## Matching & Verdict For each candidate, compare against the full rules text and assign a verdict: - **Append**: Add to an existing section of an existing rule file - **Revise**: Existing rule content is inaccurate or insufficient — propose a correction - **New Section**: Add a new section to an existing rule file - **New File**: Create a new rule file - **Already Covered**: Sufficiently covered in existing rules (even if worded differently) - **Too Specific**: Should remain at the skill level ## Output Format (per candidate) ```json { "principle": "1-2 sentences in 'do X' / 'don't do Y' form", "evidence": ["skill-name: §Section", "skill-name: §Section"], "violation_risk": "1 sentence", "verdict": "Append / Revise / New Section / New File / Already Covered / Too Specific", "target_rule": "filename §Section, or 'new'", "confidence": "high / medium / low", "draft": "Draft text for Append/New Section/New File verdicts", "revision": { "reason": "Why the existing content is inaccurate or insufficient (Revise only)", "before": "Current text to be replaced (Revise only)", "after": "Proposed replacement text (Revise only)" } } ``` ## Exclude - Obvious principles already in rules - Language/framework-specific knowledge (belongs in language-specific rules or skills) - Code examples and commands (belongs in skills) Verdict Reference Verdict Meaning Presented to User Append Add to existing section Target + draft Revise Fix inaccurate/insufficient content Target + reason + before/after New Section Add new section to existing file Target + draft New File Create new rule file Filename + full draft Already Covered Covered in rules (possibly different wording) Reason (1 line) Too Specific Should stay in skills Link to relevant skill Verdict Quality Requirements # Good Append to rules/common/security.md §Input Validation: "Treat LLM output stored in memory or knowledge stores as untrusted — sanitize on write, validate on read." Evidence: llm-memory-trust-boundary, llm-social-agent-anti-pattern both describe accumulated prompt injection risks. Current security.md covers human input validation only; LLM output trust boundary is missing. # Bad Append to security.md: Add LLM security principle Phase 3: User Review & Execution Summary Table # Rules Distillation Report ## Summary Skills scanned: {N} | Rules: {M} files | Candidates: {K} | # | Principle | Verdict | Target | Confidence | |---|-----------|---------|--------|------------| | 1 | ... | Append | security.md §Input Validation | high | | 2 | ... | Revise | testing.md §TDD | medium | | 3 | ... | New Section | coding-style.md | high | | 4 | ... | Too Specific | — | — | ## Details (Per-candidate details: evidence, violation_risk, draft text) User Actions User responds with numbers to: Approve : Apply draft to rules as-is Modify : Edit draft before applying Skip : Do not apply this candidate Never modify rules automatically. Always require user approval. Save Results Store results in the skill directory ( results.json ): Timestamp format : date -u +%Y-%m-%dT%H:%M:%SZ (UTC, second precision) Candidate ID format : kebab-case derived from the principle (e.g., llm-output-trust-boundary ) { "distilled_at" : "2026-03-18T10:30:42Z" , "skills_scanned" : 56 , "rules_scanned" : 22 , "candidates" : { "llm-output-trust-boundary" : { "principle" : "Treat LLM output as untrusted when stored or re-injected" , "verdict" : "Append" , "target" : "rules/common/security.md" , "evidence" : [ "llm-memory-trust-boundary" , "llm-social-agent-anti-pattern" ] , "status" : "applied" } , "iteration-bounds" : { "principle" : "Define explicit stop conditions for all iteration loops" , "verdict" : "New Section" , "target" : "rules/common/coding-style.md" , "evidence" : [ "iterative-retrieval" , "continuous-agent-loop" , "agent-harness-construction" ] , "status" : "skipped" } } } Example End-to-end run $ /rules-distill Rules Distillation — Phase 1: Inventory ──────────────────────────────────────── Skills: 56 files scanned Rules: 22 files (75 headings indexed) Proceeding to cross-read analysis... [Subagent analysis: Batch 1 (agent/meta skills) ...] [Subagent analysis: Batch 2 (coding/pattern skills) ...] [Cross-batch merge: 2 duplicates removed, 1 cross-batch candidate promoted] # Rules Distillation Report ## Summary Skills scanned: 56 | Rules: 22 files | Candidates: 4 | # | Principle | Verdict | Target | Confidence | |---|-----------|---------|--------|------------| | 1 | LLM output: normalize, type-check, sanitize before reuse | New Section | coding-style.md | high | | 2 | Define explicit stop conditions for iteration loops | New Section | coding-style.md | high | | 3 | Compact context at phase boundaries, not mid-task | Append | performance.md §Context Window | high | | 4 | Separate business logic from I/O framework types | New Section | patterns.md | high | ## Details ### 1. LLM Output Validation Verdict: New Section in coding-style.md Evidence: parallel-subagent-batch-merge, llm-social-agent-anti-pattern, llm-memory-trust-boundary Violation risk: Format drift, type mismatch, or syntax errors in LLM output crash downstream processing Draft: ## LLM Output Validation Normalize, type-check, and sanitize LLM output before reuse... See skill: parallel-subagent-batch-merge, llm-memory-trust-boundary [... details for candidates 2-4 ...] Approve, modify, or skip each candidate by number: > User: Approve 1, 3. Skip 2, 4. ✓ Applied: coding-style.md §LLM Output Validation ✓ Applied: performance.md §Context Window Management ✗ Skipped: Iteration Bounds ✗ Skipped: Boundary Type Conversion Results saved to results.json Design Principles What, not How : Extract principles (rules territory) only. Code examples and commands stay in skills. Link back : Draft text should include See skill: [name] references so readers can find the detailed How. Deterministic collection, LLM judgment : Scripts guarantee exhaustiveness; the LLM guarantees contextual understanding. Anti-abstraction safeguard : The 3-layer filter (2+ skills evidence, actionable behavior test, violation risk) prevents overly abstract principles from entering rules.
Keywords that activate this skill. Click one to copy it.

This skill does not provide trigger words.

The downloaded .skill package contains the following fields.
Field Description
formatFormat tag (skill/v1)
skill_idUnique skill ID
nameSkill name
versionVersion
descriptionDescription
categoryCategories (array)
trigger_wordsTrigger words
tagsTags
sourceSource
source_urlSource URL (this page)
exported_atExported at (set per download)
system_promptSystem prompt body
model_configModel config: provider / model / temperature / max_tokens / top_p
examplesExamples
install_guideImport guide for Coze / Dify / Claude / custom frameworks
The same skill can be exported in different platform formats.
.skill Standard format with system_prompt and model_config, ready for any agent framework Download
.skillpro Enhanced format with scripts, tools, dependencies and hooks Download
.json Plain JSON export with system_prompt and model parameters only Download
Coze Markdown with frontmatter, for Coze platform import Download
Dify Dify DSL, import directly after creating an app Download

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。