[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6R7TK10WCT77A52E27GR5R3":3,"skill-same:01M6R7TK10WCT77A52E27GR5R3":242},{"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":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":13,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":63},"01M6R7TK10WCT77A52E27GR5R3","{skill-name}",null,"{what this skill teaches agents}","barichter\u002Fsquad","barichter","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F96797186?v=4","01M6R712K8ESMDF089BFENBR16","01M6R712R74BSQQSG2GTXBWR8P",0,"MIT","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskill.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35],"{skill name}","skill name","name","testing","design","api","how","error-handling","learned","error","api-design","manual","high","2026-11-10 10:12:30",false,"---\nname: \"{skill-name}\"\ndescription: \"{what this skill teaches agents}\"\ndomain: \"{e.g., testing, api-design, error-handling}\"\nconfidence: \"low|medium|high\"\nsource: \"{how this was learned: manual, observed, earned}\"\ntools:\n  # Optional — declare MCP tools relevant to this skill's patterns\n  # - name: \"{tool-name}\"\n  #   description: \"{what this tool does}\"\n  #   when: \"{when to use this tool}\"\n---\n\n## Context\n{When and why this skill applies}\n\n## Patterns\n{Specific patterns, conventions, or approaches}\n\n## Examples\n{Code examples or references}\n\n## Anti-Patterns\n{What to avoid}\n","## Context\n{When and why this skill applies}\n\n## Patterns\n{Specific patterns, conventions, or approaches}\n\n## Examples\n{Code examples or references}\n\n## Anti-Patterns\n{What to avoid}\n",{"name":5,"tools":6,"domain":41,"source":42,"confidence":43,"description":7},"{e.g., testing, api-design, error-handling}","{how this was learned: manual, observed, earned}","low|medium|high","dev","ec19f5e92325e634e3c6eff500e3cefa56131cc9","templates","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad","https:\u002F\u002Fgithub.com\u002Fbarichter","2026-04-13 22:53:46",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add barichter\u002Fsquad --skill \"{skill-name}\"",{"tool":56,"command":57},"bunx","bunx skills add barichter\u002Fsquad --skill \"{skill-name}\"",{"tool":59,"command":60},"pnpm","pnpm dlx skills add barichter\u002Fsquad --skill \"{skill-name}\"","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskill.md",true,[64,70,74,78,82,86,90,94,98,102,106,110,114,118,122,126,130,134,138,142,146,150,154,158,162,166,172,176,180,184,188,192,198,202,206,210,214,218,222,226,230,234,238],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"casting-history.json","REFERENCE","参考文档",70,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcasting-history.json",{"path":71,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":72,"sourceHtmlUrl":73},"casting-policy.json",754,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcasting-policy.json",{"path":75,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":76,"sourceHtmlUrl":77},"casting-reference.md",3547,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcasting-reference.md",{"path":79,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":80,"sourceHtmlUrl":81},"casting-registry.json",19,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcasting-registry.json",{"path":83,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":84,"sourceHtmlUrl":85},"casting\u002FFuturama.json",108,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcasting\u002FFuturama.json",{"path":87,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":88,"sourceHtmlUrl":89},"ceremonies.md",1882,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fceremonies.md",{"path":91,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":92,"sourceHtmlUrl":93},"charter.md",2053,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcharter.md",{"path":95,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":96,"sourceHtmlUrl":97},"constraint-tracking.md",1192,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fconstraint-tracking.md",{"path":99,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":100,"sourceHtmlUrl":101},"cooperative-rate-limiting.md",7222,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcooperative-rate-limiting.md",{"path":103,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":104,"sourceHtmlUrl":105},"copilot-instructions.md",1818,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fcopilot-instructions.md",{"path":107,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":108,"sourceHtmlUrl":109},"ghost-protocol.md",2166,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fghost-protocol.md",{"path":111,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":112,"sourceHtmlUrl":113},"history.md",255,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fhistory.md",{"path":115,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":116,"sourceHtmlUrl":117},"identity\u002Fnow.md",209,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fidentity\u002Fnow.md",{"path":119,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":120,"sourceHtmlUrl":121},"identity\u002Fwisdom.md",384,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fidentity\u002Fwisdom.md",{"path":123,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":124,"sourceHtmlUrl":125},"issue-lifecycle.md",11524,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fissue-lifecycle.md",{"path":127,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":128,"sourceHtmlUrl":129},"keda-scaler.md",5732,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fkeda-scaler.md",{"path":131,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":132,"sourceHtmlUrl":133},"loop.md",1378,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Floop.md",{"path":135,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":136,"sourceHtmlUrl":137},"machine-capabilities.md",2402,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fmachine-capabilities.md",{"path":139,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":140,"sourceHtmlUrl":141},"mcp-config.md",2357,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fmcp-config.md",{"path":143,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":144,"sourceHtmlUrl":145},"multi-agent-format.md",887,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fmulti-agent-format.md",{"path":147,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":148,"sourceHtmlUrl":149},"orchestration-log.md",1104,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Forchestration-log.md",{"path":151,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":152,"sourceHtmlUrl":153},"package.json",28,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fpackage.json",{"path":155,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":156,"sourceHtmlUrl":157},"personal-charter.md",592,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fpersonal-charter.md",{"path":159,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":160,"sourceHtmlUrl":161},"plugin-marketplace.md",2437,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fplugin-marketplace.md",{"path":163,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":164,"sourceHtmlUrl":165},"ralph-circuit-breaker.md",10187,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fralph-circuit-breaker.md",{"path":167,"resourceType":168,"resourceTypeDesc":169,"sizeBytes":170,"sourceHtmlUrl":171},"ralph-triage.js","SCRIPT","脚本",16067,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fralph-triage.js",{"path":173,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":174,"sourceHtmlUrl":175},"raw-agent-output.md",1336,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fraw-agent-output.md",{"path":177,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":178,"sourceHtmlUrl":179},"roster.md",2075,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Froster.md",{"path":181,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":182,"sourceHtmlUrl":183},"routing.md",2044,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Frouting.md",{"path":185,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":186,"sourceHtmlUrl":187},"run-output.md",1500,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Frun-output.md",{"path":189,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":190,"sourceHtmlUrl":191},"scribe-charter.md",6344,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fscribe-charter.md",{"path":193,"resourceType":194,"resourceTypeDesc":195,"sizeBytes":196,"sourceHtmlUrl":197},"squad.agent.md.template","OTHER","其他",84209,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fsquad.agent.md.template",{"path":199,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":200,"sourceHtmlUrl":201},"workflows\u002Fsquad-ci.yml",422,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-ci.yml",{"path":203,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":204,"sourceHtmlUrl":205},"workflows\u002Fsquad-docs.yml",1096,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-docs.yml",{"path":207,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":208,"sourceHtmlUrl":209},"workflows\u002Fsquad-heartbeat.yml",6611,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-heartbeat.yml",{"path":211,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":212,"sourceHtmlUrl":213},"workflows\u002Fsquad-insider-release.yml",2307,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-insider-release.yml",{"path":215,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":216,"sourceHtmlUrl":217},"workflows\u002Fsquad-issue-assign.yml",6424,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-issue-assign.yml",{"path":219,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":220,"sourceHtmlUrl":221},"workflows\u002Fsquad-label-enforce.yml",6851,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-label-enforce.yml",{"path":223,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":224,"sourceHtmlUrl":225},"workflows\u002Fsquad-preview.yml",1758,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-preview.yml",{"path":227,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":228,"sourceHtmlUrl":229},"workflows\u002Fsquad-promote.yml",4279,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-promote.yml",{"path":231,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":232,"sourceHtmlUrl":233},"workflows\u002Fsquad-release.yml",2638,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-release.yml",{"path":235,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":236,"sourceHtmlUrl":237},"workflows\u002Fsquad-triage.yml",11360,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsquad-triage.yml",{"path":239,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":240,"sourceHtmlUrl":241},"workflows\u002Fsync-squad-labels.yml",6882,"https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fworkflows\u002Fsync-squad-labels.yml",[243,254,262,277,300,306],{"skillNo":244,"name":245,"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":246,"categories":247,"keywords":249,"publishedAt":36},"01M6R7VE8SZD1E37WWJN4ZFPWB","My Skill","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fmy-skill\u002FSKILL.md",[248],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[250,251,26,252,253],"my","my skill","vitest","tester",{"skillNo":255,"name":256,"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":257,"categories":258,"keywords":259,"publishedAt":36},"01M6R7VD19M4TMAA74XGD6QSZX","bad-skill","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fbad-skill\u002FSKILL.md",[],[260,261],"bad","bad skill",{"skillNo":263,"name":264,"nameZh":6,"description":265,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":266,"categories":267,"keywords":268,"publishedAt":36},"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",[],[269,270,271,272,273,274,275,34,35,276],"conventions","squad","squad conventions","core","project-conventions","patterns","project","codebase",{"skillNo":278,"name":279,"nameZh":6,"description":280,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":281,"categories":282,"keywords":283,"publishedAt":36},"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",[],[284,285,286,287,288,289,290,270,291,292,293,294,295,296,297,34,35,298,299],"rework rate","rate","when","team","review","code quality","pr","code","code-review","metrics","health","analyze","quality","efficiency","metric","prs",{"skillNo":301,"name":302,"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":303,"categories":304,"keywords":305,"publishedAt":36},"01M6R7TRZPET44JRCSQF08EEA8","nap","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Ftemplates\u002Fskills\u002Fnap\u002FSKILL.md",[],[302],{"skillNo":307,"name":308,"nameZh":6,"description":309,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":310,"categories":311,"keywords":312,"publishedAt":36},"01M6R7TFPW0ZYH3X400MWQKZJD","windows-compatibility","Cross-platform path handling and command patterns","https:\u002F\u002Fgithub.com\u002Fbarichter\u002Fsquad\u002Fblob\u002Fdev\u002Fpackages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Fwindows-compatibility\u002FSKILL.md",[],[313,314,315,35,316,317,274,318,319,320,321],"windows compatibility","windows","compatibility","platform","cross-platform","command","git","bugs","path"]