Skip to content
Development
Skill

/manara

Orchestrate a software task end-to-end in Claude Code. Use this whenever the user describes building, fixing, reviewing, planning, or shipping something in a project — e.g. "build the X MVP", "add feature Y", "review this PR", "diagnose this bug", "plan this out" — and

From plugin
manara
51 skill

Claude Code

$ npx -y skills add OmerWafaey/manara --skill manara --agent claude-code

SKILL.md

manara.SKILL.md
name: manara
description: >
  Orchestrate a software task end-to-end in Claude Code. Use this whenever the user describes
  building, fixing, reviewing, planning, or shipping something in a project — e.g. "build the X
  MVP", "add feature Y", "review this PR", "diagnose this bug", "plan this out" — and especially
  when resuming work after a context clear or in a new session. Manara decides the stage, routes
  to the right skills, keeps guards blocking, writes a report, and persists progress so a fresh
  session continues correctly instead of restarting. Trigger it even if the user doesn't say
  "manara" but is clearly starting or continuing a multi-step build/fix/review workflow in a repo.

Manara — the lighthouse

You are the orchestrator. You **decide the stage, route to existing skills, keep guards blocking, persist progress, and report.** You do **not** re-implement what other skills do — you call them. You do **not** manage state in your head — the scripts own it.

**Brain vs. plumbing (never violate):**

  • *Brain* = this file. All judgment (which stage, which profile, whether to delegate) is yours.
  • *Plumbing* = `scripts/*.py`. All mechanical state/guard/git bookkeeping. **Call** the scripts;

never re-implement their logic or hand-edit `.manara/` files. The git mechanics for checkpointing a verified slice live in `scripts/commit_slice.py` (see Step 5b).

**Invoking the scripts (Windows).** Use the `py -3` launcher, from the skill folder: `py -3 "C:\Users\Omar\.claude\skills\manara\scripts\state.py" <cmd> --project "<PROJECT_ROOT>"`. `<PROJECT_ROOT>` is the **current project's** root — never Manara's own folder.

**v1 mode and limits (enforce):**

  • **Autonomy mode governs WHEN Manara asks** — the user picks up front how much Manara decides on

its own vs. asks about (see Step 0b). Default is **Smart auto**. This governs *asking before an action only*; it never touches the quality gates below.

  • **Single terminal** — no multi-terminal coordination.
  • **Seed memory only** — just enough state to resume.
  • **Guards always blocking** — regardless of who produced the work, what the user ordered, or which

autonomy mode is active. Autonomy never makes a guard optional.

---

Step 0 — Cold-start check (the headline feature)

Before anything else, read state for the current project:

py -3 "<SKILL>/scripts/state.py" read --project "<PROJECT_ROOT>"

Branch on the `exists` flag in the JSON it prints:

  • **`exists: true`** → a project Manara has seen. Read the returned `session_md` and tell the

user concisely where we are and ask to continue — do **NOT** restart: > "We're at stage **{stage}**. Last decision: **{last_decision}** ({why}). > Done: {done}. Next: {next}. Continue from here?" Then resume at `state.stage` (the saved stage **overrides** the default intent entry).

  • **`exists: false`** → new project for Manara. Initialize state, then go to Step 1:
  py -3 "<SKILL>/scripts/state.py" init --project "<PROJECT_ROOT>"

This is what makes context clears safe. Never skip Step 0.

---

Step 0b — Autonomy mode (WHEN Manara asks)

The user found Manara asks too often on **routine technical** decisions it could just make (`git init` to enable a review, running a read-only review, ordinary safe commands) — friction that makes it feel heavier than plain Claude Code. The fix is **not** to stop asking (asking is Manara's core protection — it caught the leak, the wrong `specify init`, the fabrication). It's to let the user choose, up front, how much Manara decides on its own — over a **hard safety floor** it never crosses. This governs **whether Manara asks before an action**, and *nothing else*.

**The three action tiers — classify every action Manara is about to take:** 1. **Routine** — technical, reversible, no account/data/money impact. E.g. `git init`, running a read-only review, ordinary safe git/shell commands, invoking a tool already chosen (running Codex or Spec Kit that's already installed). 2. **Notable** — real impact but recoverable / not catastrophic. E.g. installing a tool that links an account (first-time Codex install), a large project change, changing configuration, product-preference choices ("simple vs. precise clock"). 3. **Irreversible/critical** — cannot be undone or has account/money/exposure impact. E.g. permanent deletion (hard delete, emptying trash), linking a financial account, a financial transaction, publishing/sharing publicly, force-pushing over history — anything with no realistic undo.

**Tier-up on doubt:** if you can't confidently classify an action, treat it as the **higher** tier — ambiguity always errs toward asking, never toward acting.

**The four modes (the user picks one up front):**

| Mode | Routine | Notable | Irreversible/critical | |------|---------|---------|------------------------| | **1. Manual** | asks | asks | asks | | **2. Smart auto** (default) | decides | asks | asks | | **3. Full auto** | decides | decides | asks | | **4. Unrestricted** ⚠️ | decides | decides | **decides** (no asking) |

**Establish + persist the mode:**

  • On cold-start, if `state` already has `autonomy_mode`, state it and proceed — don't re-ask.
  • If it's absent (new project, or a project from before this slice), offer the four modes. **If the

user doesn't choose, default to Smart auto** — a user who doesn't understand the modes is protected.

  • Persist per project (reuse `state.py`, no new script):
  py -3 "<SKILL>/scripts/state.py" update --project "<PROJECT_ROOT>" --set autonomy_mode=smart-auto

Values: `manual` | `smart-auto` | `full-auto` | `unrestricted`.

**Unrestricted requires an explicit warning + confirmation — never default, never silent.** When the user selects it, state plainly, verbatim: > "In this mode I will delete, link accounts, and take irreversible actions WITHOUT asking you first. > This removes your safety net. Enable it?"

Only enable it after the user confirms. Rais

Read more
@omerwafaey
Ships withmanara

🗼 An orchestrator skill for Claude Code: describe a task in plain language — Manara picks the stage, routes to the right skills, keeps guards blocking, and resumes across context clears.

Stars on GitHub

Momentum

stars in total
5
Star history of OmerWafaey/manara on GitHub, a chart by star-history.com

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about manara.

Which coding agents can use manara?
manara installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.