Loading...
Loading...
Scaffolds a production-ready TypeScript CLI project with ESM, tsdown, vitest, oxlint, oxfmt, changesets, GitHub Actions, and an agent skill definition. Use when creating a new CLI tool, bootstrapping a TypeScript project, scaffolding a node CLI, starting a new npm package, or asking "scaffold a CLI project."
npx skill4agent add mblode/agent-skills scaffold-cli| File | Read When |
|---|---|
| Default: templates for package.json, tsconfig, tsdown, gitignore, license, changeset config, GitHub Actions |
| Default: templates for src/cli.ts, src/index.ts, src/types.ts, AGENTS.md, README.md, skills/SKILL.md |
| After generating files: post-scaffold commands and validation checklist |
Scaffold progress:
- [ ] Step 1: Gather project info
- [ ] Step 2: Create directory structure
- [ ] Step 3: Generate config files
- [ ] Step 4: Generate source files
- [ ] Step 5: Generate docs and skill
- [ ] Step 6: Run post-scaffold commands
- [ ] Step 7: Validate scaffold| Variable | Example | Default | Used in |
|---|---|---|---|
| | — (required) | package.json name, README title |
| | — (required) | package.json, README, SKILL.md |
| | same as | package.json bin field, CLI examples |
| | — (required) | package.json repository, badges |
| | — (required) | package.json, LICENSE |
| | current year | LICENSE |
{{name}}/
.changeset/
.github/
workflows/
src/
skills/{{bin}}/references/scaffold-configs.md{{placeholder}}package.jsontsconfig.jsontsdown.config.ts.gitignoreLICENSE.md.changeset/config.json.changeset/README.md.github/workflows/ci.yml.github/workflows/npm-publish.ymlreferences/scaffold-source.mdsrc/cli.tssrc/index.tssrc/types.tsreferences/scaffold-source.mdAGENTS.mdREADME.mdskills/{{bin}}/SKILL.mdln -s AGENTS.md CLAUDE.mdreferences/post-scaffold.mdreferences/post-scaffold.md{{variable}}| Placeholder | Source |
|---|---|
| Project name (kebab-case) |
| One-line project description |
| CLI binary name |
| GitHub owner/repo |
| Author name |
| Current year |
@clack/promptscommandergray-matter@changesets/cli@types/nodetsdowntypescriptultracitevitestnode:util@clack/prompts"type": "module"skills/ultracite fixultracite checknode:util@clack/prompts