index-status
npx machina-cli add skill MacroMan5/macromanatlas/index-status --openclaw/index-status
Show the health and status of the project index.
Step 1: Announce
Say: "Checking MacroManAtlas index status..."
Step 2: Check index existence
Read .claude/index.md. If it doesn't exist, report:
MacroManAtlas Status
────────────────
⚠ No index found. Run /index-init to generate one.
And stop.
Step 3: Parse index metadata
From .claude/index.md, extract:
- Generation timestamp
- Project type
- Module count
- File count
Step 4: Check each module
For each module listed in the index:
- Check if
<Module>/README.mdexists - Get the README's last modification time (use
git log -1 --format=%ci -- <Module>/README.mdor Bashstat) - Get the latest file modification in the module (use
git log -1 --format=%ci -- <Module>/) - Count files in filesystem:
git ls-files <Module>/ | wc -l(or Glob fallback) - Count files listed in the README's Files table
- Compare: if filesystem has more files than README, mark as stale
Status symbols:
- ✓ = README exists and is fresh (no newer files than README)
- ⚠ = README exists but stale (newer files not indexed)
- ✗ = No README.md found
Step 5: Check hooks
Read the plugin's hooks.json to verify hook registration. Check for:
- SessionStart hook
- PostToolUse hook
- PreCompact hook
- Stop hook
Step 6: Check recent sync activity
Read last 20 lines of ~/.claude/logs/index-sync.log (if exists).
Extract the most recent sync: module name and timestamp.
Step 7: Present dashboard
Format output as:
MacroManAtlas Status
────────────────
Index: .claude/index.md (generated <time ago>)
Type: <project-type> | Modules: <N> | Indexed files: <N>
Module Health:
✓ ModuleName — <N> files, README fresh
⚠ ModuleName — <N> files, README stale (<N> new files not indexed)
✗ ModuleName — no README.md
Hooks: SessionStart ✓ | PostToolUse ✓ | PreCompact ✓ | Stop ✓
Last sync: <module> (<time ago>) — <change_type>
If no sync log exists, show: Last sync: no activity recorded
Source
git clone https://github.com/MacroMan5/macromanatlas/blob/main/skills/index-status/SKILL.mdView on GitHub Overview
This skill reports the current state of the MacroManAtlas project index, including staleness, module coverage, hook health, and recent sync activity. It helps you diagnose index issues quickly by presenting a dashboard-style summary of key indicators.
How This Skill Works
The skill reads the index metadata from .claude/index.md, parses generation time, project type, module count, and file count, and then iterates each module to verify README existence, freshness, and file counts. It also checks hooks.json for required hooks and reads the most recent index-sync.log entries to surface the latest sync activity, finally presenting a structured dashboard.
When to Use It
- You detect or suspect an out-of-date or incomplete index
- After running /index-init or /index-sync to refresh index data
- A module has new files but the README files table hasn’t updated
- Hook registrations appear missing or misconfigured
- You need to verify recent index activity and timing from index-sync.log
Quick Start
- Step 1: Announce and begin the status check (e.g., "Checking MacroManAtlas index status...")
- Step 2: Read .claude/index.md to confirm existence and parse metadata; fail fast if missing
- Step 3: Review module health, hooks, and last sync, then present the dashboard output
Best Practices
- Verify that .claude/index.md exists before performing health checks
- Cross-check filesystem file counts with the Files table in each module's README
- Flag any module with newer files not yet indexed as stale and re-index
- Regularly review hooks.json for required hooks: SessionStart, PostToolUse, PreCompact, Stop
- Consult the last 20 lines of ~/.claude/logs/index-sync.log to confirm recent activity
Example Use Cases
- A module added new source files but the README Files table was not updated, marking it as stale
- A module exists without a README.md, resulting in a ✗ for that module
- Hooks.json omits the PostToolUse hook, triggering a visible warning in the dashboard
- Index.md is missing or unreadable, prompting the /index-init guidance in the output
- Last sync shows ModuleA updated 5 minutes ago, with a minor change type reflected in the dashboard