v0.3.0 — ai-bootstrap new: project-scope skills
Project-scope skills + agents — different bundles per project.
Added
ai-bootstrap newsubcommand — bootstrap any folder as a project:- Ask the project name (defaults to folder name)
- Ask "what is this project?" with 9 intent choices that auto-map to a bundle:
- SaaS / Fullstack → developer
- AI Creator content → creator
- Marketing / SMM → marketer
- Mobile app → developer
- Data analysis / dashboard → developer
- Client agency work → full-stack
- Startup / founder → founder
- Open source library → developer
- Just basics → foundation
- Allow bundle override
- Ask for 1-2 sentence project description (goes into CLAUDE.md)
- Allow custom project-specific rules
- Install skills to
<project>/.claude/skills/(PROJECT scope) - Install agents to
<project>/.claude/agents/(PROJECT scope) - Write
<project>/CLAUDE.mdwith project metadata + bundle reference - Save state to
<project>/.claude/ai-bootstrap-project.json
Why this matters
Previously, ai-bootstrap installed ONE bundle globally (~/.claude/). Every
project saw the same skill set. Real users have multiple identities — AI
creator on Monday, full-stack dev on Tuesday, marketer on Wednesday — and
need different skills per project.
Claude Code's project-scope skills (<project>/.claude/skills/) load ONLY
when working inside that project. This gives you the right tools per context
without polluting every session.
Changed
installSkills(names, targetDir?)— second arg defaults to~/.claude/skills/
for backward compat; project install passes<project>/.claude/skills/installAgents(names, targetDir?)— same pattern- Help text reorganized: user-scope wizard vs project-scope
new
Testing
- New smoke test: 'project-scope install' — verifies skills install to
project dir, user-scope dir NOT affected - E2E test updated for help text changes
- 127 tests passing (was 124)
Workflow
# Once per machine — universal foundation:
npx @azerogluemin/ai-bootstrap # picks foundation/minimal user-scope
# Then per project:
cd ~/Projects/my-saas && ai-bootstrap new # → developer bundle
cd ~/Projects/azerogluemin-content && ai-bootstrap new # → creator bundle
cd ~/Clients/restaurant-smm && ai-bootstrap new # → marketer bundleEach project sees only its own bundle. No skill pollution.