[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7AG3HS2D2VFKXKATJ0YRV2N":3,"skill-same:01M7AG3HS2D2VFKXKATJ0YRV2N":54},{"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":27,"commitSha":28,"skillDirectory":29,"forksCount":30,"repositoryHtmlUrl":31,"repositoryHomepageUrl":31,"ownerHtmlUrl":32,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":33,"install":34,"resources":47},"01M7AG3HS2D2VFKXKATJ0YRV2N","trove-unslop",null,"Cut AI tells from writing — PR descriptions, release notes, specs, commit bodies, and replies. Use before finalizing prose, or when the user asks to clean up, de-slop, or make text sound human.","bravew\u002Ftrove","bravew","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F10855844?v=4","01M7ACJ91JZSQYHT81XPVYR7VA","Yong","01M7AFERNR92HDPGNGP5QA16DM",10,"MIT","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fplugins\u002Ftrove-workflow\u002F.agents\u002Fskills\u002Ftrove-unslop\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: trove-unslop\ndescription: \"Cut AI tells from writing — PR descriptions, release notes, specs, commit bodies, and replies. Use before finalizing prose, or when the user asks to clean up, de-slop, or make text sound human.\"\nmetadata:\n  trove-category: writing\n  trove-category-label: Writing\n---\n\u003C!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->\n\u003C!-- Regenerate: bun run build:skills -->\n\n## Session Init\n\nThis skill ships Trove conventions. Prefer existing project patterns over generic best practices when they conflict.\n\n# trove-unslop\n\nCut the tells that mark writing as AI-generated, without dropping content. Write it clean the first time; a cleanup pass after the fact reliably misses things.\n\n## Process\n\n1. **Scan** for the patterns below.\n2. **Rewrite** each into plain, direct prose. Short declarative sentences, one thought each.\n3. **Add voice.** Sterile, voiceless writing is just as obvious a tell as purple prose. Say the real thing.\n4. **Self-audit.** Ask: \"What in this still reads as obviously AI-generated?\" Fix that.\n\n## The bans we keep catching\n\n- **No em dash**, and no parentheses used as its substitute. Make it two sentences, or use a colon before a list.\n- **No colon as a mid-sentence connector.** A colon before a list is fine; a colon joining two clauses is not.\n- **No \"It's not just X, it's Y\" \u002F \"X isn't about Y\" constructions.** State the thing.\n- **No hedging stacks** (\"it's worth noting that\", \"generally\", \"in many cases\") when you can just say it.\n- **No empty openers** (\"In today's fast-paced world\", \"When it comes to\").\n- **No section-header-plus-dash** one-liners. Write the header as its own sentence.\n\nThe full catalogue of patterns with fixes is in [references\u002Fpatterns.md](references\u002Fpatterns.md).\n\n## Scope\n\nThis applies to any prose surface you produce: the reply to the user, PR descriptions, release notes, specs, commit bodies, and docs. It does not rewrite quoted source material, code identifiers, or a user's own words.\n","\u003C!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->\n\u003C!-- Regenerate: bun run build:skills -->\n\n## Session Init\n\nThis skill ships Trove conventions. Prefer existing project patterns over generic best practices when they conflict.\n\n# trove-unslop\n\nCut the tells that mark writing as AI-generated, without dropping content. Write it clean the first time; a cleanup pass after the fact reliably misses things.\n\n## Process\n\n1. **Scan** for the patterns below.\n2. **Rewrite** each into plain, direct prose. Short declarative sentences, one thought each.\n3. **Add voice.** Sterile, voiceless writing is just as obvious a tell as purple prose. Say the real thing.\n4. **Self-audit.** Ask: \"What in this still reads as obviously AI-generated?\" Fix that.\n\n## The bans we keep catching\n\n- **No em dash**, and no parentheses used as its substitute. Make it two sentences, or use a colon before a list.\n- **No colon as a mid-sentence connector.** A colon before a list is fine; a colon joining two clauses is not.\n- **No \"It's not just X, it's Y\" \u002F \"X isn't about Y\" constructions.** State the thing.\n- **No hedging stacks** (\"it's worth noting that\", \"generally\", \"in many cases\") when you can just say it.\n- **No empty openers** (\"In today's fast-paced world\", \"When it comes to\").\n- **No section-header-plus-dash** one-liners. Write the header as its own sentence.\n\nThe full catalogue of patterns with fixes is in [references\u002Fpatterns.md](references\u002Fpatterns.md).\n\n## Scope\n\nThis applies to any prose surface you produce: the reply to the user, PR descriptions, release notes, specs, commit bodies, and docs. It does not rewrite quoted source material, code identifiers, or a user's own words.\n",{"name":5,"metadata":24,"description":7},{"trove-category":25,"trove-category-label":26},"writing","Writing","main","f88db1f1cf0e0703dd962051ebc142db961d7799","plugins\u002Ftrove-workflow\u002F.agents\u002Fskills\u002Ftrove-unslop",1,"https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove","https:\u002F\u002Fgithub.com\u002Fbravew","2026-11-12 07:56:32",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add bravew\u002Ftrove --skill trove-unslop",{"tool":40,"command":41},"bunx","bunx skills add bravew\u002Ftrove --skill trove-unslop",{"tool":43,"command":44},"pnpm","pnpm dlx skills add bravew\u002Ftrove --skill trove-unslop","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fplugins\u002Ftrove-workflow\u002F.agents\u002Fskills\u002Ftrove-unslop\u002FSKILL.md",true,[48],{"path":49,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":52,"sourceHtmlUrl":53},"references\u002Fpatterns.md","REFERENCE","参考文档",3109,"https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fplugins\u002Ftrove-workflow\u002F.agents\u002Fskills\u002Ftrove-unslop\u002Freferences\u002Fpatterns.md",[55,62,69,76,83,90],{"skillNo":56,"name":57,"nameZh":6,"description":58,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":59,"categories":60,"keywords":61,"publishedAt":19},"01M7AGJDHTQAS1VK6P7VJAV79G","using-trove","Skill discipline anchor for the Trove marketplace. Loaded once per session; routes the agent to the right trove-* skill before code, planning, review, or git actions.","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Fusing-trove\u002FSKILL.md",[],[],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":19},"01M7AGJAS4V4TXE6TV6F839BGZ","trove-write-skill","Skill authoring workflow. Use when creating or updating a Codex or Trove skill, including rubrics, tasks, metadata, and validation.","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Ftrove-write-skill\u002FSKILL.md",[],[],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M7AGJ87K41ZAC8DDBAV17QFW","trove-worktree","Git worktree workflow for spikes, risky experiments, and broad refactors that should not disturb the user's current branch.","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Ftrove-worktree\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M7AGJ32V58VYBFYMS9EMHRY4","trove-why","Reconstruct design rationale and decision history from evidence — source control, issue tracker (Linear), docs (Notion), chat (Slack), error tracking (Sentry) — with calibrated confidence. Use for \"why does X work this way\", \"why did we pick Y\", regressions, and postmortems. Use trove-explain for how it works now.","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Ftrove-why\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":19},"01M7AGJ0FHJSRR8MMXC3V8XNHF","trove-verify","Completion verification workflow. Use before claiming done, fixed, complete, ready, or shipped.","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Ftrove-verify\u002FSKILL.md",[],[],{"skillNo":91,"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":92,"categories":93,"keywords":94,"publishedAt":19},"01M7AGHWV4B9SDS60RH5W0B0K5","https:\u002F\u002Fgithub.com\u002Fbravew\u002Ftrove\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002Ftrove-unslop\u002FSKILL.md",[],[]]