goatchain-cli-darwin-x64 0.0.73-beta.9 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/goatchain +0 -0
- package/bin/node_modules/skills/bin/cli.mjs +14 -0
- package/bin/node_modules/skills/dist/_chunks/libs/@clack/core.mjs +767 -0
- package/bin/node_modules/skills/dist/_chunks/libs/@clack/prompts.mjs +334 -0
- package/bin/node_modules/skills/dist/_chunks/libs/@kwsites/file-exists.mjs +562 -0
- package/bin/node_modules/skills/dist/_chunks/libs/@kwsites/promise-deferred.mjs +37 -0
- package/bin/node_modules/skills/dist/_chunks/libs/@vercel/detect-agent.mjs +138 -0
- package/bin/node_modules/skills/dist/_chunks/libs/simple-git.mjs +3584 -0
- package/bin/node_modules/skills/dist/_chunks/libs/xdg-basedir.mjs +14 -0
- package/bin/node_modules/skills/dist/_chunks/rolldown-runtime.mjs +24 -0
- package/bin/node_modules/skills/dist/cli.d.mts +1 -0
- package/bin/node_modules/skills/dist/cli.mjs +6199 -0
- package/bin/node_modules/skills/package.json +143 -0
- package/bin/node_modules/yaml/LICENSE +13 -0
- package/bin/node_modules/yaml/README.md +172 -0
- package/bin/node_modules/yaml/bin.mjs +11 -0
- package/bin/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
- package/bin/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
- package/bin/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
- package/bin/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
- package/bin/node_modules/yaml/browser/dist/compose/composer.js +219 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +225 -0
- package/bin/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
- package/bin/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
- package/bin/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
- package/bin/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
- package/bin/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
- package/bin/node_modules/yaml/browser/dist/doc/Document.js +335 -0
- package/bin/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
- package/bin/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
- package/bin/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
- package/bin/node_modules/yaml/browser/dist/doc/directives.js +176 -0
- package/bin/node_modules/yaml/browser/dist/errors.js +57 -0
- package/bin/node_modules/yaml/browser/dist/index.js +17 -0
- package/bin/node_modules/yaml/browser/dist/log.js +11 -0
- package/bin/node_modules/yaml/browser/dist/nodes/Alias.js +116 -0
- package/bin/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
- package/bin/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
- package/bin/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
- package/bin/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
- package/bin/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
- package/bin/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
- package/bin/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
- package/bin/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
- package/bin/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
- package/bin/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
- package/bin/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
- package/bin/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
- package/bin/node_modules/yaml/browser/dist/parse/cst.js +98 -0
- package/bin/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
- package/bin/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
- package/bin/node_modules/yaml/browser/dist/parse/parser.js +975 -0
- package/bin/node_modules/yaml/browser/dist/public-api.js +102 -0
- package/bin/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
- package/bin/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
- package/bin/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
- package/bin/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
- package/bin/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
- package/bin/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
- package/bin/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
- package/bin/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
- package/bin/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
- package/bin/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
- package/bin/node_modules/yaml/browser/dist/schema/tags.js +96 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
- package/bin/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
- package/bin/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
- package/bin/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
- package/bin/node_modules/yaml/browser/dist/util.js +11 -0
- package/bin/node_modules/yaml/browser/dist/visit.js +233 -0
- package/bin/node_modules/yaml/browser/index.js +5 -0
- package/bin/node_modules/yaml/browser/package.json +3 -0
- package/bin/node_modules/yaml/dist/cli.d.ts +8 -0
- package/bin/node_modules/yaml/dist/cli.mjs +201 -0
- package/bin/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
- package/bin/node_modules/yaml/dist/compose/compose-collection.js +90 -0
- package/bin/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
- package/bin/node_modules/yaml/dist/compose/compose-doc.js +45 -0
- package/bin/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
- package/bin/node_modules/yaml/dist/compose/compose-node.js +112 -0
- package/bin/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
- package/bin/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
- package/bin/node_modules/yaml/dist/compose/composer.d.ts +63 -0
- package/bin/node_modules/yaml/dist/compose/composer.js +224 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
- package/bin/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
- package/bin/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
- package/bin/node_modules/yaml/dist/compose/resolve-end.js +39 -0
- package/bin/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
- package/bin/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
- package/bin/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
- package/bin/node_modules/yaml/dist/compose/resolve-flow-scalar.js +227 -0
- package/bin/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
- package/bin/node_modules/yaml/dist/compose/resolve-props.js +148 -0
- package/bin/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
- package/bin/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
- package/bin/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
- package/bin/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
- package/bin/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
- package/bin/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
- package/bin/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
- package/bin/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
- package/bin/node_modules/yaml/dist/doc/Document.d.ts +141 -0
- package/bin/node_modules/yaml/dist/doc/Document.js +337 -0
- package/bin/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
- package/bin/node_modules/yaml/dist/doc/anchors.js +76 -0
- package/bin/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
- package/bin/node_modules/yaml/dist/doc/applyReviver.js +57 -0
- package/bin/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
- package/bin/node_modules/yaml/dist/doc/createNode.js +90 -0
- package/bin/node_modules/yaml/dist/doc/directives.d.ts +49 -0
- package/bin/node_modules/yaml/dist/doc/directives.js +178 -0
- package/bin/node_modules/yaml/dist/errors.d.ts +21 -0
- package/bin/node_modules/yaml/dist/errors.js +62 -0
- package/bin/node_modules/yaml/dist/index.d.ts +25 -0
- package/bin/node_modules/yaml/dist/index.js +50 -0
- package/bin/node_modules/yaml/dist/log.d.ts +3 -0
- package/bin/node_modules/yaml/dist/log.js +19 -0
- package/bin/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
- package/bin/node_modules/yaml/dist/nodes/Alias.js +118 -0
- package/bin/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
- package/bin/node_modules/yaml/dist/nodes/Collection.js +151 -0
- package/bin/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
- package/bin/node_modules/yaml/dist/nodes/Node.js +40 -0
- package/bin/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
- package/bin/node_modules/yaml/dist/nodes/Pair.js +39 -0
- package/bin/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
- package/bin/node_modules/yaml/dist/nodes/Scalar.js +27 -0
- package/bin/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
- package/bin/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
- package/bin/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
- package/bin/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
- package/bin/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
- package/bin/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
- package/bin/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
- package/bin/node_modules/yaml/dist/nodes/identity.js +53 -0
- package/bin/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
- package/bin/node_modules/yaml/dist/nodes/toJS.js +39 -0
- package/bin/node_modules/yaml/dist/options.d.ts +350 -0
- package/bin/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
- package/bin/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
- package/bin/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
- package/bin/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
- package/bin/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
- package/bin/node_modules/yaml/dist/parse/cst-visit.js +99 -0
- package/bin/node_modules/yaml/dist/parse/cst.d.ts +109 -0
- package/bin/node_modules/yaml/dist/parse/cst.js +112 -0
- package/bin/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
- package/bin/node_modules/yaml/dist/parse/lexer.js +723 -0
- package/bin/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
- package/bin/node_modules/yaml/dist/parse/line-counter.js +41 -0
- package/bin/node_modules/yaml/dist/parse/parser.d.ts +84 -0
- package/bin/node_modules/yaml/dist/parse/parser.js +980 -0
- package/bin/node_modules/yaml/dist/public-api.d.ts +44 -0
- package/bin/node_modules/yaml/dist/public-api.js +107 -0
- package/bin/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
- package/bin/node_modules/yaml/dist/schema/Schema.js +39 -0
- package/bin/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
- package/bin/node_modules/yaml/dist/schema/common/map.js +19 -0
- package/bin/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
- package/bin/node_modules/yaml/dist/schema/common/null.js +17 -0
- package/bin/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
- package/bin/node_modules/yaml/dist/schema/common/seq.js +19 -0
- package/bin/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
- package/bin/node_modules/yaml/dist/schema/common/string.js +16 -0
- package/bin/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
- package/bin/node_modules/yaml/dist/schema/core/bool.js +21 -0
- package/bin/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
- package/bin/node_modules/yaml/dist/schema/core/float.js +47 -0
- package/bin/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
- package/bin/node_modules/yaml/dist/schema/core/int.js +42 -0
- package/bin/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
- package/bin/node_modules/yaml/dist/schema/core/schema.js +25 -0
- package/bin/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
- package/bin/node_modules/yaml/dist/schema/json/schema.js +64 -0
- package/bin/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
- package/bin/node_modules/yaml/dist/schema/tags.d.ts +48 -0
- package/bin/node_modules/yaml/dist/schema/tags.js +99 -0
- package/bin/node_modules/yaml/dist/schema/types.d.ts +92 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
- package/bin/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
- package/bin/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
- package/bin/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
- package/bin/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
- package/bin/node_modules/yaml/dist/stringify/stringify.js +132 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
- package/bin/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
- package/bin/node_modules/yaml/dist/test-events.d.ts +4 -0
- package/bin/node_modules/yaml/dist/test-events.js +134 -0
- package/bin/node_modules/yaml/dist/util.d.ts +16 -0
- package/bin/node_modules/yaml/dist/util.js +28 -0
- package/bin/node_modules/yaml/dist/visit.d.ts +102 -0
- package/bin/node_modules/yaml/dist/visit.js +236 -0
- package/bin/node_modules/yaml/package.json +97 -0
- package/bin/node_modules/yaml/util.js +2 -0
- package/bin/runtime/sandbox/dim-sandbox-runner +0 -0
- package/bin/runtime/sandbox/manifest.json +15 -0
- package/bin/skills-assets/artifact-static-site/SKILL.md +58 -0
- package/bin/skills-assets/artifact-static-site/agents/openai.yaml +6 -0
- package/bin/skills-assets/chrome-control/SKILL.md +96 -0
- package/bin/skills-assets/computer-use/SKILL.md +34 -0
- package/bin/skills-assets/deep-investigate/SKILL.md +101 -0
- package/bin/skills-assets/deep-investigate/references/prompts.md +75 -0
- package/bin/skills-assets/deep-investigate/references/templates.md +73 -0
- package/bin/skills-assets/deep-investigate/references/thinking-tools.md +36 -0
- package/bin/skills-assets/dim-modality/SKILL.md +88 -0
- package/bin/skills-assets/dim-modality/agents/openai.yaml +4 -0
- package/bin/skills-assets/dim-modality/references/cli-recipes.md +137 -0
- package/bin/skills-assets/dim-modality/references/model-notes.md +56 -0
- package/bin/skills-assets/dim-workflow/SKILL.md +125 -0
- package/bin/skills-assets/dim-workflow/agents/openai.yaml +6 -0
- package/bin/skills-assets/docs-sprint/SKILL.md +73 -0
- package/bin/skills-assets/docs-sprint/agents/openai.yaml +4 -0
- package/bin/skills-assets/docs-sprint/references/contract-discipline.md +30 -0
- package/bin/skills-assets/docs-sprint/references/delivery-plan.md +162 -0
- package/bin/skills-assets/docs-sprint/references/documentation-system.md +109 -0
- package/bin/skills-assets/docs-sprint/references/ui-layout.md +73 -0
- package/bin/skills-assets/docs-sprint/references/worktree-guide.md +45 -0
- package/bin/skills-assets/officecli/SKILL.md +423 -0
- package/bin/skills-assets/pdf/README.md +222 -0
- package/bin/skills-assets/pdf/SKILL.md +191 -0
- package/bin/skills-assets/pdf/design/design.md +381 -0
- package/bin/skills-assets/pdf/scripts/cover.py +1579 -0
- package/bin/skills-assets/pdf/scripts/fill_inspect.py +200 -0
- package/bin/skills-assets/pdf/scripts/fill_write.py +242 -0
- package/bin/skills-assets/pdf/scripts/make.sh +491 -0
- package/bin/skills-assets/pdf/scripts/merge.py +112 -0
- package/bin/skills-assets/pdf/scripts/palette.py +521 -0
- package/bin/skills-assets/pdf/scripts/reformat_parse.py +374 -0
- package/bin/skills-assets/pdf/scripts/render_body.py +1052 -0
- package/bin/skills-assets/pdf/scripts/render_cover.js +111 -0
- package/bin/skills-assets/plugin-creator/SKILL.md +148 -0
- package/bin/skills-assets/plugin-creator/references/installing-and-updating.md +66 -0
- package/bin/skills-assets/plugin-creator/references/plugin-json-spec.md +148 -0
- package/bin/skills-assets/plugin-creator/scripts/create_basic_plugin.py +189 -0
- package/bin/skills-assets/plugin-creator/scripts/validate_plugin.py +269 -0
- package/bin/skills-assets/skill-creator/SKILL.md +368 -0
- package/bin/skills-assets/skill-creator/agents/openai.yaml +5 -0
- package/bin/skills-assets/skill-creator/assets/skill-creator-small.svg +3 -0
- package/bin/skills-assets/skill-creator/assets/skill-creator.png +0 -0
- package/bin/skills-assets/skill-creator/license.txt +202 -0
- package/bin/skills-assets/skill-creator/references/openai_yaml.md +49 -0
- package/bin/skills-assets/skill-creator/scripts/generate_openai_yaml.py +226 -0
- package/bin/skills-assets/skill-creator/scripts/init_skill.py +397 -0
- package/bin/skills-assets/skill-creator/scripts/quick_validate.py +101 -0
- package/bin/skills-assets/skill-installer/LICENSE.txt +202 -0
- package/bin/skills-assets/skill-installer/SKILL.md +58 -0
- package/bin/skills-assets/skill-installer/agents/openai.yaml +5 -0
- package/bin/skills-assets/skill-installer/assets/skill-installer-small.svg +3 -0
- package/bin/skills-assets/skill-installer/assets/skill-installer.png +0 -0
- package/bin/skills-assets/skill-installer/scripts/github_utils.py +21 -0
- package/bin/skills-assets/skill-installer/scripts/install-skill-from-github.py +308 -0
- package/bin/skills-assets/skill-installer/scripts/list-skills.py +107 -0
- package/package.json +1 -1
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Contract Discipline
|
|
2
|
+
|
|
3
|
+
Design docs are the source of truth for contracts. When code and docs disagree, update docs and confirm before changing code.
|
|
4
|
+
|
|
5
|
+
## Type And Error Rules
|
|
6
|
+
|
|
7
|
+
| Situation | Required behavior |
|
|
8
|
+
|---|---|
|
|
9
|
+
| required data missing | fail fast with explicit typed error |
|
|
10
|
+
| unknown variant | fail fast with explicit typed error |
|
|
11
|
+
| invalid input | fail fast with explicit typed error |
|
|
12
|
+
| contract mismatch | fail fast with explicit typed error |
|
|
13
|
+
| optional lookup missing | return absent value (`undefined` in TS, `None` in Python, etc.) |
|
|
14
|
+
| fallback/default value | allowed only when design docs explicitly authorize |
|
|
15
|
+
| empty container / zero / noop fallback | allowed only when design docs explicitly authorize |
|
|
16
|
+
| silent recovery / best-effort normalize | allowed only when design docs explicitly authorize |
|
|
17
|
+
|
|
18
|
+
Do not use empty containers, zero values, or no-op callbacks to mask missing required state.
|
|
19
|
+
|
|
20
|
+
## Test Expectations
|
|
21
|
+
|
|
22
|
+
| Change type | Verification |
|
|
23
|
+
|---|---|
|
|
24
|
+
| type / interface | compile or typecheck + contract tests |
|
|
25
|
+
| error behavior | tests for typed errors and missing optional lookups |
|
|
26
|
+
| storage / state | tests for persistence, versioning, and mutation path |
|
|
27
|
+
| integration | tests using real implementations across boundary |
|
|
28
|
+
| UI / TUI | layout docs + interaction tests or snapshots when implementation exists |
|
|
29
|
+
|
|
30
|
+
Document any verification that cannot run and why.
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# Delivery Plan Workflow
|
|
2
|
+
|
|
3
|
+
## Plan Directory
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
docs/plan/
|
|
7
|
+
├─ README.md
|
|
8
|
+
├─ analysis/
|
|
9
|
+
│ └─ {topic}.md
|
|
10
|
+
├─ tasks/
|
|
11
|
+
│ └─ {area}-{seq}.md
|
|
12
|
+
├─ reviews/
|
|
13
|
+
│ └─ {id}-{seq}.md
|
|
14
|
+
└─ backlog.md
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Analysis
|
|
18
|
+
|
|
19
|
+
Write analysis for planning and orchestration. Do not assign analysis docs directly to implementation agents.
|
|
20
|
+
|
|
21
|
+
Analysis must cover:
|
|
22
|
+
|
|
23
|
+
1. **Module decomposition**: package/module scope, inputs, outputs, dependencies. Produce module-level delivery tasks.
|
|
24
|
+
2. **Integration enumeration**: enumerate every documented "module A creates/calls/injects module B" relationship. Produce integration tasks that verify each connection with real implementations, not mocks.
|
|
25
|
+
|
|
26
|
+
Common miss: only analyzing module-internal responsibilities without enumerating creation chains, injection chains, and call chains between modules. Result: every module passes its own tests, but stub boundaries are never broken through.
|
|
27
|
+
|
|
28
|
+
| Task type | Objective | Verification |
|
|
29
|
+
|---|---|---|
|
|
30
|
+
| Module task | Implement module X | Module tests cover types, contract, and errors |
|
|
31
|
+
| Integration task | Connect A → B, replace stub | Real call path works, integration test covers path |
|
|
32
|
+
| E2E task | Validate user-observable flow | Entry-to-output path executes |
|
|
33
|
+
|
|
34
|
+
Integration task `depends-on` points to the module tasks it connects.
|
|
35
|
+
|
|
36
|
+
Task boundary = the smallest independently verifiable deliverable. If fixing task A's blocking findings necessarily produces task B's deliverable, they are one task.
|
|
37
|
+
|
|
38
|
+
## Task File Format
|
|
39
|
+
|
|
40
|
+
```yaml
|
|
41
|
+
id: {area}-{seq}
|
|
42
|
+
scope: ...
|
|
43
|
+
status: pending | ready | in-progress | done | blocked
|
|
44
|
+
depends-on: [task-id, ...]
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
`area` can be a package prefix, module prefix, or capability prefix (e.g. `acp-001`). `scope` identifies which part of the project this task belongs to.
|
|
48
|
+
|
|
49
|
+
Required sections: `objective`, `context` (design doc paths to read), `path` (files and directories this task touches), `verification`.
|
|
50
|
+
|
|
51
|
+
```text
|
|
52
|
+
pending ── depends-on all done ──► ready ──► in-progress ──► done
|
|
53
|
+
│
|
|
54
|
+
blocked
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Develop Prompt
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
你的任务文件是 docs/plan/tasks/{id}.md。
|
|
61
|
+
|
|
62
|
+
阅读任务文件,只完成 objective 中定义的开发目标,不超出任务范围。
|
|
63
|
+
|
|
64
|
+
context 指向的设计文档是你理解需求的来源。docs/INDEX.md 是文档总索引。
|
|
65
|
+
|
|
66
|
+
完成后运行 typecheck 和任务要求的测试。
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
For review fixes:
|
|
70
|
+
|
|
71
|
+
```text
|
|
72
|
+
你的任务文件是 docs/plan/tasks/{id}.md。
|
|
73
|
+
|
|
74
|
+
阅读 docs/plan/reviews/{id}-{seq}.md,修复其中标记为 blocking 的 findings。
|
|
75
|
+
|
|
76
|
+
完成后运行 typecheck 和任务要求的测试。
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Verify Prompt
|
|
80
|
+
|
|
81
|
+
```text
|
|
82
|
+
review 任务 {id} 的开发产出。
|
|
83
|
+
|
|
84
|
+
任务文件:docs/plan/tasks/{id}.md
|
|
85
|
+
开发产出:任务文件中 path 指向的路径
|
|
86
|
+
设计文档:任务文件中 context 指向的路径
|
|
87
|
+
项目规范:docs/INDEX.md 是文档总索引。
|
|
88
|
+
|
|
89
|
+
详细阅读源码与设计文档,判断实现是否达到可交付状态,是否与设计文档完全一致。
|
|
90
|
+
|
|
91
|
+
写入 docs/plan/reviews/{id}-{seq}.md,格式:
|
|
92
|
+
|
|
93
|
+
1. Findings 列表,每条标注:
|
|
94
|
+
- 严重程度(P1/P2/P3)
|
|
95
|
+
- 是否阻塞交付(blocking / non-blocking)
|
|
96
|
+
- 设计文档位置与代码位置
|
|
97
|
+
|
|
98
|
+
blocking = 与设计文档 contract 不一致,或对接路径残留 stub/mock/fake。
|
|
99
|
+
non-blocking = 实现合理但设计文档未提及。
|
|
100
|
+
|
|
101
|
+
2. 结论:pass 或 blocked
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Isolation
|
|
105
|
+
|
|
106
|
+
All task development happens on isolation branches. Branch sees only its creation-time baseline.
|
|
107
|
+
|
|
108
|
+
| Rule | Detail |
|
|
109
|
+
|---|---|
|
|
110
|
+
| Branch naming | `task/{id}` |
|
|
111
|
+
| Branch base | Main HEAD at creation time |
|
|
112
|
+
| Depends-on | Wait until all predecessors merge to main before creating branch |
|
|
113
|
+
| Commit before verify | Verify agent only sees committed code |
|
|
114
|
+
| Lifecycle | create → develop → commit → verify → (pass → merge → delete) or (blocked → fix → re-verify) |
|
|
115
|
+
|
|
116
|
+
## Execution Mode
|
|
117
|
+
|
|
118
|
+
```text
|
|
119
|
+
ready tasks ──► has worktree? ──► no ──► serialize all
|
|
120
|
+
yes ──► path overlap? ──► yes ──► serialize
|
|
121
|
+
no ──► parallel
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Without worktree, all tasks execute serially — one working directory cannot sustain concurrent branches.
|
|
125
|
+
|
|
126
|
+
With worktree, two tasks can run in parallel only when no entry in one task's `path` is a parent, child, or same path as another's. Tasks with `depends-on` chains are inherently serial.
|
|
127
|
+
|
|
128
|
+
Serial tasks need no extra coordination — each starts from updated main HEAD after its predecessor merges.
|
|
129
|
+
|
|
130
|
+
For worktree creation, dispatch, and cleanup procedures, see [worktree-guide.md](worktree-guide.md).
|
|
131
|
+
|
|
132
|
+
## Merge
|
|
133
|
+
|
|
134
|
+
```text
|
|
135
|
+
develop ──► verify ──► pass ──► merge to main ──► full test ──► done
|
|
136
|
+
│
|
|
137
|
+
└─ blocked ──► fix ──► re-verify
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
On pass:
|
|
141
|
+
|
|
142
|
+
- Merge to main. Resolve conflicts file-by-file, preserving both sides.
|
|
143
|
+
- Run full test. If tests fail, revert merge — task must rebase and re-verify.
|
|
144
|
+
- Mark task `done`. Append non-blocking findings to `backlog.md`. Delete review file and branch.
|
|
145
|
+
|
|
146
|
+
On blocked:
|
|
147
|
+
|
|
148
|
+
- Fix blocking findings on the same branch. Run typecheck and task tests. Re-verify.
|
|
149
|
+
|
|
150
|
+
When multiple parallel tasks pass simultaneously, merge one at a time. Each subsequent merge may require conflict resolution and re-test.
|
|
151
|
+
|
|
152
|
+
## Recovery
|
|
153
|
+
|
|
154
|
+
When resuming after interruption, reconstruct state from task files and git:
|
|
155
|
+
|
|
156
|
+
| Observed state | Action |
|
|
157
|
+
|---|---|
|
|
158
|
+
| Task `in-progress`, branch `task/{id}` exists, no review file | Resume develop or re-dispatch develop |
|
|
159
|
+
| Task `in-progress`, review file exists with `blocked` | Re-dispatch fix |
|
|
160
|
+
| Task `in-progress`, review file exists with `pass`, not merged | Execute merge |
|
|
161
|
+
| Task `in-progress`, branch missing | Reset task to `ready`, re-dispatch |
|
|
162
|
+
| Task `blocked`, no review file | Reset task to `ready`, re-dispatch |
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# Documentation System
|
|
2
|
+
|
|
3
|
+
## Directory Model
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
docs/
|
|
7
|
+
├─ INDEX.md # documentation entry point (required)
|
|
8
|
+
├─ plan/ # delivery workflow (required, owned by this skill)
|
|
9
|
+
│ ├─ README.md
|
|
10
|
+
│ ├─ analysis/
|
|
11
|
+
│ ├─ tasks/
|
|
12
|
+
│ └─ backlog.md
|
|
13
|
+
├─ {scope}/ # design docs, organized by project's own scoping
|
|
14
|
+
│ ├─ README.md
|
|
15
|
+
│ └─ {module}/ or {module}.md
|
|
16
|
+
└─ issues/ # optional, for tracking inconsistencies and design gaps
|
|
17
|
+
└─ archived/
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
| Directory | Required | Owner | Purpose |
|
|
21
|
+
|---|---|---|---|
|
|
22
|
+
| `docs/INDEX.md` | yes | project | Documentation entry point. Links to all design doc areas |
|
|
23
|
+
| `docs/plan/` | yes | this skill | Delivery plan: analysis, tasks, backlog. See [delivery-plan.md](delivery-plan.md) |
|
|
24
|
+
| `docs/{scope}/` | yes | project | Design docs. Scope is defined by the project — package, feature area, service, etc. |
|
|
25
|
+
| `docs/issues/` | no | project | Issue tracking when the project uses file-based issues |
|
|
26
|
+
|
|
27
|
+
`{scope}` is whatever grouping the project uses for its design docs. A monorepo might use `docs/packages/{pkg}/`. A single-package project might use `docs/modules/` or `docs/features/`. The skill does not prescribe the scoping — it only requires that design docs exist and are reachable from `INDEX.md`.
|
|
28
|
+
|
|
29
|
+
## Scope README Contract
|
|
30
|
+
|
|
31
|
+
Each scope has a README that answers relationship and ownership questions.
|
|
32
|
+
|
|
33
|
+
Required coverage:
|
|
34
|
+
|
|
35
|
+
- Purpose and boundary.
|
|
36
|
+
- Relationship to other scopes.
|
|
37
|
+
- Main concepts and one-line definitions.
|
|
38
|
+
- Ownership: who creates whom, who calls whom, who stores state.
|
|
39
|
+
- Lifecycle and state ownership.
|
|
40
|
+
- Public API surface or entry points.
|
|
41
|
+
- Design decisions that affect multiple modules.
|
|
42
|
+
- Module index linking to child docs.
|
|
43
|
+
- Scope-wide constraints.
|
|
44
|
+
|
|
45
|
+
Use diagrams for structure and flow.
|
|
46
|
+
|
|
47
|
+
## Module Doc Contract
|
|
48
|
+
|
|
49
|
+
Module docs cover local contracts. Cross-module collaboration belongs in the parent scope README.
|
|
50
|
+
|
|
51
|
+
| Section | Content |
|
|
52
|
+
|---|---|
|
|
53
|
+
| Purpose | What the module owns |
|
|
54
|
+
| Boundary | What it handles and what it delegates |
|
|
55
|
+
| Types | Inputs, outputs, optional/nullable fields, invariants |
|
|
56
|
+
| API | Function/method contracts and return types |
|
|
57
|
+
| State | State ownership, persistence, mutation path |
|
|
58
|
+
| Errors | Typed errors and thrown conditions |
|
|
59
|
+
| Extension points | Hooks, adapters, plugin points, injected dependencies |
|
|
60
|
+
| Tests | Required contract and error tests |
|
|
61
|
+
|
|
62
|
+
## Maintenance Rules
|
|
63
|
+
|
|
64
|
+
Docs are the source of truth for contracts. Code follows docs, not the other way around.
|
|
65
|
+
|
|
66
|
+
### When to create
|
|
67
|
+
|
|
68
|
+
- Before implementation. A task's `context` field points to design docs that must exist before development starts.
|
|
69
|
+
- When a new scope, module, or capability is introduced.
|
|
70
|
+
|
|
71
|
+
### When to update
|
|
72
|
+
|
|
73
|
+
- When a task changes the contract defined in a design doc, the same task updates the doc. Doc changes and code changes are one atomic delivery.
|
|
74
|
+
- When verify finds a mismatch between docs and code, the fix updates whichever is wrong — not just the code.
|
|
75
|
+
|
|
76
|
+
### Task path includes docs
|
|
77
|
+
|
|
78
|
+
A task's `path` field lists both code paths and doc paths it touches. This ensures overlap detection accounts for doc changes — two tasks modifying the same design doc cannot run in parallel.
|
|
79
|
+
|
|
80
|
+
### Staleness prevention
|
|
81
|
+
|
|
82
|
+
- Verify checks docs-code consistency: if code diverges from the design doc referenced in `context`, it is a blocking finding.
|
|
83
|
+
- `INDEX.md` must stay current. When a new scope or doc is added, `INDEX.md` is updated in the same task.
|
|
84
|
+
- Orphaned docs (docs that describe removed code) are deleted or archived when discovered.
|
|
85
|
+
|
|
86
|
+
## Single Source of Truth
|
|
87
|
+
|
|
88
|
+
- Each rule or process lives in exactly one location.
|
|
89
|
+
- Cross-module flows go in the parent scope README.
|
|
90
|
+
- Local API details go in module docs.
|
|
91
|
+
- Implementation tasks go in `docs/plan/tasks/`.
|
|
92
|
+
- Non-blocking findings go in `docs/plan/backlog.md` or `docs/issues/`.
|
|
93
|
+
- Reference existing docs instead of repeating rules.
|
|
94
|
+
|
|
95
|
+
## Writing Style
|
|
96
|
+
|
|
97
|
+
- Direct, concrete statements.
|
|
98
|
+
- Tables and ASCII diagrams for relationships.
|
|
99
|
+
- Define only terms that reduce ambiguity.
|
|
100
|
+
- Stable, searchable headings.
|
|
101
|
+
- English for code identifiers, package names, API names, type names, and commit messages.
|
|
102
|
+
|
|
103
|
+
## Issues
|
|
104
|
+
|
|
105
|
+
When the project uses `docs/issues/`:
|
|
106
|
+
|
|
107
|
+
- New issues: `状态:待处理`.
|
|
108
|
+
- Fixed issues: `状态:已修复`, then move to `docs/issues/archived/`.
|
|
109
|
+
- One issue per file, focused on a single inconsistency, bug, or design gap.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# UI Layout Documentation
|
|
2
|
+
|
|
3
|
+
## Scope
|
|
4
|
+
|
|
5
|
+
Use this reference when documenting UI layouts and interactions — web, mobile, desktop, or terminal.
|
|
6
|
+
|
|
7
|
+
UI layout docs describe user-visible contracts: what regions exist, how they are arranged, how users reach each function, how input behaves, and how loading/empty/error states display.
|
|
8
|
+
|
|
9
|
+
## Layout Doc Template
|
|
10
|
+
|
|
11
|
+
Use this structure when it fits. Shorter files may omit empty sections.
|
|
12
|
+
|
|
13
|
+
```markdown
|
|
14
|
+
# {Feature} Layout
|
|
15
|
+
|
|
16
|
+
Status: Draft
|
|
17
|
+
|
|
18
|
+
## Design Principles
|
|
19
|
+
## Overall Structure
|
|
20
|
+
## Page-Level Layout
|
|
21
|
+
## Region Layout
|
|
22
|
+
## Interactions
|
|
23
|
+
## State Variants
|
|
24
|
+
## Responsive / Size Constraints
|
|
25
|
+
## Component Tree
|
|
26
|
+
## Page Entry Points
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Each layout file focuses on one page, shell, dialog family, or component group.
|
|
30
|
+
|
|
31
|
+
## Visual Layout Rules
|
|
32
|
+
|
|
33
|
+
Use ASCII art or diagrams for every meaningful layout.
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
┌──────────────────────────────────────┐
|
|
37
|
+
│ Header │
|
|
38
|
+
├──────────────────────────────────────┤
|
|
39
|
+
│ Main content area │
|
|
40
|
+
├──────────────────────────────────────┤
|
|
41
|
+
│ Footer / status bar │
|
|
42
|
+
└──────────────────────────────────────┘
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Include:
|
|
46
|
+
|
|
47
|
+
- Region names.
|
|
48
|
+
- Conditional regions (shown/hidden by state).
|
|
49
|
+
- Dialog and overlay layering.
|
|
50
|
+
- Focus target when relevant.
|
|
51
|
+
- Responsive behavior for size constraints.
|
|
52
|
+
|
|
53
|
+
## Interaction Contract
|
|
54
|
+
|
|
55
|
+
Document input behavior in tables:
|
|
56
|
+
|
|
57
|
+
| Input | Scope | Behavior |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| `Enter` | Input area | submit |
|
|
60
|
+
| `Esc` | Dialog | close |
|
|
61
|
+
| `Tab` | Form | next field |
|
|
62
|
+
|
|
63
|
+
For dialogs, document: open/close trigger, focus movement, selection behavior, empty state, error state, apply/cancel behavior.
|
|
64
|
+
|
|
65
|
+
## State Variants
|
|
66
|
+
|
|
67
|
+
Document these states for each region when applicable:
|
|
68
|
+
|
|
69
|
+
- **Loading**: what the user sees while data is being fetched.
|
|
70
|
+
- **Empty**: what the user sees when there is no content.
|
|
71
|
+
- **Error**: what the user sees on failure, and how to recover.
|
|
72
|
+
- **Busy**: what the user sees during a long-running operation.
|
|
73
|
+
- **Constrained**: how the layout adapts to limited screen/window size.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Worktree Guide
|
|
2
|
+
|
|
3
|
+
Parallel task execution via git worktrees.
|
|
4
|
+
|
|
5
|
+
## Convention
|
|
6
|
+
|
|
7
|
+
- Directory: `.worktrees/<task-id>/`
|
|
8
|
+
- Branch: `task/<task-id>`
|
|
9
|
+
- Base: determine the correct base branch before creating. Check which branch the current delivery targets (main, a feature branch, a release branch, etc.) and verify it is up to date. A stale or wrong base causes the agent to work against an outdated snapshot, and its merge can silently revert other tasks' work.
|
|
10
|
+
- Create: `git worktree add .worktrees/<task-id> -b task/<task-id> <base>`
|
|
11
|
+
- Remove: `git worktree remove .worktrees/<task-id>`
|
|
12
|
+
|
|
13
|
+
## Workflow
|
|
14
|
+
|
|
15
|
+
1. Check execution mode from the delivery plan (path overlap, dependency chain).
|
|
16
|
+
2. For parallel tasks, create the worktree before dispatching. Pass the worktree path as the sub-agent's cwd.
|
|
17
|
+
3. Verify agent uses the same worktree as its develop agent.
|
|
18
|
+
4. Sub-agent works in its cwd as normal — it does not need to know it is in a worktree.
|
|
19
|
+
5. After merge, remove the worktree. For abandoned tasks, force remove and delete the branch.
|
|
20
|
+
|
|
21
|
+
## Rules
|
|
22
|
+
|
|
23
|
+
- Only the orchestrator creates and removes worktrees. Sub-agents never manage worktrees.
|
|
24
|
+
- Sub-agents operate only within their own cwd. Never touch other worktrees or the main working directory.
|
|
25
|
+
- Serial tasks use the main working directory — no worktree needed.
|
|
26
|
+
|
|
27
|
+
## Cleanup
|
|
28
|
+
|
|
29
|
+
| Trigger | Action |
|
|
30
|
+
|---|---|
|
|
31
|
+
| Task merged to base | `git worktree remove .worktrees/<task-id>` then `git branch -d task/<task-id>` |
|
|
32
|
+
| Task abandoned | `git worktree remove --force .worktrees/<task-id>` then `git branch -D task/<task-id>` |
|
|
33
|
+
| Sprint end or session start | Run `git worktree list`, cross-check against task statuses, remove all worktrees whose task is `done` or no longer exists |
|
|
34
|
+
|
|
35
|
+
Orchestrator is responsible for cleanup. Do not leave worktrees accumulating — clean up immediately after merge or abandonment. On session resume, always run a sweep before creating new worktrees.
|
|
36
|
+
|
|
37
|
+
## Recovery
|
|
38
|
+
|
|
39
|
+
See delivery-plan.md Recovery for task-level state→action mapping. For worktree-specific issues:
|
|
40
|
+
|
|
41
|
+
| Observed state | Action |
|
|
42
|
+
|---|---|
|
|
43
|
+
| Worktree exists but branch is missing | Force remove worktree, reset task to `ready` |
|
|
44
|
+
| Worktree has `.git/worktrees/<id>/locked` | Unlock with `git worktree unlock`, then decide based on task status |
|
|
45
|
+
| Worktree exists for a `done` task | Remove worktree and delete branch (merge cleanup was interrupted) |
|