Claude Code

The Fix-with-AI prompt PulseLight generates is calibrated for Claude Code — restraint-engineered so the agent stays scoped and doesn't open unrelated files.

Two integrations: paste a generated prompt into Claude Code (works today), or invoke the PulseLight Claude skill (pulse-fix) which lets Claude Code fetch verdicts and fix prompts directly.

Option A: Paste-into-Claude (the fast path)

01

Open the blocker.

Click the blocker on your Fix Queue.

02

Click Fix with Claude Code.

PulseLight generates the Claude-Code-tuned prompt and copies it to your clipboard.

03

Paste into Claude Code.

Run claude from the project root, then paste the prompt as your first message. Claude Code reads files referenced in the Affected files block and proposes a diff.

04

Approve, run validation, re-scan.

Claude Code asks before writing files. Approve the diff, run the validation steps, push. Re-scan picks up the fix automatically on next CI build.

Option B: pulse-fix skill (Claude Code Skills)

The pulse-fix skill lives at claude-skills/pulse-fix/SKILL.md in our repo and (once Anthropic’s skill directory ships publicly) will be installable as a single command. With the skill installed, Claude Code can fetch your current verdict, the Top 3, and the per-blocker fix prompt without you pasting anything.

Conversation shape with the skill:

> claude
You: What's my current PulseLight verdict?

Claude (calling pulse-fix):
  Verdict: not_ready_yet
  Top 3 blockers:
    1. Stripe webhook is not verified (Billable, Medium effort)
    2. Public storage bucket on user-uploads (Secure, Low)
    3. No production rollback path (Stable, Medium)

  Want me to fix #1 now? It's the highest-leverage fix in this
  list and the prompt is ready to apply.

You: yes

Claude: <reads relevant files, proposes diff, asks to apply>

Anatomy of a Claude-Code-tuned prompt

Same v2 shape as every Fix-with-AI prompt, but the Working rules calibrate for Claude Code’s agentic model and the Validation steps use commands Claude Code is good at running on its own:

<!-- pulselight prompt v2 (claude-code) -->

Goal:
<plain-English description>

Affected files:
- <path>:<line>

Working rules (Claude-Code-specific):
- Read the affected files first; don't propose a diff before
  reading them.
- Match the project's existing patterns — don't introduce a
  new framework or library.
- Run the test command after applying; don't claim success
  without seeing it pass.

Do NOT:
- Open files outside 'Affected files' unless the fix
  genuinely requires it (justify in the summary if so).
- Refactor or rename across the codebase.
- Upgrade unrelated dependencies.

Validation steps:
- <test command>
- Confirm: <expected behavior>

Output a unified diff. Run the validation. Summarise in 3
bullets.

Why the prompt format matters

Claude Code is excellent at following structured instructions and asking before writing. The PulseLight prompt format leans into that — the explicit Do NOT list keeps Claude scoped, the Validation steps ensure Claude actually verifies before claiming success. Most fix sessions complete in a single turn.

If the fix doesn’t apply cleanly

Sometimes the codebase has drifted enough that the prompt’s anchor lines don’t exist anymore. Claude Code will surface this and ask. The pragmatic move is to share the current state of the file with Claude (Claude reads it on its own) and let Claude adapt the fix — the prompt’s Goal and Working rules still constrain the fix shape even if the line numbers have moved.

See also: Fix-with-AI overview.