home / skills / jjuidev / jss / plans-kanban

plans-kanban skill

/.claude/skills/plans-kanban

This skill helps you monitor project plans with a visual kanban dashboard, tracking progress, timelines, and phase status across plans.

npx playbooks add skill jjuidev/jss --skill plans-kanban

Review the files below or copy the command above to add this skill to your agents.

Files (14)
SKILL.md
4.1 KB
---
name: plans-kanban
description: View plans dashboard with progress tracking and timeline visualization. Use for kanban boards, plan status overview, phase progress, milestone tracking, project visibility.
---

# plans-kanban

Plans dashboard server with progress tracking and timeline visualization.

## ⚠️ Installation Required

**This skill requires npm dependencies.** Run one of the following:

```bash
# Option 1: Install via ClaudeKit CLI (recommended)
ck init  # Runs install.sh which handles all skills

# Option 2: Manual installation
cd .claude/skills/plans-kanban
npm install
```

**Dependencies:** `gray-matter`

Without installation, you'll get **Error 500** when viewing plan details.

## Purpose

Visual dashboard for viewing plan directories with:
- Progress tracking per plan
- Timeline/Gantt visualization
- Phase status indicators
- Activity heatmap

## Quick Start

```bash
# View plans dashboard
node .claude/skills/plans-kanban/scripts/server.cjs \
  --dir ./plans \
  --open

# Remote access (all interfaces)
node .claude/skills/plans-kanban/scripts/server.cjs \
  --dir ./plans \
  --host 0.0.0.0 \
  --open

# Background mode
node .claude/skills/plans-kanban/scripts/server.cjs \
  --dir ./plans \
  --background

# Stop all running servers
node .claude/skills/plans-kanban/scripts/server.cjs --stop
```

## Slash Command

Use `/kanban` for quick access:

```bash
/kanban plans/           # View plans dashboard
/kanban --stop           # Stop kanban server
```

## Features

### Dashboard View
- Plan cards with progress bars
- Phase status breakdown (completed, in-progress, pending)
- Last modified timestamps
- Issue and branch links
- Priority indicators

### Timeline Visualization
- Gantt-style timeline of plans
- Duration tracking
- Activity heatmap

### Design
- Glassmorphism UI with dark mode
- Responsive grid layout
- Warm accent colors

## CLI Options

| Option | Description | Default |
|--------|-------------|---------|
| `--dir <path>` | Plans directory | - |
| `--port <number>` | Server port | 3500 |
| `--host <addr>` | Host to bind (`0.0.0.0` for remote) | localhost |
| `--open` | Auto-open browser | false |
| `--background` | Run in background | false |
| `--stop` | Stop all servers | - |

## Architecture

```
scripts/
├── server.cjs               # Main entry point
└── lib/
    ├── port-finder.cjs      # Port allocation (3500-3550)
    ├── process-mgr.cjs      # PID management
    ├── http-server.cjs      # HTTP routing
    ├── plan-parser.cjs      # Plan.md parsing
    ├── plan-scanner.cjs     # Directory scanning
    ├── plan-metadata-extractor.cjs  # Rich metadata
    └── dashboard-renderer.cjs       # HTML generation

assets/
├── dashboard-template.html  # Dashboard HTML template
├── dashboard.css           # Styles
└── dashboard.js            # Client interactivity
```

## HTTP Routes

| Route | Description |
|-------|-------------|
| `/` or `/kanban` | Dashboard view |
| `/kanban?dir=<path>` | Dashboard for specific directory |
| `/api/plans` | JSON API for plans data |
| `/api/plans?dir=<path>` | JSON API for specific directory |
| `/assets/*` | Static assets |
| `/file/*` | Local file serving |

## Remote Access

When using `--host 0.0.0.0`, the server auto-detects your local network IP:

```json
{
  "success": true,
  "url": "http://localhost:3500/kanban?dir=...",
  "networkUrl": "http://192.168.2.75:3500/kanban?dir=...",
  "port": 3500
}
```

Use `networkUrl` to access from other devices on the same network.

## Plan Structure

The dashboard scans for directories containing `plan.md` files:

```
plans/
├── 251215-feature-a/
│   ├── plan.md              # Required - parsed for phases
│   ├── phase-01-setup.md
│   └── phase-02-impl.md
├── 251214-feature-b/
│   └── plan.md
└── templates/               # Excluded by default
```

## Troubleshooting

**Port in use**: Server auto-increments from 3500-3550

**No plans found**: Ensure directories contain `plan.md` files

**Remote access denied**: Use `--host 0.0.0.0` to bind all interfaces

**PID files**: Located at `/tmp/plans-kanban-*.pid`

Overview

This skill provides a local plans dashboard for visualizing project plans as kanban-style cards and a timeline. It combines per-plan progress tracking, phase status breakdowns, and a Gantt-like timeline to give quick visibility into plan health and dates. The UI is responsive, supports dark mode, and offers activity heatmaps and links to related issues or branches.

How this skill works

The server scans a specified directory for plan.md files and extracts structured metadata and phase details to build a JSON model of all plans. A lightweight HTTP server exposes a dashboard route and an API endpoint that render plan cards, progress bars, phase statuses, and a timeline visualization. It also provides options for opening a browser, binding to all interfaces for remote access, and running in background mode with simple process management.

When to use it

  • Get a quick, visual status overview of multiple plans or features
  • Track phase-by-phase progress and milestone durations across projects
  • Share a live dashboard on your local network for stakeholder review
  • Diagnose stalled phases with activity heatmaps and last-modified timestamps
  • Integrate plan visibility into lightweight team demos or sprint reviews

Best practices

  • Keep each plan in its own folder with a plan.md file containing phases and dates
  • Include clear phase start/end dates and status markers to enable accurate timeline rendering
  • Use consistent naming and metadata so the scanner extracts meaningful fields
  • Run the server on a dedicated port or background mode for continuous local access
  • Bind to 0.0.0.0 only when you need network access and secure your network appropriately

Example use cases

  • Engineering team dashboard showing feature plans with issue and branch links
  • Project manager view for tracking phase completion and upcoming milestones
  • Cross-team planning when several initiatives need timeline alignment
  • On-site demos where a visual timeline and progress bars improve stakeholder understanding
  • Quick local share for product reviews via the networkUrl

FAQ

What directory layout does the dashboard expect?

It scans for directories that contain a plan.md file; each plan folder can include phase files and metadata for richer extraction.

How do I access the dashboard from another device?

Run the server with host set to 0.0.0.0 and use the provided networkUrl to open the dashboard from devices on the same network.