agentsclimarketplace

Esper init

Skill sichengchen/esper/skills/esper-init

Tool-neutral, simple workflow layer for agentic, spec-driven software development. πŸͺ„βœ¨

Install
npx -y skills add sichengchen/esper --skill esper-init

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Initialize esper in a project. Interviews the user for workflow preferences, scaffolds the project, and writes the constitution.

SKILL.md

5.7 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it

You are initializing the esper agent-powered development toolkit for this project.

Step 0: Detect existing setup

Run esperkit config check. If it exits 0 (project already set up), use AskUserQuestion to ask:

  • "Esper is already set up in this project. What would you like to do?"
  • Options: "Update the constitution", "Re-run init (non-destructive)", "Reset everything"
  • If it exits non-zero (not set up), proceed to Step 1.

When already set up:

  • Update the constitution: Re-read .esper/CONSTITUTION.md, interview the user (Steps 1–2), rewrite it. Keep everything else untouched.
  • Re-run init: Run esperkit init β€” it is non-destructive and only creates missing files.
  • Reset everything: Confirm with AskUserQuestion. If confirmed, delete .esper/ and proceed from Step 1.

Before scaffolding, check for root bootstrap docs:

  • If AGENTS.md exists, read it and preserve its non-Esper content.
  • If CLAUDE.md exists, read it and preserve its non-Esper content.
  • Treat any existing ## EsperKit section as managed content that may be replaced.

Step 1: Interview the user

Use AskUserQuestion to interview the user. Cover these areas in 3–4 rounds.

Round 1 β€” Project vision:

  • What is this project and what problem does it solve?
  • What is it explicitly NOT? (scope boundaries)
  • Who are the primary users?

Round 2 β€” Technical decisions:

  • What is the tech stack? (language, framework, runtime)
  • What commands run tests, lint, and typecheck? (can be empty if not set up yet)
  • What command starts the dev server?

Round 3 β€” Workflow preferences (use AskUserQuestion with these as options):

  • Commit behavior: how commits should be scoped and when to create them
  • PR behavior: when to create PRs and how to group them
  • Validation mode: blocking (must pass before advancing) or advisory?
  • Spec sync mode: proactive (update specs as you go) or on-finish (update at end)?
  • Review behavior: when to require review passes

Round 4 β€” Multi-agent preferences (use AskUserQuestion):

  • Enable autonomous execution? (yes/no β€” default: no)
  • If yes, ask about agent roles:
    • Orchestrator provider: which agent/tool handles planning and coordination? (e.g., codex, claude-code)
    • Implementation worker: which agent handles code implementation? (e.g., claude-code, codex)
    • Reviewer: which agent handles review passes? (e.g., codex, claude-code)
  • If yes, ask about run limits:
    • Max review rounds before escalation (default: 3)
    • Max runtime in minutes (default: 60)
    • Require distinct reviewer? (default: yes)
    • Allow parallel tasks? (default: no)

If the user declines autonomous execution, skip agent role questions and use defaults.

Step 2: Write CONSTITUTION.md

Based on the interview, write .esper/CONSTITUTION.md covering:

  1. Project identity: name, purpose, what it is and is not
  2. Users: who the project serves
  3. Tech stack: language, framework, runtime, key dependencies
  4. Coding standards: naming, structure, patterns to follow
  5. Testing strategy: what gets tested, how, with what tooling
  6. Scope boundaries: what will never be built here

Step 3: Run esperkit init

Run esperkit init with any options from the interview (e.g., --spec_root if the user specified a custom location).

Step 4: Configure esper.json

Run esperkit config set commands '<json>' with the test/lint/typecheck/dev commands from the interview.

Run esperkit config set workflow_defaults '<json>' with the workflow preferences from Round 3. Use prompt-style instruction strings:

  • planning: when to use atom vs batch
  • commits: commit scoping and granularity guidance
  • pull_requests: PR creation and grouping guidance
  • validation: enforcement behavior
  • spec_sync: code-to-spec synchronization timing
  • review: review timing and rigor
  • retention: increment close-out and archival guidance

If multi-agent preferences were collected in Round 4:

  • Run esperkit config set agent_roles '<json>' with the role mappings
  • Run esperkit config set autonomous_run_policy '<json>' with the run limits
  • Optionally set provider_defaults for provider-specific guidance

Step 5: Explain what was created

If AGENTS.md or CLAUDE.md already existed:

  • Re-open the file after esperkit init.
  • Ensure it contains exactly one ## EsperKit section with the esper bootstrap instructions.
  • If the file already has an ## EsperKit section, replace only that section.
  • If the file has no ## EsperKit section, append one near the end.
  • Preserve all non-Esper content outside that section.

If AGENTS.md or CLAUDE.md did not exist:

  • Keep the scaffolded files from esperkit init.

Summarize the scaffolding:

  • .esper/esper.json β€” project config (including agent roles and run policy if configured)
  • .esper/context.json β€” runtime context for agent interop
  • .esper/CONSTITUTION.md β€” project vision and constraints
  • .esper/WORKFLOW.md β€” how to work with esper
  • AGENTS.md β€” tool-neutral bootstrap instructions at the repo root
  • CLAUDE.md β€” Claude-specific bootstrap instructions at the repo root
  • .esper/increments/ β€” increment lifecycle directories
  • .esper/runs/ β€” autonomous execution records
  • specs/ β€” spec tree (system, product, interfaces)

Step 6: Next steps

If this is an existing codebase with code already written:

  • Suggest running esper:spec to bootstrap specs from the existing code
  • Explain that specs document what the system does and serves as the source of truth

If this is a new project:

  • Suggest running esper:spec to write the initial spec
  • Or esper:atom to create the first increment directly

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 327,069. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.