Skip to content

Cowork Doc Comment

Raise a quote-anchored concern as a flag (replacement: null) on a cowork doc; flags are not deletion edits.

MCP name: cowork_doc_comment

Category: cowork

Mutates state (retry policy: manual)

Parameters

Name Type Required Description
base_doc_sha256 str No Doc hash the flag was raised against. Defaults to the current document content when omitted.
body str Yes The flag text, the problem being raised.
claim_refs list No Optional. A list of {claim, role} where claim is a local claim id or a wb-truth URI and role is one of quote, paraphrase, summary, or instantiation, defaulting to instantiation.
consumer str No Optional document-agent consumer identity. Supply with conversation_id and generation; it must match this store and document.
conversation_id str No Optional real document-conversation id. Supply with consumer and generation to fence a document agent's write.
document_id str Yes Target cowork doc id.
generation str No Optional live document-agent lease generation. A stale, stopped, or revoked generation returns lease_lost without creating a flag.
producer_call_id str No Optional durable model call identifier.
producer_model str Yes Required model claim for the authoring agent. It must match a non-placeholder session-manifest model, otherwise it is durably labeled caller_asserted.
quote_anchor dict Yes A mapping of {exact, prefix, suffix} resolved by the kernel anchor resolver.
store_id str Yes Registered Truth store identity.
tldr str Yes One-line summary for the margin card.

Details

Document agents supply conversation_id, consumer, and generation together. The capability verifies that the conversation is the real binding for this store and document, then holds that exact live lease while the flag is created. Other callers may omit the complete tuple. Partial or mismatched tuples are rejected.

Use this capability when the concern has no concrete text replacement. To propose deleting the anchored passage, use cowork_doc_propose_edit with an empty-string replacement instead; a flag does not produce tracked deletion markup.