From jerry
Creates, lists, and updates persistent work items to track tasks, priorities, and statuses across sessions, mitigating context rot in long-running Claude conversations.
npx claudepluginhub geekatron/jerry --plugin jerryThis skill is limited to using the following tools:
> Local Azure DevOps/JIRA alternative for surviving context rot in long-running sessions.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Local Azure DevOps/JIRA alternative for surviving context rot in long-running sessions.
The Work Tracker skill provides persistent task management that survives context compaction, session boundaries, and context rot. It serves as the "external memory" for tracking what needs to be done, what's in progress, and what's completed.
"Context Rot is the phenomenon where an LLM's performance degrades as the context window fills up, even when total token count is well within the technical limit." — Chroma Research
Work Tracker mitigates this by:
Create a new work item for tracking.
@worktracker create <title> [--type TYPE] [--priority PRIORITY] [--parent PARENT_ID]
Arguments:
title: Short description of the work (required)--type: feature, bug, task, spike, epic (default: task)--priority: critical, high, medium, low (default: medium)--parent: Parent work item ID for hierarchyExample:
@worktracker create "Implement user authentication" --type feature --priority high
Output:
Created: WORK-001 "Implement user authentication"
Type: feature | Priority: high | Status: pending
List work items with optional filters.
@worktracker list [--status STATUS] [--type TYPE] [--priority PRIORITY] [--limit N]
Arguments:
--status: pending, in_progress, blocked, completed, all (default: pending,in_progress)--type: Filter by type--priority: Filter by priority--limit: Maximum items to return (default: 20)Example:
@worktracker list --status in_progress
Output:
Work Items (in_progress):
┌────────────┬──────────────────────────────┬──────────┬──────────┐
│ ID │ Title │ Priority │ Type │
├────────────┼──────────────────────────────┼──────────┼──────────┤
│ WORK-001 │ Implement user authentication│ high │ feature │
│ WORK-003 │ Fix login redirect bug │ critical │ bug │
└────────────┴──────────────────────────────┴──────────┴──────────┘
Update a work item's properties.
@worktracker update <id> [--status STATUS] [--priority PRIORITY] [--title TITLE] [--notes NOTES]
Arguments:
id: Work item ID (required)--status: New status--priority: New priority--title: New title--notes: Add notes to the work itemExample:
@worktracker update WORK-001 --status in_progress --notes "Started implementation, defining domain entities"
Output:
Updated: WORK-001
Status: pending → in_progress
Notes added: "Started implementation, defining domain entities"
Mark a work item as completed.
@worktracker complete <id> [--notes NOTES]
Arguments:
id: Work item ID (required)--notes: Completion notesExample:
@worktracker complete WORK-001 --notes "Implemented with JWT tokens, tests passing"
Output:
Completed: WORK-001 "Implement user authentication"
Duration: 2h 15m
Notes: "Implemented with JWT tokens, tests passing"
Show full details of a work item.
@worktracker show <id>
Example:
@worktracker show WORK-001
Output:
WORK-001: Implement user authentication
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Type: feature
Status: completed
Priority: high
Created: 2026-01-07 10:30:00
Completed: 2026-01-07 12:45:00
Duration: 2h 15m
Description:
Add JWT-based authentication to the API layer.
Notes:
[2026-01-07 10:35] Started implementation, defining domain entities
[2026-01-07 11:20] Domain layer complete, moving to infrastructure
[2026-01-07 12:45] Implemented with JWT tokens, tests passing
Children:
WORK-002: Create User entity (completed)
WORK-003: Implement JWT adapter (completed)
References:
- docs/design/AUTH_DESIGN.md
- src/domain/aggregates/user.py
Search work items by text.
@worktracker search <query> [--include-completed]
Arguments:
query: Search text (searches title, description, notes)--include-completed: Include completed items in searchExample:
@worktracker search "authentication"
Get a summary for the current session context.
@worktracker summary [--since DURATION]
Arguments:
--since: Time window (1h, 1d, 1w) (default: current session)Example:
@worktracker summary --since 1d
Output:
Work Tracker Summary (last 24h)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Completed: 5 items
- WORK-001: Implement user authentication
- WORK-002: Create User entity
- ...
In Progress: 2 items
- WORK-006: Add rate limiting [high]
- WORK-007: Write API documentation [medium]
Blocked: 1 item
- WORK-008: Deploy to staging (waiting on infra)
Pending: 12 items (3 high priority)
Recommended Next:
→ WORK-006: Add rate limiting (high priority, in progress)
| Property | Type | Description |
|---|---|---|
id | string | Unique identifier (WORK-NNN) |
title | string | Short description |
description | string | Detailed description |
type | enum | feature, bug, task, spike, epic |
status | enum | pending, in_progress, blocked, completed |
priority | enum | critical, high, medium, low |
parent_id | string | Parent work item ID |
created_at | datetime | Creation timestamp |
updated_at | datetime | Last update timestamp |
completed_at | datetime | Completion timestamp |
notes | list | Timestamped notes |
references | list | Related files/docs |
tags | list | Custom tags |
Work items are stored in the active project's .jerry/data/ directory:
projects/${JERRY_PROJECT}/.jerry/data/
├── items/
│ └── WORK-NNN.json # Individual work item files
├── index.json # Quick lookup index
└── sequences.json # ID sequence tracking
Note:
JERRY_PROJECTenvironment variable must be set to identify the active project. If not set, the skill will prompt you to specify which project to use.
Work Tracker complements the built-in TodoWrite tool:
Sync pattern:
@worktracker sync-from-todo # Import current todos as work items
@worktracker sync-to-todo # Export work items to todos
Work items can reference PLAN files:
@worktracker create "Implement caching layer" --plan docs/plans/PLAN_caching.md
Work items can be linked to commits:
git commit -m "feat(auth): implement JWT tokens
Closes: WORK-001, WORK-002"
The jerry items CLI namespace provides work item management:
# List work items
jerry items list [--status STATUS] [--type TYPE]
# Show work item details
jerry items show <id>
# Create work item (Phase 4.5 - deferred for Event Sourcing)
jerry items create <title> [--type TYPE]
# Start/complete work (Phase 4.5 - deferred)
jerry items start <id>
jerry items complete <id>
JSON Output: Add --json for scripting/AI consumption:
jerry --json items list
jerry --json items show WORK-001
The skill interface translates natural language to CLI commands:
| Skill Command | Maps To |
|---|---|
@worktracker list | jerry items list |
@worktracker show <id> | jerry items show <id> |
@worktracker create <title> | jerry items create <title> |
The skill routes to:
src/application/handlers/queries/ for reads (via QueryDispatcher)src/application/handlers/commands/ for mutations (Phase 4.5)