Skip to main content
The hirotm boards commands let you list boards, probe a board’s structure without loading every task (boards describe), create or rename boards, send boards to Trash and bring them back, and change task groups and priorities (boards configure …). Task rows use hirotm tasks list --board (see Tasks). Global options and output modes: hirotm CLI. Turn on the CLI permissions you need in the board or app settings—see CLI access policy. Creating a new board also requires Create board for the CLI in the app settings. For columns on a board, see Lists. For individual work items, see Tasks. For connection options (--profile, --client-name) shared across commands, see hirotm CLI. Access policy Enable the right toggles in Board settings (and app-wide settings for boards add). If the CLI is not allowed to do something, the command fails with an error message.

Board Operations

boards list

List boards you can access with the CLI. Sort: boards appear in name order, A→Z, case-insensitive (same order as the API’s GET /api/boards). See Default sort order.
OptionTypeRequiredDescription
--limit <n>integerPage size (omit for one full response from the server).
--offset <n>integerSkip this many boards (default 0).
--page-allflagMerge all pages (uses --limit or 500 per HTTP request).
--count-onlyflagTotal rows only (Paging); not with --limit, --offset, --page-all, or --fields.
--fields <keys>stringComma-separated API keys per row. Allowed: boardId, slug, name, emoji, description, cliPolicy, createdAt. See Field projection.
This command accepts the global -q / --quiet flag (with --format ndjson): one plain-text value per row, default slug then boardId. See Pipe-friendly quiet. Shared connection options (--profile, --client-name) are documented on hirotm CLI. CLI Examples
hirotm boards list
hirotm boards list --count-only
hirotm boards list --limit 50 --offset 0                    # pagination
hirotm boards list --fields boardId,slug,name             # slimmer rows
hirotm boards list --page-all --limit 100                  # merge all pages
hirotm boards list --format human                          # table
hirotm boards list --profile dev                           # non-default profile (optional; same for any command)
AI Agent Examples

List all Task Manager boards I can access with the CLI.

CursorOpen in Cursor

boards describe

Return a compact probe for one board: identity, truncated description, full cliPolicy, and optional sections for lists, groups, priorities, releases, global workflow statuses, and optional aggregate slice statswithout any tasks and without board UI prefs (layout, stats, visible-status prefs, theme). Backed by GET /api/boards/:id/describe (single nested JSON object). CLI stdout: with default --format ndjson, the CLI prints multiple compact JSON lines (same idea as list reads):
  1. kind: "board"boardId, slug, name, emoji, description, and optional descriptionTruncated (no cliPolicy on this line).
  2. kind: "policy" — same boolean fields as board.cliPolicy, flattened on one object.
  3. Row lines in --entities order: kind: "list", "group", "priority", "release", "status" (only for sections you requested).
  4. If meta appears in --entities, a single kind: "meta" line with lists, groups, priorities, releases, and statuses — each value is { truncated, total, shown } (reflects the 100-row cap per slice).
Omit --entities to request the five row sections in this order: list → group → priority → release → status (no meta). human uses the same block order after board + description + policy table. --format human together with global --quiet exits 2 (same as other commands that render tables). Use this when you need ids and labels for flags like --list, --group, --priority, --release-id, or --status, or to confirm what the CLI may do on the board, without downloading the full task graph. For task rows, use hirotm tasks list --board (add --page-all to merge every page) or hirotm query search. The web app loads the full board document over GET /api/boards/:id; there is no hirotm boards show command. Access: same as other board reads—readBoard must be on for the CLI (see CLI access policy). Limits: each array section returns at most 100 items (board column order for lists, group sort order, priority value, releases by releaseDate descending with null dates last, statuses in workflow order). If more rows exist, the slice includes truncated: true and total. Board description is capped at 4096 UTF-16 code units; when shortened, board.descriptionTruncated is true.
OptionTypeRequiredDescription
<id-or-slug>stringBoard id or slug.
--entities <csv>stringComma-separated tokens: list, group, priority, release, status, meta. Order controls CLI stdout (and is preserved when you read line-by-line). The HTTP ?entities= query lists the same tokens (the CLI may sort them for the request; the response includes every requested section). Omit the flag for the default five sections (no meta). The JSON board object (identity, description, cliPolicy) is always in the HTTP body. board is not a valid token. Duplicates or unknown names → exit 2 (invalid_value).
There is no --fields on this command (use --entities to trim the HTTP response; the CLI still reshapes stdout as above). CLI examples
hirotm boards describe sprint
hirotm boards describe 1 --profile dev                     # non-default profile
hirotm boards describe sprint --entities list,group,priority
hirotm boards describe sprint --entities list,meta
AI agent examples

Describe board sprint: lists, groups, priorities, releases, statuses, and CLI policy, without tasks.

CursorOpen in Cursor

Filtered task listing

Use hirotm tasks list --board <id-or-slug> with optional filters (list, group, priority, status, release, dates). See Tasks.

