Skip to content
view raw .md

Dailybot CLI for Plan

Use Dailybot Plan (Beta) from the command line: credentials, naming the agent, briefing an agent on one task, the command index and exit codes.

Beta

Plan is in beta. Everything under /plan in the web app, the CLI and agent skill commands for projects, goals, boards and tasks, and the /v1/plan/ public API may change before general availability. Want to try it with your team? Write to [email protected].

The Dailybot CLI covers Plan under dailybot plan, with the tasks, task, board, project and goal subcommand groups (164 commands). It calls the same public API as every integration. Everything on this page needs dailybot-cli 4.0.0 or later: 4.0.0 is where dailybot plan became the one entry point and where the notifications, routes, scheduled reports, briefing, channel search and timeline commands arrived. Upgrade with dailybot upgrade.

Credentials

  • dailybot login signs you in with an emailed one-time code. The login token only travels to the API host that issued it.
  • DAILYBOT_API_KEY uses an API key. A personal key acts as its person; an agent or organization key never does. What each credential can do is on Authentication for Plan.
  • Per-repo profiles keep keys for one repository in .dailybot/env.json, which must stay gitignored: dailybot env add, dailybot env use, dailybot env off (and on, show, list, remove). The active profile overrides DAILYBOT_API_KEY and the login session for that repository.

Name the agent

Pass the root flag --agent-name, or set DAILYBOT_AGENT_NAME (the flag wins). With neither, a person is acting directly and nothing is stamped. It is an attribution label, never a credential, so it changes no permission.

dailybot --agent-name "Claude Code" plan task comment ENG-12 "Reproduced and fixed"

The CLI sends agent_name on JSON writes and X-Dailybot-Agent-Name on uploads and body-less writes, never on reads. Names follow the attribution rules: plain characters, up to 128, never truncated. A longer name is refused locally with invalid_agent_attribution; an agent key that sends one gets the same error from the server.

task comments then shows Jane Doe via "Claude Code", and task get adds an Agents line listing the executors, most recent first.

Brief an agent on one task

dailybot plan task brief ENG-142 --download ./brief

dailybot plan task brief <task> [--download DIR] [--force] [--json] reads the whole card, attachments included. With --download DIR it saves the attachments there as <uuid8>-<name>, and it never overwrites a file unless you pass --force. --json prints the result for a program. The task is a key (ENG-142) or a uuid.

Command index

Subcommand names per group. Run dailybot plan <group> <command> --help for flags and examples; it is the authoritative reference for the version you have installed, and newer releases add commands. The index below matches dailybot-cli 4.0.0.

dailybot plan tasks: activity, attachments-resolve, briefing {get|preview|send-test|set}, changes, channels {search}, counts, cursor, entitlements, favorites, inbox, inbox-read, inbox-read-all, inbox-unread, mine, notifications {catalog|get|set}, recents, reports {create|delete|get|list|preview|runs|send-test|update}, routes {create|delete|deliveries|get|list|send-test|update}, search, status, timeline, view {delete|get|star|unstar|update}
dailybot plan task: activity, archive, attach, attachment {delete|get}, attachments, brief, bulk, children, comment, comment-attach, comment-attachment {delete|get}, comment-attachments, comment-delete, comment-edit, comment-react, comment-reactions, comment-unreact, comments, create, delete, duplicate, events, get, labels, link, list, move, mute, participants {add|list|remove}, relations, restore, set-owner, unlink, unmute, unwatch, update, watch
dailybot plan board: archive, create, get, label {create|delete|update}, labels, list, member {add|remove}, members, mentionables, restore, snapshot, star, state {archive|create|reorder|restore|update}, states, tasks, unstar, update, view {save}, views, visit
dailybot plan project: archive, attach, attachment {delete|get}, attachments, create, get, list, member {add|remove}, members, milestone-attach, milestone-attachment {delete|get|rename}, milestone-attachments, milestone-complete, milestone-create, milestone-delete, milestone-reopen, milestone-restore, milestone-update, milestones, restore, update, update-attach, update-attachment {delete|get|rename}, update-attachments, update-delete, update-edit, update-get, update-post, update-react, update-reactions, update-unreact, updates, view {save}, views
dailybot plan goal: archive, attach, attachment {delete|get}, attachments, create, get, link, list, restore, unlink, update

New in 4.0.0 under dailybot plan tasks: notifications catalog|get|set (your own switches), routes … (organization channel routes), reports … (scheduled daily and weekly reports), briefing … (your daily briefing), channels search (where routes and reports can post) and timeline (tasks, milestones and projects in a date window, with project and milestone filters). See the Plan · Notifications & reports reference for the doors behind them.

Known gap: task delegation is not available yet (the API answers 501 until its agent runtime ships). Reply in a thread with dailybot plan task comment --reply-to <comment-uuid> (the API field is parent_comment).

Exit codes

Code Meaning
0 Success
1 Partial success or another error
2 Bad input, including invalid_identifier and invalid_agent_attribution
3 Credential or person problem (actor_required, credential errors)
4 Refused (insufficient_scope, guest_not_allowed)
5 Not found, or not visible to you
6 Transient error: retry
7 Declined
8 Transport error
9 The delta cursor expired: read the board snapshot again

See also