[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6HZ2V9THMEANSBXMQ2N9NK3":3,"skill-same:01M6HZ2V9THMEANSBXMQ2N9NK3":70},{"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":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":52,"repositoryHtmlUrl":53,"repositoryHomepageUrl":6,"ownerHtmlUrl":54,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":55,"install":56,"resources":69},"01M6HZ2V9THMEANSBXMQ2N9NK3","complex-task-protocol",null,"Automatic operating protocol for complex agent tasks. Use when work is multi-step, risky, cross-module, orchestration-heavy, or likely to benefit from bounded sidecar help, verification discipline, recovery checkpoints, and durable learning capture.","ldilov\u002Fharness-forge","ldilov","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F25016670?v=4","01M6HYXAEJP0KYT2DF86WYN8QK","Lazar Dilov","01M6HYXAJETHAW5DD5TAAFEQ7D",6,"GPL-3.0","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Fcomplex-task-protocol\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"complex task protocol","protocol","task","use","for","agent tasks","checkpoints","multi","operating","module","discipline","orchestration","learning capture","capture","work","learning","recovery","verification","help","tasks","2026-11-10 10:12:30",false,"---\nname: complex-task-protocol\ndescription: Automatic operating protocol for complex agent tasks. Use when work is multi-step, risky, cross-module, orchestration-heavy, or likely to benefit from bounded sidecar help, verification discipline, recovery checkpoints, and durable learning capture.\n---\n\n# Complex Task Protocol\n\n## Activation\n\nBefore meaningful coding work, classify the task as `simple` or `complex`.\n\nActivate this protocol when either condition is true:\n\n- at least two ordinary complexity signals are present\n- at least one high-signal condition is present\n\nOrdinary complexity signals:\n\n- touches three or more files or two or more modules\n- requires investigation plus implementation\n- changes architecture, runtime behavior, generated surfaces, install flows, release flows, security, or agent instructions\n- likely needs multiple verification commands\n- has independent sidecar work such as focused evidence gathering, review, or verification\n- the initial focused read does not reveal a clear path\n\nHigh-signal conditions:\n\n- security-sensitive change\n- release, publish, or signoff work\n- cross-target agent behavior\n- recursive, runtime, orchestration, or subagent behavior\n- persistent bug after one direct fix attempt\n- explicit user request for complex-task, subagent, learning, or orchestration behavior\n\n## Simple Task Bypass\n\nKeep simple work lightweight. Do not announce this protocol or spawn subagents by default for:\n\n- direct questions that do not require code changes\n- typo, wording, or single-surface documentation fixes\n- obvious one-file edits with a clear verification path\n- narrow configuration changes with low blast radius\n\n## Execution Map\n\nWhen the protocol activates, give a concise execution map before broad scanning:\n\n- why the task is complex enough to activate the protocol\n- what the main agent will keep on the critical path\n- which sidecar work, if any, is independent enough to delegate\n- what verification will prove the result\n- what recovery threshold will stop unbounded exploration\n- whether durable learning capture is likely\n\n## Bounded Subagent Use\n\nConsider subagents by default when this protocol is active, but spawn them only when independent work exists.\n\nDefault limit: zero to two subagents. Use three only when the user explicitly asks or when three independent tracks are clearly available.\n\nAllowed subagent work:\n\n- focused evidence gathering\n- documentation or API verification\n- security, correctness, or regression review\n- verification while the main agent continues non-overlapping work\n- isolated implementation slices with clear file ownership\n\nDisallowed subagent work:\n\n- the main agent's immediate blocking decision\n- vague exploration without a concrete question\n- duplicate work already assigned elsewhere\n- broad scans without a bounded purpose\n- edits that overlap another active editor's ownership scope\n\nKeep critical-path decisions and the next blocking task with the main agent.\n\n## Subagent Result Schema\n\nRequire every sidecar result to include:\n\n- finding or change\n- evidence inspected\n- files inspected\n- files changed, if any\n- risks\n- confidence\n- verification performed, if any\n\nCoding sidecars must also state the behavior changed and known gaps.\n\n## Verification\n\nBefore claiming completion, run appropriate verification or state what could not be verified. Report:\n\n- checks run\n- result\n- checks not run\n- residual risk\n\n## Recovery\n\nStop unbounded exploration when any recovery trigger appears:\n\n- repeated failed attempts\n- unclear root cause after focused inspection\n- expanding scope\n- context bloat or repeated broad scans\n\nWhen triggered, produce a concise recovery summary with evidence, attempts, blockers, and the next bounded step. For hard investigations, prefer the recursive investigation flow or token-budget optimizer before adding more prompt context.\n\n## Learning Capture\n\nAt the end of complex tasks, decide whether anything reusable was learned.\n\nDurable learning categories:\n\n- repository convention\n- command or verification recipe\n- recurring failure mode\n- architecture or runtime decision\n- agent tactic that improved outcomes\n- target support caveat\n\nDo not persist:\n\n- temporary task state\n- obvious facts already documented\n- duplicate guidance\n- private or user-specific preferences unless explicitly requested\n- speculative lessons without evidence\n\nPrefer existing destinations:\n\n- project docs\n- runtime task artifacts\n- decision records\n- observability summaries\n- canonical guidance or skill surfaces\n\nAsk before creating a new top-level document when no established destination exists.\n\n## References\n\n- `.hforge\u002Fruntime\u002Fagent-brief.md`\n- `.hforge\u002Fgenerated\u002Fagent-command-catalog.json`\n- `.hforge\u002Flibrary\u002Fskills\u002Ftoken-budget-optimizer\u002FSKILL.md`\n- `.hforge\u002Flibrary\u002Fskills\u002Frecursive-structured-analysis\u002FSKILL.md`\n- `.hforge\u002Fruntime\u002Frecursive\u002Flanguage-capabilities.json`\n","# Complex Task Protocol\n\n## Activation\n\nBefore meaningful coding work, classify the task as `simple` or `complex`.\n\nActivate this protocol when either condition is true:\n\n- at least two ordinary complexity signals are present\n- at least one high-signal condition is present\n\nOrdinary complexity signals:\n\n- touches three or more files or two or more modules\n- requires investigation plus implementation\n- changes architecture, runtime behavior, generated surfaces, install flows, release flows, security, or agent instructions\n- likely needs multiple verification commands\n- has independent sidecar work such as focused evidence gathering, review, or verification\n- the initial focused read does not reveal a clear path\n\nHigh-signal conditions:\n\n- security-sensitive change\n- release, publish, or signoff work\n- cross-target agent behavior\n- recursive, runtime, orchestration, or subagent behavior\n- persistent bug after one direct fix attempt\n- explicit user request for complex-task, subagent, learning, or orchestration behavior\n\n## Simple Task Bypass\n\nKeep simple work lightweight. Do not announce this protocol or spawn subagents by default for:\n\n- direct questions that do not require code changes\n- typo, wording, or single-surface documentation fixes\n- obvious one-file edits with a clear verification path\n- narrow configuration changes with low blast radius\n\n## Execution Map\n\nWhen the protocol activates, give a concise execution map before broad scanning:\n\n- why the task is complex enough to activate the protocol\n- what the main agent will keep on the critical path\n- which sidecar work, if any, is independent enough to delegate\n- what verification will prove the result\n- what recovery threshold will stop unbounded exploration\n- whether durable learning capture is likely\n\n## Bounded Subagent Use\n\nConsider subagents by default when this protocol is active, but spawn them only when independent work exists.\n\nDefault limit: zero to two subagents. Use three only when the user explicitly asks or when three independent tracks are clearly available.\n\nAllowed subagent work:\n\n- focused evidence gathering\n- documentation or API verification\n- security, correctness, or regression review\n- verification while the main agent continues non-overlapping work\n- isolated implementation slices with clear file ownership\n\nDisallowed subagent work:\n\n- the main agent's immediate blocking decision\n- vague exploration without a concrete question\n- duplicate work already assigned elsewhere\n- broad scans without a bounded purpose\n- edits that overlap another active editor's ownership scope\n\nKeep critical-path decisions and the next blocking task with the main agent.\n\n## Subagent Result Schema\n\nRequire every sidecar result to include:\n\n- finding or change\n- evidence inspected\n- files inspected\n- files changed, if any\n- risks\n- confidence\n- verification performed, if any\n\nCoding sidecars must also state the behavior changed and known gaps.\n\n## Verification\n\nBefore claiming completion, run appropriate verification or state what could not be verified. Report:\n\n- checks run\n- result\n- checks not run\n- residual risk\n\n## Recovery\n\nStop unbounded exploration when any recovery trigger appears:\n\n- repeated failed attempts\n- unclear root cause after focused inspection\n- expanding scope\n- context bloat or repeated broad scans\n\nWhen triggered, produce a concise recovery summary with evidence, attempts, blockers, and the next bounded step. For hard investigations, prefer the recursive investigation flow or token-budget optimizer before adding more prompt context.\n\n## Learning Capture\n\nAt the end of complex tasks, decide whether anything reusable was learned.\n\nDurable learning categories:\n\n- repository convention\n- command or verification recipe\n- recurring failure mode\n- architecture or runtime decision\n- agent tactic that improved outcomes\n- target support caveat\n\nDo not persist:\n\n- temporary task state\n- obvious facts already documented\n- duplicate guidance\n- private or user-specific preferences unless explicitly requested\n- speculative lessons without evidence\n\nPrefer existing destinations:\n\n- project docs\n- runtime task artifacts\n- decision records\n- observability summaries\n- canonical guidance or skill surfaces\n\nAsk before creating a new top-level document when no established destination exists.\n\n## References\n\n- `.hforge\u002Fruntime\u002Fagent-brief.md`\n- `.hforge\u002Fgenerated\u002Fagent-command-catalog.json`\n- `.hforge\u002Flibrary\u002Fskills\u002Ftoken-budget-optimizer\u002FSKILL.md`\n- `.hforge\u002Flibrary\u002Fskills\u002Frecursive-structured-analysis\u002FSKILL.md`\n- `.hforge\u002Fruntime\u002Frecursive\u002Flanguage-capabilities.json`\n",{"name":5,"description":7},"main","27337828f396bcf279d7c4353a4a4f0cdc97659f","skills\u002Fcomplex-task-protocol",1,"https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge","https:\u002F\u002Fgithub.com\u002Fldilov","2026-05-19 21:48:38",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add ldilov\u002Fharness-forge --skill complex-task-protocol",{"tool":62,"command":63},"bunx","bunx skills add ldilov\u002Fharness-forge --skill complex-task-protocol",{"tool":65,"command":66},"pnpm","pnpm dlx skills add ldilov\u002Fharness-forge --skill complex-task-protocol","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Fcomplex-task-protocol\u002FSKILL.md",true,[],[71,99,129,148,171,183],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":80,"publishedAt":44},"01M6HZ7WE4DSYWPX0W2JX9BD8K","typescript-engineering","typescript and javascript engineering guidance seeded from the harness forge knowledge base. use when the repo or task is dominated by .ts, .tsx, package.json, tsconfig, node.js services, react, next.js, frontend tooling, or multi-package workspaces where type boundaries matter.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Ftypescript-engineering\u002FSKILL.md",[77],{"categoryNo":78,"categoryName":79,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[81,82,83,84,85,86,87,88,89,90,91,92,93,27,94,95,26,96,97,98],"typescript","engineering","typescript engineering","frontend","javascript","react","harness","package","forge","Next.js","knowledge","node","repo","workspaces","tsx","next","knowledge base","type",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":111,"publishedAt":44},"01M6HZ7QRWHQP72E7DPB6W5S6C","token-budget-optimizer","compact context, reuse existing runtime artifacts, and choose the smallest authoritative surface before expanding prompt history. use when the task is growing large, when earlier repo intelligence already exists, or when repeated rescans would waste tokens without adding new evidence.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Ftoken-budget-optimizer\u002FSKILL.md",[105,106],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":107,"categoryName":108,"taxonomyType":109,"taxonomyTypeDesc":110},"01JBSEEDCAT000000000000040","财务","PROFESSION","适用职业",[112,113,114,115,116,117,118,119,93,120,121,27,122,26,123,124,125,126,127,128],"Budget","optimizer","token","token budget","token budget optimizer","artifacts","choose","history","prompt","context","evidence","intelligence","compact","tokens","runtime","reuse","Existing",{"skillNo":130,"name":131,"nameZh":6,"description":132,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":138,"publishedAt":44},"01M6HZ7MMX3ZZP4KF2FVC2EHP0","test-strategy-and-coverage","Define right-sized test layers and coverage priorities for a change.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Ftest-strategy-and-coverage\u002FSKILL.md",[135],{"categoryNo":136,"categoryName":137,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[139,140,141,142,143,144,145,146,147,28],"test","strategy","coverage","test strategy","test strategy and coverage","change","priorities","define","layers",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":44},"01M6HZ7HE9C6MGWT9JG17Z3Y3M","speckit-taskstoissues","Convert existing tasks into actionable, dependency-ordered GitHub issues for the feature based on available design artifacts.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Fspeckit-taskstoissues\u002FSKILL.md",[],[155,156,157,158,159,43,160,117,161,162,163,164,165,166,167,168,169,170,28,128],"speckit taskstoissues","speckit","design","directory","project structure","github issues","issues","specify","convert","dependency","structure","project","commands","feature","actionable","kit",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":44},"01M6HZ7E2NMYB9N2GKYVRF09AK","speckit-tasks","Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Fspeckit-tasks\u002FSKILL.md",[],[43,178,156,157,158,179,159,180,117,162,164,165,166,167,168,169,181,182,170,28],"speckit tasks","github","generate","spec-kit","with",{"skillNo":184,"name":185,"nameZh":6,"description":186,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":187,"categories":188,"keywords":189,"publishedAt":44},"01M6HZ7AS0E880YSZN4FEFF6QF","speckit-specify","Create or update the feature specification from a natural language feature description.","https:\u002F\u002Fgithub.com\u002Fldilov\u002Fharness-forge\u002Fblob\u002Fmain\u002Fskills\u002Fspeckit-specify\u002FSKILL.md",[],[162,190,156,158,191,179,159,192,193,194,195,196,165,166,167,168,181,182,197,170],"speckit specify","spec","create","update","templates","specification","natural language","feature specification"]