[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C7J2VXZ95C5W6DEHRCSZTG":3,"skill-same:01M6C7J2VXZ95C5W6DEHRCSZTG":58},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":6,"ownerHtmlUrl":42,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":43,"install":44,"resources":57},"01M6C7J2VXZ95C5W6DEHRCSZTG","kspec-triage-inbox",null,"Process inbox items using the record-act pattern. Categorize, promote to spec\u002Ftask, merge duplicates, defer, or delete stale items with full audit trail.","lepahc\u002Fkynetic-spec","lepahc","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F255431765?v=4","01M6C7E6Z0C8SE1X6PJ2F9Q1CX","01M6C7E744QKNYBVZ7KV7Z69GF",1,"MIT","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002F.factory\u002Fskills\u002Fkspec-triage-inbox\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31],"triage","inbox","kspec triage inbox","kspec triage","spec","to spec","merge","delete","audit","promote","process","categorize","duplicates","stale","2026-11-10 10:12:30",false,"---\nname: kspec-triage-inbox\ndescription: Process inbox items using the record-act pattern. Categorize,\n  promote to spec\u002Ftask, merge duplicates, defer, or delete stale items with full\n  audit trail.\n---\n\u003C!-- kspec-managed -->\n# Inbox Triage\n\nSystematically process inbox items using the **record → act** pattern. Records decisions with audit trail, then executes actions.\n\n## When to Use\n\n- Processing accumulated inbox items\n- During a project-defined inbox triage workflow, if one exists\n- When inbox count is growing and needs attention\n\n## Core Concept: Record → Act\n\nTriage separates **decision-making** from **execution**:\n\n1. **Record** the decision (what to do + why)\n2. **Act** on the decision (execute it)\n\nThis enables review, override, and audit trails.\n\n```bash\n# Step 1: Record what you want to do\nkspec triage record @inbox-ref --action promote --reasoning \"Clear feature request\"\n\n# Step 2: Execute the decision\nkspec triage act @triage-ref\n```\n\n### Actions\n\n| Action      | What `act` does                       |\n| ----------- | ------------------------------------- |\n| `promote`   | Creates task from inbox item snapshot |\n| `delete`    | Deletes the inbox item                |\n| `defer`     | Records deferral, no side effect      |\n| `spec-gap`  | Creates observation tagged spec-gap   |\n| `duplicate` | Deletes the inbox item                |\n\n### Lifecycle\n\n```\nrecord (with action)     override (optional)     act\n    → triaged        →       triaged         →  acted_on\n```\n\n## Workflow\n\n### 1. Gather Context\n\n```bash\nkspec session start --full\nkspec inbox list\n```\n\n### 2. Categorize Items\n\nGroup inbox items by type:\n\n- **Bugs** — implementation issues, errors\n- **Spec gaps** — missing or incomplete specs\n- **Quick wins** — small, well-defined improvements\n- **Larger features** — need plan mode to design\n- **Process\u002Fworkflow** — meta improvements\n- **Delete candidates** — outdated, duplicates, already done\n\nPresent categories to user for alignment.\n\n### 3. Triage Each Item\n\n**Interactive mode** (recommended for multiple items):\n\n```bash\nkspec triage start\n# Presents untriaged items one by one\n# Prompts for action + reasoning\n# Ctrl+C preserves all previously committed records\n```\n\n**Individual recording** (for targeted decisions):\n\n```bash\nkspec triage record @ref --action promote --reasoning \"Clear feature request with spec coverage\"\nkspec triage record @ref --action delete --reasoning \"Already implemented and merged\"\nkspec triage record @ref --action defer --reasoning \"Depends on a larger upstream redesign\"\nkspec triage record @ref --action spec-gap --reasoning \"No spec covers error handling for this flow\"\nkspec triage record @ref --action duplicate --reasoning \"Covered by @existing-spec\"\n```\n\n### 4. Review and Execute Decisions\n\n```bash\n# Review what was recorded\nkspec triage list --status triaged\n\n# Preview before executing\nkspec triage act @triage-ref --dry-run\n\n# Execute decisions\nkspec triage act @triage-ref\n```\n\n### 5. Override If Needed\n\n```bash\n# Override changes the action while preserving the audit trail\nkspec triage override @triage-ref --action defer --reasoning \"Reconsidered - not ready\"\n\n# Then act on the updated decision\nkspec triage act @triage-ref\n```\n\n## Spec-First Processing\n\nFor behavior changes, check spec coverage before promoting:\n\n1. **Check coverage**: `kspec search \"\u003Crelevant keyword>\"` or `kspec item get @ref`\n2. **Identify gaps**: Does spec have description AND acceptance criteria?\n3. **Update spec**:\n   ```bash\n   kspec item set @ref --description \"...\"\n   kspec item ac add @ref --given \"...\" --when \"...\" --then \"...\"\n   ```\n4. **Record and act**:\n   ```bash\n   kspec triage record @inbox-ref --action promote --reasoning \"Spec updated\" --evidence @spec-ref\n   kspec triage act @triage-ref\n   ```\n\n## Plan Mode for Larger Items\n\nWhen an item needs design work:\n\n1. Enter plan mode\n2. Explore codebase for patterns\u002Fcontext\n3. Design spec structure and implementation approach\n4. Write plan, exit for approval\n5. Execute: create spec, add AC, derive task\n\n## Observation Processing\n\nDuring triage sessions, you may also process pending observations:\n\n```bash\nkspec meta observations --pending-resolution\n```\n\nFor each observation:\n\n| Type         | How to Process                                                                  |\n| ------------ | ------------------------------------------------------------------------------- |\n| **friction** | Reveals spec gap? → Create spec or inbox item. Already addressed? → Resolve     |\n| **success**  | Document in relevant spec or project-local guidance if broadly useful → Resolve |\n| **question** | Answer if you can. Needs investigation? → Promote to task                       |\n| **idea**     | Clear scope? → Inbox or task. Unclear? → Leave or delete if stale               |\n\n```bash\n# Promote observation to task\nkspec meta promote @ref --title \"Add bulk AC command\" --priority 2\n\n# Resolve observation\nkspec meta resolve @ref \"Resolution notes\"\nkspec meta resolve --refs @ref1 @ref2 --resolution \"Batch resolution\"\n\n# Convert inbox item to observation (if it's a pattern, not a task)\nkspec meta observe --from-inbox @ref\n```\n\n## Export for Context\n\nShare triage decisions with other agents or sessions:\n\n```bash\n# Markdown context blocks (for agent handoff)\nkspec triage export --format context\n\n# Full structured data\nkspec triage export --format json\n```\n\n## Bulk Operations with Batch\n\nWhen triaging many items, use `kspec batch` for atomic operations:\n\n```bash\nkspec batch --commands '[\n  {\"command\":\"triage record\",\"args\":{\"ref\":\"@ref1\",\"action\":\"delete\",\"reasoning\":\"Stale\"}},\n  {\"command\":\"triage record\",\"args\":{\"ref\":\"@ref2\",\"action\":\"promote\",\"reasoning\":\"Clear scope\"}}\n]'\n```\n\nUse `--dry-run` to preview. See `\u002Fkspec-help` for full batch documentation.\n\n## Common Patterns\n\n| Pattern               | Action                                                 |\n| --------------------- | ------------------------------------------------------ |\n| Already implemented   | Verify impl exists → check spec gaps → record delete   |\n| Duplicate of existing | Verify original covers scope → record duplicate        |\n| Small flag\u002Foption     | Update spec + AC → record promote                      |\n| New command           | Plan mode → design spec → record promote with evidence |\n| Bug report            | Check spec coverage → update spec → record promote     |\n| Vague idea            | Record defer, or leave untriaged for later             |\n| Missing spec          | Record spec-gap → creates observation for follow-up    |\n\n## Key Principles\n\n- **Record before act** — Separate decisions from execution for audit trail\n- **Ask one question at a time** — Don't batch decisions in interactive mode\n- **Spec before task** — Fill spec gaps before promoting to tasks\n- **AC is required** — Specs without acceptance criteria are incomplete\n- **Use CLI, not YAML** — All changes through kspec commands\n- **Delete freely** — Outdated or duplicate items should go\n\n## Progress Tracking\n\nAt session end, provide summary:\n\n- Items triaged (recorded decisions)\n- Actions executed (promoted, deleted, deferred, spec-gap, duplicate)\n- Tasks created\u002Fupdated\n- Observations resolved\n- Remaining items\n\n## Integration\n\n- **`\u002Fkspec-reflect`** — Session reflection may generate inbox items for triage\n- **`\u002Fkspec-observe`** — Captures systemic patterns found during triage\n- **`kspec session start`** — Shows inbox count for triage awareness\n","\u003C!-- kspec-managed -->\n# Inbox Triage\n\nSystematically process inbox items using the **record → act** pattern. Records decisions with audit trail, then executes actions.\n\n## When to Use\n\n- Processing accumulated inbox items\n- During a project-defined inbox triage workflow, if one exists\n- When inbox count is growing and needs attention\n\n## Core Concept: Record → Act\n\nTriage separates **decision-making** from **execution**:\n\n1. **Record** the decision (what to do + why)\n2. **Act** on the decision (execute it)\n\nThis enables review, override, and audit trails.\n\n```bash\n# Step 1: Record what you want to do\nkspec triage record @inbox-ref --action promote --reasoning \"Clear feature request\"\n\n# Step 2: Execute the decision\nkspec triage act @triage-ref\n```\n\n### Actions\n\n| Action      | What `act` does                       |\n| ----------- | ------------------------------------- |\n| `promote`   | Creates task from inbox item snapshot |\n| `delete`    | Deletes the inbox item                |\n| `defer`     | Records deferral, no side effect      |\n| `spec-gap`  | Creates observation tagged spec-gap   |\n| `duplicate` | Deletes the inbox item                |\n\n### Lifecycle\n\n```\nrecord (with action)     override (optional)     act\n    → triaged        →       triaged         →  acted_on\n```\n\n## Workflow\n\n### 1. Gather Context\n\n```bash\nkspec session start --full\nkspec inbox list\n```\n\n### 2. Categorize Items\n\nGroup inbox items by type:\n\n- **Bugs** — implementation issues, errors\n- **Spec gaps** — missing or incomplete specs\n- **Quick wins** — small, well-defined improvements\n- **Larger features** — need plan mode to design\n- **Process\u002Fworkflow** — meta improvements\n- **Delete candidates** — outdated, duplicates, already done\n\nPresent categories to user for alignment.\n\n### 3. Triage Each Item\n\n**Interactive mode** (recommended for multiple items):\n\n```bash\nkspec triage start\n# Presents untriaged items one by one\n# Prompts for action + reasoning\n# Ctrl+C preserves all previously committed records\n```\n\n**Individual recording** (for targeted decisions):\n\n```bash\nkspec triage record @ref --action promote --reasoning \"Clear feature request with spec coverage\"\nkspec triage record @ref --action delete --reasoning \"Already implemented and merged\"\nkspec triage record @ref --action defer --reasoning \"Depends on a larger upstream redesign\"\nkspec triage record @ref --action spec-gap --reasoning \"No spec covers error handling for this flow\"\nkspec triage record @ref --action duplicate --reasoning \"Covered by @existing-spec\"\n```\n\n### 4. Review and Execute Decisions\n\n```bash\n# Review what was recorded\nkspec triage list --status triaged\n\n# Preview before executing\nkspec triage act @triage-ref --dry-run\n\n# Execute decisions\nkspec triage act @triage-ref\n```\n\n### 5. Override If Needed\n\n```bash\n# Override changes the action while preserving the audit trail\nkspec triage override @triage-ref --action defer --reasoning \"Reconsidered - not ready\"\n\n# Then act on the updated decision\nkspec triage act @triage-ref\n```\n\n## Spec-First Processing\n\nFor behavior changes, check spec coverage before promoting:\n\n1. **Check coverage**: `kspec search \"\u003Crelevant keyword>\"` or `kspec item get @ref`\n2. **Identify gaps**: Does spec have description AND acceptance criteria?\n3. **Update spec**:\n   ```bash\n   kspec item set @ref --description \"...\"\n   kspec item ac add @ref --given \"...\" --when \"...\" --then \"...\"\n   ```\n4. **Record and act**:\n   ```bash\n   kspec triage record @inbox-ref --action promote --reasoning \"Spec updated\" --evidence @spec-ref\n   kspec triage act @triage-ref\n   ```\n\n## Plan Mode for Larger Items\n\nWhen an item needs design work:\n\n1. Enter plan mode\n2. Explore codebase for patterns\u002Fcontext\n3. Design spec structure and implementation approach\n4. Write plan, exit for approval\n5. Execute: create spec, add AC, derive task\n\n## Observation Processing\n\nDuring triage sessions, you may also process pending observations:\n\n```bash\nkspec meta observations --pending-resolution\n```\n\nFor each observation:\n\n| Type         | How to Process                                                                  |\n| ------------ | ------------------------------------------------------------------------------- |\n| **friction** | Reveals spec gap? → Create spec or inbox item. Already addressed? → Resolve     |\n| **success**  | Document in relevant spec or project-local guidance if broadly useful → Resolve |\n| **question** | Answer if you can. Needs investigation? → Promote to task                       |\n| **idea**     | Clear scope? → Inbox or task. Unclear? → Leave or delete if stale               |\n\n```bash\n# Promote observation to task\nkspec meta promote @ref --title \"Add bulk AC command\" --priority 2\n\n# Resolve observation\nkspec meta resolve @ref \"Resolution notes\"\nkspec meta resolve --refs @ref1 @ref2 --resolution \"Batch resolution\"\n\n# Convert inbox item to observation (if it's a pattern, not a task)\nkspec meta observe --from-inbox @ref\n```\n\n## Export for Context\n\nShare triage decisions with other agents or sessions:\n\n```bash\n# Markdown context blocks (for agent handoff)\nkspec triage export --format context\n\n# Full structured data\nkspec triage export --format json\n```\n\n## Bulk Operations with Batch\n\nWhen triaging many items, use `kspec batch` for atomic operations:\n\n```bash\nkspec batch --commands '[\n  {\"command\":\"triage record\",\"args\":{\"ref\":\"@ref1\",\"action\":\"delete\",\"reasoning\":\"Stale\"}},\n  {\"command\":\"triage record\",\"args\":{\"ref\":\"@ref2\",\"action\":\"promote\",\"reasoning\":\"Clear scope\"}}\n]'\n```\n\nUse `--dry-run` to preview. See `\u002Fkspec-help` for full batch documentation.\n\n## Common Patterns\n\n| Pattern               | Action                                                 |\n| --------------------- | ------------------------------------------------------ |\n| Already implemented   | Verify impl exists → check spec gaps → record delete   |\n| Duplicate of existing | Verify original covers scope → record duplicate        |\n| Small flag\u002Foption     | Update spec + AC → record promote                      |\n| New command           | Plan mode → design spec → record promote with evidence |\n| Bug report            | Check spec coverage → update spec → record promote     |\n| Vague idea            | Record defer, or leave untriaged for later             |\n| Missing spec          | Record spec-gap → creates observation for follow-up    |\n\n## Key Principles\n\n- **Record before act** — Separate decisions from execution for audit trail\n- **Ask one question at a time** — Don't batch decisions in interactive mode\n- **Spec before task** — Fill spec gaps before promoting to tasks\n- **AC is required** — Specs without acceptance criteria are incomplete\n- **Use CLI, not YAML** — All changes through kspec commands\n- **Delete freely** — Outdated or duplicate items should go\n\n## Progress Tracking\n\nAt session end, provide summary:\n\n- Items triaged (recorded decisions)\n- Actions executed (promoted, deleted, deferred, spec-gap, duplicate)\n- Tasks created\u002Fupdated\n- Observations resolved\n- Remaining items\n\n## Integration\n\n- **`\u002Fkspec-reflect`** — Session reflection may generate inbox items for triage\n- **`\u002Fkspec-observe`** — Captures systemic patterns found during triage\n- **`kspec session start`** — Shows inbox count for triage awareness\n",{"name":5,"description":7},"main","c4b0de3035f8512bba7eb0a9b4e39ea2fbd3f08e",".factory\u002Fskills\u002Fkspec-triage-inbox",2,"https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec","https:\u002F\u002Fgithub.com\u002Flepahc","2026-07-22 18:57:40",{"source":8,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add lepahc\u002Fkynetic-spec --skill kspec-triage-inbox",{"tool":50,"command":51},"bunx","bunx skills add lepahc\u002Fkynetic-spec --skill kspec-triage-inbox",{"tool":53,"command":54},"pnpm","pnpm dlx skills add lepahc\u002Fkynetic-spec --skill kspec-triage-inbox","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002F.factory\u002Fskills\u002Fkspec-triage-inbox\u002FSKILL.md",true,[],[59,77,82,89,100,108],{"skillNo":60,"name":61,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":74,"publishedAt":32},"01M6C7KCZE43MDZ74FV3A5TDCQ","writing-specs","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Fwriting-specs\u002FSKILL.md",[64,69],{"categoryNo":65,"categoryName":66,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":70,"categoryName":71,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[75,76],"writing","writing specs",{"skillNo":78,"name":18,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":32},"01M6C7KAK9CBJ87PX3BCW7B7YG","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Ftriage\u002FSKILL.md",[],[18],{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":32},"01M6C7K89VN6FJCT8M86K56EE8","triage-inbox","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Ftriage-inbox\u002FSKILL.md",[],[18,19,88],"triage inbox",{"skillNo":90,"name":91,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":97,"publishedAt":32},"01M6C7K6F2342AC1TJCN9PM0ZB","triage-automation","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Ftriage-automation\u002FSKILL.md",[94],{"categoryNo":95,"categoryName":96,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000023","Skill与智能体开发",[18,98,99],"automation","triage automation",{"skillNo":101,"name":102,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":105,"publishedAt":32},"01M6C7K3TFQ88QQBW3PXYDHQG2","task-work","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Ftask-work\u002FSKILL.md",[],[106,107],"work","task work",{"skillNo":109,"name":110,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":32},"01M6C7K168CH3XJCC3PDGA9H6C","review","https:\u002F\u002Fgithub.com\u002Flepahc\u002Fkynetic-spec\u002Fblob\u002Fmain\u002Ftemplates\u002Fskills\u002Freview\u002FSKILL.md",[],[110]]