[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C43DBFJ4DMKA0FWCDA6DNA":3,"skill-same:01M6C43DBFJ4DMKA0FWCDA6DNA":66},{"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":18,"publishedAt":33,"linkOnly":34,"markdownContent":35,"markdownBody":36,"frontMatter":37,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":44,"ownerDescription":6,"updatedAt":45,"install":46,"resources":59},"01M6C43DBFJ4DMKA0FWCDA6DNA","diagnosing-bugs",null,"Diagnosis loop for hard bugs and performance regressions. Use when the user says \"diagnose\"\u002F\"debug this\", or reports something broken\u002Fthrowing\u002Ffailing\u002Fslow.","colliery-io\u002Fkairos","colliery-io","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F167646339?v=4","01M6C4368BHZH1AYSJ3SX124ET","Colliery","01M6C436CSYPJ80ZNK1SA2Q7Z3",1,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fengineering\u002Fdiagnosing-bugs\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32],"diagnosing bugs","bugs","broken","diagnose","performance","use","loop","debug","user","for","failing","when","reports","diagnosis","2026-11-10 10:12:30",false,"---\nname: diagnosing-bugs\ndescription: Diagnosis loop for hard bugs and performance regressions. Use when the user says \"diagnose\"\u002F\"debug this\", or reports something broken\u002Fthrowing\u002Ffailing\u002Fslow.\n---\n\n# Diagnosing Bugs\n\nA discipline for hard bugs. Skip phases only when explicitly justified.\n\nThe diagnosis log lives on the Kairos item tracking the bug (short code from session context, or `my_boards` to find it; no item → ask the user or `create_item` a task for it). As each phase completes, append its outcome with `append_note` — the loop command, the minimal repro, the ranked hypotheses, the confirmed cause. The item survives context loss; the conversation doesn't.\n\nWhen exploring the codebase, pull that item and its relationships (`get_item`) to get a clear mental model of the relevant modules, and check ADR documents linked in the area you're touching.\n\nCode index first. Find code with the tools of the `kairos-code` MCP server before you read a file. `code_search` finds what the code does; `symbol` finds one name. `callers` and `references` find its uses; `path` finds how one symbol reaches another. Then read only the files that they name. grep is for literal text only: a log line, a config key, an error message. After you change code, run `kairos index update`.\n\n## Phase 1 — Build a feedback loop\n\n**This is the skill.** Everything else is mechanical. If you have a **tight** pass\u002Ffail signal for the bug — one that goes red on _this_ bug — you will find the cause; bisection, hypothesis-testing, and instrumentation all just consume it. If you don't have one, no amount of staring at code will save you.\n\nSpend disproportionate effort here. **Be aggressive. Be creative. Refuse to give up.**\n\n### Ways to construct one — try them in roughly this order\n\n1. **Failing test** at whatever seam reaches the bug — unit, integration, e2e.\n2. **Curl \u002F HTTP script** against a running dev server.\n3. **CLI invocation** with a fixture input, diffing stdout against a known-good snapshot.\n4. **Headless browser script** (Playwright \u002F Puppeteer) — drives the UI, asserts on DOM\u002Fconsole\u002Fnetwork.\n5. **Replay a captured trace.** Save a real network request \u002F payload \u002F event log to disk; replay it through the code path in isolation.\n6. **Throwaway harness.** Spin up a minimal subset of the system (one service, mocked deps) that exercises the bug code path with a single function call.\n7. **Property \u002F fuzz loop.** If the bug is \"sometimes wrong output\", run 1000 random inputs and look for the failure mode.\n8. **Bisection harness.** If the bug appeared between two known states (commit, dataset, version), automate \"boot at state X, check, repeat\" so you can `git bisect run` it.\n9. **Differential loop.** Run the same input through old-version vs new-version (or two configs) and diff outputs.\n10. **HITL bash script.** Last resort. If a human must click, drive _them_ with `scripts\u002Fhitl-loop.template.sh` so the loop is still structured. Captured output feeds back to you.\n\nBuild the right feedback loop, and the bug is 90% fixed.\n\n### Tighten the loop\n\nTreat the loop as a product. Once you have _a_ loop, **tighten** it:\n\n- Can I make it faster? (Cache setup, skip unrelated init, narrow the test scope.)\n- Can I make the signal sharper? (Assert on the specific symptom, not \"didn't crash\".)\n- Can I make it more deterministic? (Pin time, seed RNG, isolate filesystem, freeze network.)\n\nA 30-second flaky loop is barely better than no loop; a 2-second deterministic one is tight — a debugging superpower.\n\n### Non-deterministic bugs\n\nThe goal is not a clean repro but a **higher reproduction rate**. Loop the trigger 100×, parallelise, add stress, narrow timing windows, inject sleeps. A 50%-flake bug is debuggable; 1% is not — keep raising the rate until it's debuggable.\n\n### When you genuinely cannot build a loop\n\nStop and say so explicitly. List what you tried. Ask the user for: (a) access to whatever environment reproduces it, (b) a captured artifact (HAR file, log dump, core dump, screen recording with timestamps), or (c) permission to add temporary production instrumentation. Do **not** proceed to hypothesise without a loop.\n\n### Completion criterion — a tight loop that goes red\n\nPhase 1 is done when the loop is **tight** and **red-capable**: you can name **one command** — a script path, a test invocation, a curl — that you have **already run at least once** (paste the invocation and its output), and that is:\n\n- [ ] **Red-capable** — it drives the actual bug code path and asserts the **user's exact symptom**, so it can go red on this bug and green once fixed. Not \"runs without erroring\" — it must be able to _catch this specific bug_.\n- [ ] **Deterministic** — same verdict every run (flaky bugs: a pinned, high reproduction rate, per above).\n- [ ] **Fast** — seconds, not minutes.\n- [ ] **Agent-runnable** — you can run it unattended; a human in the loop only via `scripts\u002Fhitl-loop.template.sh`.\n\nIf you catch yourself reading code to build a theory before this command exists, **stop — jumping straight to a hypothesis is the exact failure this skill prevents.** No red-capable command, no Phase 2.\n\n## Phase 2 — Reproduce + minimise\n\nRun the loop. Watch it go red — the bug appears.\n\nConfirm:\n\n- [ ] The loop produces the failure mode the **user** described — not a different failure that happens to be nearby. Wrong bug = wrong fix.\n- [ ] The failure is reproducible across multiple runs (or, for non-deterministic bugs, reproducible at a high enough rate to debug against).\n- [ ] You have captured the exact symptom (error message, wrong output, slow timing) so later phases can verify the fix actually addresses it.\n\n### Minimise\n\nOnce it's red, shrink the repro to the **smallest scenario that still goes red**. Cut inputs, callers, config, data, and steps **one at a time**, re-running the loop after each cut — keep only what's load-bearing for the failure.\n\nWhy bother: a minimal repro shrinks the hypothesis space in Phase 3 (fewer moving parts left to suspect) and becomes the clean regression test in Phase 5.\n\nDone when **every remaining element is load-bearing** — removing any one of them makes the loop go green.\n\nDo not proceed until you have reproduced **and** minimised.\n\n## Phase 3 — Hypothesise\n\nGenerate **3–5 ranked hypotheses** before testing any of them. Single-hypothesis generation anchors on the first plausible idea.\n\nEach hypothesis must be **falsifiable**: state the prediction it makes.\n\n> Format: \"If \u003CX> is the cause, then \u003Cchanging Y> will make the bug disappear \u002F \u003Cchanging Z> will make it worse.\"\n\nIf you cannot state the prediction, the hypothesis is a vibe — discard or sharpen it.\n\n**Show the ranked list to the user before testing.** They often have domain knowledge that re-ranks instantly (\"we just deployed a change to #3\"), or know hypotheses they've already ruled out. Cheap checkpoint, big time saver. Don't block on it — proceed with your ranking if the user is AFK.\n\n## Phase 4 — Instrument\n\nEach probe must map to a specific prediction from Phase 3. **Change one variable at a time.**\n\nTool preference:\n\n1. **Debugger \u002F REPL inspection** if the env supports it. One breakpoint beats ten logs.\n2. **Targeted logs** at the boundaries that distinguish hypotheses.\n3. Never \"log everything and grep\".\n\n**Tag every debug log** with a unique prefix, e.g. `[DEBUG-a4f2]`. Cleanup at the end becomes a single grep. Untagged logs survive; tagged logs die.\n\n**Perf branch.** For performance regressions, logs are usually wrong. Instead: establish a baseline measurement (timing harness, `performance.now()`, profiler, query plan), then bisect. Measure first, fix second.\n\n## Phase 5 — Fix + regression test\n\nWrite the regression test **before the fix** — but only if there is a **correct seam** for it.\n\nA correct seam is one where the test exercises the **real bug pattern** as it occurs at the call site. If the only available seam is too shallow (single-caller test when the bug needs multiple callers, unit test that can't replicate the chain that triggered the bug), a regression test there gives false confidence.\n\n**If no correct seam exists, that itself is the finding.** Note it. The codebase architecture is preventing the bug from being locked down. Flag this for the next phase.\n\nIf a correct seam exists:\n\n1. Turn the minimised repro into a failing test at that seam.\n2. Watch it fail.\n3. Apply the fix.\n4. Watch it pass.\n5. Re-run the Phase 1 feedback loop against the original (un-minimised) scenario.\n\n## Phase 6 — Cleanup + post-mortem\n\nRequired before declaring done:\n\n- [ ] Original repro no longer reproduces (re-run the Phase 1 loop)\n- [ ] Regression test passes (or absence of seam is documented)\n- [ ] All `[DEBUG-...]` instrumentation removed (`grep` the prefix)\n- [ ] Throwaway prototypes deleted (or moved to a clearly-marked debug location)\n- [ ] The hypothesis that turned out correct is stated in the commit \u002F PR message — so the next debugger learns\n- [ ] The diagnosis log on the Kairos item is current through the fix — confirmed cause, fix, regression-test status (`append_note`)\n\n**Then ask: what would have prevented this bug?** If the answer involves architectural change (no good test seam, tangled callers, hidden coupling) hand off to the `codebase-design` skill with the specifics. Make the recommendation **after** the fix is in, not before — you have more information now than when you started.\n","# Diagnosing Bugs\n\nA discipline for hard bugs. Skip phases only when explicitly justified.\n\nThe diagnosis log lives on the Kairos item tracking the bug (short code from session context, or `my_boards` to find it; no item → ask the user or `create_item` a task for it). As each phase completes, append its outcome with `append_note` — the loop command, the minimal repro, the ranked hypotheses, the confirmed cause. The item survives context loss; the conversation doesn't.\n\nWhen exploring the codebase, pull that item and its relationships (`get_item`) to get a clear mental model of the relevant modules, and check ADR documents linked in the area you're touching.\n\nCode index first. Find code with the tools of the `kairos-code` MCP server before you read a file. `code_search` finds what the code does; `symbol` finds one name. `callers` and `references` find its uses; `path` finds how one symbol reaches another. Then read only the files that they name. grep is for literal text only: a log line, a config key, an error message. After you change code, run `kairos index update`.\n\n## Phase 1 — Build a feedback loop\n\n**This is the skill.** Everything else is mechanical. If you have a **tight** pass\u002Ffail signal for the bug — one that goes red on _this_ bug — you will find the cause; bisection, hypothesis-testing, and instrumentation all just consume it. If you don't have one, no amount of staring at code will save you.\n\nSpend disproportionate effort here. **Be aggressive. Be creative. Refuse to give up.**\n\n### Ways to construct one — try them in roughly this order\n\n1. **Failing test** at whatever seam reaches the bug — unit, integration, e2e.\n2. **Curl \u002F HTTP script** against a running dev server.\n3. **CLI invocation** with a fixture input, diffing stdout against a known-good snapshot.\n4. **Headless browser script** (Playwright \u002F Puppeteer) — drives the UI, asserts on DOM\u002Fconsole\u002Fnetwork.\n5. **Replay a captured trace.** Save a real network request \u002F payload \u002F event log to disk; replay it through the code path in isolation.\n6. **Throwaway harness.** Spin up a minimal subset of the system (one service, mocked deps) that exercises the bug code path with a single function call.\n7. **Property \u002F fuzz loop.** If the bug is \"sometimes wrong output\", run 1000 random inputs and look for the failure mode.\n8. **Bisection harness.** If the bug appeared between two known states (commit, dataset, version), automate \"boot at state X, check, repeat\" so you can `git bisect run` it.\n9. **Differential loop.** Run the same input through old-version vs new-version (or two configs) and diff outputs.\n10. **HITL bash script.** Last resort. If a human must click, drive _them_ with `scripts\u002Fhitl-loop.template.sh` so the loop is still structured. Captured output feeds back to you.\n\nBuild the right feedback loop, and the bug is 90% fixed.\n\n### Tighten the loop\n\nTreat the loop as a product. Once you have _a_ loop, **tighten** it:\n\n- Can I make it faster? (Cache setup, skip unrelated init, narrow the test scope.)\n- Can I make the signal sharper? (Assert on the specific symptom, not \"didn't crash\".)\n- Can I make it more deterministic? (Pin time, seed RNG, isolate filesystem, freeze network.)\n\nA 30-second flaky loop is barely better than no loop; a 2-second deterministic one is tight — a debugging superpower.\n\n### Non-deterministic bugs\n\nThe goal is not a clean repro but a **higher reproduction rate**. Loop the trigger 100×, parallelise, add stress, narrow timing windows, inject sleeps. A 50%-flake bug is debuggable; 1% is not — keep raising the rate until it's debuggable.\n\n### When you genuinely cannot build a loop\n\nStop and say so explicitly. List what you tried. Ask the user for: (a) access to whatever environment reproduces it, (b) a captured artifact (HAR file, log dump, core dump, screen recording with timestamps), or (c) permission to add temporary production instrumentation. Do **not** proceed to hypothesise without a loop.\n\n### Completion criterion — a tight loop that goes red\n\nPhase 1 is done when the loop is **tight** and **red-capable**: you can name **one command** — a script path, a test invocation, a curl — that you have **already run at least once** (paste the invocation and its output), and that is:\n\n- [ ] **Red-capable** — it drives the actual bug code path and asserts the **user's exact symptom**, so it can go red on this bug and green once fixed. Not \"runs without erroring\" — it must be able to _catch this specific bug_.\n- [ ] **Deterministic** — same verdict every run (flaky bugs: a pinned, high reproduction rate, per above).\n- [ ] **Fast** — seconds, not minutes.\n- [ ] **Agent-runnable** — you can run it unattended; a human in the loop only via `scripts\u002Fhitl-loop.template.sh`.\n\nIf you catch yourself reading code to build a theory before this command exists, **stop — jumping straight to a hypothesis is the exact failure this skill prevents.** No red-capable command, no Phase 2.\n\n## Phase 2 — Reproduce + minimise\n\nRun the loop. Watch it go red — the bug appears.\n\nConfirm:\n\n- [ ] The loop produces the failure mode the **user** described — not a different failure that happens to be nearby. Wrong bug = wrong fix.\n- [ ] The failure is reproducible across multiple runs (or, for non-deterministic bugs, reproducible at a high enough rate to debug against).\n- [ ] You have captured the exact symptom (error message, wrong output, slow timing) so later phases can verify the fix actually addresses it.\n\n### Minimise\n\nOnce it's red, shrink the repro to the **smallest scenario that still goes red**. Cut inputs, callers, config, data, and steps **one at a time**, re-running the loop after each cut — keep only what's load-bearing for the failure.\n\nWhy bother: a minimal repro shrinks the hypothesis space in Phase 3 (fewer moving parts left to suspect) and becomes the clean regression test in Phase 5.\n\nDone when **every remaining element is load-bearing** — removing any one of them makes the loop go green.\n\nDo not proceed until you have reproduced **and** minimised.\n\n## Phase 3 — Hypothesise\n\nGenerate **3–5 ranked hypotheses** before testing any of them. Single-hypothesis generation anchors on the first plausible idea.\n\nEach hypothesis must be **falsifiable**: state the prediction it makes.\n\n> Format: \"If \u003CX> is the cause, then \u003Cchanging Y> will make the bug disappear \u002F \u003Cchanging Z> will make it worse.\"\n\nIf you cannot state the prediction, the hypothesis is a vibe — discard or sharpen it.\n\n**Show the ranked list to the user before testing.** They often have domain knowledge that re-ranks instantly (\"we just deployed a change to #3\"), or know hypotheses they've already ruled out. Cheap checkpoint, big time saver. Don't block on it — proceed with your ranking if the user is AFK.\n\n## Phase 4 — Instrument\n\nEach probe must map to a specific prediction from Phase 3. **Change one variable at a time.**\n\nTool preference:\n\n1. **Debugger \u002F REPL inspection** if the env supports it. One breakpoint beats ten logs.\n2. **Targeted logs** at the boundaries that distinguish hypotheses.\n3. Never \"log everything and grep\".\n\n**Tag every debug log** with a unique prefix, e.g. `[DEBUG-a4f2]`. Cleanup at the end becomes a single grep. Untagged logs survive; tagged logs die.\n\n**Perf branch.** For performance regressions, logs are usually wrong. Instead: establish a baseline measurement (timing harness, `performance.now()`, profiler, query plan), then bisect. Measure first, fix second.\n\n## Phase 5 — Fix + regression test\n\nWrite the regression test **before the fix** — but only if there is a **correct seam** for it.\n\nA correct seam is one where the test exercises the **real bug pattern** as it occurs at the call site. If the only available seam is too shallow (single-caller test when the bug needs multiple callers, unit test that can't replicate the chain that triggered the bug), a regression test there gives false confidence.\n\n**If no correct seam exists, that itself is the finding.** Note it. The codebase architecture is preventing the bug from being locked down. Flag this for the next phase.\n\nIf a correct seam exists:\n\n1. Turn the minimised repro into a failing test at that seam.\n2. Watch it fail.\n3. Apply the fix.\n4. Watch it pass.\n5. Re-run the Phase 1 feedback loop against the original (un-minimised) scenario.\n\n## Phase 6 — Cleanup + post-mortem\n\nRequired before declaring done:\n\n- [ ] Original repro no longer reproduces (re-run the Phase 1 loop)\n- [ ] Regression test passes (or absence of seam is documented)\n- [ ] All `[DEBUG-...]` instrumentation removed (`grep` the prefix)\n- [ ] Throwaway prototypes deleted (or moved to a clearly-marked debug location)\n- [ ] The hypothesis that turned out correct is stated in the commit \u002F PR message — so the next debugger learns\n- [ ] The diagnosis log on the Kairos item is current through the fix — confirmed cause, fix, regression-test status (`append_note`)\n\n**Then ask: what would have prevented this bug?** If the answer involves architectural change (no good test seam, tangled callers, hidden coupling) hand off to the `codebase-design` skill with the specifics. Make the recommendation **after** the fix is in, not before — you have more information now than when you started.\n",{"name":5,"description":7},"main","904e5de249a867b635430614ce40ad9b14e5d11c","plugin\u002Fskills\u002Fengineering\u002Fdiagnosing-bugs",4,"https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos","https:\u002F\u002Fgithub.com\u002Fcolliery-io","https:\u002F\u002Fcolliery.io\u002F","2026-11-10 20:52:44",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add colliery-io\u002Fkairos --skill diagnosing-bugs",{"tool":52,"command":53},"bunx","bunx skills add colliery-io\u002Fkairos --skill diagnosing-bugs",{"tool":55,"command":56},"pnpm","pnpm dlx skills add colliery-io\u002Fkairos --skill diagnosing-bugs","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fengineering\u002Fdiagnosing-bugs\u002FSKILL.md",true,[60],{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"scripts\u002Fhitl-loop.template.sh","SCRIPT","脚本",1164,"https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fengineering\u002Fdiagnosing-bugs\u002Fscripts\u002Fhitl-loop.template.sh",[67,93,108,122,133,157],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":33},"01M6C4534Y6DB5N1V03Q5N9HVG","triage","Groom the delivery board — refine acceptance criteria, prioritize bugs, weigh tech debt, archive stale items, restock Todo, escalate cross-team blockers.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Ftriage\u002FSKILL.md",[],[69,74,75,76,77,78,79,80,81,82,83,20,84,85,86,87,88,89,90,91,92],"todo","debt","stale","true","refine","delivery","escalate","restock","groom","tech","acceptance criteria","archive","short","board","team","code","acceptance","prioritize","tech debt",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":33},"01M6C450QYKWYHEA0VHZCM5XEW","to-initiative","Turn the current conversation into a Kairos initiative with an attached PRD — no interview, just synthesis of what's already been discussed.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Fto-initiative\u002FSKILL.md",[],[100,101,102,103,104,105,106,107,77],"to initiative","kairos","interview","just","prd","with","Synthesis","conversation",{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":112,"categories":113,"keywords":114,"publishedAt":33},"01M6C44YQG7CESHVHC6Z0TADZC","ralph","Run Kairos tasks one by one in a Ralph loop, through the steps of \u002Fkairos:implement.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Fralph\u002FSKILL.md",[],[110,115,116,117,77,86,118,119,89,120,25,101,121],"max","ralph loop","task","implement","tasks","run","max-iterations",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":128,"publishedAt":33},"01M6C44WW9QWDTG173VFRA7E1Y","ralph-initiative","Run the open tasks of a Kairos initiative in a Ralph loop, in the sequence of their blocks edges.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Fralph-initiative\u002FSKILL.md",[],[110,129,116,115,130,131,86,119,89,120,25,101,121,132,77],"ralph initiative","blocks","sequence","open",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":33},"01M6C44SW6JFF3946GAV7CKJYH","onboard-team","Take a new or half-set-up delivery team to a working state with the person — its team, members, board, repositories, team page and charter, dispatch, and local wiring. Reads first, lists the gaps, asks before each write; safe to run again.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Fonboard-team\u002FSKILL.md",[],[88,140,141,87,142,120,143,144,145,146,147,148,79,149,150,105,151,152,153,154,77,155,156],"onboard team","onboard","write","page","dispatch","first","state","SET","safe","name","charter","wiring","gaps","repositories","new","local","up",{"skillNo":158,"name":118,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":160,"categories":161,"keywords":162,"publishedAt":33},"01M6C44QPDV3F8F6JC9B2NEDNX","Implement one Kairos task from Todo to Completed. Use when the user names a task or short code to implement, asks to pick up the next todo item, or when groomed work is handed off for execution.","https:\u002F\u002Fgithub.com\u002Fcolliery-io\u002Fkairos\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fworkflow\u002Fimplement\u002FSKILL.md",[],[118,163,117,30,28,74,27,89,24,101,164,156,165,86,166],"next","execution","pick","work"]