[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6R7S18CDW211FFYPTFBD2JZ":3,"skill-same:01M6R7S18CDW211FFYPTFBD2JZ":62},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":13,"repositoryHtmlUrl":45,"repositoryHomepageUrl":6,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":47,"install":48,"resources":61},"01M6R7S18CDW211FFYPTFBD2JZ","reskill",null,"Team-wide charter and history optimization through skill extraction","barichter\u002Fsquad","barichter","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F96797186?v=4","01M6R712K8ESMDF089BFENBR16","01M6R712R74BSQQSG2GTXBWR8P",0,"MIT","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Fpackages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Freskill\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[5,23,24,25,26,27,28,29,30,31,32,33,34],"extraction","Optimization","team","history","context","directive","manual","high","wide","reduce","overhead","charter","2026-11-10 10:12:30",false,"---\nname: \"reskill\"\ndescription: \"Team-wide charter and history optimization through skill extraction\"\ndomain: \"team-optimization\"\nconfidence: \"high\"\nsource: \"manual — Brady directive to reduce per-agent context overhead\"\n---\n\n## Context\n\nWhen the coordinator hears \"team, reskill\" (or similar: \"optimize context\", \"slim down charters\"), trigger a team-wide optimization pass. The goal: reduce per-agent context consumption by extracting shared patterns from charters and histories into reusable skills.\n\nThis is a periodic maintenance activity. Run whenever charter\u002Fhistory bloat is suspected.\n\n## Process\n\n### Step 1: Audit\nRead all agent charters and histories. Measure byte sizes. Identify:\n\n- **Boilerplate** — sections repeated across ≥3 charters with \u003C10% variation (collaboration, model, boundaries template)\n- **Shared knowledge** — domain knowledge duplicated in 2+ charters (incident postmortems, technical patterns)\n- **Mature learnings** — history entries appearing 3+ times across agents that should be promoted to skills\n\n### Step 2: Extract\nFor each identified pattern:\n1. Create or update a skill at `.squad\u002Fskills\u002F{skill-name}\u002FSKILL.md`\n2. Follow the skill template format (frontmatter + Context + Patterns + Examples + Anti-Patterns)\n3. Set confidence: low (first observation), medium (2+ agents), high (team-wide)\n\n### Step 3: Trim\n**Charters** — target ≤1.5KB per agent:\n- Remove Collaboration section entirely (spawn prompt + agent-collaboration skill covers it)\n- Remove Voice section (tagline blockquote at top of charter already captures it)\n- Trim Model section to single line: `Preferred: {model}`\n- Remove \"When I'm unsure\" boilerplate from Boundaries\n- Remove domain knowledge now covered by a skill — add skill reference comment if helpful\n- Keep: Identity, What I Own, unique How I Work patterns, Boundaries (domain list only)\n\n**Histories** — target ≤8KB per agent:\n- Apply history-hygiene skill to any history >12KB\n- Promote recurring patterns (3+ occurrences across agents) to skills\n- Summarize old entries into `## Core Context` section\n- Remove session-specific metadata (dates, branch names, requester names)\n\n### Step 4: Report\nOutput a savings table:\n\n| Agent | Charter Before | Charter After | History Before | History After | Saved |\n|-------|---------------|---------------|----------------|---------------|-------|\n\nInclude totals and percentage reduction.\n\n## Patterns\n\n### Minimal Charter Template (target format after reskill)\n\n```\n# {Name} — {Role}\n\n> {Tagline — one sentence capturing voice and philosophy}\n\n## Identity\n- **Name:** {Name}\n- **Role:** {Role}\n- **Expertise:** {comma-separated list}\n\n## What I Own\n- {bullet list of owned artifacts\u002Fdomains}\n\n## How I Work\n- {unique patterns and principles — NOT boilerplate}\n\n## Boundaries\n**I handle:** {domain list}\n**I don't handle:** {explicit exclusions}\n\n## Model\nPreferred: {model}\n```\n\n### Skill Extraction Threshold\n- **1 charter** → leave in charter (unique to that agent)\n- **2 charters** → consider extracting if >500 bytes of overlap\n- **3+ charters** → always extract to a shared skill\n\n## Anti-Patterns\n- Don't delete unique per-agent identity or domain-specific knowledge\n- Don't create skills for content only one agent uses\n- Don't merge unrelated patterns into a single mega-skill\n- Don't remove Model preference line (coordinator needs it for model selection)\n- Don't touch `.squad\u002Fdecisions.md` during reskill\n- Don't remove the tagline blockquote — it's the charter's soul in one line\n","## Context\n\nWhen the coordinator hears \"team, reskill\" (or similar: \"optimize context\", \"slim down charters\"), trigger a team-wide optimization pass. The goal: reduce per-agent context consumption by extracting shared patterns from charters and histories into reusable skills.\n\nThis is a periodic maintenance activity. Run whenever charter\u002Fhistory bloat is suspected.\n\n## Process\n\n### Step 1: Audit\nRead all agent charters and histories. Measure byte sizes. Identify:\n\n- **Boilerplate** — sections repeated across ≥3 charters with \u003C10% variation (collaboration, model, boundaries template)\n- **Shared knowledge** — domain knowledge duplicated in 2+ charters (incident postmortems, technical patterns)\n- **Mature learnings** — history entries appearing 3+ times across agents that should be promoted to skills\n\n### Step 2: Extract\nFor each identified pattern:\n1. Create or update a skill at `.squad\u002Fskills\u002F{skill-name}\u002FSKILL.md`\n2. Follow the skill template format (frontmatter + Context + Patterns + Examples + Anti-Patterns)\n3. Set confidence: low (first observation), medium (2+ agents), high (team-wide)\n\n### Step 3: Trim\n**Charters** — target ≤1.5KB per agent:\n- Remove Collaboration section entirely (spawn prompt + agent-collaboration skill covers it)\n- Remove Voice section (tagline blockquote at top of charter already captures it)\n- Trim Model section to single line: `Preferred: {model}`\n- Remove \"When I'm unsure\" boilerplate from Boundaries\n- Remove domain knowledge now covered by a skill — add skill reference comment if helpful\n- Keep: Identity, What I Own, unique How I Work patterns, Boundaries (domain list only)\n\n**Histories** — target ≤8KB per agent:\n- Apply history-hygiene skill to any history >12KB\n- Promote recurring patterns (3+ occurrences across agents) to skills\n- Summarize old entries into `## Core Context` section\n- Remove session-specific metadata (dates, branch names, requester names)\n\n### Step 4: Report\nOutput a savings table:\n\n| Agent | Charter Before | Charter After | History Before | History After | Saved |\n|-------|---------------|---------------|----------------|---------------|-------|\n\nInclude totals and percentage reduction.\n\n## Patterns\n\n### Minimal Charter Template (target format after reskill)\n\n```\n# {Name} — {Role}\n\n> {Tagline — one sentence capturing voice and philosophy}\n\n## Identity\n- **Name:** {Name}\n- **Role:** {Role}\n- **Expertise:** {comma-separated list}\n\n## What I Own\n- {bullet list of owned artifacts\u002Fdomains}\n\n## How I Work\n- {unique patterns and principles — NOT boilerplate}\n\n## Boundaries\n**I handle:** {domain list}\n**I don't handle:** {explicit exclusions}\n\n## Model\nPreferred: {model}\n```\n\n### Skill Extraction Threshold\n- **1 charter** → leave in charter (unique to that agent)\n- **2 charters** → consider extracting if >500 bytes of overlap\n- **3+ charters** → always extract to a shared skill\n\n## Anti-Patterns\n- Don't delete unique per-agent identity or domain-specific knowledge\n- Don't create skills for content only one agent uses\n- Don't merge unrelated patterns into a single mega-skill\n- Don't remove Model preference line (coordinator needs it for model selection)\n- Don't touch `.squad\u002Fdecisions.md` during reskill\n- Don't remove the tagline blockquote — it's the charter's soul in one line\n",{"name":5,"domain":40,"source":41,"confidence":30,"description":7},"team-optimization","manual — Brady directive to reduce per-agent context overhead","dev","ec19f5e92325e634e3c6eff500e3cefa56131cc9","packages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Freskill","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad","https:\u002F\u002Fgithub.com\u002Fbarichter","2026-04-13 22:53:46",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add barichter\u002Fsquad --skill reskill",{"tool":54,"command":55},"bunx","bunx skills add barichter\u002Fsquad --skill reskill",{"tool":57,"command":58},"pnpm","pnpm dlx skills add barichter\u002Fsquad --skill reskill","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Fpackages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Freskill\u002FSKILL.md",true,[],[63,75,83,98,120,126],{"skillNo":64,"name":65,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":69,"publishedAt":35},"01M6R7VE8SZD1E37WWJN4ZFPWB","My Skill","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fmy-skill\u002FSKILL.md",[68],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[70,71,72,73,74],"my","my skill","tester","vitest","testing",{"skillNo":76,"name":77,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":35},"01M6R7VD19M4TMAA74XGD6QSZX","bad-skill","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fbad-skill\u002FSKILL.md",[],[81,82],"bad skill","bad",{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":35},"01M6R7V9TYTX6Z621V6RWA51G6","squad-conventions","Core conventions and patterns used in the Squad codebase","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskills\u002Fsquad-conventions\u002FSKILL.md",[],[90,91,92,93,94,95,96,29,30,97],"squad conventions","squad","conventions","project-conventions","core","patterns","project","codebase",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":35},"01M6R7TTF0ABMGSVWASVYF6D51","rework-rate","Measure and interpret PR rework rate — the emerging 5th DORA metric","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskills\u002Frework-rate\u002FSKILL.md",[],[105,106,107,108,109,110,111,112,113,30,91,114,115,116,117,25,118,119,29],"rate","rework rate","metric","efficiency","prs","when","pr","review","code quality","code","code-review","metrics","health","analyze","quality",{"skillNo":121,"name":122,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":35},"01M6R7TRZPET44JRCSQF08EEA8","nap","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskills\u002Fnap\u002FSKILL.md",[],[122],{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":133,"publishedAt":35},"01M6R7TK10WCT77A52E27GR5R3","{skill-name}","{what this skill teaches agents}","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskill.md",[132],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[134,135,136,137,138,139,140,141,142,143,29,30,74],"{skill name}","skill name","name","design","api","how","error-handling","learned","error","api-design"]