agentleFS
xeevaxeeva/Genesis/.claude/skills/genesis/SKILL.md

genesis

Skill17 starsChanged 8 months agoMITView on GitHub

Bootstrap a new Claude Code project with full infrastructure. Use this when the user wants to create a new project, scaffold a project, or says "new project", "create", "bootstrap", or "build me".

6 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions6 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 6

    1. SebastienDegodez/skraft-plugin★ 13same name
    2. GPire/claude-skills-swarm★ 8same name
    3. freskhu/genesis★ 5same name
    4. gabrieldabbah/genesis★ 4same name
    5. gaiaaiagent/regen-heartbeat★ 2same name
    6. LilithLabs/lilith★ 1same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository4 other files it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

29 rules. 0 are common, 16 are distinctive, and 13 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 16

    Distinctive

    This author's own choices. Worth a look.

  • 13

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read the user's request carefully.

    line 13
  2. Distinctive:

    If the user provided 3+ of these, ask only what's missing (1-2 questions max)

    line 26
  3. Distinctive:

    If the user was vague, ask up to 4 targeted questions

    line 27
  4. Distinctive:

    Never re-ask what was already stated

    line 28
  5. Distinctive:

    Use AskUserQuestion for a clean interview experience

    line 29
  6. Very specific:

    Read the scaffold profile from environment.md > Claude Plan.

    line 33
  7. Distinctive:

    Wait for user confirmation.

    line 71
  8. Distinctive:

    After confirmation, create the project.

    line 75
  9. Distinctive:

    Read the templates and references before generating:

    line 79
  10. Very specific:

    Read .claude/skills/genesis/templates/ for all template files

    line 81
  11. Very specific:

    Read .claude/skills/genesis/references/stack-profiles.md for stack-specific conventions

    line 82
  12. Very specific:

    Read .claude/skills/genesis/references/agent-catalogue.md for agent definitions

    line 83
  13. Very specific:

    Use templates/settings.json.tmpl as skeleton.

    line 99
  14. Distinctive:

    Stop hook for test/commit reminders

    line 103
  15. Distinctive:

    Write valid JSON, not a template.

    line 105
  16. Very specific:

    Use templates/agent.md.tmpl as skeleton

    line 109
  17. Distinctive:

    Write a clear description that tells Claude when to invoke it

    line 117
  18. Very specific:

    When the risk-evaluator agent is included, also generate a /risk skill that accepts a command or operation description and invokes the …

    line 120
  19. Very specific:

    Use templates/mcp.json.tmpl as skeleton.

    line 123
  20. Very specific:

    Create the memory directory.

    line 126
  21. Very specific:

    If the scaffold profile is lean, write a single consolidated MEMORY.md that includes user profile and project context inline (no separate …

    line 128
  22. Distinctive:

    Test configuration and a sample test

    line 139
  23. Very specific:

    Update the project registry.

    line 152
  24. Distinctive:

    All generated content must use Australian English

    line 172
  25. Distinctive:

    Never use em dashes in any generated file

    line 173
  26. Distinctive:

    If the target directory already exists, refuse and explain

    line 174
  27. Very specific:

    Write valid, parseable JSON for settings.json and .mcp.json

    line 175
  28. Distinctive:

    Write valid YAML frontmatter for all skill files

    line 176
  29. Very specific:

    Every generated CLAUDE.md must include all Global Rules from Genesis's CLAUDE.md

    line 177

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Genesis: Project Bootstrapper

You are executing the Genesis bootstrap workflow. Follow these phases strictly.

Phase 1: Interview

Read the user's request carefully. Extract everything you can before asking questions.

Before interviewing: Read personalisation.md and environment.md from the Genesis root. These provide user preferences and platform details. If either file is missing, trigger first-time setup (see CLAUDE.md) before proceeding. If environment.md exists but lacks a ## Claude Plan section, prompt the user for their Claude plan tier and append the section before continuing (see CLAUDE.md migration check).

Required information:

  1. Project name (kebab-case)
  2. Purpose (one sentence)
  3. Tech stack (language, framework, runtime)
  4. Key integrations (databases, APIs, auth, external services)

Hosting environment and project base path are already captured in environment.md. Do not re-ask. Confirm the project path with the user: "This project will be created at <project-base>/<name>/." Allow per-project overrides if the user specifies a custom location.

Rules:

  • If the user provided 3+ of these, ask only what's missing (1-2 questions max)
  • If the user was vague, ask up to 4 targeted questions
  • Never re-ask what was already stated
  • Use AskUserQuestion for a clean interview experience

Phase 2: Plan

Read the scaffold profile from environment.md > Claude Plan. Factor the profile into agent and skill selection (lean = fewer agents/skills, standard = moderate, full = comprehensive). Consult agent-catalogue.md profile tags.

Once you have all information, produce this plan and present it:

Project: <name>
Path: <project-base>/<name>/
Stack: <language, framework, key dependencies>

Agents (domain):
- <agent-name> -- <one-line purpose>

Agents (workflow):
- test-runner -- run and analyse test results
- code-reviewer -- review code quality and correctness
- doc-writer -- generate and update documentation

Skills (base):
- /test -- run the test suite
- /lint -- run linters and formatters
- /review -- trigger code review
- /commit -- stage and commit changes

Skills (dynamic):
- /<skill-name> -- <one-line purpose>

MCP Servers:
- <server-name> (or "None" if no integrations)

Context Profile: <lean | standard | full> (<context_window> tokens)
Estimated infrastructure: ~<N>k tokens (<P>% of context)

Folder Structure:
<tree of top-level directories>

For lean profiles, add a note: "Scaffold sized for Pro plan (200k context). Use /compact if you notice slowdowns in long sessions."

Wait for user confirmation. If they request changes, adjust and re-present.

Phase 3: Generate

After confirmation, create the project.

Prerequisite check: Before generating, verify the user has the required tools installed by running which or command -v checks for: claude, git, node. Also check for stack-specific tools (e.g. python, go, cargo, ruby, java). If any required tools are missing, list them with installation instructions for the user's hosting environment and wait for confirmation before proceeding.

Read the templates and references before generating:

  1. Read .claude/skills/genesis/templates/ for all template files
  2. Read .claude/skills/genesis/references/stack-profiles.md for stack-specific conventions
  3. Read .claude/skills/genesis/references/agent-catalogue.md for agent definitions

Generation order:

3.1 Directory structure

mkdir -p <resolved-path>/.claude/agents
mkdir -p <resolved-path>/.claude/skills/<skill-name> (for each skill)
mkdir -p <resolved-path>/docs
mkdir -p <resolved-path>/<stack-specific-dirs>

3.2 CLAUDE.md

Read the scaffold profile from environment.md. If lean, use templates/CLAUDE.md.lean.tmpl. Otherwise, use templates/CLAUDE.md.tmpl. Fill all placeholders with project-specific content. Ensure every section from the Global Rules in Genesis's CLAUDE.md is present (the lean template merges these into a compact format). This is the most important file -- it governs the entire project.

3.3 .claude/settings.json

Use templates/settings.json.tmpl as skeleton. Configure:

  • Permissions appropriate to the stack (consult stack-profiles.md)
  • PreToolUse hooks: if the risk-evaluator agent is included, resolve {{PRETOOLUSE_HOOKS}} to a Bash matcher with a prompt hook that screens commands for risk (destructive operations, state mutations, external writes, permission escalation, severity 1-5). If risk-evaluator is not included, resolve to empty.
  • PostToolUse hooks for the stack's formatter and linter
  • Stop hook for test/commit reminders

Write valid JSON, not a template. Replace all placeholders with actual values.

3.4 Agents

For each agent in the plan:

  • Use templates/agent.md.tmpl as skeleton
  • Fill with role-specific instructions from agent-catalogue.md
  • Write to <resolved-path>/.claude/agents/<agent-name>.md
  • For the risk-evaluator agent: include the full severity rubric (1-5 scale) in the Guidelines section. Include the project's specific integrations so the rubric can be context-sensitive. Instruct the agent to read CLAUDE.md for additional project context.

3.5 Skills

For each skill in the plan:

  • Use templates/skill.md.tmpl as skeleton
  • Write a clear description that tells Claude when to invoke it
  • Include the specific commands or workflow for the stack
  • Write to <resolved-path>/.claude/skills/<skill-name>/SKILL.md
  • When the risk-evaluator agent is included, also generate a /risk skill that accepts a command or operation description and invokes the risk-evaluator agent to score it

3.6 .mcp.json (if needed)

Use templates/mcp.json.tmpl as skeleton. Only include servers for integrations mentioned in the plan. Write valid JSON.

3.7 Memory files

Create the memory directory. Derive the path by expanding the project target to an absolute path, slugifying it (replace / with -, strip leading -), then prepend ~/.claude/projects/ and append /memory/. For example, a project at ~/claude/foo/ for user xeeva becomes ~/.claude/projects/-home-xeeva-claude-foo/memory/.

If the scaffold profile is lean, write a single consolidated MEMORY.md that includes user profile and project context inline (no separate files). This reduces the number of files loaded at session start.

Otherwise, write three files:

  • user-profile.md from templates/memory-user.md.tmpl (copy verbatim)
  • project-context.md from templates/memory-project.md.tmpl (fill placeholders)
  • MEMORY.md index file pointing to both

3.8 Application boilerplate

Consult stack-profiles.md for the appropriate structure. Generate:

  • Entry point file(s)
  • Package/project config (package.json, pyproject.toml, go.mod, Cargo.toml, etc.)
  • Test configuration and a sample test
  • .gitignore appropriate to the stack
  • docs/README.md with project name, purpose, setup instructions, and usage
  • docs/architecture.md with high-level architecture description
  • Any stack-specific config files (tsconfig.json, ruff.toml, .golangci.yml, etc.)

Phase 4: Finalise

  1. Initialise git and create the first commit:
cd <resolved-path> && git init && git add -A && git commit -m "Initial scaffold from Genesis"
  1. Update the project registry. Read the current registry from Genesis memory, append the new project entry, and write it back.
  2. Print a summary:
Project created: <resolved-path>/
Stack: <stack>
Agents: <count> (<names>)
Skills: <count> (<names>)
MCP: <servers or "none">
Context profile: <lean | standard | full> (~<N>k tokens, <P>% of <context_window>)

Next steps:
  cd <resolved-path>/
  claude

For lean profiles, append: "Tip: Your Pro plan has 200k context. This scaffold uses ~<N>k tokens. Use /compact if you notice slowdowns in long sessions."

Important Notes

  • All generated content must use Australian English
  • Never use em dashes in any generated file
  • If the target directory already exists, refuse and explain
  • Write valid, parseable JSON for settings.json and .mcp.json
  • Write valid YAML frontmatter for all skill files
  • Every generated CLAUDE.md must include all Global Rules from Genesis's CLAUDE.md

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.