status skill
scriptsDisplays the adoption status of Magpie in a repository, including installation methods, version drift, agent targets, and skill families.
- GitHub stars
- 145
- Files
- 5
- Last commit
- Nov 12, 2026
- License
- Apache-2.0
- Allowed tools
- —
What does the status skill do?
status displays the adoption status of Magpie in a repository, including installation methods, version drift, agent targets, and skill families.
Summary generated from the skill's SKILL.md.
About the status skill
Monitoring how Magpie is integrated into a repository is the primary function of this skill. It provides a comprehensive dashboard for operators to check installation methods, version pinning, and whether the local snapshot has drifted from the committed lock file. It also identifies which agent targets are wired, which skill families are currently installed, and the health of existing symlinks.
An agent should load this skill when a user needs to understand the current Magpie setup or wants to verify if the environment is in sync. While the skill is read-only and relies on a Python-based collector script to gather on-disk state, it facilitates reconfiguration by proposing changes. Any actual mutations, such as adding targets or updating families, are delegated to the setup skill to ensure a single source of truth. It avoids duplicating deep integrity audits by linking users to the setup verify tool instead.
What an agent can do with it
- 1Check Magpie adoption statusAn operator can view a single dashboard to see the current installation method, version pins, and installed skill families.
- 2Identify version driftThe skill compares the local machine lock against the project's committed lock to find mismatches.
- 3Reconfigure agent targetsUsers can propose and confirm changes to wired agent targets or skill families through the dashboard interface.
Written from the skill's SKILL.md. Every use case is checked against a quote from it.
How to install the status skill
Each command copies the skill folder into the client's skills directory. Restart the client or start a new session to load it.Install the status skill in Plugin
/plugin marketplace add apache/magpie /plugin install magpie-setup@apache-magpie
Install the status skill in Claude Code
~/.claude/skills/status/SKILL.md
$ npx degit apache/magpie/plugins/magpie-setup/skills/status ~/.claude/skills/statusInstall the status skill in Claude Code (project)
.claude/skills/status/SKILL.md
$ npx degit apache/magpie/plugins/magpie-setup/skills/status .claude/skills/statusInstall the status skill in Codex
~/.agents/skills/status/SKILL.md
$ npx degit apache/magpie/plugins/magpie-setup/skills/status ~/.agents/skills/statusInstall the status skill in Gemini CLI
~/.gemini/skills/status/SKILL.md
$ npx degit apache/magpie/plugins/magpie-setup/skills/status ~/.gemini/skills/statusInstall the status skill in Claude.ai
npx degit apache/magpie/plugins/magpie-setup/skills/status status && zip -r status.zip status # claude.ai → Customize → Skills → + → Create skill → Upload a skill → status.zip
SKILL.md
View on GitHubsetup-status
Render a one-glance picture of how apache-magpie is adopted in this repo, then let the user reconfigure it without leaving the view. The dashboard answers the questions an operator actually asks: which install method and version are pinned, has the snapshot drifted, which agent targets are wired, which skill families are installed, and are the symlinks healthy.
This skill is the configuration view of adoption. It is read-
only on its own; every change it offers is carried out by
delegating to setup — the one skill
that owns adoption mutation. For a deep integrity / health
check (lock parsing, per-check ✓/✗ matrix, permission-hygiene
audit, ASF comdev MCP prerequisites, stale-worktree sweep), use
setup verify; this skill links to
it rather than duplicating its checks.
Adopter overrides
Before running its default behaviour, this skill consults
setup-status.md in the personal layer
(.apache-magpie-local/ when the project adopted Magpie, falling back to the main checkout's in a linked worktree,
or <git-common-dir>/apache-magpie/ when Magpie is only installed; applied first, wins on conflict) and
.apache-magpie-overrides/setup-status.md (committed, project-wide)
in the adopter repo, if present, and applies any agent-readable overrides it finds.
See docs/setup/agentic-overrides.md for the contract.
Hard rule: agents NEVER modify the snapshot under <adopter-repo>/.apache-magpie/.
Local modifications go in the override file; framework changes go via PR to apache/magpie.
Snapshot drift
Also at the top of every run, this skill compares the gitignored
.apache-magpie.local.lock (per-machine fetch) against the
committed .apache-magpie.lock (the project pin). On mismatch the
skill surfaces the gap and proposes
setup update. The proposal is
non-blocking; surfacing the drift is itself part of this skill's
dashboard, so the comparison feeds Step 1
rather than gating the run.
Inputs
Skill directives (how the user invokes the skill):
| Input | Effect |
|---|---|
| (none) | Render the dashboard, then offer adjustments interactively. |
--no-adjust |
Render only; skip the reconfigure offer. |
adjust |
Skip straight to the reconfigure flow after a brief state recap. |
Collector flags (passed through to
scripts/collect_status.py):
| Flag | Effect |
|---|---|
--repo <path> |
Inspect a repo other than the current git top-level. |
--format md |
The Markdown dashboard (default). |
--format json |
The raw machine-readable fields (collect.md); add --pretty to indent. |
The default output is the Markdown dashboard, rendered deterministically by the collector.
Prerequisites
- A git checkout (
git rev-parse --show-toplevelsucceeds), or an explicit--repo <path>. python3onPATHfor the deterministic collector (scripts/collect_status.py). No third-party packages, no network access.
This skill reads only framework-internal, on-disk state (lock
files, symlinks, .gitignore, the post-checkout hook). It reads
no external or private content, so the prompt-injection and
Privacy-LLM gate-checks do not apply.
Step 0 — Pre-flight check
- Resolve the repo root (
--repoif given, elsegit rev-parse --show-toplevel). - Apply adopter overrides and the drift preamble above.
- Adopted? If
<committed-lock>(.apache-magpie.lock) is absent, the repo is not adopted. Say so, point atsetupto adopt, and stop — there is no state to render.
Step 1 — Render the dashboard
The collector renders the dashboard itself. Run it (it never writes and never fetches):
python3 <framework>/skills/setup-status/scripts/collect_status.py
(From a normal adopter the script lives under the snapshot at
.apache-magpie/skills/setup-status/scripts/; invoke it via the
magpie-setup-status symlink's resolved path. The default output
is the Markdown dashboard; pass --format json only when tooling
needs the raw fields — see collect.md.)
OUTPUT CONTRACT — non-negotiable. Present the script's Markdown output verbatim (it is already GitHub-flavoured Markdown — let the harness render the pipe table). Do not: re-draw it as a box-drawing/ASCII table; drop the
servesbullet legend (it carries the agents each directory serves, including the wholeuniversalcluster); add a Reads column back into the table (that is what made it wrap and break); recompute the verdict; or "prettify" the layout. The script, not the agent, owns the rendering, precisely because an LLM formatting pass reliably mangles it (drops the agents-served legend, renames columns, re-introduces the wide column). If you find yourself rebuilding the table, stop and paste the script output instead.
The renderer owns the headline, the agent-target table plus its
serves legend (so the universal cluster and every registry
vendor always appear), the family roster, and the drift /
integrity summary.
Full layout reference, the health-verdict rules, and mode-aware
interpretation: render.md.
Step 2 — Interpret (lightly)
After printing the verbatim dashboard, optionally add a one-line
mode-aware note where it helps — without re-tabulating or
contradicting the script output. Example: a method:local
framework checkout commits its symlinks and has no snapshot or
local lock, so the absent snapshot is healthy there but a fault
for a normal adopter (render.md).
Step 3 — Offer adjustments
Unless --no-adjust was passed, end the dashboard with the
reconfigure offer. Detect the obvious deltas (a registry target
present on disk but not wired; an opt-in family not installed;
dangling symlinks; drift) and present each as a concrete,
confirmable change. On confirmation, delegate to
setup with the right flags
(agents:<list>, skill-families:<list>, or update) — this
skill never edits symlinks, locks, or .gitignore itself.
Full gap-detection and delegation rules: adjust.md.
Hard rules
- Read-only on its own; mutation only via setup. This skill
never writes a symlink, a lock file, or
.gitignore. Every change is delegated tosetup, preserving the framework's single source of truth for adoption mutation. - Propose before applying. Each adjustment is a proposal the
user explicitly confirms before the delegated
setuprun starts. No silent reconfiguration. - Do not duplicate
verify. For deep integrity, permission hygiene, comdev-MCP prerequisites, and the stale-worktree sweep, point the user atsetup verifyrather than re-implementing those checks here. - Never invent state. Report only what the collector observed. If a field is unknown (e.g. upstream-tip drift needs network), say it was not checked and name the skill that does check it.
References
collect.md— the collector's JSON field reference.render.md— dashboard layout, health-verdict rules, mode-aware interpretation.adjust.md— gap detection and the delegation contract tosetup.scripts/collect_status.py— the deterministic, read-only state collector.setup— adoption mutation:install.md,update.md, theagents.mdtarget registry, and the Golden rules.setup verify— the deep integrity / health check this dashboard complements.AGENTS.md— framework conventions and the placeholder convention.docs/setup/agentic-overrides.md— the override contract every skill consults.
Files in this skill
5status skill questions
How do I install the status skill in Claude Code?
Run npx degit apache/magpie/plugins/magpie-setup/skills/status ~/.claude/skills/status. Claude Code loads skills from ~/.claude/skills (all projects) or .claude/skills (one project) and uses a skill when its description matches the task.
Which clients can use the status skill?
Any client that reads the Agent Skills format: Claude Code, Codex, Gemini CLI and claude.ai (upload as a ZIP). Scripts in the skill run only where the client allows code execution.
What information does the status dashboard provide?
The dashboard shows the installation method and version pin, snapshot drift, wired agent targets, installed skill families, and symlink health.
Can this skill modify the repository configuration?
No, this skill is read-only. Any changes to the configuration are delegated to the setup skill.
How can I perform a deep integrity and health check?
For a deep integrity or health check involving lock parsing and permission audits, you should use the setup verify skill.
Does this skill require network access?
No, the collector script does not require network access and reads only on-disk state.