MCPcopy Index your code
hub / github.com/AytuncYildizli/reprompter

github.com/AytuncYildizli/reprompter @v12.15.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v12.15.1 ↗ · + Follow
691 symbols 1,725 edges 83 files 0 documented · 0% updated 5d agov12.15.1 · 2026-07-04★ 1102 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

RePrompter

Your prompt sucks. Let's fix that.

Version License Tests Stars

What's new (v12.8–v12.15): ambient prompt gate, one-command plugin install, template refresh, fleet learning — digest

RePrompter is a prompt engineering skill for AI coding agents. It takes rough, low-quality prompts and transforms them into structured, high-scoring prompts that produce dramatically better results. Templates are aligned with 2026 vendor guidance: clear sectioning, calibrated emphasis, outcome-first instructions, load-bearing constraints, structured-output routing, context budgeting, and tool-description quality. Works with Claude Code, OpenClaw, Codex, Grok CLI, Hermes Agent, or any LLM that accepts structured prompts.

RePrompter demo — rough prompt to structured output in 15 seconds


Five Output Lanes

Lane What it does Trigger
Single Interview, structure, score one prompt reprompt this, clean up this prompt
/goal preflight Codex CLI, Claude Code CLI v2.1.139+, or Hermes Agent: infer intent, build the expanded prompt, then compress it into `/goal

|before /goal,for /goal,Codex /goal,Claude Code /goal,Hermes /goal,/goal preflight| | **Repromptverse** | Plan a team of 2-5 agents, reprompt each one, execute in parallel, evaluate, retry |reprompter teams,repromptverse,smart run| | **Reverse** | Show a great output, extract the prompt DNA that produced it |reverse reprompt,learn from this,prompt dna| | **Workflow preflight** | Compile a reprompted task into a runnable Claude.workflow.js(pure-literalmeta, schema returns, bounded retry; ultracode adds adversarial verify + completeness critic); also Repromptverse Option H |compile to workflow,workflow preflight,build a workflow script,dynamic workflow` |


Before / After

Input:  "uhh build a crypto dashboard, maybe coingecko data, add caching, test it too"
Score:  1.6/10
Output: Structured XML prompt with role, context, task, requirements,
        constraints, output format, and success criteria
Score:  9.0/10  (+462%)

See the full generated prompt

<role>
Senior full-stack engineer specializing in real-time dashboard systems,
REST API integration, and cache-aware data pipelines.
</role>

<context>
- Frontend + backend + tests required (cross-layer scope)
- Data source: CoinGecko API (free tier, 30 calls/min rate limit)
- Existing API behavior must be preserved
</context>

<task>
Deliver a real-time crypto dashboard backed by a cache-aware CoinGecko proxy API,
with unit tests for both API and UI, without breaking existing API contracts.
</task>

<requirements>
- Build dashboard UI with loading, error, empty, and stale-data states
- Implement backend CoinGecko proxy with JSON schema validation + configurable cache TTL
- Preserve backward compatibility for all existing API consumers
- Add deterministic unit tests for frontend rendering states and backend edge cases
- Cache must serve stale data on upstream failure (stale-while-revalidate pattern)
</requirements>

<constraints>
- No direct client-side calls to CoinGecko (all traffic through proxy)
- No breaking changes to existing API response fields or status codes
- Mock all external network boundaries in tests
- Rate limit CoinGecko calls to stay within free tier (30/min)
</constraints>

<output_format>
- Backend: /api/prices endpoint returning { prices: [...], cached: bool, updatedAt: ISO }
- Frontend: React component with 5s auto-refresh interval
- Tests: Vitest suite with >=80% branch coverage
</output_format>

<success_criteria>
- Dashboard auto-updates every 5s and shows "stale" indicator when cache is old
- Proxy returns normalized data within 200ms (cache hit) / 2s (cache miss)
- Existing API integration tests still pass with zero modifications
</success_criteria>
Dimension Before After Change
Clarity 3 9 +200%
Specificity 2 9 +350%
Structure 1 10 +900%
Constraints 0 8 new
Verifiability 1 9 +800%
Decomposition 2 9 +350%
Overall 1.6 9.0 +462%

Scores are self-assessed. Treat as directional indicators, not absolutes.


Install

Claude Code

