[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M77KC5Q3EY9MTCVRAZ4SWSB0":3,"skill-same:01M77KC5Q3EY9MTCVRAZ4SWSB0":55},{"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":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":14,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":29,"ownerDescription":6,"updatedAt":30,"install":31,"resources":44},"01M77KC5Q3EY9MTCVRAZ4SWSB0","product",null,"Keep the project's product document — the pains it relieves, its goals, the causes and the answers — and see how much of each answer is built. Use when a decision about what the project is for lands as an answer, when writing or reading the product document, or when asked which answers are built, being built, or not started, or what each queued ticket builds and which answers no ticket does.","dveyarangi\u002Fmeteoscape","dveyarangi","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F693404?v=4","01M77KAGWZ8X0CNA092ZDNEF6T","Fima Rotter","01M77KAGXT8AD0B9SZCNM5807F",0,"MIT","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fproduct\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: product\ndescription: Keep the project's product document — the pains it relieves, its goals, the causes and the answers — and see how much of each answer is built. Use when a decision about what the project is for lands as an answer, when writing or reading the product document, or when asked which answers are built, being built, or not started, or what each queued ticket builds and which answers no ticket does.\n---\n\nMechanism: product\n\n# The product document\n\nThe project's account of what it is for lives in `docs\u002Fproduct.md`, in the shape of\n[PRODUCT-FORMAT.md](.\u002FPRODUCT-FORMAT.md): pains, goals, causes, and answers, each answer an id\nnever renumbered and a name.\n\n## Goals\n\n1. **Keep the document.** Land a decided answer as a row with the next free id and a name, or, where\n   a row waited on its question, empty that row's *waits on* cell; retire\n   an answer rather than renumber it, and give a replacement a new id. A row whose answer is not\n   chosen waits on its purpose question, bound to it. A pain is never closed.\n2. **Link the work.** A question that builds an answer carries its trace link, by id and name\n   word for word: `questions.py realize q-N 'A7 \"\u003Cname>\"'`, or `derived` for one that realizes\n   none. Its sub-questions carry it without writing it.\n3. **See coverage.** `product.py --coverage` renders each answer as absent, in progress or present,\n   read from the questions that realize it. Coverage is never written into the document.\n4. **See the queue beside it.** `product.py --queue` renders what each live ticket realizes and the\n   answers left out — neither present nor realized by a ticket — under each pain and goal they\n   serve, for the person ordering the work. It ranks nothing and is never written into the queue.\n\nCheck the document's form with `product.py --check`.\n","Mechanism: product\n\n# The product document\n\nThe project's account of what it is for lives in `docs\u002Fproduct.md`, in the shape of\n[PRODUCT-FORMAT.md](.\u002FPRODUCT-FORMAT.md): pains, goals, causes, and answers, each answer an id\nnever renumbered and a name.\n\n## Goals\n\n1. **Keep the document.** Land a decided answer as a row with the next free id and a name, or, where\n   a row waited on its question, empty that row's *waits on* cell; retire\n   an answer rather than renumber it, and give a replacement a new id. A row whose answer is not\n   chosen waits on its purpose question, bound to it. A pain is never closed.\n2. **Link the work.** A question that builds an answer carries its trace link, by id and name\n   word for word: `questions.py realize q-N 'A7 \"\u003Cname>\"'`, or `derived` for one that realizes\n   none. Its sub-questions carry it without writing it.\n3. **See coverage.** `product.py --coverage` renders each answer as absent, in progress or present,\n   read from the questions that realize it. Coverage is never written into the document.\n4. **See the queue beside it.** `product.py --queue` renders what each live ticket realizes and the\n   answers left out — neither present nor realized by a ticket — under each pain and goal they\n   serve, for the person ordering the work. It ranks nothing and is never written into the queue.\n\nCheck the document's form with `product.py --check`.\n",{"name":5,"description":7},"main","d2bf1c688554a199b2433460c08378a28c368373",".agents\u002Fskills\u002Fproduct","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape","https:\u002F\u002Fgithub.com\u002Fdveyarangi","http:\u002F\u002Fdveyarangi.blogspot.com\u002F","2026-10-14 08:50:21",{"source":8,"skillName":5,"commands":32,"prompt":42,"zipAvailable":43},[33,36,39],{"tool":34,"command":35},"npx","npx skills add dveyarangi\u002Fmeteoscape --skill product",{"tool":37,"command":38},"bunx","bunx skills add dveyarangi\u002Fmeteoscape --skill product",{"tool":40,"command":41},"pnpm","pnpm dlx skills add dveyarangi\u002Fmeteoscape --skill product","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fproduct\u002FSKILL.md",true,[45,51],{"path":46,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":49,"sourceHtmlUrl":50},"PRODUCT-ARRIVAL.md","REFERENCE","参考文档",1053,"https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fproduct\u002FPRODUCT-ARRIVAL.md",{"path":52,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":53,"sourceHtmlUrl":54},"PRODUCT-FORMAT.md",1844,"https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fproduct\u002FPRODUCT-FORMAT.md",[56,63,70,77,84,91],{"skillNo":57,"name":58,"nameZh":6,"description":59,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":60,"categories":61,"keywords":62,"publishedAt":19},"01M77KD67QK512NQZZ0KG710E7","verify","Use after an implementation pass, or to verify a landed slice before close. Whole verification of landed work: ticket, RFC, governing docs, and the project's verification set. Repair-and-report where that policy holds.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fverify\u002FSKILL.md",[],[],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":19},"01M77KD3YKE65N7D472BJAQAGW","ticket","Use to decompose a parent work into independently-workable child tickets. Use to mint ticket(s), possibly a single one, when planning implementation without one.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fticket\u002FSKILL.md",[],[],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":19},"01M77KCZCEZJVQ8YV739MHA5YB","tdd","Test-driven development with red-green-refactor loop. Use when user wants to build features or fix bugs using TDD, mentions \"red-green-refactor\", wants integration tests, or asks for test-first development.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftdd\u002FSKILL.md",[],[],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":19},"01M77KCW8EYKHZ0HWCGN9FTQP3","spec","Use to develop a spec for substantial work through \u002Falign, then hand off to \u002Fticket. Use when a change needs agreed scope, behavior, boundaries and testing before decomposition. An existing spec for the work is developed in place.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fspec\u002FSKILL.md",[],[],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":19},"01M77KCRGB1CFTZJ39P7RGSKQ8","skill-up","Aid agent skill creation or modification. Use when creating a new skill or changing an existing one. Use whenever writing any agent instructions, whether to a file or directly in a reply.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fskill-up\u002FSKILL.md",[],[],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":19},"01M77KCK8PEVY9Z2PJ38ERGZQH","setup-devops","Set up the project's engineering scaffolding, from toolchain to CICD and observability. Use when initializing a repo or filling a setup gap.","https:\u002F\u002Fgithub.com\u002Fdveyarangi\u002Fmeteoscape\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsetup-devops\u002FSKILL.md",[],[]]