Skip to content
Development
Skill

/project-status

Cross-framework project status aggregator — discovers contributors from installed frameworks, runs declarative detection, produces a unified status report.

From plugin
aiwg
211200 skills199 agents26 commands
Install
$ npx -y skills add jmagly/aiwg --skill project-status --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/project-status

Context preview

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

Cross-framework project status aggregator — discovers contributors from installed frameworks, runs declarative detection, produces a unified status report.

SKILL.md

project-status.SKILL.md
namespace: aiwg
name: project-status
platforms: [all]
description: Cross-framework project status aggregator — discovers contributors from installed frameworks, runs declarative detection, produces a unified status report.
triggers:
  - "help me know what is next"
  - "tell me where this project stands and what to do next"
  - "generate or refresh project status"
  - "project status"
commandHint:
  argumentHint: "[project-directory=.] [--json] [--guidance \"text\"]"
  allowedTools: Read, Glob, Grep, Bash
  model: haiku
  category: aiwg-utility
  modelRole: efficiency
  modelTier: economy

<!-- AIWG-SKILL-CALLOUT --> > **Skill access pattern (post-kernel-pivot, 2026.5+)** > > Skill names referenced in this document are AIWG skills, **not slash commands**. Most are not kernel-listed and cannot be invoked as `/skill-name` by the platform. Reach them via: > > ```bash > aiwg discover "<capability>" > aiwg show skill <name> > ``` > > Only kernel-listed skills (`aiwg-doctor`, `aiwg-refresh`, `aiwg-status`, `aiwg-help`, `use`, `steward`) are directly invokable as slash commands. See [skill-discovery rule](../../../addons/aiwg-utils/rules/skill-discovery.md).

Project Status (Cross-Framework Aggregator)

Task

Produce a unified status report covering every installed framework, addon, or extension that ships a `kind: status` contributor and is in active use on this project.

This is the cross-framework aggregator described in ADR-023 §Reference contributor frontmatter. It replaces the prior SDLC-only project-status behavior. SDLC-specific reporting now lives in the SDLC framework's status contributor at `agentic/code/frameworks/sdlc-complete/status/contributor.md` — when SDLC is the only contributor in use, the resulting report is functionally equivalent to the prior behavior.

Parameters

  • **`[project-directory]`** (optional): Path to project root. Default: current directory `.`
  • **`--json`** (optional): Emit machine-readable JSON instead of human-readable markdown
  • **`--guidance "text"`** (optional): Extra context the agent should weigh while interpreting contributor blocks

Workflow

Step 1: Locate the registry and project root

Read `.aiwg/frameworks/registry.json` from the project root. The registry lists installed frameworks/addons/extensions by `id`. If the file is missing, treat it as zero installed frameworks — discovery still finds project-local contributors.

cat ./.aiwg/frameworks/registry.json 2>/dev/null

Step 2: Discover candidate contributors

Two sources, processed in order:

1. **Framework-shipped contributors** — for each `id` in the registry, look up its source path under the AIWG installation. Try in order:

  • `<AIWG_ROOT>/agentic/code/frameworks/<id>/status/contributor.md`
  • `<AIWG_ROOT>/agentic/code/addons/<id>/status/contributor.md`
  • `<AIWG_ROOT>/agentic/code/extensions/<id>/status/contributor.md`

Use `Glob` to discover, then `Read` to load the contributor file.

2. **Project-local contributors** — every `*.md` file in `<project-root>/.aiwg/contributors/status/`. These are user-authored contributors that do not require forking a framework.

Step 3: Validate and run detection

For each candidate file:

1. Parse YAML frontmatter. Skip with a warning if frontmatter is malformed or missing required fields (`kind`, `domain`, `description`, `detect.glob`). The schema is published at `<AIWG_ROOT>/agentic/code/addons/aiwg-utils/skills/project-status/contributor.schema.json` — `aiwg validate-metadata` enforces it at deploy time, so most files reaching this step are valid. 2. Run the contributor's `detect.glob` patterns against the project root using `Glob`. Deduplicate matches. If unique match count is less than `detect.minCount` (default 1), the contributor is **installed but not in use** — silently filter out. 3. For surviving contributors, the agent reads the contributor file's body to learn what to report and how to format it.

Step 4: Gather state per contributor

For each in-use contributor, follow its body's guidance to read source files and compute reported state. Contributors are descriptive — they tell the agent what to look at; they do not run code.

Keep blocks compact. Per ADR-023 §Output voice, contributors emit observed state (counts, dates, phase names). Do **not** synthesize prescriptive "recommended commands" inside a contributor's block.

Step 5: Render the unified report

Default (markdown) output shape:

Project: <project-name> (<detected-domain-summary>)
├─ <Domain 1>: <one-line summary> (origin: <framework-id>)
│  ├─ <fact 1>
│  ├─ <fact 2>
│  └─ <fact N>
├─ <Domain 2>: <one-line summary> (origin: <framework-id>)
│  └─ ...
└─ <Domain K>: <one-line summary> (origin: project-local)
   └─ ...

Every block carries an **`origin:`** stamp — the framework id (e.g. `sdlc-complete`, `media-curator`) or the literal `project-local`. This lets the user see at a glance whether a finding came from a framework's contributor or a project-specific override.

Step 6: Handle empty discovery

If discovery returns zero in-use contributors:

  • **In a project that has frameworks installed but none are in use yet**:

surface "No active framework contributors detected. Run `intake-wizard` if this is a new project, or check `.aiwg/frameworks/registry.json` to confirm what's installed."

  • **In a project with no `.aiwg/`**: defer to the heuristic fallback

described in `<AIWG_ROOT>/agentic/code/addons/aiwg-utils/skills/project-status/heuristic-fallback.md` (added by issue #941). When that file is not yet present, surface a short "No project state detected" message.

--json output

Returns a structured array of contributor blocks. Stable shape:

{
  "project_root": "/abs/path",
  "contributors": [
    {
      "origin": "sdlc-complete",
      "domain": "SDLC",
      "summary": "Construction phase, iteration 12, 3 open risks",
      "detail": [
        { "
Read more
Ships withaiwg

Reusable project context and specialist workflows for the AI tools you already use. Plan software, coordinate specialist reviews, prepare campaigns, investigate incidents, organize research, curate media, and maintain operational knowledge.

Get the whole plugin

Other skills on aiwg.