Show current project status and suggest what to do next.
Shows project status, progress, and suggests the next logical action based on the current development state.
npx claudepluginhub sienklogic/towlineThis skill is limited to using the following tools:
You are running the status skill. Your job is to read the project state and present a clear, actionable status dashboard. You suggest the most logical next action based on where the project is.
This skill runs inline and is read-only — it never modifies any files.
Show the user where they are and what to do next. The status display should be a quick glance, not a wall of text. Surface problems and route to the right action.
Tooling shortcut: Instead of parsing multiple files manually, you can run:
node ${CLAUDE_PLUGIN_ROOT}/scripts/towline-tools.js state load
and
node ${CLAUDE_PLUGIN_ROOT}/scripts/towline-tools.js state check-progress
These return structured JSON with config, state, roadmap, and filesystem-verified progress. Falls back gracefully if the script is missing — parse files manually in that case.
Read the following files (skip any that don't exist):
.planning/config.json — Project settings
╔══════════════════════════════════════════════════════════════╗
║ ERROR ║
╚══════════════════════════════════════════════════════════════╝
No Towline project found.
**To fix:** Run `/dev:begin` to start a new project, or `/dev:scan` to analyze an existing codebase.
.planning/STATE.md — Current position, progress, blockers
.planning/ROADMAP.md — Phase overview
.planning/PROJECT.md — Project metadata (if exists)
.planning/REQUIREMENTS.md — Requirements (if exists)
For each phase listed in ROADMAP.md:
Check if the phase directory exists in .planning/phases/
If exists, scan for:
CONTEXT.md — discussion happenedPLAN-*.md or plan files — plans existSUMMARY-*.md or summary files — plans were executedVERIFICATION.md — phase was reviewed.continue-here.md — paused workCalculate phase status:
| Condition | Status |
|---|---|
| No directory | Not started |
| Directory exists, no plans | Discussed only |
| Plans exist, no summaries | Planned (ready to build) |
| Some summaries, not all | Building (in progress) |
| All summaries exist | Built (ready to review) |
| VERIFICATION.md exists, status=passed | Verified (complete) |
| VERIFICATION.md exists, status=gaps_found | Needs fixes |
Count lines in .planning/STATE.md. If over 150 lines, add a warning to the dashboard:
Warning: STATE.md is {N} lines (limit: 150). Run any build/review command to auto-compact it.
Discrepancy check: Compare STATE.md phase/plan/status claims against the filesystem:
Warning: STATE.md references Phase {N} but no directory exists.Warning: STATE.md says {X} plans but filesystem has {Y}.VERIFICATION.md exists: Warning: STATE.md says "verified" but no VERIFICATION.md found.If any discrepancy found, add: Run /dev:resume to auto-reconcile STATE.md.
.continue-here.md files in .planning/phases/VERIFICATION.md files with gaps_found statusdependency_fingerprints in plan frontmatter:
/dev:plan {N}.".planning/debug/ for files with status: active.planning/todos/pending/ for pending todo files.planning/NOTES.md for active note entries^- \[ that don't contain [promoted])~/.claude/notes.md for global notes.planning/quick/ for recent quick tasksPresent the status in this format:
Project: {name from PROJECT.md or config.json}
Phase: {current} of {total} -- {current phase name}
Progress: [{progress bar}] {percentage}%
Phase Status:
| Phase | Status | Plans | Progress |
|-------|--------|-------|----------|
| 1. {name} | {status indicator} {status text} | {completed}/{total} | {percentage}% |
| 2. {name} | {status indicator} {status text} | {completed}/{total} | {percentage}% |
| ...
{If blockers exist:}
Blockers:
- {blocker 1}
- {blocker 2}
{If no blockers:}
Blockers: None
{If paused work:}
Paused: Phase {N} has a checkpoint at plan {M}. Run `/dev:resume` to continue.
{If verification gaps:}
Gaps: Phase {N} verification found {count} gaps. Run `/dev:plan {N} --gaps` to address.
{If cross-phase re-planning needed:}
Warning: Phase {N} was planned before Phase {M} was built. Consider re-planning with `/dev:plan {N}`.
{If active debug sessions:}
Debug: {count} active session(s). Run `/dev:debug` to continue.
{If pending todos:}
Todos: {count} pending. Run `/dev:todo list` to see them.
{If notes exist:}
Notes: {count} quick capture(s). `/dev:note list` to review.
Generate a 20-character progress bar:
[####################] 100% (all filled)
[################....] 80% (16 filled, 4 empty)
[########............] 40% (8 filled, 12 empty)
[....................] 0% (all empty)
Use the Unicode block characters from the UI formatting reference:
Use indicators from references/ui-formatting.md:
| Status | Indicator |
|---|---|
| Complete/Verified | checkmark |
| In Progress | half-filled circle |
| Not started | empty circle |
| Needs fixes | warning triangle |
| Blocked | blocked symbol |
Based on the project state, suggest the single most logical next action:
Decision tree:
1. Is there paused work (.continue-here.md)?
YES → "Resume your work: `/dev:resume`"
2. Is there a verification with gaps?
YES → "Fix verification gaps: `/dev:plan {N} --gaps`"
3. Is the current phase planned but not built?
YES → "Build the current phase: `/dev:build {N}`"
4. Is the current phase built but not reviewed?
YES → "Review what was built: `/dev:review {N}`"
5. Is the current phase verified (complete)?
YES → Is there a next phase?
YES → Was next phase already planned?
YES → Does it need re-planning? (dependency phase changed)
YES → "Re-plan with updated context: `/dev:plan {N+1}`"
NO → "Build the next phase: `/dev:build {N+1}`"
NO → "Plan the next phase: `/dev:plan {N+1}`"
NO → "All phases complete! Your next steps:\n -> /dev:milestone audit — verify cross-phase integration (recommended)\n -> /dev:milestone complete — archive this milestone and create a git tag\n -> /dev:milestone new — start planning the next set of features"
6. Is the current phase not started?
YES → Has it been discussed?
YES → "Plan this phase: `/dev:plan {N}`"
NO → "Start with a discussion: `/dev:discuss {N}` or jump to `/dev:plan {N}`"
7. Active debug sessions?
YES → "Continue debugging: `/dev:debug`"
8. Nothing active?
→ "Start your project: `/dev:begin`"
If only one reasonable next action exists, present it with branded routing:
───────────────────────────────────────────────────────────────
## ▶ Next Up
**{brief explanation}**
`{suggested command}`
<sub>`/clear` first → fresh context window</sub>
───────────────────────────────────────────────────────────────
If multiple reasonable next actions exist (2-3 alternatives), use the action-routing pattern (see skills/shared/gate-prompts.md):
Use AskUserQuestion: question: "What would you like to do next?" header: "Next Step" options: - label: "{primary action}" description: "{brief explanation}" - label: "{alternative 1}" description: "{brief explanation}" - label: "{alternative 2}" description: "{brief explanation}" - label: "Something else" description: "Enter a different command" multiSelect: false
Build options dynamically from the decision tree results. Always include "Something else" as the last option. Generate 1-3 real options based on the state analysis.
After user selects an option:
/dev:{action} {args}" so they can execute it.planning/ directory at all/dev:begin to start a new project/dev:scan if there's an existing codebase to analyze first/dev:milestone audit to verify cross-phase integration (recommended first)/dev:milestone complete to archive the milestone and tag it/dev:milestone new to start the next set of featuresThis skill should be fast. It's a status check, not an analysis.
DO:
DO NOT:
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Search, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.