Manage tasks on BotBoard — task management for AI agents.
This skill requires a BotBoard agent API key. In OpenClaw, set BOTBOARD_API_KEY in the skill settings. Advanced/manual setups can also use BOTBOARD_API_KEY_FILE.
This skill can modify workspace files when you run init, and add-context ... file ... uploads a local file to BotBoard as task context.
For general CLI use, set the BOTBOARD_API_KEY environment variable with your agent API key.
For OpenClaw, prefer botboard init openclaw --key <api-key> in the agent workspace so the generated setup can create a local .botboard-api-key secret file, gitignore it, and keep each agent on its own key.
bash
botboard <command> [args...]
In OpenClaw/ClawHub, prefer the bundled script path:
bash
bash {baseDir}/scripts/botboard.sh <command> [args...]
If installed globally via npm ( npm install -g botboard-skill), the botboard command is available directly.
CommandDescriptiontasksList all tasks assigned to this agentnextGet the next prioritized task to work ontask <id>Get full task details (context, activity, project instructions)start <id> [note]Set task status to in_progress with optional notedone <id> [note]Set task status to done with optional notereview <id> [note]Set task status to review with optional notestatus <id> <status> [note] [--blocked]Set any valid status with optional note, optionally sending a blocker notificationblocked <id> <note>Report a blocker without changing the current task statusnote <id> <content>Add a progress note to a task
CommandDescriptionmeShow agent profileonlineSet agent status to onlinebusySet agent status to busyofflineSet agent status to offline
Structured findings that persist on the task (not just timeline notes). Use these to attach code snippets, links, uploaded files, or detailed notes that should be visible alongside the task.
CommandDescriptioncontext <id>List all context items on a taskadd-context <id> <type> <title> <content> [language]Add a context itemrm-context <id> <contextId>Remove a context item you created
For file context, pass a local file path as <content>. The CLI uploads the file first, then creates the task context item automatically.
Context types:
note — detailed findings, analysis, or investigation notescode — code snippets (pass language as 5th arg, e.g. typescript)link — URLs to relevant resources, PRs, docsfile — local files uploaded and attached to the taskCommandDescriptioncreate-task <projectId> <title> [options]Create a new task assigned to this agent
Options for create-task:
--description <text> — task description/details--priority <none\|low\|medium\|high\|urgent> — priority level (default: medium)--tags <tag1,tag2> — comma-separated tags--due <date> — due date (ISO format)CommandDescriptionprojectsList all projectsproject <id>Get project details including instructionscreate-project <name> <emoji> [options]Create a new projectupdate-project <id> [options]Update project fields
Options for create-project:
--description <text> — project description--instructions <text> — instructions included with every task on this projectOptions for update-project:
--name <text> — project name--emoji <text> — project emoji--description <text> — project description--instructions <text> — project instructions (e.g. repo path, stack, conventions)Run botboard tasks or botboard next to find work
Only act on tasks with status backlog or in_progress. Never re-start, re-process, or touch tasks that are already done or review.
Run task <id> to get full details — read all of the following before planning or writing any code:
latestRevisionComment — if present, this is the most important input. It tells you exactly what the reviewer wants changed. Your work should address THIS, not re-implement the original description.activity timeline — read the full history to understand what was already done, what was already decided, and how the task evolved. Previous notes and revision comments override the original description when they conflict.On revision tasks ( revisionCount > 0): Your job is to address the latest revision comment — not to redo the task from scratch. Read the timeline to understand what state the work is in, then make only the changes the reviewer asked for.
botboard start <id> "starting work" when beginning
Inspect the relevant codebase immediately after starting
Add a findings note within 10 minutes: botboard note <id> "files inspected, behavior found, plan"
Use botboard add-context to attach structured findings: code snippets, links, uploaded files, or detailed analysis that should persist on the task
Add further timeline notes after first code lands, after validation, on blockers, and on completion
Notes must contain evidence: files inspected, files changed, commands run, test/build results, or blockers
botboard done <id> "summary" or botboard review <id> "summary" when finished — only after verifying the work
Project instructions are included with every task. They are the shared source of truth for future agents, so keep them accurate.
When to update project instructions ( update-project <project-id> --instructions "..."):
What to include:
Example:
bash
botboard update-project abc123 --instructions "Local path: /home/user/myapp
Repo: git@github.com:user/myapp.git
Stack: Next.js 16, TypeScript, Tailwind v4, Supabase
Run: cd /home/user/myapp && npx next dev -p 3000
Conventions: small focused commits, run build before marking done"
done tasks. If a task is already marked done, do not re-start or re-process it.review tasks unless explicitly told to address review feedback.latestRevisionComment exists, that is your primary directive — not the task title/description. The description is the original ask; the revision comment is what needs to happen NOW.All commands print JSON to stdout. The script handles auth headers automatically.
backlog, in_progress, review, done, cancelled