[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M77X6MP3QREGFTXQ75CPXFWS":3,"skill-same:01M77X6MP3QREGFTXQ75CPXFWS":56},{"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":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":29,"ownerHtmlUrl":30,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":31,"install":32,"resources":45},"01M77X6MP3QREGFTXQ75CPXFWS","alt-text-writer",null,"Writing alt text for marketing site images. Use when adding new site imagery or reviewing existing imagery for accessibility.","StartupBros-com\u002Fhov-stack","StartupBros-com","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F262958016?v=4","01M77WY8AH50FY939DTGZYHVE9","StartupBros.com","01M77WY8B5Q2D7VSS0P6Y0JX6E",1,"MIT","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Fskill-tuner\u002Fexperiments\u002Fauthoring-ab\u002Fworkspace\u002Fbrand-image-alt-text\u002Fancestor\u002Frun-1\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: alt-text-writer\ndescription: Writing alt text for marketing site images. Use when adding new site imagery or reviewing existing imagery for accessibility.\n---\n\n## Process\n\n1. **Classify the image: decorative or informative.**\n   Decorative — conveys no information beyond what surrounding text already states, or is pure ornament (spacing, texture, repeated background): set `alt=\"\"` and stop here.\n   Informative — continue to step 2.\n\n2. **Confirm you can actually see the image.**\n   If you have no image data — broken link, filename only, asset not rendered — stop and ask the user for a description of the image. Do not guess at content you cannot see.\n\n3. **Check for text baked into the image itself** (headline, caption, signage, label, badge). If present, it must appear in the alt text transcribed verbatim.\n\n4. **Identify the subject and front-load it** — the alt text's first words name what the image is of, not the scene setup around it.\n\n5. **Product shot?** Name the product line explicitly. A product photo without its product line in the alt text is incomplete.\n\n6. **Write the alt text.**\n   - 125 characters max.\n   - Never use \"image of\" or \"picture of\" — start directly with the subject.\n   - Include verbatim baked-in text (step 3) and product line (step 5) where they apply.\n\nDone when: every image is either `alt=\"\"` (decorative) or has alt text meeting all of steps 3–6, or a description has been requested for anything unviewable.","## Process\n\n1. **Classify the image: decorative or informative.**\n   Decorative — conveys no information beyond what surrounding text already states, or is pure ornament (spacing, texture, repeated background): set `alt=\"\"` and stop here.\n   Informative — continue to step 2.\n\n2. **Confirm you can actually see the image.**\n   If you have no image data — broken link, filename only, asset not rendered — stop and ask the user for a description of the image. Do not guess at content you cannot see.\n\n3. **Check for text baked into the image itself** (headline, caption, signage, label, badge). If present, it must appear in the alt text transcribed verbatim.\n\n4. **Identify the subject and front-load it** — the alt text's first words name what the image is of, not the scene setup around it.\n\n5. **Product shot?** Name the product line explicitly. A product photo without its product line in the alt text is incomplete.\n\n6. **Write the alt text.**\n   - 125 characters max.\n   - Never use \"image of\" or \"picture of\" — start directly with the subject.\n   - Include verbatim baked-in text (step 3) and product line (step 5) where they apply.\n\nDone when: every image is either `alt=\"\"` (decorative) or has alt text meeting all of steps 3–6, or a description has been requested for anything unviewable.",{"name":5,"description":7},"main","5889e24531cb4e925523afbc48cbe1f42b5e4cd7","plugins\u002Fskill-tuner\u002Fexperiments\u002Fauthoring-ab\u002Fworkspace\u002Fbrand-image-alt-text\u002Fancestor\u002Frun-1",0,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack","https:\u002F\u002Fhouseofvibe.ai","https:\u002F\u002Fgithub.com\u002FStartupBros-com","2026-11-15 05:18:00",{"source":8,"skillName":5,"commands":33,"prompt":43,"zipAvailable":44},[34,37,40],{"tool":35,"command":36},"npx","npx skills add StartupBros-com\u002Fhov-stack --skill alt-text-writer",{"tool":38,"command":39},"bunx","bunx skills add StartupBros-com\u002Fhov-stack --skill alt-text-writer",{"tool":41,"command":42},"pnpm","pnpm dlx skills add StartupBros-com\u002Fhov-stack --skill alt-text-writer","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Fskill-tuner\u002Fexperiments\u002Fauthoring-ab\u002Fworkspace\u002Fbrand-image-alt-text\u002Fancestor\u002Frun-1\u002FSKILL.md",true,[46,52],{"path":47,"resourceType":48,"resourceTypeDesc":49,"sizeBytes":50,"sourceHtmlUrl":51},"grading.json","REFERENCE","参考文档",1044,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Fskill-tuner\u002Fexperiments\u002Fauthoring-ab\u002Fworkspace\u002Fbrand-image-alt-text\u002Fancestor\u002Frun-1\u002Fgrading.json",{"path":53,"resourceType":48,"resourceTypeDesc":49,"sizeBytes":54,"sourceHtmlUrl":55},"meta.json",209,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Fskill-tuner\u002Fexperiments\u002Fauthoring-ab\u002Fworkspace\u002Fbrand-image-alt-text\u002Fancestor\u002Frun-1\u002Fmeta.json",[57,65,73,81,86,93],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":61,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":19},"01M77XGSFPK8Q1XBHYTC1TF2MV","review-adversarial-first","Operator-invoked adversarial review: 3 refute-by-default lenses plus a deterministic judge against a PR, branch, or path, then a decision on whether \u002Fce-code-review's topic fan-out runs. Off the default merge path since the 2026-10-17 merge-and-end ruling; run only when asked for by name.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-stack\u002Freview-adversarial-first\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-stack\u002Freview-adversarial-first\u002FSKILL.md",[],[],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":69,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":19},"01M77XGNSF0ARDTK9P3EF2S4E4","memory-mine","Run one deterministic, budgeted directed-capture batch for an explicit Claude Code project store. Use manual workspace mode only when cross-agent cass sessions are intentionally in scope.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-stack\u002Fmemory-mine\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-stack\u002Fmemory-mine\u002FSKILL.md",[],[],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":77,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M77XGHB8NDSNVSDWFCN1WJBY","papers","Search preprints from arXiv, bioRxiv, and medRxiv without API keys. Supports search, lookup, extraction, citations, enrichment, and paper downloads that bundle PDFs plus linked GitHub code.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-patches\u002Fpapers\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-patches\u002Fpapers\u002FSKILL.md",[],[],{"skillNo":82,"name":75,"nameZh":6,"description":76,"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":19},"01M77XGBC08DP018FQY16FM0X8","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fskills-patches\u002Fpapers\u002F.base\u002FSKILL.md",[],[],{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":19},"01M77XG4P5EM9PM8NGRZSJV4CB","wsl-cdp","Drive the user's real, logged-in Windows browser (Chrome, Edge, or Brave) from a Claude Code session running inside WSL2, over the Chrome DevTools Protocol - read authenticated dashboards and consoles, take real screenshots, open and read pages with the user's sessions. Use when a task needs the user's existing web logins and the session runs in WSL2, where the Claude in Chrome extension cannot work. Not for native-Windows or macOS Claude Code (use the official Claude in Chrome extension), not for anonymous scraping or CI (use headless Playwright inside WSL), not for getting past login walls (those are handed to the human).","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Fwsl-cdp\u002Fskills\u002Fwsl-cdp\u002FSKILL.md",[],[],{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":19},"01M77XFZE48M4SQ2Y7A3GFY4RD","token-eater","[BETA] Spend a subscription's idle, about-to-expire credits on safe, machine-verified cleanup. You pick the service (Grok \u002F Codex \u002F Claude) and a token-heavy maintenance skill (de-monolithize, de-slop, simplify, dead-code); that service runs the whole skill -> gate -> self-review -> draft-PR loop on its own credits, in an isolated worktree. token-eater verifies the gate and never merges. Manual invocation only during beta.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Fblob\u002Fmain\u002Fplugins\u002Ftoken-eater\u002Fskills\u002Ftoken-eater\u002FSKILL.md",[],[]]