Awesome-omni-skill project-bootstrap
Initial project analysis after vendoring — detects stack, conventions, and generates a project-overview skill.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/project-bootstrap" ~/.claude/skills/diegosouzapw-awesome-omni-skill-project-bootstrap-f42ac9 && rm -rf "$T"
skills/development/project-bootstrap/SKILL.mdProject Bootstrap
Performs initial project analysis when the AI coding protocols are first vendored into a project. Scans the codebase to detect the technology stack, architectural patterns, and key conventions, then generates an initial project-overview skill and an adapted blueprint.
When to Activate
- Right after
installation into a new projectmake ai - When the agent first encounters an
directory without project-specific skills.ai/ - When explicitly asked to bootstrap or initialize AI protocols for the project
Core Concepts
- Idempotent — checks for existing project skills before generating; never overwrites previous work
- Detection over assumption — scans actual project files rather than guessing based on directory names
- Minimal initial output — generates one project-overview skill and one blueprint; the
skill handles ongoing growthskill-generator - Blueprint-aware — generates tool-specific configuration (CLAUDE.md or
) referencing relevant skills.cursor/rules/
Detailed Guidance
Guard Clause
Before running any analysis, check:
- Does
exist and contain at least one SKILL.md file?.ai/skills/project/ - If yes → skip bootstrap. Inform the user that project-specific skills already exist and suggest using
for new additions.skill-generator - If no → proceed with bootstrap.
Phase 1: Project Scan
Scan these files and directories to build a project profile:
| Source | What to detect |
|---|---|
| Node.js/JS/TS project, framework (Next.js, Nuxt, Express, etc.), test runner (Jest, Vitest, Playwright), linter/formatter |
| PHP project, framework (Laravel, Symfony), testing (PHPUnit, Pest), coding standards (PHP-CS-Fixer, PHPStan) |
/ | Python project, framework (Django, FastAPI, Flask), testing (pytest), tools (ruff, mypy) |
| Go project, major dependencies |
| Rust project, major crates |
| Ruby project, framework (Rails, Sinatra) |
| Top-level directories | , , , , , , , — architectural signals |
| Config files | , , , , , , — tooling signals |
| Monorepo indicators | , , , — monorepo detection |
Phase 2: Pattern Detection
From the scan results, classify:
- Language(s): Primary and secondary
- Framework: Web framework, CLI framework, library, etc.
- Architecture: Monorepo, MVC, hexagonal/ports-and-adapters, serverless, microservices
- Testing setup: Runner, assertion style, coverage tool
- Code quality: Linter, formatter, static analysis
- Key directories: Where source, tests, config, and infrastructure live
Phase 3: Generate Project Overview Skill
Create
.ai/skills/project/project-overview/SKILL.md with:
--- name: project-overview version: 1.0.0 description: Project stack, conventions, and key file paths for {project-name}. triggers: [project, overview, stack, conventions] --- # Project Overview: {project-name} ## Stack - **Language:** {detected} - **Framework:** {detected} - **Testing:** {detected} - **Linting/Formatting:** {detected} - **Architecture:** {detected} ## Key Directories - `src/` — {purpose} - `tests/` — {purpose} - ... ## Conventions - {detected conventions from config files and code patterns} ## Relevant Skills - {list of generic skills from .ai/skills/ that match this stack}
Phase 4: Generate Blueprint
Generate a tool-specific blueprint based on the detected stack:
For Claude Code — suggest content for
CLAUDE.md in the project root:
Follow the engineering standards vendored in ./.ai/skills/. See ./.ai/blueprints/claude-cli.md for the operational protocol. Project-specific conventions are in ./.ai/skills/project/.
For Cursor — generate rules in
.cursor/rules/ (NOT .cursorrules, which is deprecated):
- Create
referencing vendored skills.cursor/rules/ai-protocols.mdc - Include project-specific stack info from the generated overview
What NOT to Do
- Don't generate skills for standard language features — that's what the generic skills cover
- Don't guess at conventions that aren't evidenced by config files or code
- Don't generate multiple project skills — start with one overview, let
handle the restskill-generator - Don't modify any existing files outside
without user confirmation.ai/skills/project/
Examples
Scenario: Bootstrap on a Next.js project with TypeScript, Vitest, and ESLint.
Detected profile:
- Language: TypeScript
- Framework: Next.js 14 (App Router)
- Testing: Vitest + Testing Library
- Linting: ESLint + Prettier
- Architecture: App Router with
,src/app/
,src/components/src/lib/
Generated
:.ai/skills/project/project-overview/SKILL.md
--- name: project-overview version: 1.0.0 description: Next.js 14 App Router project with TypeScript, Vitest, and ESLint. triggers: [project, overview, stack, conventions] --- # Project Overview: my-nextjs-app ## Stack - **Language:** TypeScript 5.x (strict mode) - **Framework:** Next.js 14 (App Router) - **Testing:** Vitest + @testing-library/react - **Linting/Formatting:** ESLint (next/core-web-vitals) + Prettier - **Architecture:** App Router — src/app/ for routes, src/components/ for UI, src/lib/ for utilities ## Key Directories - `src/app/` — Next.js App Router pages and layouts - `src/components/` — Reusable React components - `src/lib/` — Shared utilities and helpers - `tests/` — Vitest test files ## Relevant Skills - `typescript-standard` — TypeScript conventions and TDD patterns - `recursive-exploration` — Codebase navigation - `code-review` — Review protocol
Guidelines
- Always check for existing project skills before generating — never overwrite
- Base all detections on actual files, not assumptions
- Generate exactly one project-overview skill and one blueprint suggestion
- Reference only generic skills that match the detected stack
- Place all generated skills in
.ai/skills/project/ - For Cursor, use
(not.cursor/rules/
).cursorrules - Don't modify files outside
without user confirmation.ai/skills/project/
Integration
- Related:
(handles ongoing skill creation after bootstrap)skill-generator - Related:
(used during the scanning phase)recursive-exploration - Outputs: project-overview skill, blueprint suggestions
Skill Metadata
- Created: 2025-07-01
- Last Updated: 2025-07-01
- Author: didacrios
- Version: 1.0.0