[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6H86H4RHJD0G9VSW0X6HKV9":3,"skill-same:01M6H86H4RHJD0G9VSW0X6HKV9":78},{"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":45,"linkOnly":46,"markdownContent":47,"markdownBody":48,"frontMatter":49,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":14,"repositoryHtmlUrl":53,"repositoryHomepageUrl":6,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":56,"updatedAt":57,"install":58,"resources":71},"01M6H86H4RHJD0G9VSW0X6HKV9","artifact-scan",null,"Use whenever the user asks \"which skill should I use?\", \"where are we in the workflow?\", \"what should I run next?\", \"what product docs already exist?\", \"do we have a roadmap\u002FPRD\u002Fplan yet?\", or \"what's left before I start coding?\". Front door to the product workflow suite: detects the ideate report, approach doc, roadmap, PRDs, plans and tickets, then names the one skill to run next based on what exists rather than a fixed order. Routes between *skills* — for \"what feature should I build next?\" use ideate. Also usable as a preflight routine from other product skills.","O-Marsters-1997\u002Fmy-claude-code","O-Marsters-1997","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F72571979?v=4","01M6H800V7V9BSXYZKDM0JXTJ2","Olly Marsters","01M6H800ZYDJR42TNRH0E6ZVZ7",0,"MIT","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fartifact-scan\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000031","产品经理","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"artifact scan","scan","artifact","next","where are we","for","which","front","tickets","as","plans","feature","workflow","do","build","roadmap","use","product skills","plan","product","run","2026-11-10 10:12:30",false,"---\nname: artifact-scan\ndescription: >\n  Use whenever the user asks \"which skill should I use?\", \"where are we in the workflow?\",\n  \"what should I run next?\", \"what product docs already exist?\", \"do we have a roadmap\u002FPRD\u002Fplan\n  yet?\", or \"what's left before I start coding?\". Front door to the product workflow suite:\n  detects the ideate report, approach doc, roadmap, PRDs, plans and tickets, then names the\n  one skill to run next based on what exists rather than a fixed order. Routes between *skills* —\n  for \"what feature should I build next?\" use ideate. Also usable as a preflight routine from\n  other product skills.\n---\n\n# Artifact Scan\n\nA fast, read-only routine. Scan the repo for the product artifacts, report what exists, and point\nthe user at exactly one next skill. No interview, no grilling, no writing. Just look, report, route.\n\n## Where this sits\n\n```\nPORTFOLIO — many features        ideate  or  chat-to-approach\n                                        ↓\n                            .\u002Fdocs\u002Fapproach.md  →  .\u002Fideas\u002Froadmap.html\n                                                        ↓  pick ONE card\nFEATURE — one feature per run    to-prd → to-plan → to-tickets → ticket-tracker\n                                 non-code work: to-prd → to-tickets\n```\n\n- **The doors** (`ideate`, `chat-to-approach`, or an already-scoped task) are optional ways in.\n- **Portfolio → feature is a fan-out, not a step.** A roadmap card is a *feature* — something to be\n  built, which then breaks down into several tickets. Six cards means six runs down the spine, not\n  one. When a skill is handed a portfolio artifact, it must establish *which feature* first.\n- **Never send the user backwards.** A missing upstream artifact is written inline or offered, never\n  a reason to stop and run another skill first. The one hard gate is an approved plan.\n\nThat rule drives this skill's whole job: **report what exists, don't compute a first gap.**\nAn earlier artifact being absent is not a problem to solve — it is usually a deliberate skip.\n\n## The artifacts\n\n| Artifact         | Level     | How to detect it                                       | Skill that produces it |\n|------------------|-----------|--------------------------------------------------------|------------------------|\n| ideate report    | portfolio | `ls .\u002Fideas\u002Freports\u002F*-ideate.md`                       | `ideate`               |\n| approach doc     | portfolio | `test -f .\u002Fdocs\u002Fapproach.md`                           | `chat-to-approach`     |\n| roadmap board    | portfolio | `test -f .\u002Fideas\u002Froadmap.html`                               | `to-roadmap`           |\n| PRD              | feature   | `ls .\u002Fdocs\u002Fprd-*.md` and `gh issue list` for `[PRD]`   | `to-prd`               |\n| plan             | feature   | `ls .\u002Fdocs\u002Fplans\u002F*.md` (excluding `metrics.md`)       | `to-plan`              |\n| tickets          | feature   | `gh issue list` — any issue NOT titled `[PRD]`         | `to-tickets`           |\n\nFeature-level artifacts are **countable, not binary**. Three plans means three features are\nmid-spine; it does not mean \"the plan stage is done\". Report counts and names, never a single tick.\n\n## Procedure\n\n1. **Scan local files** in one pass:\n   ```bash\n   ls .\u002Fideas\u002Freports\u002F*-ideate.md .\u002Fdocs\u002Fapproach.md .\u002Fideas\u002Froadmap.html \\\n      .\u002Fdocs\u002Fprd-*.md .\u002Fdocs\u002Fplans\u002F*.md 2>\u002Fdev\u002Fnull\n   ```\n2. **Scan GitHub issues** once, then split by title:\n   ```bash\n   gh issue list --state open --limit 100 --json number,title 2>\u002Fdev\u002Fnull\n   ```\n   - PRDs: any title starting `[PRD]`.\n   - Tickets: any open issue that is *not* a `[PRD]` issue.\n   - If `gh` is unavailable or errors (no remote, not authed), mark the GitHub-backed artifacts\n     **unknown**, not absent — never guess. Say so in the report. Local `.\u002Fdocs\u002Fprd-*.md` files\n     still count as PRDs, so a repo with no remote can still show the PRD artifact present.\n3. **Report what you observed**, citing the file path or issue number as evidence. Never report an\n   artifact you did not see. Group by level so the user can tell portfolio work from feature work.\n4. **Route.** Do not compute \"the earliest gap\". Ask what the user has and match it:\n\n   | What the user has | Route to | Why |\n   |---|---|---|\n   | A scoped feature or a clear idea | `to-prd` | The spine starts here. Prior artifacts are optional accelerants |\n   | Nothing — no idea what to build | `ideate` | The only door that generates an idea from the codebase |\n   | A conversation from claude.ai or elsewhere | `chat-to-approach` | Captures the handoff into `approach.md` |\n   | An approach doc, wants to prioritise | `to-roadmap` | Turns many features into Now \u002F Next \u002F Later |\n   | A roadmap, wants to start building | Pick one card → `to-prd` | Each card is its own spine run |\n   | A PRD for a code feature | `to-plan` | Writes the plan whose approval gates ticket cutting |\n   | A PRD for non-code work, or an approved plan | `to-tickets` | |\n   | Tickets already filed | `ticket-tracker` | Move them through the board |\n\n   When the invocation itself makes the intent obvious, route on that and say so — a user who\n   describes a feature is not asking to ideate, even on an empty repo.\n\n   If you genuinely cannot tell which of two doors applies, ask **one** question via\n   `AskUserQuestion` rather than guessing. Recommend exactly one skill.\n\n## Report format\n\n```\nProduct artifacts\n\n  Portfolio (many features)\n    [x] ideate report  — .\u002Fideas\u002Freports\u002F2026-05-01-ideate.md\n    [x] approach doc   — .\u002Fdocs\u002Fapproach.md\n    [ ] roadmap        — not found\n\n  Feature (per feature)\n    [x] PRDs           — 2: .\u002Fdocs\u002Fprd-search.md, #41 [PRD] Saved views\n    [x] plans          — 1: .\u002Fdocs\u002Fplans\u002Fsearch.md\n    [?] tickets        — unknown (gh unavailable)\n\nNext: `to-plan` — \"Saved views\" has a PRD but no plan yet.\n```\n\nUse `[x]` present, `[ ]` absent, `[?]` unknown. Always list all six so the user sees the whole\nsuite. Close with one line naming exactly one skill and the reason.\n\nAbsent portfolio artifacts are **not** a finding. Do not tell the user to go back and write an\napproach doc because one is missing — say what is missing, then let the routing table decide.\n\n## Notes\n\n- Read-only. This skill never creates or edits artifacts — it only reports and routes.\n- When invoked as a preflight by another skill, return the artifact map and skip the prose framing\n  and the routing verdict — the calling skill does its own routing.\n","# Artifact Scan\n\nA fast, read-only routine. Scan the repo for the product artifacts, report what exists, and point\nthe user at exactly one next skill. No interview, no grilling, no writing. Just look, report, route.\n\n## Where this sits\n\n```\nPORTFOLIO — many features        ideate  or  chat-to-approach\n                                        ↓\n                            .\u002Fdocs\u002Fapproach.md  →  .\u002Fideas\u002Froadmap.html\n                                                        ↓  pick ONE card\nFEATURE — one feature per run    to-prd → to-plan → to-tickets → ticket-tracker\n                                 non-code work: to-prd → to-tickets\n```\n\n- **The doors** (`ideate`, `chat-to-approach`, or an already-scoped task) are optional ways in.\n- **Portfolio → feature is a fan-out, not a step.** A roadmap card is a *feature* — something to be\n  built, which then breaks down into several tickets. Six cards means six runs down the spine, not\n  one. When a skill is handed a portfolio artifact, it must establish *which feature* first.\n- **Never send the user backwards.** A missing upstream artifact is written inline or offered, never\n  a reason to stop and run another skill first. The one hard gate is an approved plan.\n\nThat rule drives this skill's whole job: **report what exists, don't compute a first gap.**\nAn earlier artifact being absent is not a problem to solve — it is usually a deliberate skip.\n\n## The artifacts\n\n| Artifact         | Level     | How to detect it                                       | Skill that produces it |\n|------------------|-----------|--------------------------------------------------------|------------------------|\n| ideate report    | portfolio | `ls .\u002Fideas\u002Freports\u002F*-ideate.md`                       | `ideate`               |\n| approach doc     | portfolio | `test -f .\u002Fdocs\u002Fapproach.md`                           | `chat-to-approach`     |\n| roadmap board    | portfolio | `test -f .\u002Fideas\u002Froadmap.html`                               | `to-roadmap`           |\n| PRD              | feature   | `ls .\u002Fdocs\u002Fprd-*.md` and `gh issue list` for `[PRD]`   | `to-prd`               |\n| plan             | feature   | `ls .\u002Fdocs\u002Fplans\u002F*.md` (excluding `metrics.md`)       | `to-plan`              |\n| tickets          | feature   | `gh issue list` — any issue NOT titled `[PRD]`         | `to-tickets`           |\n\nFeature-level artifacts are **countable, not binary**. Three plans means three features are\nmid-spine; it does not mean \"the plan stage is done\". Report counts and names, never a single tick.\n\n## Procedure\n\n1. **Scan local files** in one pass:\n   ```bash\n   ls .\u002Fideas\u002Freports\u002F*-ideate.md .\u002Fdocs\u002Fapproach.md .\u002Fideas\u002Froadmap.html \\\n      .\u002Fdocs\u002Fprd-*.md .\u002Fdocs\u002Fplans\u002F*.md 2>\u002Fdev\u002Fnull\n   ```\n2. **Scan GitHub issues** once, then split by title:\n   ```bash\n   gh issue list --state open --limit 100 --json number,title 2>\u002Fdev\u002Fnull\n   ```\n   - PRDs: any title starting `[PRD]`.\n   - Tickets: any open issue that is *not* a `[PRD]` issue.\n   - If `gh` is unavailable or errors (no remote, not authed), mark the GitHub-backed artifacts\n     **unknown**, not absent — never guess. Say so in the report. Local `.\u002Fdocs\u002Fprd-*.md` files\n     still count as PRDs, so a repo with no remote can still show the PRD artifact present.\n3. **Report what you observed**, citing the file path or issue number as evidence. Never report an\n   artifact you did not see. Group by level so the user can tell portfolio work from feature work.\n4. **Route.** Do not compute \"the earliest gap\". Ask what the user has and match it:\n\n   | What the user has | Route to | Why |\n   |---|---|---|\n   | A scoped feature or a clear idea | `to-prd` | The spine starts here. Prior artifacts are optional accelerants |\n   | Nothing — no idea what to build | `ideate` | The only door that generates an idea from the codebase |\n   | A conversation from claude.ai or elsewhere | `chat-to-approach` | Captures the handoff into `approach.md` |\n   | An approach doc, wants to prioritise | `to-roadmap` | Turns many features into Now \u002F Next \u002F Later |\n   | A roadmap, wants to start building | Pick one card → `to-prd` | Each card is its own spine run |\n   | A PRD for a code feature | `to-plan` | Writes the plan whose approval gates ticket cutting |\n   | A PRD for non-code work, or an approved plan | `to-tickets` | |\n   | Tickets already filed | `ticket-tracker` | Move them through the board |\n\n   When the invocation itself makes the intent obvious, route on that and say so — a user who\n   describes a feature is not asking to ideate, even on an empty repo.\n\n   If you genuinely cannot tell which of two doors applies, ask **one** question via\n   `AskUserQuestion` rather than guessing. Recommend exactly one skill.\n\n## Report format\n\n```\nProduct artifacts\n\n  Portfolio (many features)\n    [x] ideate report  — .\u002Fideas\u002Freports\u002F2026-05-01-ideate.md\n    [x] approach doc   — .\u002Fdocs\u002Fapproach.md\n    [ ] roadmap        — not found\n\n  Feature (per feature)\n    [x] PRDs           — 2: .\u002Fdocs\u002Fprd-search.md, #41 [PRD] Saved views\n    [x] plans          — 1: .\u002Fdocs\u002Fplans\u002Fsearch.md\n    [?] tickets        — unknown (gh unavailable)\n\nNext: `to-plan` — \"Saved views\" has a PRD but no plan yet.\n```\n\nUse `[x]` present, `[ ]` absent, `[?]` unknown. Always list all six so the user sees the whole\nsuite. Close with one line naming exactly one skill and the reason.\n\nAbsent portfolio artifacts are **not** a finding. Do not tell the user to go back and write an\napproach doc because one is missing — say what is missing, then let the routing table decide.\n\n## Notes\n\n- Read-only. This skill never creates or edits artifacts — it only reports and routes.\n- When invoked as a preflight by another skill, return the artifact map and skip the prose framing\n  and the routing verdict — the calling skill does its own routing.\n",{"name":5,"description":7},"main","aede9f7bc29a2d9127fa7ce29682c242596c7759","skills\u002Fworkflow\u002Fartifact-scan","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997","https:\u002F\u002Fpersonal-portfolio-v2-phi.vercel.app","Go & TypeScript developer building tooling for AI-assisted development: git worktree workflows, Claude Code skills and agent orchestration.","2026-11-11 22:26:34",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add O-Marsters-1997\u002Fmy-claude-code --skill artifact-scan",{"tool":64,"command":65},"bunx","bunx skills add O-Marsters-1997\u002Fmy-claude-code --skill artifact-scan",{"tool":67,"command":68},"pnpm","pnpm dlx skills add O-Marsters-1997\u002Fmy-claude-code --skill artifact-scan","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fartifact-scan\u002FSKILL.md",true,[72],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"evals\u002Fevals.json","REFERENCE","参考文档",7592,"https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fartifact-scan\u002Fevals\u002Fevals.json",[79,87,94,115,143,164],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":85,"publishedAt":86},"01M745F5J4Z2W32G4QXESCN5PM","vault-recall","Answer the user's conceptual or technical question using their Obsidian vault as well as general knowledge. Use when the user asks a question (not a task) whose topic appears in the vault MOC digest from session start. Not for task instructions, not mid-task, and not for writing to the vault (that is to-vault).","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Fvault-recall\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":86},"01M745EW5W0A7K9016Z54A4KG2","ingest","Ingest one external source (an article, course lesson, doc, PDF or URL) into the user's Obsidian vault: save the original to raw\u002F, then build wiki\u002F pages per the vault's § Ingest. Use when the user types \u002Fingest, or says \"ingest this\", \"add this source to my wiki\", \"put this article\u002Flesson in the vault as a wiki page\". Works from any repo. Routing rule: someone else's words go to wiki\u002F (this skill); the user's own learnings and decisions go to notes\u002F (\u002Fto-vault).","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fproductivity\u002Fingest\u002FSKILL.md",[],[],{"skillNo":95,"name":96,"nameZh":6,"description":97,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":100,"publishedAt":45},"01M6H88J6TYRV9T8RKWW569YM8","to-tickets","Breaks a source into independently-grabbable GitHub tickets. For a code feature the source is the plan (`docs\u002Fplans\u002F\u003Cfeature>.md`, from \u002Fto-plan) and every new or changed symbol lands in exactly one ticket, its signatures copied into the ticket body; a non-code feature is cut from the PRD's slices. Cuts tickets for one feature per run. If a code feature has no approved plan, offers \u002Fto-plan instead of cutting from prose. In a repo that runs command-centre, also emits `[[task]]` blocks into its config; in a plain treepad repo, emits a Batch Manifest instead so the tickets materialise as stacked worktrees.","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fto-tickets\u002FSKILL.md",[],[32,101,102,103,104,42,105,106,107,108,34,109,110,111,112,29,35,44,113,33,114],"to tickets","new","signatures","github","batch","task","code","manifest","true","ticket","command","repo","worktrees","cut",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":126,"publishedAt":45},"01M6H88E98X9KGGYBGSVDS1E8H","to-seams","Records an agreed-but-unlanded cross-repo interface as a seam: the file a consumer's agent gets pasted into its prompt as ground truth, plus the `[[seam]]` block command-centre reads for the retirement pointer. Use when two repos need to build against an interface neither has landed yet — \"record a seam for X\", \"we agreed on this schema, seam it\", \"add a seam so Y can build against Z's new field\". Halts for approval before writing either file.","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fto-seams\u002FSKILL.md",[121],{"categoryNo":122,"categoryName":123,"taxonomyType":124,"taxonomyTypeDesc":125},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[127,128,102,129,130,131,132,133,134,40,135,136,137,109,138,139,140,112,29,38,141,142,33,111],"to seams","schema","neither","it","but","file","prompt","either","writing","when","interface","repos","block","records","can","record",{"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":150,"publishedAt":45},"01M6H889PSQM2E1ATS2JC10QRV","to-roadmap","Prioritises settled features into a Now \u002F Next \u002F Later kanban board, rendered as a self-contained .\u002Fideas\u002Froadmap.html. Each card is a feature, not a ticket — one card later becomes several tickets via \u002Fto-prd -> \u002Fto-plan -> \u002Fto-tickets. Boards the features in .\u002Fdocs\u002Fapproach.md, or the \"## Accepted ideas\" in .\u002Fideas\u002FCONTEXT.md when there is no approach doc. The approach doc is settled truth: this assigns tiers and reasons about ordering, it never re-litigates what was decided.","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fto-roadmap\u002FSKILL.md",[149],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[151,39,152,33,35,153,154,136,155,156,157,32,27,158,42,159,160,109,110,161,162,163],"to roadmap","never","via","features","doc","board","about","later","self","now","card","re","ideas",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":171,"publishedAt":45},"01M6H885QAK839Q771ZBKBK1KA","to-prd","Turns one feature idea into a PRD built on journeys: a one-line problem, journeys (each ending in an observable state) and delivery slices that say what is usable after each. Interviews, explores the codebase, and saves to docs\u002Fprds\u002F\u003Cfeature>.md. Covers exactly one feature: given a multi-feature source, ask which one. Reads any approach doc or ideate report as priors so it doesn't re-ask what's settled, but needs none. Starts the per-feature spine (\u002Fto-prd -> \u002Fto-plan -> \u002Fto-tickets).","https:\u002F\u002Fgithub.com\u002FO-Marsters-1997\u002Fmy-claude-code\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fto-prd\u002FSKILL.md",[170],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[172,173,174,175,176,177,178,179,32,180,42,181,182,183,109,162,35,184,30,33],"prd","to prd","say","interviews","codebase","report","line","delivery","spine","state","multi","ask","problem"]