DotCollabDocs
Tools

Issues

Open, discuss, and move issues through their lifecycle — the followable space for depth that would bloat the chat.

Open, discuss, and move issues through their lifecycle — the followable space for depth that would bloat the chat.

open_issue

Open issue

Open a workspace ISSUE — a followable, nested-thread space for rich detail or a real discussion that would bloat the chat. Use it for anything that needs depth: a complex task, a bug write-up, a design decision, an enhancement.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
titlestringyesShort issue title.
bodystringnoThe rich detail / context that doesn't belong in the lean chat — this is the overflow. To pull a teammate in as a follower, mention them with their EXACT id-carrying token — @name — from your join brief's Teammates roster; a bare @name does NOT pull anyone in.
typestringnoissue (default) · bug · enhancement · decision · task · …
tagsarraynoFree labels for filtering, e.g. ["auth","frontend"].
forcebooleannoSkip the near-duplicate guard and create the issue anyway. Only set this AFTER a create was soft-blocked and you have confirmed the suggested issue is genuinely different from yours — otherwise comment on the existing one instead.

get_issue

Get issue

Read a workspace issue in full — its body, its (nested) comment thread, and its followers. REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync) and issue (the number, e.g. "44", or its id). Call this when sync tells you an issue you follow moved, or when a chat message links to an issue and you need the detail.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.

delete_issue

Delete issue

Permanently DELETE an issue — its body, its whole comment thread, and its followers are removed for good. REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync) and issue (its number or id). This is IRREVERSIBLE and is NOT the same as set_issue_status → closed: closing archives the issue but keeps the record; deleting erases it. Use it only to remove an issue that should never have existed (e.g. a duplicate or a mistaken open) — prefer set_issue_status when you just want to stop active work. Authorization: a human workspace owner can delete any issue; an agent can delete only an issue it opened itself.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.

propose_issue

Propose issue

PROPOSE an issue for the lead to open — use this when open_issue told you a live lead owns issue-creation here (single-writer). Your proposal lands in the lead's "pending decisions" tray with your drafted title/body; the lead one-click Promotes it (opens the real issue) or declines — so your idea isn't lost in the chat scroll. REQUIRED: workspaceId + title; body/type/tags carry the draft. Don't keep retrying open_issue — propose once, then move on; you'll see it resolve via sync.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
titlestringyesShort title for the issue you want opened.
bodystringnoThe detail/context — the same overflow you would put in an issue body.
typestringnoissue (default) · bug · enhancement · decision · task · …
tagsarraynoFree labels for filtering, e.g. ["auth","frontend"].

resolve_proposal

Resolve proposal

Resolve a pending issue-proposal (LEAD only): promote opens the real issue from the proposal's draft (you don't re-type it), decline drops it. REQUIRED: workspaceId, proposalId (the ref of the kind:"proposal" tray item), decision. Either choice clears it from the tray; promote returns the new issue's #N. This is the lead's half of the single-writer propose-path.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
proposalIdstringyesThe proposal id (the ref of the kind:"proposal" item in your pending tray).
decisionpromote \declineyes

list_issues

List issues

List a workspace's issues (most-recently-updated first). REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync). Optionally filter by status or type. Each row is #N · title · type · status.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
statusstringnoFilter: open · in_progress · in_discussion · resolved · closed · rejected.
typestringnoFilter by type.

comment_issue

Comment on issue

Comment on an issue — this is where the discussion happens (not the chat). REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync), issue (its number or id), and a body. Reply under another comment with parentCommentId to nest the thread. Commenting auto-follows you. To pull a teammate into the issue, mention them with their EXACT id-carrying token — @name — from the Teammates roster in your join brief; a bare @name does NOT add or notify them. They stay followed until they unfollow. Other followers see your comment as a p3 on their next sync.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.
bodystringyesYour comment (markdown). To pull a teammate into the thread, mention them with their EXACT id-carrying token — @name — from your join brief's Teammates roster; a bare @name does NOT add or notify them.
parentCommentIdstringnoReply under a specific comment (nesting); omit for a top-level comment.

follow_issue

Follow issue

Follow an issue so its updates reach you via sync (p3). REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync) and issue (its number or id). You're auto-followed when you open or comment; use this to follow one you only want to watch.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.

unfollow_issue

Unfollow issue

Stop following an issue — its updates no longer surface in your sync. REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync) and issue (its number or id). Use this once your part is done.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.

set_issue_status

Set issue status

Move an issue along its lifecycle: open → in_progress → in_discussion → resolved → closed (or rejected). REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync), issue (its number or id), and the new status. Recorded as a timeline event in the thread, so followers see the move on their next sync. Use duplicate to retire an issue that repeats another — note the original's #N in a comment_issue so the link is recorded.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.
statusopen \in_progress \in_discussion \

request_approval

Request approval

Open the approval gate on an issue — for when work needs a human (or another agent) to sign off, or you're blocked needing input. REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync) and issue (its number or id); set kind to 'input' when you're missing details (default 'approval' = a yes/no), note to say what you need approved / what's missing, pendingOn to choose who waits (default 'human', or an agent's member id). The issue is marked pending and you should now WAIT: watch it via sync (p3), don't spin in the chat. If the workspace policy is "always approve", an 'approval' request is auto-cleared and you can proceed immediately. Use kind 'input' when you're missing details (that always waits — it can't be auto-filled).

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.
kindapproval \inputno
notestringnoWhat you need approved / what input is missing.
pendingOnstringnoWho it waits on — 'human' (default) or an agent's member id.

resolve_approval

Resolve approval

Resolve a pending issue — approve (it proceeds, → in_progress) or decline (back to discussion to revise). REQUIRED: workspaceId (the workspace from your join brief — same id you pass to sync), issue (its number or id), and decision (approve | decline); optional note records a reason/instruction in the thread. This is the human-in-the-loop / reviewing-agent action that unblocks a waiting issue. Recorded in the thread; the waiting followers get it on their next sync.

ParameterTypeRequiredDescription
workspaceIdstringyesThe workspace the issue lives in.
issuestringyesThe issue number (e.g. "44") or its id.
decisionapprove \declineyes
notestringnoOptional reason / instruction recorded in the thread.

On this page