Recommended: install the Claude Code plugin. One install registers the RePrompter skill namespace and both Ambient Prompt Gate hooks; future updates use Claude Code's native plugin update flow.

/plugin marketplace add AytuncYildizli/reprompter
/plugin install reprompter@reprompter

If you previously installed ~/.claude/skills/reprompter, remove that personal copy before using the plugin. Personal skills shadow/duplicate plugin skills, so leaving it in place can make Claude Code load the old copy instead of /reprompter:reprompter.

The plugin ships the Ambient Prompt Gate enabled for Claude Code UserPromptSubmit and Stop. Use REPROMPTER_AMBIENT=0 as the per-feature off switch; Claude Code's disableAllHooks still disables all hooks, including plugin hooks.

Fallback for copy-based or non-plugin setups:

mkdir -p skills/reprompter
curl -sL https://github.com/aytuncyildizli/reprompter/archive/main.tar.gz | \
  tar xz --strip-components=1 -C skills/reprompter

Source archives are runtime-only (.gitattributes export-ignore): they contain SKILL.md, references/, and scripts/ but not dev/dist trees like skills/ (the Hermes-only install package — see Install paths), plugin/, .claude-plugin/, benchmarks/, assets/, or docs/. Plugin installs use git clone through Claude Code's marketplace flow, so export-ignoring the plugin tree does not affect plugin installs. Installed an older full copy? It's safe to delete those directories from it — upgrades won't bring them back.

For the /goal preflight lane on Claude Code, pin the CLI to v2.1.139 or later. /goal depends on the hooks layer — if disableAllHooks or allowManagedHooksOnly is set in settings.json the command is unavailable on any version (v2.1.140 only made the failure visible). Managed environments that block hooks should stick to Single mode for goal-shaped work.

claude --version
# Expect 2.1.139 or later. Upgrade if older.

Staying current (version self-check)

Copy-based RePrompter installs can tell you when they are behind the latest release. Claude Code plugin installs stay silent here because native plugin update detection owns freshness. On the first invocation in a copy-based session, RePrompter runs a fail-soft check (scripts/version-check.js) that compares your local SKILL.md version against the latest GitHub release and prints a notice only if you're behind (silent when up to date). The result is cached ~24h (keyed by repo), so repeat runs add no latency; the first uncached check waits up to ~3s for GitHub, then fails soft and silent if it can't reach it (a failed lookup is cached ~1h so offline sessions don't repeat the timeout). Disable it entirely with REPROMPTER_VERSION_CHECK=0.

The notice's upgrade command is path-aware: it re-fetches into the exact directory this skill is installed in, so it works the same whether you run Claude Code (~/.claude/skills/reprompter), Codex (~/.codex/skills/reprompter), OpenClaw, Grok CLI, or a project-local skills/reprompter/. (Hermes installs ship no scripts/, so the check doesn't run there — use hermes skills install to update.)

Run it manually any time:

cd skills/reprompter                   # run from the skill's install dir (where scripts/ lives)
node scripts/version-check.js          # prints a notice only if behind; silent otherwise
node scripts/version-check.js --json   # explicit status: {local, latest, behind, notice}

To get nudged at session start (Claude Code, opt-in), add a SessionStart hook in ~/.claude/settings.json:

{
  "hooks": {
    "SessionStart": [
      { "hooks": [ { "type": "command", "command": "node /absolute/path/to/skills/reprompter/scripts/version-check.js" } ] }
    ]
  }
}

Because a skill is cached per session, after updating you must start a new session for the new version to load.

OpenClaw / Codex / Grok CLI / Hermes Agent

Root SKILL.md is canonical for Claude Code, Codex, OpenClaw, Grok, and direct GitHub browsing. skills/reprompter/ is the Hermes-only installable package, generated from root and sanitized for Hermes Skills Guard.

Run copy-based installs from the parent directory that contains a cloned or downloaded reprompter/ folder:

mkdir -p /path/to/workspace/skills
cp -R reprompter /path/to/workspace/skills/

For Hermes Agent v0.14+, prefer the generated install package so Skills Guard scans only the runtime skill artifact:

hermes skills install AytuncYildizli/reprompter/skills/reprompter

Avoid using the two-part Hermes identifier as the primary install command because it can resolve stale marketplace content:

hermes skills install AytuncYildizli/reprompter

