plantuml-bootstraplisted
Install: claude install-skill MrBogomips/claude-code
# PlantUML Bootstrap
Set up the **current project** for use with the `plantuml-authoring` skill.
Templates live inside this plugin; resolve them via `${CLAUDE_PLUGIN_ROOT}`.
## Locate the templates (first Bash block in every flow)
```bash
SKILL_DIR="${CLAUDE_PLUGIN_ROOT}/skills/plantuml-authoring"
SKILL_TPL="$SKILL_DIR/templates"
[ -d "$SKILL_TPL" ] || { echo "ERROR: plantuml-authoring assets missing in plugin"; exit 1; }
```
When the canonical schema for the Policy section is needed, read
`$SKILL_DIR/project-config.md` via the Read tool with that resolved path.
## Mode dispatch
Read the `mode` argument. Default `bootstrap`. If `reverse`, jump to the
**Reverse** section at the bottom; otherwise run **State detection** then
**Wizard**, **Append Policy**, **Generation**, **Validate**, **Confirm**.
## State detection
Run from the project root (`pwd`). Check four facts:
1. Does `CLAUDE.md` exist?
2. Does `CLAUDE.md` contain `## PlantUML Policy`?
3. Does `.plantuml/` exist?
4. Does `.plantuml/_base.puml` exist?
Branches:
- Policy ✓ + `.plantuml/` ✓ → tell the user it is already configured; ask
whether to **regenerate** `.plantuml/` from policy, or exit. Stop.
- Policy ✓ + `.plantuml/` ✗ → run **Generation** only.
- Policy ✗ + `.plantuml/` ✓ → suggest `mode=reverse` and stop.
- Policy ✗ + `.plantuml/` ✗ → run **Wizard**, then **Generation**.
## Wizard
Use `AskUserQuestion` if available (preferred), otherwise ask in chat.
Collect:
1. **Primary target**: `web | docx |