task-visualizer
Visualize task dependencies and progress (Gastown-style)
Best use case
task-visualizer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Visualize task dependencies and progress (Gastown-style)
Teams using task-visualizer should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/task-visualizer/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How task-visualizer Compares
| Feature / Agent | task-visualizer | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Visualize task dependencies and progress (Gastown-style)
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Task Visualizer Skill
## v2.88 Key Changes (MODEL-AGNOSTIC)
- **Model-agnostic**: Uses model configured in `~/.claude/settings.json` or CLI/env vars
- **No flags required**: Works with the configured default model
- **Flexible**: Works with GLM-5, Claude, Minimax, or any configured model
- **Settings-driven**: Model selection via `ANTHROPIC_DEFAULT_*_MODEL` env vars
**ultrathink** - Take a deep breath. We're not here to write code. We're here to make a dent in the universe.
## The Vision
Task visualization should reveal the inevitable path to completion.
## Your Work, Step by Step
1. **Read tasks**: Load current state and dependencies.
2. **Map relationships**: Identify blockers and parallel paths.
3. **Render view**: ASCII or Mermaid, consistent and legible.
4. **Recommend**: Highlight next best actions.
## Ultrathink Principles in Practice
- **Think Different**: Look for hidden bottlenecks.
- **Obsess Over Details**: Keep statuses accurate.
- **Plan Like Da Vinci**: Choose the clearest representation.
- **Craft, Don't Code**: Make diagrams readable first.
- **Iterate Relentlessly**: Update as tasks change.
- **Simplify Ruthlessly**: Remove visual noise.
# Task Visualizer Skill (v2.26)
Provides ASCII and Mermaid visualization of task dependencies, following Gastown patterns for multi-agent orchestration.
## Features
- ASCII dependency graphs
- Status tracking with icons
- Blocked task detection
- Parallel execution hints
- Mermaid diagram generation
## ASCII Visualization Format
```
┌─────────────────────────────────────────────────────────────────┐
│ TASK DEPENDENCY GRAPH │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ✓ #1 Design API architecture ──────────────────► COMPLETED │
│ │ │
│ ┌─────────┴─────────┐ │
│ │ │ │
│ ▼ ▼ │
│ ✓ #2 Create ✓ #3 Implement │
│ project data models │
│ structure COMPLETED │
│ COMPLETED │ │
│ │ │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ⚙ #4 Implement REST API endpoints ────────► IN_PROGRESS │
│ ⚠ blocked by #2, #3 (now resolved) │
│ │ │
│ ┌──────────────┴──────────────┐ │
│ │ │ │
│ ▼ ▼ │
│ ○ #5 Write ○ #6 Create API │
│ integration documentation │
│ tests PENDING │
│ PENDING ⚠ blocked by #4 │
│ ⚠ blocked by #4 │
│ │
└─────────────────────────────────────────────────────────────────┘
```
## Status Icons
| Icon | Status | Description |
|------|--------|-------------|
| ✓ | completed | Task finished successfully |
| ⚙ | in_progress | Currently being worked on |
| ○ | pending | Waiting to start |
| ⚠ | blocked | Blocked by dependencies |
| ✗ | failed | Task failed |
## Usage
### Read Tasks
```bash
# Read current tasks from .ralph/tasks.json
cat .ralph/tasks.json | jq '.tasks'
```
### Visualize Dependencies
Generate ASCII visualization:
```
Task #1 Design ─────────► RESOLVED
│
┌───────────┴───────────┐
▼ ▼
Task #2 Structure Task #3 Models
RESOLVED RESOLVED
│ │
└───────────┬───────────┘
▼
Task #4 Endpoints
⚠ blocked by #2, #3
```
### Mermaid Generation
Generate Mermaid diagram for documentation:
```mermaid
flowchart TB
T1[✓ Design API] --> T2[✓ Project Structure]
T1 --> T3[✓ Data Models]
T2 --> T4[⚙ REST Endpoints]
T3 --> T4
T4 --> T5[○ Integration Tests]
T4 --> T6[○ API Documentation]
style T1 fill:#90EE90
style T2 fill:#90EE90
style T3 fill:#90EE90
style T4 fill:#FFD700
style T5 fill:#D3D3D3
style T6 fill:#D3D3D3
```
## Parallel Execution Detection
Tasks that share the same dependencies can run in parallel:
```
PARALLEL EXECUTION HINT:
Tasks #5 and #6 can run in parallel after #4 completes.
Suggested agent assignment:
- #5 (tests): Codex (gpt-5.2-codex)
- #6 (docs): Gemini (gemini-2.5-pro)
```
## Integration with Ralph
```bash
ralph tasks # Show all tasks with visualization
ralph tasks --graph # ASCII dependency graph
ralph tasks --mermaid # Mermaid diagram
ralph tasks --blocked # Show only blocked tasks
ralph tasks --parallel # Show parallelizable tasks
```
## Task Persistence
Tasks are stored in `.ralph/tasks.json` and survive:
- Session restarts
- Agent failures
- Claude Code restarts
Recovery pattern:
1. Read `.ralph/tasks.json`
2. Find tasks with status `in_progress` or `pending`
3. Resume execution from last checkpoint
## Security: Schema Validation (CWE-1286 Prevention)
**MANDATORY**: All task operations MUST validate against `.ralph/tasks-schema.json`:
### Before Reading Tasks
```bash
# Validate JSON structure before parsing
if ! jq empty .ralph/tasks.json 2>/dev/null; then
ERROR: "Invalid JSON in tasks.json - file may be corrupted"
RECOVERY: "Backup current file and reinitialize"
fi
# Validate against schema (if ajv installed)
if command -v ajv &>/dev/null; then
ajv validate -s .ralph/tasks-schema.json -d .ralph/tasks.json
fi
```
### Before Writing Tasks
```bash
# Validate task content before writing
validate_task_content() {
local content="$1"
# Check maxLength (2000 chars)
if [ ${#content} -gt 2000 ]; then
ERROR: "Task content exceeds 2000 character limit"
fi
# Check for forbidden characters (injection prevention)
if [[ "$content" =~ [\<\>\{\}\$\`] ]]; then
ERROR: "Task content contains forbidden characters: < > { } $ \`"
fi
}
```
### Input Sanitization Rules
| Field | Max Length | Allowed Pattern | Forbidden |
|-------|------------|-----------------|-----------|
| `content` | 2000 | `^[^<>{}$\`]*$` | `< > { } $ \`` |
| `message` | 5000 | `^[^<>{}$\`]*$` | `< > { } $ \`` |
| `project` | 500 | `^[a-zA-Z0-9._/-]+$` | Special chars |
| `session_id` | 100 | `^[a-zA-Z0-9._-]*$` | Special chars |
### Safe Task Creation Example
```yaml
# SAFE: Sanitized task creation
new_task:
id: $(jq '.tasks | length + 1' .ralph/tasks.json)
content: $(validate_task_content "$USER_INPUT") # MUST validate
status: "pending" # MUST be enum value
created_at: $(date -u +"%Y-%m-%dT%H:%M:%SZ")
```Related Skills
task-classifier
Classifies task complexity (1-10) for model and agent routing
task-batch
Autonomous batch task execution with PRD parsing, task decomposition, and continuous execution until all tasks complete. Uses /orchestrator internally. Stops only for major failures (no internet, token limit, system crash). Use when: (1) processing task lists autonomously, (2) PRD-driven development, (3) batch feature implementation. Triggers: /task-batch, 'batch tasks', 'process PRD', 'run task queue'.
create-task-batch
Interactive wizard to create PRD or task lists for /task-batch. Uses /clarify and /ask-questions-if-underspecified for precise task definition. Use when: (1) preparing batch execution, (2) creating PRDs, (3) defining task lists with dependencies. Triggers: /create-task-batch, 'create tasks', 'new batch', 'prepare PRD'.
worktree-pr
Manage git worktrees with PR workflow and multi-agent review (Claude + Codex). Use when developing features in isolation with easy rollback.
vercel-react-best-practices
React and Next.js performance optimization guidelines from Vercel Engineering. Use when writing, reviewing, or refactoring React/Next.js code. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.
vault
Living knowledge base management. Actions: search (query vault), save (store learning), index (update indices), compile (raw->wiki->rules graduation), init (create vault structure). Follows Karpathy pipeline: ingest->compile->query. Use when: (1) searching accumulated knowledge, (2) saving learnings, (3) compiling raw notes into wiki, (4) initializing a new vault. Triggers: /vault, 'vault search', 'knowledge base', 'save learning'.
testing-anti-patterns
Custom skill for testing-anti-patterns
tap-explorer
Tree of Attacks with Pruning for systematic code analysis
stop-slop
A skill for removing AI-generated writing patterns ('slop') from prose. Eliminates telltale signs of AI writing like filler phrases, excessive hedging, overly formal language, and mechanical sentence structures. Use when: writing content that should sound human and natural, editing AI-generated drafts, cleaning up prose for publication, or any content that needs to sound authentic rather than AI-generated. Triggers: 'stop-slop', 'remove AI tells', 'clean up prose', 'make it sound human', 'edit AI writing'.
spec
Produce a verifiable technical specification before coding. 6 mandatory sections: Interfaces, Behaviors, Invariants (from Aristotle Phase 2), File Plan, Test Plan, Exit Criteria (executable bash commands + expected results). Use when: (1) before implementing features with complexity > 4, (2) as Step 1.5 in orchestrator workflow, (3) when requirements need formalization. Triggers: /spec, 'create spec', 'write specification', 'technical spec'.
smart-fork
Smart Forking - Find and fork from relevant historical sessions using parallel memory search across vault, memvid, handoffs, and ledgers
ship
Pre-launch shipping checklist orchestrating /gates, /security, /browser-test, /perf. Ensures nothing ships without passing all quality checks. Use when: (1) before deploying, (2) before merging to main, (3) before release. Triggers: /ship, 'ship it', 'ready to deploy', 'pre-launch check'.