[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CP9GMMTNQK2GZRN7F2RJE5":3,"skill-same:01M6CP9GMMTNQK2GZRN7F2RJE5":67},{"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":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":66},"01M6CP9GMMTNQK2GZRN7F2RJE5","taste-review",null,"Ask Claude Code to make a taste-driven call on something ambiguous — UI polish, prose phrasing, naming, formatting. Use when you'd otherwise guess.","bholmesdev\u002Fhubble.md","bholmesdev","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F51384119?v=4","01M6CP8SJ3N9W8FYVCGV41QT3G","Ben Holmes","01M6CP8SP3A84K1TFMVS8BEBDW",1523,"MIT","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftaste-review\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"taste review","review","taste","call","ask claude","true","you","naming","make","driven","formatting","prose","use","ask","ui polish","polish","ui","code","2026-11-10 10:12:30",false,"---\nname: taste-review\ndescription: Ask Claude Code to make a taste-driven call on something ambiguous — UI polish, prose phrasing, naming, formatting. Use when you'd otherwise guess.\nmetadata:\n  internal: true\n---\n\nYou hit something fuzzy and need a judgment call. Shell out to the `claude` CLI to get one back, then apply it.\n\nRun from the repo root so `claude` can read files by relative path:\n\nRun outside the sandbox when required, requesting reusable approval for the\n`claude -p` prefix. On macOS, use the optional long-lived subscription OAuth\ntoken from Keychain when present. Otherwise, fall back to that machine's normal\nClaude authentication.\n\n```bash\nprompt=\"$(cat \u003C\u003C'EOF'\n\u003Cyour question, stated plainly>\n\nFiles to consider: \u003Cpaths, if any>\n\nWeigh a few options, give your recommendation, and share others as alternatives considered.\nLength is up to you — a design call may warrant several paragraphs;\na naming call may not. Match the depth to the decision.\nEOF\n)\"\n\nif [[ \"$(uname)\" == \"Darwin\" ]] &&\n  oauth_token=\"$(\n    security find-generic-password \\\n      -a \"$USER\" \\\n      -s \"Claude Code skill OAuth\" \\\n      -w 2>\u002Fdev\u002Fnull\n  )\"; then\n  CLAUDE_CODE_OAUTH_TOKEN=\"$oauth_token\" claude -p \"$prompt\"\nelse\n  claude -p \"$prompt\"\nfi\n```\n","You hit something fuzzy and need a judgment call. Shell out to the `claude` CLI to get one back, then apply it.\n\nRun from the repo root so `claude` can read files by relative path:\n\nRun outside the sandbox when required, requesting reusable approval for the\n`claude -p` prefix. On macOS, use the optional long-lived subscription OAuth\ntoken from Keychain when present. Otherwise, fall back to that machine's normal\nClaude authentication.\n\n```bash\nprompt=\"$(cat \u003C\u003C'EOF'\n\u003Cyour question, stated plainly>\n\nFiles to consider: \u003Cpaths, if any>\n\nWeigh a few options, give your recommendation, and share others as alternatives considered.\nLength is up to you — a design call may warrant several paragraphs;\na naming call may not. Match the depth to the decision.\nEOF\n)\"\n\nif [[ \"$(uname)\" == \"Darwin\" ]] &&\n  oauth_token=\"$(\n    security find-generic-password \\\n      -a \"$USER\" \\\n      -s \"Claude Code skill OAuth\" \\\n      -w 2>\u002Fdev\u002Fnull\n  )\"; then\n  CLAUDE_CODE_OAUTH_TOKEN=\"$oauth_token\" claude -p \"$prompt\"\nelse\n  claude -p \"$prompt\"\nfi\n```\n",{"name":5,"metadata":42,"description":7},{"internal":43},true,"main","cf633b3221b9572f22604168ac77c1ffa921debe",".agents\u002Fskills\u002Ftaste-review",99,"https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md","https:\u002F\u002Fhubble.md","https:\u002F\u002Fgithub.com\u002Fbholmesdev","https:\u002F\u002Fbholmes.dev","Web developer, teacher, whiteboardist. Building the next terminal @warpdotdev ","2026-11-06 02:02:39",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":43},[56,59,62],{"tool":57,"command":58},"npx","npx skills add bholmesdev\u002Fhubble.md --skill taste-review",{"tool":60,"command":61},"bunx","bunx skills add bholmesdev\u002Fhubble.md --skill taste-review",{"tool":63,"command":64},"pnpm","pnpm dlx skills add bholmesdev\u002Fhubble.md --skill taste-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftaste-review\u002FSKILL.md",[],[68,86,102,122,142,166],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":79,"publishedAt":37},"01M6PQAVS5DTTVEV9VA313YSYM","review-markdown-comments","Reply to, resolve, or reopen Hubble review comments stored as CriticMarkup in Markdown files. Use when asked to address a Hubble review comment.","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Freview-markdown-comments\u002FSKILL.md",[74],{"categoryNo":75,"categoryName":76,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",[80,81,20,82,83,84,85,31],"review markdown comments","comments","markdown","as","files","reply",{"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":37},"01M6PQAH29FCQB6921Y94CA8F4","merge-risk","Use when assessing the risk of merging a PR","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fmerge-risk\u002FSKILL.md",[],[93,94,95,96,97,98,99,100,24,101,31,44],"merge","risk","merge risk","github","blob","pr","https","engineering","matt pocock",{"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":112,"publishedAt":37},"01M6PQA0ADFHMANPW4KRAV7EA6","embed-html-app","Embed a Hubble HTML App inline inside a Markdown File using an iframe block. Use when an app should be viewed in the context of a document.","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fembed-html-app\u002FSKILL.md",[108,109],{"categoryNo":75,"categoryName":76,"taxonomyType":77,"taxonomyTypeDesc":78},{"categoryNo":110,"categoryName":111,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000009","前端开发",[113,114,115,116,117,118,82,119,31,120,121],"html","app","embed","embed html app","inline","file","context","document","block",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":128,"publishedAt":37},"01M6PQ9WQM5HF4QQ1J750346NY","edit-diagram","Create or edit a Hubble diagram: a .tldr file Hubble opens in its built-in tldraw canvas. With this skill installed, any diagram, canvas, whiteboard, or .tldr file is a Hubble diagram: use this skill instead of tldraw-offline, unless the user names the tldraw offline app or the file is a .tldraw archive.","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fedit-diagram\u002FSKILL.md",[],[129,130,131,31,132,133,134,135,118,136,137,138,139,114,140,141],"edit diagram","edit","diagram","whiteboard","canvas","create","offline","tldraw offline","archive","tldr","user","tldraw","with",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":152,"publishedAt":37},"01M6PQ9JKMF9ZDQWNVSA38VCTT","create-html-app","Create or update a Hubble HTML App: a folder-local .html file Hubble runs as a self-contained interactive UI, with Alpine, Tailwind, Hubble theme tokens, and the injected hubble runtime API.","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcreate-html-app\u002FSKILL.md",[148,149],{"categoryNo":110,"categoryName":111,"taxonomyType":77,"taxonomyTypeDesc":78},{"categoryNo":150,"categoryName":151,"taxonomyType":77,"taxonomyTypeDesc":78},"01JBSEEDCAT000000000000010","后端与接口",[153,114,113,134,35,154,155,156,157,158,159,160,161,162,118,163,83,164,141,165],"create html app","theme tokens","runtime","tokens","local","self","interactive","Tailwind","api","alpine","update","theme","folder",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":172,"publishedAt":37},"01M6CPAR6ECFN9P9H1S4XWDCB1","convex","Routes general Convex requests to the right project skill. Use when the user asks which Convex skill to use or gives an underspecified Convex app task.","https:\u002F\u002Fgithub.com\u002Fbholmesdev\u002Fhubble.md\u002Fblob\u002Fmain\u002Fpackages\u002Fsync-backend\u002F.agents\u002Fskills\u002Fconvex\u002FSKILL.md",[],[168,173,174,175,31,139],"task","general","project skill"]