task-visualizer

Visualize task dependencies and progress (Gastown-style)

108 stars

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

$curl -o ~/.claude/skills/task-visualizer/SKILL.md --create-dirs "https://raw.githubusercontent.com/alfredolopez80/multi-agent-ralph-loop/main/.claude/skills/task-visualizer/skill.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/task-visualizer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How task-visualizer Compares

Feature / Agenttask-visualizerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/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

108
from alfredolopez80/multi-agent-ralph-loop

Classifies task complexity (1-10) for model and agent routing

task-batch

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

Custom skill for testing-anti-patterns

tap-explorer

108
from alfredolopez80/multi-agent-ralph-loop

Tree of Attacks with Pruning for systematic code analysis

stop-slop

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

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

108
from alfredolopez80/multi-agent-ralph-loop

Smart Forking - Find and fork from relevant historical sessions using parallel memory search across vault, memvid, handoffs, and ledgers

ship

108
from alfredolopez80/multi-agent-ralph-loop

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'.