mastermind understand command (monomind)
Scanned 9/10/2026
Install to Claude Code
npx -y skills add monoes/monomind --skill monomind-mastermind-understand --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Monomind Mastermind Understand?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/monoes-monomind-mastermind-understand)More formats (shields.io, HTML) on the badges page.
---
description: mastermind understand command (monomind)
type: flow
name: monomind-mastermind-understand
---
<!-- "Monomind — Run semantic enrichment on the current project's monograph knowledge graph. Uses the active Claude Code session for LLM work — no API key needed." -->
# /mastermind:understand — Semantic Enrichment
Enriches the current project's monograph knowledge graph with summaries, architectural
layers, and semantic relationships.
**Designed to run inside Claude Code** — uses YOUR current session for LLM work via
the Task tool. No `ANTHROPIC_API_KEY` required. The script handles layer detection
and DB writes; you (Claude) handle per-file summarization.
## Parse Arguments
Parse `$ARGUMENTS` for these flags:
- `--dir <path>` — project directory (default: cwd)
- `--db <path>` — monograph.db path (default: `<dir>/.monomind/monograph.db`)
- `--full` — force full re-analysis
- `--no-llm` — heuristic-only mode (no per-file summaries)
- `--layers-only` — skip per-file analysis, only re-detect layers
- `--max-files <N>` — stop after N files (0 = all)
- `--dry-run` — show what would happen, don't write
Bare path argument → `--dir`.
---
## Step 1: Locate project, DB, and script
```bash
DIR="${ARGUMENTS_dir:-$(pwd)}"
DB="${ARGUMENTS_db:-$DIR/.monomind/monograph.db}"
# Find understand-analyze.mjs (ships with monomind globally)
GLOBAL_ROOT=$(npm root -g 2>/dev/null)
SCRIPT="$GLOBAL_ROOT/monomind/packages/@monomind/cli/scripts/understand-analyze.mjs"
[ ! -f "$SCRIPT" ] && SCRIPT="$GLOBAL_ROOT/@monoes/monomindcli/scripts/understand-analyze.mjs"
```
If `$DB` does not exist:
> monograph.db not found at `$DB`. Build it first: `npx monomind monograph build`
If `$SCRIPT` does not exist:
> understand engine missing. Update: `npm install -g monomind@latest`
In either case, STOP.
---
## Step 2: Run the script in heuristic mode (always — fast and deterministic)
This step is non-negotiable. The script handles:
- File node discovery from monograph.db
- Heuristic layer detection from file paths
- DB writes (community_id + properties)
- graph.json emission to `.understand/knowledge-graph.json`
- Auto-shadowing the DB to `/tmp` when it lives on a network FS
```bash
node "$SCRIPT" --dir "$DIR" --db "$DB" --no-llm
```
Wait for completion. Capture stdout. Note how many file nodes were found and how
many layers were detected. Do NOT advise the user about API keys.
---
## Step 3: Per-file summarization (ONLY if `--no-llm` and `--layers-only` are both UNSET)
This is where YOU (the current Claude session) do the LLM work. The script left
behind a fresh `.understand/knowledge-graph.json` with placeholder summaries.
1. Read `.understand/knowledge-graph.json`. For each node where `properties.fileSummary`
is empty or marked `[heuristic]`, do the following:
- Use the `Read` tool on `node.file_path` (relative to `$DIR`).
- Produce a JSON object: `{ id, fileSummary, tags, complexity, functionSummaries, classSummaries }`
where:
- `fileSummary`: 1-2 sentences explaining what the file does
- `tags`: array of 2-5 short tags
- `complexity`: "simple" | "moderate" | "complex"
- `functionSummaries`: top-5 functions → 1-sentence each
- `classSummaries`: classes → 1-sentence each
2. Process files in batches of 5 for efficiency. Use `--max-files` to cap if set.
3. Collect all analyses into an `analyses` array.
If `$ARGUMENTS` includes `--no-llm` or `--layers-only`, SKIP this step entirely.
---
## Step 4: Write analyses back to the DB
Pipe the collected analyses to a small re-import:
```bash
echo "$ANALYSES_JSON" | node "$SCRIPT" --dir "$DIR" --db "$DB" --import-analyses-stdin
```
(If your `analyses` array is empty, skip this step.)
---
## Step 5: Report
```
╔══════════════════════════════════════════════════╗
║ /mastermind:understand — Enrichment Done ║
╠══════════════════════════════════════════════════╣
║ DB: .monomind/monograph.db ║
║ Files analyzed: <N> ║
║ LLM summaries: <N> (via active session) ║
║ Layers: <N> ║
║ graph.json: .understand/knowledge-graph.json║
╚══════════════════════════════════════════════════╝
```
If LLM summaries = 0 (because `--no-llm` was set), say "heuristic-only mode — no per-file summaries written".
Then:
> Open the Monomind control panel and click **Monograph → GRAPH** to see layers.
> Each color = one architectural layer (API, Service, Data, UI, etc.).
>
> Follow-ups:
> - `/mastermind:understand --full` — re-run from scratch
> - `/mastermind:understand --layers-only` — refresh only layers
> - `/mastermind:understand --no-llm` — heuristic-only mode
---
## Error Handling
- Do NOT prompt the user to set `ANTHROPIC_API_KEY`. LLM work happens in this session.
- If the script exits non-zero: show stderr and suggest `npm install -g monomind@latest`.
- If monograph.db has no file nodes: tell the user to run `npx monomind monograph build` first.
- All errors are non-fatal — report and return cleanly.
To re-run on a schedule: wrap with `/mastermind:repeat`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!