Skip to content
Development
Skill

/recap

Read-only orientation — render a scannable table of what just happened so you can situate yourself. Modes: '/recap' (this session), '/recap arc' (the last product arc), '/recap commit' (the last commit), '/recap push' (the last push's commits — what I sent up), '/recap pull'

From plugin
aria-knowledge
1940 skills1 command12 MCP

Claude Code

$ npx -y skills add mikeprasad/aria-knowledge --skill recap --agent claude-code

SKILL.md

recap.SKILL.md
description: "Read-only orientation — render a scannable table of what just happened so you can situate yourself. Modes: '/recap' (this session), '/recap arc' (the last product arc), '/recap commit' (the last commit), '/recap push' (the last push's commits — what I sent up), '/recap pull' (the last pull's changes — what came down to me), '/recap project' (current project's state), '/recap project {name}' (a named project from projects_list), '/recap project all' (roster glance across all projects). Use when user says '/recap', 'catch me up', 'what just happened', 'where am I', 'recap the session', 'recap the last commit/push/pull', 'where does this project stand', 'recap all my projects', 'where do my projects stand'. Plain summary only — never validates or judges (that's /retrospect); never writes to disk. (Code port — ADR-094.)"

/recap — Read-Only Orientation

Render a compact `What / Where / Status` table of recent work to situate the user at a glance. **Read-only**: no disk writes, no logs, no verdicts. The orient-side counterpart to `/handoff` (which packages state for the *next* reader) — recap re-orients the *current* reader. Distinct from `/retrospect`, which validates with per-fix verdicts; `/recap` only summarizes, and may *offer* to escalate to `/retrospect` but never runs verdict work itself.

Step 0: Resolve Mode

Parse the first argument (case-insensitive):

  • `arc` → arc mode
  • `commit` (optionally followed by a `<hash>`) → commit mode
  • `push` → push mode
  • `pull` → pull mode
  • `project` → **project mode** — consume a *second* argument as the breadth selector:
  • no second arg → **project-nearest** (the current session's main project)
  • `all` → **project-roster** (every project in `projects_list`)
  • any other token `<name>` → **project-named** (the `<name>:` tag in `projects_list`)
  • anything else / no arg → **session mode** (default)

Mode Resolution

Session mode (default)

Synthesize what happened in THIS conversation — files created/modified, decisions made, current state — **from conversation context, not git** (same source as `/handoff` Step 2). Headline frame: "this session · {N} changes".

Arc mode (`arc`)

Read the project's `PROGRESS.md` (nearest one from cwd). The arc boundary = the most recent dated/`## ` arc heading; everything from that heading forward (plus this session's work) is "the arc". **State the inferred boundary in the headline** (e.g. "arc since PROGRESS 2026-06-21 entry") so the user sees what was treated as the arc. If no PROGRESS.md, fall back to session mode and say so.

Commit mode (`commit [<hash>]`)

`git show <hash|HEAD> --stat` for the subject + changed files. Headline: "commit {short-sha} · {subject} · {N} files".

Push mode (`push`)

`git log @{push}..HEAD --stat` (commits *I* sent up). If no upstream is configured, fall back to `git log -10` and say so. Headline: "last push · {N} commits · {M} files".

Pull mode (`pull`)

Commits that *came down to me* on the last pull. Resolve the range: 1. Try `git log ORIG_HEAD..HEAD --stat` (git sets `ORIG_HEAD` before a pull/merge). 2. If `ORIG_HEAD` is unset OR the range is empty (it was overwritten by an intervening merge/rebase/reset), scan `git reflog` for the most recent `pull`/`merge` entry and use that entry's pre-state as the range start. 3. **Always print the resolved range** (e.g. "last pull · ORIG_HEAD..HEAD · 5 commits from origin/main") so the user can verify what "last pull" meant.

**push vs pull:** `push` = what *I* sent up (`@{push}..HEAD`, my commits); `pull` = what *came down to me* (`ORIG_HEAD..HEAD`, others' commits I merged). Opposite directions.

Project mode (`project [<name>|all]`)

Where the modes above orient you *temporally* (this session, this repo's git), `project` mode orients you *laterally* — the current state of one project, or of the whole portfolio. A terminal-table analogue of the aria-atlas dashboard. The second argument selects breadth (resolved in Step 0).

**Roster resolution (named + roster sub-modes).** Read `~/.gemini/antigravity/aria-knowledge.local.md` and parse the `projects_list:` frontmatter key — comma-separated `tag:path` entries; expand a leading `~` in any path. This is the same roster `/aria-assist` reads; **be read-only on `projects_list` — never write it.** If `projects_list` is empty/absent:

  • **project-roster** → hard stop: "Roster unconfigured — run `/setup` to populate `projects_list`." Do not guess a roster.
  • **project-named** → fall back to treating `<name>` as a literal filesystem path if it exists; else the same unconfigured message.

**Resolve the project path per breadth:**

  • **project-nearest** (no second arg) → walk up from cwd to the nearest `CLAUDE.md`/`PROGRESS.md` (the same Step-1 resolver the other aria-knowledge skills use). No `projects_list` needed.
  • **project-named** (`<name>`) → the typed `<name>` IS the `projects_list` tag (`/recap project cs` → the `cs:` entry). Unknown tag → list the available tags and stop (no fuzzy matching).
  • **project-roster** (`all`) → iterate every `tag:path` entry.

**Per-project read (tolerant — a missing/malformed file degrades to a blank/omitted row, never throws):**

  • **`SESSION.md`** (nearest, then sub-project roots if present): `lastEvent` (`in-progress`/`wrapup`/`handoff`) → *current state*; the embedded next-session prompt → an *in-flight* fragment.
  • **`PROGRESS.md`** (nearest): the most recent dated/`## ` arc heading + its open (TODO / in-progress) items.
  • **Git — only if the directory is a git repo AND Bash is available:** `git -C <path> log -1 --stat` (last commit) + `git -C <path> status --short` (dirty tree). **If not a git repo → silently omit the commit and working-tree rows** (per-project version of the Runtime-Gate Bash check).

**Output — single project (nearest / named).** Full orientation, keeping the standard `What / Where / Status` table. Each substantive item carries an indented `↳` **context sub-row** with a short sentence (so

Read more
@mikeprasad
Ships witharia-knowledge

Agent Memory · Context Engineering · Planning & Reasoning · Human-in-the-Loop Governance ARIA is the missing infrastructure layer for production AI coding agents: persistent memory that survives context compaction, deliberate context engineering that loads

1940 skills12 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
19
Star history of mikeprasad/aria-knowledge on GitHub, a chart by star-history.com

Other skills on aria-knowledge.

audit-config

audit-config

Audit Antigravity project configuration and documentation for drift, staleness, and broken references. Use when user asks for…

snapshot

snapshot

Save the current Antigravity transcript to the knowledge intake on demand. Use when user says '/snapshot', 'snapshot the…

aria-assist

aria-assist

Morning product-management review across all your projects. Use when the user runs /aria-assist, asks for a morning review /…

ask

ask

Research a question, check existing knowledge first, draft a knowledge doc from the answer, and save directly to the appropriate…

audit-rules

audit-rules

Mine your distilled knowledge corpus — memory feedback rows, rules backlogs, always-on indexes — for recurring corrections that…

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 recap.

Which coding agents can use recap?
recap 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.