[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6BV935JN00NDMC3SFWTCP8W":3,"skill-same:01M6BV935JN00NDMC3SFWTCP8W":70},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":14,"repositoryHtmlUrl":44,"repositoryHomepageUrl":6,"ownerHtmlUrl":45,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":46,"install":47,"resources":59},"01M6BV935JN00NDMC3SFWTCP8W","writing-fragments",null,"Writing, explore: mine raw fragments, no structure yet.","bnferguson\u002Fdotfiles","bnferguson","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F47749?v=4","01M6BV4H2TJKK8P14W86V1ZCPP","Brandon Ferguson","01M6BV4H7GJWTZJ1BVHQ1TX11Y",0,"MIT","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwriting-fragments\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[29,30,31,32,33,34],"writing","writing fragments","explore","structure","mine","true","2026-11-10 10:12:30",false,"---\nname: writing-fragments\ndescription: \"Writing, explore: mine raw fragments, no structure yet.\"\ndisable-model-invocation: true\n---\n\n\u003Cwhat-to-do>\n\nThis is pure **explore**: widen the space of what could be written without committing to structure. Committing is _exploit_, a separate skill's job. Run a grilling session that produces fragments, interviewing the user relentlessly about whatever they want to write about. Imposing phases, outlines, or article structure is out of scope here.\n\nAs fragments emerge from either side of the conversation, append them to a single markdown file.\n\nIf the user did not pass a path, ask once where to save the document, then remember it for the rest of the session.\n\nCapture fragments from the very first thing the user says, including the initial prompt.\n\nOn first write, put a single H1 at the top with a working title (it can change later) and nothing else: no metadata, no TOC, no date.\n\n\u003C\u002Fwhat-to-do>\n\n\u003Csupporting-info>\n\n## What is a fragment\n\nA fragment is any piece of text that might survive into the final article. It must be _readable by the author_ (the author can tell what it means), but it does not need to define its terms or be comprehensible to a cold reader. The bar is \"is this a piece of good writing?\", not \"is this a self-contained argument?\"\n\nFragments are deliberately heterogeneous. Examples of what could be a fragment:\n\n- A sharp sentence you'd want to deploy somewhere but don't yet know where.\n- A claim with a one-line justification.\n- A vignette: a thing that happened, a code snippet, a scenario, an analogy.\n- A half-thought: \"something about how X feels like Y, work this out later.\"\n- A quote, a piece of dialogue, an overheard line.\n- A list of related observations that hang together by feel.\n- A complaint, a confession, a punchline.\n- A **leading word**: a compact metaphor or coinage the whole piece can hang on (one term that names the idea, the way _tracer bullets_ or _fog of war_ names a whole pattern).\n\nOf these, the leading word is the most valuable fragment to land. It is load-bearing: name the right one in explore and it shapes the structure, the transitions, and the title later, paying dividends through the entire exploit phase. When the conversation circles a recurring idea, push to coin a word for it.\n\nThe novelist's diary is the model: years of unstructured noticings that later get mined for raw material. Fragments are noticings.\n\n## File format\n\n```markdown\n# Working title\n\nA first fragment lives here.\n\nIt can be multiple paragraphs. It can include lists, code, quotes: whatever\nshape the fragment naturally takes.\n\n---\n\nA second fragment.\n\n---\n\n> A quoted line that the user wants to keep around.\n\nA reaction to it.\n\n---\n\n- A cluster of related observations\n- That hang together by feel\n- And want to be near each other\n```\n\nFragments are separated by a horizontal rule (`\\n---\\n`). No headings inside the body. No tags. No order beyond the order they were added.\n\n## Writing rhythm\n\nAppend silently. Don't ask permission for each fragment. Mention what you added in passing (\"adding that\"), but don't interrupt the conversation with save dialogs.\n\nBefore every write: re-read the file from disk. The user may have edited, reordered, or deleted fragments between turns, so preserve their changes. Never overwrite the file; only append (or, if the user asks, edit a specific fragment in place).\n\nThe user can say \"cut the last one\", \"rewrite that one sharper\", \"merge those two\" at any time. Treat those as first-class instructions.\n\n\u003C\u002Fsupporting-info>\n","\u003Cwhat-to-do>\n\nThis is pure **explore**: widen the space of what could be written without committing to structure. Committing is _exploit_, a separate skill's job. Run a grilling session that produces fragments, interviewing the user relentlessly about whatever they want to write about. Imposing phases, outlines, or article structure is out of scope here.\n\nAs fragments emerge from either side of the conversation, append them to a single markdown file.\n\nIf the user did not pass a path, ask once where to save the document, then remember it for the rest of the session.\n\nCapture fragments from the very first thing the user says, including the initial prompt.\n\nOn first write, put a single H1 at the top with a working title (it can change later) and nothing else: no metadata, no TOC, no date.\n\n\u003C\u002Fwhat-to-do>\n\n\u003Csupporting-info>\n\n## What is a fragment\n\nA fragment is any piece of text that might survive into the final article. It must be _readable by the author_ (the author can tell what it means), but it does not need to define its terms or be comprehensible to a cold reader. The bar is \"is this a piece of good writing?\", not \"is this a self-contained argument?\"\n\nFragments are deliberately heterogeneous. Examples of what could be a fragment:\n\n- A sharp sentence you'd want to deploy somewhere but don't yet know where.\n- A claim with a one-line justification.\n- A vignette: a thing that happened, a code snippet, a scenario, an analogy.\n- A half-thought: \"something about how X feels like Y, work this out later.\"\n- A quote, a piece of dialogue, an overheard line.\n- A list of related observations that hang together by feel.\n- A complaint, a confession, a punchline.\n- A **leading word**: a compact metaphor or coinage the whole piece can hang on (one term that names the idea, the way _tracer bullets_ or _fog of war_ names a whole pattern).\n\nOf these, the leading word is the most valuable fragment to land. It is load-bearing: name the right one in explore and it shapes the structure, the transitions, and the title later, paying dividends through the entire exploit phase. When the conversation circles a recurring idea, push to coin a word for it.\n\nThe novelist's diary is the model: years of unstructured noticings that later get mined for raw material. Fragments are noticings.\n\n## File format\n\n```markdown\n# Working title\n\nA first fragment lives here.\n\nIt can be multiple paragraphs. It can include lists, code, quotes: whatever\nshape the fragment naturally takes.\n\n---\n\nA second fragment.\n\n---\n\n> A quoted line that the user wants to keep around.\n\nA reaction to it.\n\n---\n\n- A cluster of related observations\n- That hang together by feel\n- And want to be near each other\n```\n\nFragments are separated by a horizontal rule (`\\n---\\n`). No headings inside the body. No tags. No order beyond the order they were added.\n\n## Writing rhythm\n\nAppend silently. Don't ask permission for each fragment. Mention what you added in passing (\"adding that\"), but don't interrupt the conversation with save dialogs.\n\nBefore every write: re-read the file from disk. The user may have edited, reordered, or deleted fragments between turns, so preserve their changes. Never overwrite the file; only append (or, if the user asks, edit a specific fragment in place).\n\nThe user can say \"cut the last one\", \"rewrite that one sharper\", \"merge those two\" at any time. Treat those as first-class instructions.\n\n\u003C\u002Fsupporting-info>\n",{"name":5,"description":7,"disable-model-invocation":40},true,"main","e63965e4644984470d4cc8b3014a8b001f0c2666",".agents\u002Fskills\u002Fwriting-fragments","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles","https:\u002F\u002Fgithub.com\u002Fbnferguson","2026-11-11 03:04:59",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":40},[49,52,55],{"tool":50,"command":51},"npx","npx skills add bnferguson\u002Fdotfiles --skill writing-fragments",{"tool":53,"command":54},"bunx","bunx skills add bnferguson\u002Fdotfiles --skill writing-fragments",{"tool":56,"command":57},"pnpm","pnpm dlx skills add bnferguson\u002Fdotfiles --skill writing-fragments","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwriting-fragments\u002FSKILL.md",[60,66],{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"agents\u002Fopenai.yaml","REFERENCE","参考文档",140,"https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwriting-fragments\u002Fagents\u002Fopenai.yaml",{"path":67,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":68,"sourceHtmlUrl":69},"references\u002Fmessaging-scenarios.md",2155,"https:\u002F\u002Fgithub.com\u002Fawebai\u002Faweb\u002Fblob\u002Fmain\u002Fpackages\u002Fcodex-plugin\u002Fskills\u002Faweb-messaging\u002Freferences\u002Fmessaging-scenarios.md",[71,102,112,143,152,164],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":75,"licenseFileUrl":76,"sourceHtmlUrl":77,"categories":78,"keywords":82,"publishedAt":35},"01M6BVA3RS3M016FANZ6792F9H","skill-creator","Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002Fclaude\u002Fconfig\u002Fskills\u002Fskill-creator\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002Fclaude\u002Fconfig\u002Fskills\u002Fskill-creator\u002FSKILL.md",[79],{"categoryNo":80,"categoryName":81,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101],"creator","skill creator","specialized","workflows","create","update","capabilities","knowledge","tool","integrations","guide","new skill","existing skill","users","with","for","Existing","when","new",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":110,"publishedAt":35},"01M6BV94WN2RPYM8N6PN8TBNT8","writing-shape","Writing, exploit: shape raw material into an article, paragraph by paragraph.","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwriting-shape\u002FSKILL.md",[108,109],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[111,29],"writing shape",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":75,"licenseFileUrl":116,"sourceHtmlUrl":117,"categories":118,"keywords":125,"publishedAt":35},"01M6BV8QDFJ6PXBVK5NFBZT5M7","webapp-testing","Test local web applications using Playwright. Use when verifying frontend functionality, debugging UI behavior, capturing browser screenshots, or viewing browser logs.","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwebapp-testing\u002FSKILL.md",[119,122],{"categoryNo":120,"categoryName":121,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":123,"categoryName":124,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,100],"webapp","webapp testing","testing","browser","frontend","screenshots","playwright","test","web","debugging","ui","logs","applications","behavior","use","local","test local",{"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":35},"01M6BV8MDXKXNVHKS3QF3YDFTF","wait-what","Stop. That last message did not land: re-pitch it.","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwait-what\u002FSKILL.md",[],[150,151],"wait what","land",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":161,"publishedAt":35},"01M6BV756DJHT5BDA1HVRVHJJ7","prototype","Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fprototype\u002FSKILL.md",[158],{"categoryNo":159,"categoryName":160,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000032","设计师",[154,162,31,136,163],"design","state",{"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":35},"01M6BV6SBW166685KVBPWM2K4N","improve-codebase-architecture","Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.","https:\u002F\u002Fgithub.com\u002Fbnferguson\u002Fdotfiles\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimprove-codebase-architecture\u002FSKILL.md",[170],{"categoryNo":123,"categoryName":124,"taxonomyType":21,"taxonomyTypeDesc":22},[172,173,174,175],"architecture","improve","improve codebase architecture","report"]