Signature features that turn breadth (174 skills) into a differentiated product:
- Workflow recipes: 5 cross-profession chains (workflows.json) that pass each
output forward — slash commands (/ship-a-feature etc.), WORKFLOWS.md generated
by scripts/build-workflows.mjs, README + MCP (list_workflows/get_workflow) wired
- Eval-backed quality: real per-skill scores from evals/results.json surfaced as
badges in the playground and an honest README section (6 scored skills)
- One-click MCP: 'claude mcp add' install + workflow tools, works in any MCP client
- Playground: 'which skill?' recommender, with/without compare toggle, shareable
?skill= deep-links with prefilled inputs
- Sample-output gallery: hand-written examples for the hero five + generator
(scripts/build-samples.mjs) + web/examples.html
- Skill-of-the-week: scheduled workflow + script that composes X/LinkedIn posts
and posts to an optional webhook
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The check-generated CI step was failing with "web/skills.json is stale"
because build-skills.mjs stamped a wall-clock generatedAt into the file, so
every rebuild differed and git diff --exit-code never matched.
- web/build-skills.mjs: drop the unused generatedAt timestamp -> deterministic
output the CI staleness check can verify. Also tags each skill with its tier.
- skill-tiers.json: single machine-readable source for tier membership
(Production-Ready / Experimental); TIERS.md points to it.
Playground upgrades (hosted on GitHub Pages):
- Tier filter (Production-Ready / Stable / Experimental) + per-tile tier badges.
- "Use this skill in another tool" panel: copy the instructions formatted for
ChatGPT, Gemini, or raw — mirrors the generated exports/ files.
- web/README documents the new options and the deterministic build.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016JWn5jRD5tcEFKrubjQ6Px
- Streaming loop swallowed errors: a mid-stream error event (e.g.
overloaded_error) was thrown inside the same try/catch used to skip
unparseable SSE lines, so it was silently ignored and the run reported
"Done." with truncated output. Separate JSON parsing from event handling
so real errors surface to the user.
- Raise max_tokens 4096 -> 8192 to avoid truncating long skill outputs.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A zero-backend static web app to run any of the 172 skills directly in the
browser using the user's own Claude API key (stored only in localStorage,
sent straight to api.anthropic.com).
- build-skills.mjs: generates skills.json from skills/*/SKILL.md, parsing
frontmatter, the Required Inputs section (-> form fields), and a one-line
summary for each skill tile.
- Tile gallery with bundle tag, title, and one-line description; search +
bundle filter; click a tile to open an auto-generated input form.
- Streams output via the Anthropic Messages API (direct browser access),
with copy/download, model picker, and Show/Hide key toggle.
- Product Notes logo in the header.
- README: add Skill Playground section + screenshot, a table of contents,
and collapse the long changelog and full skills list into <details> blocks.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>