plannotator-compound
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
Skill by backnotprop
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/backnotprop-plannotator-compound
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, frontend, data, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/plannotator-compound
What's inside
- Skill name
plannotator-compound- Description
- Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then produce a polished HTML dashboard report. Falls back to Claude Code ExitPlanMode denial reasons when Plannotator data is unavailable.
- License
- Apache-2.0
- Instructions
- 567 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- body: 567 lines (spec recommends under 500)
Files (4)
- SKILL.md
- report-template.html · assets/
- claude-code-fallback.md · references/
- extract_exit_plan_mode_outcomes.py · scripts/
SKILL.md (first lines)
# Compound Planning Analysis
You are conducting a comprehensive research analysis of a user's Plannotator plan
archive. The goal: extract patterns from their denied plans, reduce
them into actionable insights, and produce an elegant HTML dashboard report.
This is a multi-phase process. Each phase must complete fully before the next begins.
Research integrity is paramount — every file must be read, no skipping.
## Source Selection
Before starting the analysis, determine which data source is available.
1. **Plannotator mode (first-class)** — Determine the Plannotator data directory:
use `$PLANNOTATOR_DATA_DIR` if set, otherwise `~/.plannotator`. Check the
`plans/` subdirectory there. If it exists and contains `*-denied.md` files,
use this mode. The entire workflow below is written for Plannotator data.
2. **Claude Code fallback mode** — If the Plannotator archive is absent or
contains no denied plans, check `~/.claude/projects/`. If present, read
[references/claude-code-fallback.md](references/claude-code-fallback.md)
before continuing. That reference explains how to use the bundled parser at
[scripts/extract_exit_plan_mode_outcomes.py](scripts/extract_exit_plan_mode_outcomes.py)
to extract denial reasons from Claude Code JSONL transcripts. Every phase
below has a short note explaining what changes in fallback mode — the
reference file has the details.
3. **Neither available** — Ask the user for their Plannotator plans directory or
Claude Code projects directory. Do not guess.
## Phase 0: Locate Plans & Check for Previous Reports
Use the mode chosen in Source Selection above.
**Plannotator mode:** Verify the plans directory contains `*-denied.md` files. If
none exist, fall back to Claude Code mode before stopping.
**Claude Code fallback mode:** Run the bundled parser per the fallback reference to
build the denial-reason dataset. Create `/tmp/compound-planning/` if needed.
In either mode, proceed to Previous Report Detection below.
### Previous Report Detection
After locating the plans directory, check for existing reports:
```
ls ${PLANNOTATOR_DATA_DIR:-~/.plannotator}/plans/compound-planning-report*.html
```
Reports follow a versioned naming scheme:
- First report: `compound-planning-report.html`
- Subsequent reports: `compound-planning-report-v2.html`, `compound-planning-report-v3.html`, etc.
If one or more reports exist, determine the **latest** one (highest version number).
Get its filesystem modification date using `stat` (macOS: `stat -f %Sm -t %Y-%m-%d`,
Linux: `stat -c %y | cut -d' ' -f1`). This is the **cutoff date**.
Present the user with a choice:
> "I found a previous report (`compound-planning-report-v{N}.html`) last updated
> on {CUTOFF_DATE}. I can either:
>
> 1. **Incremental** — Only analyze files dated after {CUTOFF_DATE}, saving tokens
> and building on previous findings
> 2. **Full** — Re-analyze the entire archive from scratch
>
> Which would you prefer?"
Wait for the user's response before proceeding.
**If incremental:** Filter all subsequent phases to only process files with dates
after the cutoff date. The new report version will note in its header narrative that
it covers the period from {CUTOFF_DATE} to present, and reference the previous
report for earlier findings. The inventory (Phase 1) should still count ALL files
for overall stats, but clearly separate "new since last report" counts.
**If full:** Proceed normally with all files, but still use the next version number
for the output filename.
**If no previous report exists:** Proceed normally. The output filename will be
`compound-planning-report.html` (no version suffix for the first report).
## Phase 1: Inventory
Count and report the dataset. **Always count ALL files** for overall stats,
regardless of whether this is an incremental or full run:
```
- *-approved.md files (count)
- *-denied.md files (count)
- Date range (earliest to latest date found in filenames)
- Total days spanned
- Revision rate: denied / (approved + denied) — this is the "X% of plans
revised before coding" stat used in dashboard section 1
```
**Note:** Ignore `*.annotations.md` files entirely. Denied files already contain
the full plan text plus all reviewer feedback appended after a `---` separator.
Annotation files are redundant subsets of this content — reading both would
double-count feedback.
**If incremental mode:** After the total counts, separately report the counts for
files dated after the cutoff date only:
```
New since {CUTOFF_DATE}:
- *-denied.md files: X (of Y total)
- New date range: {CUTOFF_DATE} to {LATEST_DATE}
- New days spanned: N
```
If fewer than 3 new denied files exist since the cutoff, warn the user:
> "Only {N} new denied plans since the last report. The incremental analysis may
> be thin. Would you like to proceed or switch to a full analysis?"
Also run `wc -l` across all `*-approved.md` files to get average lines per
approved plan. This tells the user whether their plans are staying lightweight
or bloating over time. You do not need to read approved plan contents — justFrom backnotprop/plannotator, Apache-2.0.
More from backnotprop/plannotator
- 0.786score
plannotator-visual-explainer
backnotprop
Generate self-contained HTML visualizations with Plannotator theming.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.782score
release-plannotator
backnotprop
Prepare and execute a Plannotator release — draft release notes with full contributor credit, bump versions across all package files, build in dependency…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.781score
review-renovate
backnotprop
Review Renovate bot PRs that update GitHub Actions dependencies.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.781score
plannotator
backnotprop
Reference for using Plannotator (its `plannotator` tool when you have one, otherwise the CLI): plan review, code review, annotating files, URLs, folders, and…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.778score
plannotator-setup-goal
backnotprop
Turn an idea or objective into a goal package for /goal.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.778score
plannotator-annotate
backnotprop
Open Plannotator's annotation UI for a markdown file, plain-text config file (.yaml, .json, .toml, .ini, .csv, .log, …), HTML file, URL, or folder and then…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.778score
update-deps
backnotprop
Audit and update npm/Bun dependencies with supply chain integrity checks — verifies maintainers, publish age, tarball diffs, and provenance before bumping.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.775score
plannotator-review
backnotprop
Open Plannotator's browser-based code review UI and address the returned feedback.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.773score
plannotator-last
backnotprop
Open Plannotator on the latest rendered assistant message and use the returned annotations to revise that message or continue.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.773score
plannotator-review
backnotprop
Open Plannotator's browser-based code review UI for the current worktree, another directory, or a pull request URL, then act on the feedback that comes back.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.773score
plannotator-annotate
backnotprop
Open Plannotator's annotation UI for a markdown file, HTML file, URL, or folder and then respond to the returned annotations.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.769score
plannotator-annotate
backnotprop
Open Plannotator's annotation UI for a file, folder, or URL, then address the returned annotations.
SkillAFreshness: A★ 9.6KClaude Code +9
Signals
- Stars
- 9,609
- Forks
- 721
- Open issues
- 65
- Last commit (this folder)
- Jun 5, 2026 (4 months ago)
- Last release
- Oct 24, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/backnotprop/plannotator
- Website
- plannotator.ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.335score
plannotator-compound
ArthurDanjou
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
SkillAFreshness: AClaude Code +9 - 0.322score
plannotator-compound
ain3sh
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
SkillCFreshness: C★ 15Claude Code +9 - 0.321score
plannotator-compound
XenonIsAwesome
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
SkillBFreshness: B★ 1Claude Code +9 - 0.278score
plannotator-compound
davicbtoliveira
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
SkillCFreshness: CClaude Code +9 - 0.278score
plannotator-compound
conradbeach
Analyze a user's Plannotator plan archive to extract denial patterns, feedback taxonomy, evolution over time, and actionable prompt improvements — then…
SkillCFreshness: CClaude Code +9
More from backnotprop
- 0.786score
plannotator-visual-explainer
backnotprop
Generate self-contained HTML visualizations with Plannotator theming.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.782score
release-plannotator
backnotprop
Prepare and execute a Plannotator release — draft release notes with full contributor credit, bump versions across all package files, build in dependency…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.781score
review-renovate
backnotprop
Review Renovate bot PRs that update GitHub Actions dependencies.
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.781score
plannotator
backnotprop
Reference for using Plannotator (its `plannotator` tool when you have one, otherwise the CLI): plan review, code review, annotating files, URLs, folders, and…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.778score
plannotator-annotate
backnotprop
Open Plannotator's annotation UI for a markdown file, plain-text config file (.yaml, .json, .toml, .ini, .csv, .log, …), HTML file, URL, or folder and then…
SkillAFreshness: A★ 9.6KClaude Code +9 - 0.778score
update-deps
backnotprop
Audit and update npm/Bun dependencies with supply chain integrity checks — verifies maintainers, publish age, tarball diffs, and provenance before bumping.
SkillAFreshness: A★ 9.6KClaude Code +9
Cite this page
plannotator-compound skill. Agent Mart. https://agentmart.dev/skills/backnotprop-plannotator-compound (last updated 2026-10-24)