| name | tick-coordination |
| description | Coordinate multi-agent work using the Tick protocol via CLI commands or MCP tools. Use when managing tasks, coordinating with other agents, tracking project progress, or when the user mentions tasks, coordination, agents, or project management. Enables natural conversation about work while maintaining structured task tracking. |
Tick Multi-Agent Coordination
Coordinate work across human and AI agents using structured Markdown files. Users interact naturally with you, and you maintain tasks transparently in TICK.md.
Core Concept
Tick Protocol = Git-based task coordination via TICK.md files
- Human-readable: Standard Markdown with YAML
- Machine-parseable: Structured for tools
- Git-backed: Full version control and audit trail
- Local-first: No cloud required
Quick Start
Check if Tick is initialized
ls TICK.md
If not initialized
tick init
Get current status
tick status
Common Workflows
1. User Asks You to Do Something
User: "Can you refactor the authentication system?"
Your Actions:
tick add "Refactor authentication system" --priority high --tags backend,security
tick agent register @your-name --type bot --roles "engineer,refactoring"
tick claim TASK-XXX @your-name
tick comment TASK-XXX @your-name --note "Analyzing current auth flow"
tick comment TASK-XXX @your-name --note "Refactored to use JWT tokens"
tick done TASK-XXX @your-name
2. User Asks About Project Status
User: "What tasks are we working on?"
tick status
tick agent list --verbose
Summarize the output naturally for the user.
3. Coordination with Other Agents
User: "Have the other agents finished their tasks?"
tick status
tick agent list --verbose
tick validate
4. Breaking Down Complex Work
User: "Build a user dashboard with charts and data export"
Your Actions:
tick add "Build user dashboard" --priority high --tags frontend
tick add "Design dashboard layout" --priority high --tags frontend,design
tick add "Implement data charts" --priority medium --tags frontend,charts --depends-on TASK-XXX
tick add "Add CSV export" --priority low --tags frontend,export --depends-on TASK-XXX
tick status
Command Reference
Project Management
tick init
tick status
tick validate
tick sync --push
Task Operations
tick add "Task title" \
--priority high \
--tags backend,api \
--assigned-to @agent \
--depends-on TASK-001 \
--estimated-hours 4
tick claim TASK-001 @agent
tick release TASK-001 @agent
tick done TASK-001 @agent
tick comment TASK-001 @agent \
--note "Progress update"
Agent Management
tick agent register @name \
--type bot \
--roles "dev,qa" \
--status idle
tick agent list
tick agent list --verbose
tick agent list --type bot
tick agent list --status working
MCP Tools (Alternative to CLI)
If using Model Context Protocol, use these tools instead of CLI commands:
Status and Inspection
tick_status - Get project status (agents, tasks, progress)
tick_validate - Validate TICK.md structure
tick_agent_list - List agents with optional filters
Task Management
tick_add - Create new task
tick_claim - Claim task for agent
tick_release - Release claimed task
tick_done - Complete task (auto-unblocks dependents)
tick_comment - Add note to task
Agent Operations
tick_agent_register - Register new agent
MCP Example:
await tick_add({
title: "Refactor authentication",
priority: "high",
tags: ["backend", "security"],
assignedTo: "@bot-name"
})
await tick_claim({
taskId: "TASK-023",
agent: "@bot-name"
})
Best Practices
1. Natural Conversation First
✅ Good: User says "refactor the auth", you create task automatically
❌ Bad: Making user explicitly create tasks
2. Always Use Your Agent Name
Register once:
tick agent register @your-bot-name --type bot --roles "engineer"
Then use consistently:
tick claim TASK-001 @your-bot-name
tick done TASK-001 @your-bot-name
3. Provide Context in Comments
tick comment TASK-005 @bot --note "Switched from REST to GraphQL for better type safety and reduced over-fetching"
tick comment TASK-005 @bot --note "Updated API"
4. Break Down Large Tasks
Create subtasks with dependencies:
tick add "Set up CI/CD pipeline" --priority high
tick add "Configure GitHub Actions" --depends-on TASK-010
tick add "Add deployment scripts" --depends-on TASK-011
tick add "Set up staging environment" --depends-on TASK-011
5. Check Status Before Claiming
tick status
tick claim TASK-XXX @your-name
Common Scenarios
Scenario 1: Starting Fresh
tick init
tick agent register @bot --type bot --roles "assistant,developer"
tick add "First task based on user input" --priority high
tick claim TASK-001 @bot
Scenario 2: Joining Existing Project
tick status
tick agent register @new-bot --type bot --roles "qa,testing"
tick status
tick claim TASK-XXX @new-bot
Scenario 3: Coordinating with Humans
tick status
tick claim TASK-API @bot
tick comment TASK-API @bot --note "Completed 3 of 5 endpoints"
tick done TASK-API @bot
Scenario 4: Handling Blockers
tick comment TASK-XXX @bot --note "Blocked: waiting for API credentials"
tick release TASK-XXX @bot
Understanding TICK.md Structure
The file has three sections:
- Frontmatter (YAML): Project metadata
- Agents Table (Markdown): Who's working on what
- Task Blocks (YAML + Markdown): Individual tasks with history
Example:
---
project: my-app
schema_version: "1.0"
next_id: 5
---
# Agents
| Name | Type | Roles | Status | Working On |
|------|------|-------|--------|------------|
| @alice | human | owner | working | TASK-003 |
| @bot | bot | engineer | idle | - |
# Tasks
```yaml
id: TASK-001
title: Build authentication
status: done
priority: high
claimed_by: null
# ... more fields
history:
- ts: 2026-02-07T10:00:00Z
who: @bot
action: created
- ts: 2026-02-07T14:00:00Z
who: @bot
action: done
\```
Implemented JWT-based authentication with token refresh...
Troubleshooting
Task Not Found
tick status
Can't Claim Task
- Task might already be claimed:
tick status
- Task might be blocked: Check
depends_on in task details
- You might not be registered:
tick agent register @your-name --type bot
Validation Errors
tick validate --verbose
Common issues:
- Circular dependencies (A depends on B, B depends on A)
- Invalid task references in
depends_on
- Malformed YAML
Sync Conflicts
tick sync --pull
tick sync --push
Integration Patterns
Pattern 1: Conversational Task Creation
task_id = create_task("Build login page", priority="high", tags=["frontend", "auth"])
claim_task(task_id, "@bot")
Pattern 2: Progress Reporting
add_comment(task_id, "@bot", "Completed user input validation")
add_comment(task_id, "@bot", "Added password strength indicator")
Pattern 3: Delegation
create_task("Design login UI mockup", assigned_to="@designer", depends_on=current_task)
add_comment(current_task, "@bot", "Created TASK-XXX for UI design, blocked until design is ready")
Dashboard Usage
The web dashboard at /dashboard provides:
- Visual kanban board (drag-and-drop)
- Dependency graph visualization
- Activity feed (who did what)
- Agent status monitoring
- Task details and history
Use for:
- Quick visual inspection
- Team coordination meetings
- Progress presentations
- Identifying bottlenecks
Don't use for:
- Creating/editing tasks (use CLI/MCP)
- Day-to-day work (use commands)
The dashboard is read-focused for human oversight.
Advanced Features
Automatic Dependency Unblocking
When you complete a task, dependent tasks automatically unblock:
tick done TASK-001 @bot
Circular Dependency Detection
Validation catches circular dependencies:
tick validate
Smart Commit Messages
tick sync --push
Lock File Coordination
When you claim a task, .tick/lock prevents conflicts:
- Advisory locking (not enforced, but tools respect it)
- Includes PID and timestamp for stale lock detection
- Git is ultimate source of truth for conflicts
Quick Reference Card
Workflow: init → add → claim → work → comment → done → sync
Essential: status | add | claim | done
Coordination: agent register | agent list | validate
Git: sync --pull | sync --push
Key Reminders
- Users interact with YOU, not with Tick directly
- YOU maintain the TICK.md transparently
- Dashboard is for inspection, not primary interaction
- Always use your agent name consistently
- Comment frequently to show progress
- Validate before syncing
- Check status before claiming
- Break down complex work into subtasks
Getting Help
If stuck:
tick --help
tick <command> --help
tick validate --verbose
cat TICK.md
The TICK.md file is plain Markdown - you can always read it directly to understand the current state.