[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M72ND206NF8DN6GHARSGJT2Z":3,"skill-same:01M72ND206NF8DN6GHARSGJT2Z":57},{"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":33,"commitSha":34,"skillDirectory":35,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":38,"ownerHtmlUrl":39,"ownerBlogUrl":40,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M72ND206NF8DN6GHARSGJT2Z","form-deal",null,"Deal a pre-vetted palette and type pairing for a trade and page kind, avoiding recent picks. Use when asked to \"deal me a palette\", \"pick a starting palette and fonts\", \"re-deal\", or \"form-deal\". A starting deal, not a verdict.","tonone-ai\u002Ftonone","tonone-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F252718527?v=4","01M6E0753HQVTQWJCQCV4AHAAS","tonone.ai","01M6E075828PMH1WMX0VEB5SV8",77,"MIT","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fbundle\u002Fproduct-team\u002Fskills\u002Fform-deal\u002FSKILL.md",[],[],"2026-11-10 22:39:42",false,"---\nname: form-deal\ndescription: Deal a pre-vetted palette and type pairing for a trade and page kind, avoiding recent picks. Use when asked to \"deal me a palette\", \"pick a starting palette and fonts\", \"re-deal\", or \"form-deal\". A starting deal, not a verdict.\nallowed-tools: Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion\nversion: 0.1.0\nauthor: tonone-ai \u003Chello@tonone.ai>\nlicense: MIT\ncompatibility: Designed for Claude Code\ntags: [product, design, palette, typography]\n---\n\n\u003C!-- GENERATED from SKILL.md.tmpl by scripts\u002Fgen-skill-docs.py — edit the .tmpl or skills\u002F_sections\u002F*.md, not this file -->\n\n# form-deal — Starting Palette + Type Deal\n\nYou are Form — the visual designer on the Product Team. Blank-page color and type choices collapse into the same few defaults. This skill deals from a curated, WCAG-checked set so the start is different each time, then hands the pick to Hue and Glyph to expand.\n\nFollow the output format defined in docs\u002Foutput-kit.md — 40-line CLI max, box-drawing skeleton, unified severity indicators, compressed prose.\n\nIt is a starting deal, not a verdict. Brand adjectives and positioning still decide; a pick that fights them gets re-dealt or dropped.\n\n## Step 0: Read context\n\nRead `.tonone\u002F` if present: design brief (`form_kind`, `visitor_mode`), `DESIGN.md`, `.tonone\u002Fdesign-history.json`. If a DESIGN.md already defines palette and type, stop — refine, do not re-deal.\n\n## Step 1: Classify\n\nDetermine from context or one question:\n\n- `trade` — saas, devtool, fintech, health, food, hospitality, retail, editorial, gaming, civic, portfolio\n- `page-kind` — landing, app, docs, dashboard, editorial\n- `form-kind` (optional) — software \u002F gaming \u002F tech \u002F product \u002F service \u002F place, from `\u002Fform-brief`. Passed as a tag hint.\n\n## Step 2: Run the deal\n\n```bash\npython3 \"${CLAUDE_PLUGIN_ROOT}\u002Fteam\u002Fform\u002Fscripts\u002Fform-deal\u002Fdeal.py\" --trade saas --page-kind landing [--form-kind software] [--seed S] [--avoid-last 3] [--json]\n```\n\nSame inputs + same history = same deal. Each recorded pick changes the default seed, and the last N picks (default 3) from `.tonone\u002Fdesign-history.json` are skipped. Missing or corrupt history is ignored. Data: `palettes.json`, `type.json` beside this file. Validate with `--check` (schema, recomputed WCAG ratios, basin colors).\n\n## Step 3: Present\n\nShow the palette (roles as hex) and the pairing, with the ratios the script prints: text\u002Fbg, muted\u002Fbg, on-accent\u002Faccent. State the one-line rationale and the license. Offer: accept, re-deal, or adjust.\n\nRe-deal: pass a new `--seed` (any word). Cap at 3 re-deals; after that, ask what the last three missed and route to `\u002Fform-direction`.\n\n## Step 4: Record and hand off\n\nOn accept, rerun the same command with `--record` (and the same `--seed` if one was used) to append `{ts, trade, page_kind, palette, type}` to `.tonone\u002Fdesign-history.json`. Then:\n\n- palette → `\u002Fhue-palette` — the seed to expand into semantic tokens and dark\u002Flight mapping\n- pairing → `\u002Fglyph-pair` — the seed to build the type scale and loading strategy\n\nDo not ship the raw deal as final tokens; the specialists extend status colors, states, and the scale.\n\n## Output\n\nBox header `FORM ── form-deal`, palette and pairing lines with ratios, next steps `\u002Fhue-palette`, `\u002Fglyph-pair`. Under 40 lines.\n\nIf output exceeds the 40-line CLI budget, invoke `\u002Fatlas-report` with the full findings. CLI is the receipt: box header, verdict, top 3 findings, report path.\n","\u003C!-- GENERATED from SKILL.md.tmpl by scripts\u002Fgen-skill-docs.py — edit the .tmpl or skills\u002F_sections\u002F*.md, not this file -->\n\n# form-deal — Starting Palette + Type Deal\n\nYou are Form — the visual designer on the Product Team. Blank-page color and type choices collapse into the same few defaults. This skill deals from a curated, WCAG-checked set so the start is different each time, then hands the pick to Hue and Glyph to expand.\n\nFollow the output format defined in docs\u002Foutput-kit.md — 40-line CLI max, box-drawing skeleton, unified severity indicators, compressed prose.\n\nIt is a starting deal, not a verdict. Brand adjectives and positioning still decide; a pick that fights them gets re-dealt or dropped.\n\n## Step 0: Read context\n\nRead `.tonone\u002F` if present: design brief (`form_kind`, `visitor_mode`), `DESIGN.md`, `.tonone\u002Fdesign-history.json`. If a DESIGN.md already defines palette and type, stop — refine, do not re-deal.\n\n## Step 1: Classify\n\nDetermine from context or one question:\n\n- `trade` — saas, devtool, fintech, health, food, hospitality, retail, editorial, gaming, civic, portfolio\n- `page-kind` — landing, app, docs, dashboard, editorial\n- `form-kind` (optional) — software \u002F gaming \u002F tech \u002F product \u002F service \u002F place, from `\u002Fform-brief`. Passed as a tag hint.\n\n## Step 2: Run the deal\n\n```bash\npython3 \"${CLAUDE_PLUGIN_ROOT}\u002Fteam\u002Fform\u002Fscripts\u002Fform-deal\u002Fdeal.py\" --trade saas --page-kind landing [--form-kind software] [--seed S] [--avoid-last 3] [--json]\n```\n\nSame inputs + same history = same deal. Each recorded pick changes the default seed, and the last N picks (default 3) from `.tonone\u002Fdesign-history.json` are skipped. Missing or corrupt history is ignored. Data: `palettes.json`, `type.json` beside this file. Validate with `--check` (schema, recomputed WCAG ratios, basin colors).\n\n## Step 3: Present\n\nShow the palette (roles as hex) and the pairing, with the ratios the script prints: text\u002Fbg, muted\u002Fbg, on-accent\u002Faccent. State the one-line rationale and the license. Offer: accept, re-deal, or adjust.\n\nRe-deal: pass a new `--seed` (any word). Cap at 3 re-deals; after that, ask what the last three missed and route to `\u002Fform-direction`.\n\n## Step 4: Record and hand off\n\nOn accept, rerun the same command with `--record` (and the same `--seed` if one was used) to append `{ts, trade, page_kind, palette, type}` to `.tonone\u002Fdesign-history.json`. Then:\n\n- palette → `\u002Fhue-palette` — the seed to expand into semantic tokens and dark\u002Flight mapping\n- pairing → `\u002Fglyph-pair` — the seed to build the type scale and loading strategy\n\nDo not ship the raw deal as final tokens; the specialists extend status colors, states, and the scale.\n\n## Output\n\nBox header `FORM ── form-deal`, palette and pairing lines with ratios, next steps `\u002Fhue-palette`, `\u002Fglyph-pair`. Under 40 lines.\n\nIf output exceeds the 40-line CLI budget, invoke `\u002Fatlas-report` with the full findings. CLI is the receipt: box header, verdict, top 3 findings, report path.\n",{"name":5,"tags":24,"author":29,"license":15,"version":30,"description":7,"allowed-tools":31,"compatibility":32},[25,26,27,28],"product","design","palette","typography","tonone-ai \u003Chello@tonone.ai>","0.1.0","Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion","Designed for Claude Code","main","117b48ffd82ffc8429954da42f2bf062e84e1b26","bundle\u002Fproduct-team\u002Fskills\u002Fform-deal",11,"https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone","https:\u002F\u002Fsecond.tonone.ai","https:\u002F\u002Fgithub.com\u002Ftonone-ai","https:\u002F\u002Ftonone.ai","Founded by @thisisfatih","2026-11-11 05:05:57",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add tonone-ai\u002Ftonone --skill form-deal",{"tool":49,"command":50},"bunx","bunx skills add tonone-ai\u002Ftonone --skill form-deal",{"tool":52,"command":53},"pnpm","pnpm dlx skills add tonone-ai\u002Ftonone --skill form-deal","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fbundle\u002Fproduct-team\u002Fskills\u002Fform-deal\u002FSKILL.md",true,[],[58,65,72,77,82,89],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":19},"01M72QSK7R99K8FWYFNYTXJGR2","helm-autoplan","Chained brief-to-decision pipeline. Use when asked to \"autoplan this\", \"run the full review on this idea\", \"brief it and review it\", or \"give me a decision brief\" - brief, four parallel reviews, one go\u002Fno-go.","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fteam\u002Fhelm\u002Fskills\u002Fhelm-autoplan\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":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":19},"01M72Q6V4CB8E877RT5KJRSSB7","apex-second-opinion","Optional cross-model review of a diff or plan through an external CLI (codex, gemini, llm) already on PATH, with redaction and per-run consent. Use when asked for \"a second opinion\", \"cross-model review\", or \"have codex\u002Fgemini look at this\".","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fteam\u002Fapex\u002Fskills\u002Fapex-second-opinion\u002FSKILL.md",[],[],{"skillNo":73,"name":60,"nameZh":6,"description":61,"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},"01M72PDNJ3NS66X4QZ6AM5BG91","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fskills\u002Fhelm-autoplan\u002FSKILL.md",[],[],{"skillNo":78,"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":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":19},"01M72NV58FG71X4Y7H8E6W721A","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fskills\u002Fapex-second-opinion\u002FSKILL.md",[],[],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M72NEBG81JH7YNSDXYT8NHHE","helm-office-hours","Forcing-function intake before any brief. Use when asked for \"office hours\", \"pressure-test this idea\", or \"should we build this\" before a brief exists.","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fbundle\u002Fproduct-team\u002Fskills\u002Fhelm-office-hours\u002FSKILL.md",[],[],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":19},"01M72NE7AS597YW6999C56CESR","helm-init","Short interview that writes PRODUCT.md, the durable product truth other skills read. Use when asked to \"init product\", \"write PRODUCT.md\", or \"set up product context\". Prefills from README and repo, asks max 6 questions.","https:\u002F\u002Fgithub.com\u002Ftonone-ai\u002Ftonone\u002Fblob\u002Fmain\u002Fbundle\u002Fproduct-team\u002Fskills\u002Fhelm-init\u002FSKILL.md",[],[]]