[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GGQZ7ZG70MHTFCQ09G8JC9":3,"skill-same:01M6GGQZ7ZG70MHTFCQ09G8JC9":67},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6GGQZ7ZG70MHTFCQ09G8JC9","knowledge-routing",null,"When deciding where to store a piece of knowledge (memory files vs Confluence vs Jira). Use when about to document something, capture a lesson, create a ticket, or publish a decision.","ahmadulhoq\u002Fagentskel","ahmadulhoq","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F3884252?v=4","01M6GGC32SQTQ52FY4JB14FYSY","Ahmadul Hoq","01M6GGC37CJEYM63V3WEHY4Y8V",13,"MIT","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fknowledge-routing\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],"knowledge routing","routing","knowledge","capture","about","store","ticket","lesson","document","files","use","memory","decision","confluence","publish","create","jira","2026-11-10 10:12:30",false,"---\nname: knowledge-routing\nlicense: MIT\ndescription: When deciding where to store a piece of knowledge (memory files vs Confluence vs Jira). Use when about to document something, capture a lesson, create a ticket, or publish a decision.\n---\n\n# Knowledge Routing\n\n**Purpose:** Three layers exist — pick the right one.\n\n## The three layers\n\n| Layer | Where it lives | Who owns it |\n|---|---|---|\n| **Agent operational state** | `.memory\u002F` in repo | Agent, shared via git |\n| **Team-canonical knowledge** | Confluence | Humans (tech leads, product) |\n| **Tracked work** | Jira | Team |\n\n## Decision table\n\n| Knowledge type | Destination | Why |\n|---|---|---|\n| Codebase structure (modules, classes, functions) | `.memory\u002FMAP.md`, `.memory\u002FSYMBOLS.md` | Agent reads every session |\n| Session state, what's next | `.memory\u002FRESUME.md` | Local-only, session handoff |\n| Coding conventions (naming, style, patterns) | `.memory\u002FCONVENTIONS.md` | Read by every session |\n| Agent lessons learned (mistakes to avoid) | `.memory\u002FLESSONS.md` | Small, agent-facing |\n| Sacred behaviors (code that looks wrong but shouldn't change) | `.memory\u002FSACRED.md` | Small, agent-facing |\n| Team roster and roles | `.memory\u002FTEAM.md` | Read during handoffs |\n| Jira workflow conventions | `.memory\u002FJIRA_WORKFLOW.md` | Read before Jira writes |\n| Tech debt findings | `.memory\u002FTECH_DEBT.md` + optional Jira ticket | Local record + tracked when actionable |\n| Architectural decisions (ADRs) | **Confluence** (ADRs parent) + link in LESSONS.md | Team-canonical, durable |\n| Post-mortems | **Confluence** (Postmortems parent) | Team-visible, searchable |\n| Runbooks | **Confluence** (Runbooks parent) | Referenced during incidents |\n| Feature specifications | **Confluence** (Specs parent) | Human-authored and -reviewed |\n| Release notes | **Confluence** (or GitHub release) | External audience |\n| Tracked work (features, bugs, debt being worked) | **Jira** | Lifecycle-tracked by team |\n\n## The rule\n\n- **Operational \u002F per-agent** → `.memory\u002F`\n- **Team-canonical \u002F durable \u002F referenced by humans** → Confluence\n- **Lifecycle-tracked work** → Jira\n\n## Cross-layer linking\n\nWhen knowledge spans layers, cross-reference:\n- ADR in Confluence → add one-line entry in `.memory\u002FLESSONS.md` with the Confluence link. So agents recall the decision without loading the full ADR.\n- Tech debt in TECH_DEBT.md → add `Ticket: PROJ-1234` column when a Jira ticket tracks the work.\n- PR description → reference ticket key and link to Confluence spec if applicable.\n\n## When to ask vs auto-decide\n\n- **Auto-apply:** agent operational state (MAP, SYMBOLS, RESUME, LESSONS about agent mistakes, CONVENTIONS observed).\n- **Ask user:** creating Jira tickets, publishing to Confluence, ADR decisions. These are team-visible — don't surprise the team.\n- **Config-driven:** transitions, reassignments per `.memory\u002FJIRA_WORKFLOW.md` (if set up). Auto-apply per config; ask for anything not covered.\n\n## What NOT to do\n\n- Don't duplicate canonical knowledge into `.memory\u002F`. If an ADR exists in Confluence, link to it from LESSONS.md — don't copy it.\n- Don't put agent operational state in Confluence. MAP.md and SYMBOLS.md belong in memory; they change constantly.\n- Don't file a Jira ticket for every finding. Tech debt that's small + local stays in TECH_DEBT.md. Tickets are for work the team plans to schedule.\n\n**No gate.** This is an advisory skill — apply judgment when deciding where knowledge belongs.\n","# Knowledge Routing\n\n**Purpose:** Three layers exist — pick the right one.\n\n## The three layers\n\n| Layer | Where it lives | Who owns it |\n|---|---|---|\n| **Agent operational state** | `.memory\u002F` in repo | Agent, shared via git |\n| **Team-canonical knowledge** | Confluence | Humans (tech leads, product) |\n| **Tracked work** | Jira | Team |\n\n## Decision table\n\n| Knowledge type | Destination | Why |\n|---|---|---|\n| Codebase structure (modules, classes, functions) | `.memory\u002FMAP.md`, `.memory\u002FSYMBOLS.md` | Agent reads every session |\n| Session state, what's next | `.memory\u002FRESUME.md` | Local-only, session handoff |\n| Coding conventions (naming, style, patterns) | `.memory\u002FCONVENTIONS.md` | Read by every session |\n| Agent lessons learned (mistakes to avoid) | `.memory\u002FLESSONS.md` | Small, agent-facing |\n| Sacred behaviors (code that looks wrong but shouldn't change) | `.memory\u002FSACRED.md` | Small, agent-facing |\n| Team roster and roles | `.memory\u002FTEAM.md` | Read during handoffs |\n| Jira workflow conventions | `.memory\u002FJIRA_WORKFLOW.md` | Read before Jira writes |\n| Tech debt findings | `.memory\u002FTECH_DEBT.md` + optional Jira ticket | Local record + tracked when actionable |\n| Architectural decisions (ADRs) | **Confluence** (ADRs parent) + link in LESSONS.md | Team-canonical, durable |\n| Post-mortems | **Confluence** (Postmortems parent) | Team-visible, searchable |\n| Runbooks | **Confluence** (Runbooks parent) | Referenced during incidents |\n| Feature specifications | **Confluence** (Specs parent) | Human-authored and -reviewed |\n| Release notes | **Confluence** (or GitHub release) | External audience |\n| Tracked work (features, bugs, debt being worked) | **Jira** | Lifecycle-tracked by team |\n\n## The rule\n\n- **Operational \u002F per-agent** → `.memory\u002F`\n- **Team-canonical \u002F durable \u002F referenced by humans** → Confluence\n- **Lifecycle-tracked work** → Jira\n\n## Cross-layer linking\n\nWhen knowledge spans layers, cross-reference:\n- ADR in Confluence → add one-line entry in `.memory\u002FLESSONS.md` with the Confluence link. So agents recall the decision without loading the full ADR.\n- Tech debt in TECH_DEBT.md → add `Ticket: PROJ-1234` column when a Jira ticket tracks the work.\n- PR description → reference ticket key and link to Confluence spec if applicable.\n\n## When to ask vs auto-decide\n\n- **Auto-apply:** agent operational state (MAP, SYMBOLS, RESUME, LESSONS about agent mistakes, CONVENTIONS observed).\n- **Ask user:** creating Jira tickets, publishing to Confluence, ADR decisions. These are team-visible — don't surprise the team.\n- **Config-driven:** transitions, reassignments per `.memory\u002FJIRA_WORKFLOW.md` (if set up). Auto-apply per config; ask for anything not covered.\n\n## What NOT to do\n\n- Don't duplicate canonical knowledge into `.memory\u002F`. If an ADR exists in Confluence, link to it from LESSONS.md — don't copy it.\n- Don't put agent operational state in Confluence. MAP.md and SYMBOLS.md belong in memory; they change constantly.\n- Don't file a Jira ticket for every finding. Tech debt that's small + local stays in TECH_DEBT.md. Tickets are for work the team plans to schedule.\n\n**No gate.** This is an advisory skill — apply judgment when deciding where knowledge belongs.\n",{"name":5,"license":15,"description":7},"main","d94c109a4fad51623dc6048315860e53b32673fb","core\u002Fskills\u002Fknowledge-routing",3,"https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel","https:\u002F\u002Fgithub.com\u002Fahmadulhoq","2026-11-07 00:53:22",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add ahmadulhoq\u002Fagentskel --skill knowledge-routing",{"tool":59,"command":60},"bunx","bunx skills add ahmadulhoq\u002Fagentskel --skill knowledge-routing",{"tool":62,"command":63},"pnpm","pnpm dlx skills add ahmadulhoq\u002Fagentskel --skill knowledge-routing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fknowledge-routing\u002FSKILL.md",true,[],[68,86,113,137,162,176],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":41},"01M6GGSN2D57Y8BR50X08Y695H","setup-project","When setting up agentskel on a new project that does not yet have .memory\u002F or .agents\u002F. Use when the user says \"set up agentskel\", \"install agentskel\", or \"add agent memory to this project\".","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Fskills\u002Fsetup-project\u002FSKILL.md",[],[75,76,77,35,78,79,34,80,81,82,83,84,85],"setup project","project","setup","add","up","install","add agent","user","new project","SET","agent memory",{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":41},"01M6GGSJ6HD2DFVZQTESJ81GYM","using-git-worktrees","When running long feature implementations, parallel branch work, or build\u002Ftest scripts that must not interfere with the user's active working directory. Creates isolated execution environments via git worktrees in sibling directories.","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Froles\u002Fdev\u002Fskills\u002Fusing-git-worktrees\u002FSKILL.md",[],[93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112],"git worktrees","worktrees","git","using git worktrees","Using git","test","directory","execution","parallel","work","branch","directories","environments","with","via","long","scripts","feature","active","build",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":122,"publishedAt":41},"01M6GGSCFPK7MDSZH96XTNZR9B","test-engineer","When designing test strategy, analysing coverage, or writing tests outside the TDD cycle. Also use when working with CI pipelines or validating changes end-to-end.","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Froles\u002Fdev\u002Fskills\u002Ftest-engineer\u002FSKILL.md",[119],{"categoryNo":120,"categoryName":121,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[123,124,98,125,126,127,128,129,130,34,131,106,132,133,134,135,136],"test engineer","engineer","tests","tdd cycle","cycle","end","test strategy","pipelines","tdd","strategy","ci","writing tests","writing","coverage",{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":147,"publishedAt":41},"01M6GGS8YA9XZB6DWV22JC0YTB","test-driven-development","When implementing logic changes during develop-feature or implement-task. Use the Red-Green-Refactor cycle to write a failing test before any production code.","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Froles\u002Fdev\u002Fskills\u002Ftest-driven-development\u002FSKILL.md",[143,146],{"categoryNo":144,"categoryName":145,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":120,"categoryName":121,"taxonomyType":21,"taxonomyTypeDesc":22},[148,149,98,150,151,152,110,153,154,127,155,34,156,157,158,159,160,161],"development","test driven development","driven","task","red","logic","green","red-green-refactor","write","develop","refactor","Production","code","implement",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":41},"01M6GGS61D41ZJG4D8XAS97H62","task-planner","When decomposing a feature or spec into implementable subtasks, estimating scope, or orchestrating multi-step work across subagents.","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Froles\u002Fdev\u002Fskills\u002Ftask-planner\u002FSKILL.md",[],[169,151,170,110,171,172,102,173,174,175],"task planner","planner","across","subagents","spec","scope","multi",{"skillNo":177,"name":178,"nameZh":6,"description":179,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":180,"categories":181,"keywords":182,"publishedAt":41},"01M6GGS30NJW4Q7QN4KVT0CV08","systematic-debugger","When applying debugging techniques during any investigation — root cause tracing, bisect, defense-in-depth. Enforces hypothesis-first analysis and prohibits guess-and-check changes. Use standalone or inside the debug-issue workflow.","https:\u002F\u002Fgithub.com\u002Fahmadulhoq\u002Fagentskel\u002Fblob\u002Fmain\u002Froles\u002Fdev\u002Fskills\u002Fsystematic-debugger\u002FSKILL.md",[],[183,184,185,186,187,188,189,190,34,191,192,193,194,195,196,197,198,199,200,201],"systematic debugger","systematic","debugger","check","standalone","root","issue workflow","issue","bisect","investigation","analysis","first","defense","hypothesis","defense-in-depth","tracing","debugging","debug","workflow"]