[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DERP0A271FYSAXCV85GF04":3,"skill-same:01M6DERP0A271FYSAXCV85GF04":142},{"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":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":14,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":50,"ownerDescription":6,"updatedAt":51,"install":52,"resources":65},"01M6DERP0A271FYSAXCV85GF04","retro",null,"Sprint retrospective — transcript audit engine (dynamic Workflow), story verification, findings document, and sprint closure.","iamsteveholmes\u002Fmomentum","iamsteveholmes","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F92353?v=4","01M6DENK56DRSF72CJ6FJQ4RT1","Steve Holmes","01M6DENK9KCZRYFFEB0M689F7D",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27,28,29,30,31],"workflow","retrospective","transcript","verification","audit","engine","Story","document","sprint","sprint retrospective","dynamic workflow","high","closure","2026-11-10 10:12:30",false,"---\nname: code-to-design\ndescription: \"Convert existing frontend code (Vite, React, etc.) into a Stitch Design for further iteration. Use when the user wants to save, migrate, or upload an existing web app or React components into Stitch.\"\nallowed-tools:\n  - \"stitch*:*\"\n  - \"Bash\"\n  - \"Read\"\n  - \"Write\"\n  - \"web_fetch\"\n---\n\n# Code to Design\n\nTransform your existing frontend code into a Stitch Design so you can iterate and improve it using Stitch.\n\nThis skill orchestrates three other skills in sequence:\n\n1. `stitch-design:extract-static-html`: Extract a single self-contained HTML file from your build output.\n2. `stitch-design:extract-design-md`: Analyze the source code to create a design system (DESIGN.md).\n3. `stitch-design:upload-to-stitch`: Upload that HTML file and the design system to your Stitch project.\n\n## Workflow\n\nFollow these steps to convert your existing code.\n\n### Prerequisites\n\n- A built web application directory containing `index.html` and assets.\n- Target Stitch `projectId` (use `list_projects` if unknown).\n\n### Steps\n\n#### 1. Extract Self-Contained HTML\n\nDelegate to the `\u002Fstitch-design:extract-static-html` skill to generate a standalone HTML file.\nRead [skills\u002Fextract-static-html\u002FSKILL.md](..\u002Fextract-static-html\u002FSKILL.md) for detailed instructions and script usage.\n\nExpected output: A single file like `\u002Fpath\u002Fto\u002Fextracted\u002Fstandalone.html`.\n\n#### 2. Verify HTML (Optional — User-Driven)\n\nAfter extraction, inform the user of the output file path so they can manually\nverify in a browser if desired. **Do not block on verification** — proceed\ndirectly to Step 3.\n\nIf the user reports issues after reviewing, fix them before continuing.\n\n#### 3. Extract Design System (File)\n\nDelegate to the `\u002Fstitch-design:extract-design-md` skill to analyze the project's source files\n(components, stylesheets, theme configs) and produce a design system. Read\n[skills\u002Fextract-design-md\u002FSKILL.md](..\u002Fextract-design-md\u002FSKILL.md) for the\nfull analysis workflow.\n\nWrite `.stitch\u002FDESIGN.md` following the `stitch-design:extract-design-md` skill's output\nstructure.\n\n#### 4. Upload DESIGN.md and Create Design System in Stitch\n\nDelegate to the `\u002Fstitch-design:manage-design-system` skill to upload the `DESIGN.md` and\ncreate the design system in Stitch. Read\n[skills\u002Fmanage-design-system\u002FSKILL.md](..\u002Fmanage-design-system\u002FSKILL.md) for\nthe full workflow (upload script usage, `create_design_system_from_design_md`\ncall, and required schemas). Pass\n`--generated-by 'stitch::code-to-design'` when uploading.\n\n#### 5. Upload HTML to Stitch\n\nUse the same `stitch-design:upload-to-stitch` skill's script to upload the extracted HTML file.\nRead [skills\u002Fupload-to-stitch\u002FSKILL.md](..\u002Fupload-to-stitch\u002FSKILL.md) for detailed instructions and script usage.\n\nYou will need:\n\n- The path to the standalone HTML file generated in Step 1.\n- Your Stitch API Key (same key used in Step 4).\n- The target `projectId`.\n- The `--generated-by` argument set to `'stitch::extract-static-html'`.\n","# Code to Design\n\nTransform your existing frontend code into a Stitch Design so you can iterate and improve it using Stitch.\n\nThis skill orchestrates three other skills in sequence:\n\n1. `stitch-design:extract-static-html`: Extract a single self-contained HTML file from your build output.\n2. `stitch-design:extract-design-md`: Analyze the source code to create a design system (DESIGN.md).\n3. `stitch-design:upload-to-stitch`: Upload that HTML file and the design system to your Stitch project.\n\n## Workflow\n\nFollow these steps to convert your existing code.\n\n### Prerequisites\n\n- A built web application directory containing `index.html` and assets.\n- Target Stitch `projectId` (use `list_projects` if unknown).\n\n### Steps\n\n#### 1. Extract Self-Contained HTML\n\nDelegate to the `\u002Fstitch-design:extract-static-html` skill to generate a standalone HTML file.\nRead [skills\u002Fextract-static-html\u002FSKILL.md](..\u002Fextract-static-html\u002FSKILL.md) for detailed instructions and script usage.\n\nExpected output: A single file like `\u002Fpath\u002Fto\u002Fextracted\u002Fstandalone.html`.\n\n#### 2. Verify HTML (Optional — User-Driven)\n\nAfter extraction, inform the user of the output file path so they can manually\nverify in a browser if desired. **Do not block on verification** — proceed\ndirectly to Step 3.\n\nIf the user reports issues after reviewing, fix them before continuing.\n\n#### 3. Extract Design System (File)\n\nDelegate to the `\u002Fstitch-design:extract-design-md` skill to analyze the project's source files\n(components, stylesheets, theme configs) and produce a design system. Read\n[skills\u002Fextract-design-md\u002FSKILL.md](..\u002Fextract-design-md\u002FSKILL.md) for the\nfull analysis workflow.\n\nWrite `.stitch\u002FDESIGN.md` following the `stitch-design:extract-design-md` skill's output\nstructure.\n\n#### 4. Upload DESIGN.md and Create Design System in Stitch\n\nDelegate to the `\u002Fstitch-design:manage-design-system` skill to upload the `DESIGN.md` and\ncreate the design system in Stitch. Read\n[skills\u002Fmanage-design-system\u002FSKILL.md](..\u002Fmanage-design-system\u002FSKILL.md) for\nthe full workflow (upload script usage, `create_design_system_from_design_md`\ncall, and required schemas). Pass\n`--generated-by 'stitch::code-to-design'` when uploading.\n\n#### 5. Upload HTML to Stitch\n\nUse the same `stitch-design:upload-to-stitch` skill's script to upload the extracted HTML file.\nRead [skills\u002Fupload-to-stitch\u002FSKILL.md](..\u002Fupload-to-stitch\u002FSKILL.md) for detailed instructions and script usage.\n\nYou will need:\n\n- The path to the standalone HTML file generated in Step 1.\n- Your Stitch API Key (same key used in Step 4).\n- The target `projectId`.\n- The `--generated-by` argument set to `'stitch::extract-static-html'`.\n",{"name":37,"description":38,"allowed-tools":39},"code-to-design","Convert existing frontend code (Vite, React, etc.) into a Stitch Design for further iteration. Use when the user wants to save, migrate, or upload an existing web app or React components into Stitch.",[40,41,42,43,44],"stitch*:*","Bash","Read","Write","web_fetch","main","1cb705536db26c557b919c204aeea2cfd0658ac1","skills\u002Fmomentum\u002Fskills\u002Fretro","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes","http:\u002F\u002Fcapitalcodemonkey.blogspot.com","2026-11-09 05:58:39",{"source":8,"skillName":37,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add iamsteveholmes\u002Fmomentum --skill code-to-design",{"tool":58,"command":59},"bunx","bunx skills add iamsteveholmes\u002Fmomentum --skill code-to-design",{"tool":61,"command":62},"pnpm","pnpm dlx skills add iamsteveholmes\u002Fmomentum --skill code-to-design","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002FSKILL.md",true,[66,72,78,82,86,90,94,98,102,106,110,114,118,122,126,130,134,138],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"agents\u002Fopenai.yaml","REFERENCE","参考文档",43,"https:\u002F\u002Fgithub.com\u002FRB-chrismandich\u002FManifest\u002Fblob\u002Fmain\u002Fplugins\u002Fstitch-design\u002Fskills\u002Fcode-to-design\u002Fagents\u002Fopenai.yaml",{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"audit-workflow.js","SCRIPT","脚本",16874,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Faudit-workflow.js",{"path":79,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":80,"sourceHtmlUrl":81},"evals\u002Feval-findings-digest-cap-and-floor.md",2652,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-findings-digest-cap-and-floor.md",{"path":83,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":84,"sourceHtmlUrl":85},"evals\u002Feval-no-behavior-change.md",430,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-no-behavior-change.md",{"path":87,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":88,"sourceHtmlUrl":89},"evals\u002Feval-phase-4-no-duplicate-tool-use-id.md",1722,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-phase-4-no-duplicate-tool-use-id.md",{"path":91,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":92,"sourceHtmlUrl":93},"evals\u002Feval-phase-4-spawns-exactly-one-documenter.md",1912,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-phase-4-spawns-exactly-one-documenter.md",{"path":95,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":96,"sourceHtmlUrl":97},"evals\u002Feval-phase2-halts-on-zero-sessions.md",2201,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-phase2-halts-on-zero-sessions.md",{"path":99,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":100,"sourceHtmlUrl":101},"evals\u002Feval-phase2-proceeds-on-nonempty-sessions.md",1774,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-phase2-proceeds-on-nonempty-sessions.md",{"path":103,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":104,"sourceHtmlUrl":105},"evals\u002Feval-produces-sprint-summary-at-retro-close.md",2153,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-produces-sprint-summary-at-retro-close.md",{"path":107,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":108,"sourceHtmlUrl":109},"evals\u002Feval-retro-phase5-no-distill-invocation.md",2820,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-retro-phase5-no-distill-invocation.md",{"path":111,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":112,"sourceHtmlUrl":113},"evals\u002Feval-retro-phase5-routes-all-findings-to-stubs.md",2904,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-retro-phase5-routes-all-findings-to-stubs.md",{"path":115,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":116,"sourceHtmlUrl":117},"evals\u002Feval-retro-process-digest-folded-into-single-surface.md",2571,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-retro-process-digest-folded-into-single-surface.md",{"path":119,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":120,"sourceHtmlUrl":121},"evals\u002Feval-single-post-sprint-surface-invariant.md",2155,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-single-post-sprint-surface-invariant.md",{"path":123,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":124,"sourceHtmlUrl":125},"evals\u002Feval-sprint-summary-omits-features-section-when-no-feature-status.md",1463,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-sprint-summary-omits-features-section-when-no-feature-status.md",{"path":127,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":128,"sourceHtmlUrl":129},"evals\u002Feval-sprint-summary-word-count-enforcement.md",1420,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-sprint-summary-word-count-enforcement.md",{"path":131,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":132,"sourceHtmlUrl":133},"evals\u002Feval-team-singleton-guard-halts-on-duplicate-documenter.md",1981,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-team-singleton-guard-halts-on-duplicate-documenter.md",{"path":135,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":136,"sourceHtmlUrl":137},"evals\u002Feval-team-singleton-guard-passes-on-correct-composition.md",2081,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fevals\u002Feval-team-singleton-guard-passes-on-correct-composition.md",{"path":139,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":140,"sourceHtmlUrl":141},"workflow.md",43527,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002Fworkflow.md",[143,162,180,200,217,235],{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":32},"01M6DES6J0HGT27SEJJWF316FV","upstream-fix","Traces quality failures upstream to spec, rule, or workflow root cause. Proposes fixes at the right level.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fupstream-fix\u002FSKILL.md",[],[150,151,152,153,154,155,156,30,157,158,159,19,160,161],"upstream","fix","upstream fix","spec","traces","fixes","at","root","rule","quality","to spec","root cause",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":32},"01M6DES4A08NFWQM0AJBR2RRX5","triage","Dedup gate + batch-classify observations into five classes, enrich ARTIFACTs, batch-approve, delegate to intake\u002Fdecision or queue.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Ftriage\u002FSKILL.md",[],[164,169,170,171,172,173,30,174,175,176,177,178,179],"intake","artifacts","delegate","batch","approve","observations","enrich","classify","gate","queue","decision",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":32},"01M6DERYX8W6Z9Z4RM5V6E9HED","sprint-planning","Sprint planning — story selection, team composition, Gherkin specs, and visual companion plan gate for developer sign-off.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-planning\u002FSKILL.md",[],[187,188,27,189,190,191,30,192,193,194,195,177,25,196,197,198,199],"planning","sprint planning","plan gate","visual companion","for","companion","sign","visual","selection","team","Composition","developer","plan",{"skillNo":201,"name":202,"nameZh":6,"description":203,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":204,"categories":205,"keywords":206,"publishedAt":32},"01M6DERWCP7Y0WDY5KG6109RQB","sprint-manager","Sole writer of stories\u002Findex.json and sprints\u002Findex.json — validates state transitions, activates sprints, manages epic membership.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-manager\u002FSKILL.md",[],[207,27,208,209,210,211,212,213,214,215,216],"manager","sprint manager","index","stories","sprints","EPIC","transitions","writer","json","state",{"skillNo":218,"name":219,"nameZh":6,"description":220,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":221,"categories":222,"keywords":223,"publishedAt":32},"01M6DERS7B4QHAH5GZHHBA4AHB","sprint-dev","Sprint execution — dependency-driven story development, post-merge AVFL, and team review.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-dev\u002FSKILL.md",[],[224,27,225,226,227,228,229,230,30,231,232,233,25,234,196],"sprint dev","dev","team review","development","merge","review","execution","post","avfl","driven","dependency",{"skillNo":236,"name":237,"nameZh":6,"description":238,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":239,"categories":240,"keywords":246,"publishedAt":32},"01M6DERK5KCKWXC5NQATAKTKZZ","research","Deep research pipeline with parallel subagents, Gemini CLI triangulation, AVFL corpus validation, and provenance tracking.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fresearch\u002FSKILL.md",[241],{"categoryNo":242,"categoryName":243,"taxonomyType":244,"taxonomyTypeDesc":245},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[237,247,248,30,249,250,232,251,252,253,254,255,256,257,258,259,260],"cli","provenance tracking","research pipeline","with","deep","subagents","tracking","parallel","provenance","pipeline","deep research","validation","gemini cli","gemini"]