Skip to content
Development
Skill

/aims

Refresh the project's .review/aims.md interactively without running a full Crucible review. Use when the project's stated goals have shifted between reviews and you want to update aims before the next /crucible run.

From plugin
crucible
43 skills25 agents
Install
$ npx -y skills add hazarsozer/crucible-cc --skill aims --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/aims

Context preview

The summary Claude sees to decide when to auto-load this skill.

Refresh the project's .review/aims.md interactively without running a full Crucible review. Use when the project's stated goals have shifted between reviews and you want to update aims before the next /crucible run.

SKILL.md

aims.SKILL.md
name: aims
description: Refresh the project's .review/aims.md interactively without running a full Crucible review. Use when the project's stated goals have shifted between reviews and you want to update aims before the next /crucible run.

/crucible:aims — Refresh Project Aims

Force the Profiler agent to re-interview the user about project aims and rewrite `.review/aims.md`. Useful when the project's goals have shifted between reviews — for example, after a pivot, a new milestone, or a change in stakeholder priorities.

This skill does NOT run a full review. It only refreshes the aims file. To run a review against the refreshed aims, invoke `/crucible:run` afterward.

Steps

1. **Check for existing aims.** Look at `.review/aims.md`.

  • If it exists: read its contents and show them to the user, then ask:
     Current aims at .review/aims.md:

     <contents>

     Refresh these aims, edit specific sections, or cancel?
     (refresh / edit / cancel)
  • `refresh` → run the full Profiler interview (step 2 below).
  • `edit` → ask which sections (Goal / Success criteria / Non-goals / Constraints / etc.) to update; only re-interview those, then write back the updated file.
  • `cancel` → exit without changes.
  • If `.review/aims.md` does NOT exist: announce `No aims file found — running first-time interview.` and proceed directly to step 2.

2. **Dispatch the Profiler in interview-only mode** via the Task tool:

   Task(
     subagent_type="profiler",
     description="Refresh project aims (interview only)",
     prompt="""
You are running as the Profiler agent in INTERVIEW-ONLY mode. Your full system prompt is at agents/profiler.md.

# Working directory
<absolute path of the user's project>

# Mode: interview-only
Do NOT cast a committee. Do NOT output a CastingRoster. Your single job for this invocation:

1. Read the project files briefly to confirm the tech stack (file tree, README, language manifests).
2. Run the aims interview (3–5 adaptive questions plus any clarifications).
3. Write a fresh .review/aims.md from the templates/aims.md.tpl skeleton, populating every {{...}} placeholder.
4. If the project has .git/ but .review/ is not yet ignored, append `.review/` to .gitignore (idempotent).
5. Confirm with the user that the file looks right.

Return: a single line of plaintext describing what was updated. No JSON, no roster.
"""
   )

3. **Print confirmation.** Once the Profiler returns, print:

   ✓ Aims refreshed at .review/aims.md

If the Profiler reported a partial update or any error, surface it verbatim under a `Profiler note:` heading.

4. **Suggest next step.** Print:

   Run /crucible to review against the updated aims.

Edge cases

  • **User cancels during the Profiler interview.** The Profiler may halt mid-interview. Catch the partial response and print: `Aims refresh cancelled. Existing aims at .review/aims.md are unchanged.`
  • **Profiler returns malformed output.** This skill expects plaintext, not JSON. If the Profiler returns a JSON object anyway, treat its `casting_reasoning` or any human-readable field as the confirmation message.
  • **Non-git projects.** Skip the .gitignore step silently — the Profiler's prompt already handles this.

Notes

This skill is light. It does not invoke peer/team/leadership personas, does not write a report, and does not consume the budget of a full review. Use it freely whenever the project's goals shift.

Read more
Ships withcrucible

Not Another Code Reviewer. A Claude Code plugin that runs your code through a corporate review pipeline. A Profiler reads your project, interviews you about the phase, and casts a 4–8 persona review committee from a 23-persona library.

Get the whole plugin

Other skills on crucible.