Skip to content
view raw .md

Plan concepts

The objects and ideas of Dailybot Plan (Beta): projects, goals, boards, columns, tasks, milestones, labels, owners and executors, participants, relations, attachments, updates, saved views and the inbox.

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

This page is a glossary with pointers. The overview explains the model once (organization, project, board, task); here each object gets a paragraph and a link to the endpoints that manage it.

Projects, goals and boards

  • Project: what a body of work is. It carries a lead, health, dates, status notes (updates) and milestones. Endpoints: Plan · Projects.
  • Goal: what the work is for, with a period and a declared status. Goals point at projects; nothing lives inside a goal. Progress counts only what you can see, and is_partial: true flags hidden work. Endpoints: Plan · Goals.
  • Board: where work is tracked, inside one project. A board has a key (ENG), a visibility and an effective_visibility: a board inside a members project reads members there, while visibility stays the board’s own stored setting. Endpoints: Plan · Boards.

Privacy is membership, not org role: a members project, board or task is 404 to anyone without a grant. See Authentication for Plan.

Columns: workflow states and categories

A board’s columns are its workflow states. Each has one of five fixed categories (backlog, todo, in_progress, done, canceled), and the category is what says whether work is open or done on any board. A board must keep at least one live done column. Retiring a column archives it; it can be restored. You change a task’s state only by moving it, relative to its neighbours.

Tasks

A task is one unit of work, addressed by uuid or by key (ENG-142). It has a title, a Markdown description, a priority, an estimate, dates, labels, a version for concurrent edits, and a state. Archive is the delete, and it is reversible. Endpoints: Plan · Tasks.

Owner, executor and executors

Field Meaning
owner The accountable person
executor The actor doing the work right now, when different from the owner: the current ball-holder
executors Every agent that has executed a write on the card on someone’s behalf, newest first, with first_at and last_at. On task detail and single-task write responses, not on list rows
created_by Who created the task

executors is separate from the singular executor. See Agents on Plan.

Participants and watchers

Participants are the people notified about a task; they must be able to see the board. A watcher follows a task’s notifications without being on it (subscription). A person can also mute a task they are on. Managing participants is a person-only action.

Relations and sub-tasks

Tasks can be linked with relations (blocks, relates_to, duplicates; more can appear, so ignore values you do not know). “Blocked” is derived from relations. Sub-tasks nest one level, live on the same board as their parent, and are listed by the task’s children endpoint.

Attachments

Tasks, comments, goals and projects take attachments. On a task you can presign, upload the bytes and confirm; a single multipart request also works. Download through the attachment’s content/ endpoint rather than storing its url. Limits and accepted types are in Errors for Plan.

Comments

Comments are Markdown, mention people with <@DB@{uuid}>, thread one level deep, and carry reactions. Each has a provenance and, when an agent executed it, executed_by_agent. Endpoints: Plan · Comments & files.

Milestones

A milestone is a dated commitment inside a project. Tasks can point at a milestone of their board’s project. Completing, reopening and retiring are separate operations; retiring archives it and tasks keep pointing at it. The org-wide milestones list shows every one you may see. A retired milestone can be restored. Milestones take attachments (up to 5 MiB each): reference one from the milestone description with an attachment:{uuid} marker, and read attachment_count on the milestone.

Project updates

A project update is a status note on a project, newest first, with a health value and mentions. There is a digest of the newest updates across every project you can see. An update can be read, edited and deleted one at a time: only its author edits it (update_not_author), and the author or an organization admin deletes it. It carries edited_at, provenance, executed_by_agent and its attachments, and an agent can co-author an update by sending agent_name (see Agents on Plan).

Labels

Labels are organization-wide. Attach, detach or replace a task’s labels in one batch call. Managing organization labels is a person-only action. Filters accept up to 50 label uuids.

Saved views and favorites

A saved view stores how you look at a board or project: filters, sort, grouping and view mode. Personal views are yours; a board manager can share one or make it the board default. Saving replaces your whole list and requires If-Match with the ETag from your last read. Favorites pin boards and saved views to your list and can be reordered.

Inbox and the activity cursor

The inbox lists the events worth a notification for you (filter mentioned=true for mentions), with read, read-all and unread-count operations. The activity cursor is your read-mark on the organization activity feed: move it forward to say “I have caught up”. For live boards use the delta feed instead; see the live board recipe.

Where to go next