Hermes Agent's default manual skill location is ~/.hermes/skills/reprompter/. The skills/ package is excluded from GitHub source archives, so a manual copy needs a git clone (or any hermes skills install form above), not a tarball/ZIP download:

git clone https://github.com/AytuncYildizli/reprompter.git
mkdir -p ~/.hermes/skills
cp -R reprompter/skills/reprompter ~/.hermes/skills/

For Codex, install or update the CLI and confirm the goals feature is available:

npm install -g @openai/codex@latest
codex --version
codex features list | grep '^goals'

If goals is present but disabled, set features.goals = true in ~/.codex/config.toml and start a fresh Codex session before using /goal.

Any LLM

Use SKILL.md as the behavior spec. Templates are in references/.


Quick Start

reprompt this: build a REST API with auth and rate limiting

/goal Preflight

Use RePrompter before /goal whenever the goal is bigger than a single direct instruction. The lane works on Codex CLI (any version exposing the goals feature), Claude Code CLI v2.1.139+ (native /goal slash command shipped on 2026-05-11), and Hermes Agent (persistent goals in the v0.13.0 / 2026.5.7 release). These runtimes shape the command as /goal <objective>, so RePrompter first builds the full expanded prompt, then compresses it into a dense copy-pasteable `/goal

` command. The command should read like a summary of the old long XML prompt, not a tiny rewrite of the rough input.

reprompt this for /goal: migrate our billing dashboard to the new API without breaking existing reports

Add an explicit runtime marker when you have one — "Codex /goal", "Claude Code /goal", or "Hermes /goal" — otherwise RePrompter will ask. RePrompter then shows a Goal Command Card:

Field Example (Claude Code)
Goal Command /goal Migrate billing dashboard API usage to the new API by first mapping current data/report consumers, preserving schemas, filters, exports, scheduled outputs, and historical totals, implementing the smallest compatible adapter changes, adding parity fixtures, and proving compatibility with unit, integration, dashboard smoke, and report export checks.
Compressed From Expanded RePrompter prompt
Objective Migrate billing dashboard API usage without breaking reports
Runtime Claude Code CLI (≥ v2.1.139)
Mode /goal preflight
Paste Into Claude Code TUI prompt, as-is
Risk Level medium
Missing Inputs API contract diff, report smoke path
Verification npm run check, dashboard smoke, report export check
Quality 3/10 → 8/10

For Codex or Hermes, the Card differs only in the Runtime (Codex CLI or Hermes Agent) and Paste Into rows.

Then run the generated command in your chosen runtime:

/goal Migrate billing dashboard API usage to the new API by first mapping current data/report consumers, preserving schemas, filters, exports, scheduled outputs, and historical totals, implementing the smallest compatible adapter changes, adding parity fixtures, and proving compatibility with unit, integration, dashboard smoke, and report export checks.

On Claude Code (v2.1.139+) the goal is thread-persistent — it survives /resume, terminal close, and context compaction — and a Haiku evaluator checks the completion condition against the transcript after each turn. Use /goal pause and /goal resume to handle interruptions. On Codex (alpha) the same /goal <objective> shape applies once features.goals = true in ~/.codex/config.toml and a fresh session is started. On Hermes Agent, /goal is also persistent and supports /goal status, /goal pause, /goal resume, and /goal clear; Hermes defaults to a bounded continuation loop and survives /resume.

For automation surfaces such as Whip, the same contract is available as a local runtime command:

Core symbols most depended-on inside this repo

Shape

Function 691

Languages

TypeScript100%

Modules by API surface

scripts/prompt-gate.js35 symbols
plugin/skills/reprompter/scripts/prompt-gate.js35 symbols
scripts/reverse-engineer.js22 symbols
plugin/skills/reprompter/scripts/reverse-engineer.js22 symbols
scripts/outcome-collector.js20 symbols
plugin/skills/reprompter/scripts/outcome-collector.js20 symbols
scripts/goal-command.js18 symbols
scripts/flywheel-sync.js18 symbols
plugin/skills/reprompter/scripts/goal-command.js18 symbols
plugin/skills/reprompter/scripts/flywheel-sync.js18 symbols
scripts/workflow-command.js17 symbols
scripts/strategy-learner.js17 symbols

For agents

$ claude mcp add reprompter \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page