boards add

Create a board. Needs Create board turned on for the CLI in the app settings (not a per-board switch).
OptionTypeRequiredDescription
[name]stringBoard name; omit to use the app default.
--emoji <text>stringOptional emoji before the name.
--description <text>stringShort description text.
--description-file <path>stringRead description from a text file.
--description-stdinflagRead description from the terminal until input ends.
CLI Examples
hirotm boards add "Q2 Planning"
hirotm boards add --emoji "📌" "Releases"
AI Agent Examples

Create a board named "Paris Ideas" with the CLI.

CursorOpen in Cursor

boards update

Change board name, emoji, description, or color preset. You must pass at least one change.
OptionTypeRequiredDescription
<id-or-slug>stringBoard id or slug.
--name <text>stringNew board name.
--emoji <text>stringEmoji before the name.
--clear-emojiflagRemove the board emoji.
--description <text>stringDescription text.
--description-file <path>stringDescription from a text file.
--description-stdinflagDescription from the terminal until input ends.
--clear-descriptionflagClear the description (do not use with other description options).
--board-color <preset>stringOne of: stone, cyan, azure, indigo, violet, rose, amber, emerald, coral, sage.
--clear-board-colorflagRemove the board color preset.
CLI Examples
hirotm boards update --name "Sprint 42" sprint
hirotm boards update --board-color cyan --clear-emoji sprint
AI Agent Examples

Rename board sprint to "Sprint April".

CursorOpen in Cursor

boards delete

Send a board to Trash. The CLI needs delete board permission on that board.
OptionTypeRequiredDescription
<id-or-slug>stringBoard id or slug.
--dry-runflagPrint a preview JSON only; do not move to Trash. See Dry-run preview.
-y, --yesflagSkip the confirmation prompt.
CLI Examples
hirotm boards delete old-sprint
hirotm boards delete old-sprint --dry-run
hirotm boards delete old-sprint --yes
AI Agent Examples

Move board old-sprint to Trash (non-interactive).

CursorOpen in Cursor

boards restore

Bring a board back from Trash. Use the numeric id or the slug shown for that board in Trash.
OptionTypeRequiredDescription
<id-or-slug>stringTrashed board id or slug.
-y, --yesflagSkip the confirmation prompt.
CLI Examples
hirotm boards restore 1
hirotm boards restore old-sprint --yes
AI Agent Examples

Restore trashed board old-sprint (non-interactive).

CursorOpen in Cursor

boards purge

Remove a board from Trash forever. This cannot be undone. Needs delete board permission.
OptionTypeRequiredDescription
<id-or-slug>stringTrashed board id or slug.
--dry-runflagPrint a preview JSON only; do not purge. See Dry-run preview.
-y, --yesflagSkip the confirmation prompt.
CLI Examples
hirotm boards purge 1
hirotm boards purge 1 --dry-run
hirotm boards purge 1 --yes
AI Agent Examples

Permanently delete trashed board 1 from Trash (non-interactive).

CursorOpen in Cursor

Board Settings

These commands change structure on a board (task groups and priorities). The CLI needs the matching permission—see CLI access policy (manage structure).

boards configure groups

Update task groups from JSON. Give the data with --file, --json, or --stdin (exactly one). The JSON shape is aimed at automation; see the Task Manager repository docs/ai-cli.md for the full format.
OptionTypeRequiredDescription
<id-or-slug>stringBoard id or slug.
--json <text>stringJSON inline.
--file <path>stringJSON from a file.
--stdinflagJSON from the terminal until input ends.
--dry-runflagValidate input and print a preview JSON (with current groups); no PATCH. See Dry-run preview.
-y, --yesflagSkip the confirmation prompt.
CLI Examples
hirotm boards configure groups --file groups.json sprint
hirotm boards configure groups --file groups.json sprint --dry-run
hirotm boards configure groups --file groups.json sprint --yes
AI Agent Examples

Update task groups on board sprint from groups.json (non-interactive).

CursorOpen in Cursor

boards configure priorities

Replace task priorities from JSON. Use --file, --json, or --stdin (exactly one). The file can be a plain array or an object with a taskPriorities field.
OptionTypeRequiredDescription
<id-or-slug>stringBoard id or slug.
--json <text>stringJSON inline.
--file <path>stringJSON from a file.
--stdinflagJSON from the terminal until input ends.
--dry-runflagValidate input and print a preview JSON (with current priorities); no PATCH. See Dry-run preview.
-y, --yesflagSkip the confirmation prompt.
CLI Examples
hirotm boards configure priorities --file priorities.json sprint
hirotm boards configure priorities --file priorities.json sprint --dry-run
hirotm boards configure priorities --file priorities.json sprint --yes
AI Agent Examples

Replace priorities on board sprint from priorities.json (non-interactive).

CursorOpen in Cursor

Learn more

Run hirotm help boards or hirotm help boards <subcommand> for the full help text in your installed CLI.