enhancedocs
For agentsOpen Enhance ↗
CLI commands / enhance-dev canvas read

Enhance documentation

enhance-dev canvas read

Read complete editable content, bounded evidence, or the supplied reference.

↓ Markdown

enhance-dev canvas read

enhance-dev canvas read [options]

Arguments

This command takes no positional arguments.

Options

OptionRequiredDefaultMeaning
--input <json-or-@path>NoNoneBounded read request containing canvasRef, view and target options.
--canvas <url-or-id>Yes, unless --inputNoneComplete canvas, page or selection URL for comprehensive reads. Required unless --input is given.
--node-id <id>NoNoneStable node id returned by enhance canvas tree.

Input

This command presents the capability canvas.read. It has read effect and none idempotency.

Show complete input JSON Schema
{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"oneOf":[{"type":"object","properties":{"view":{"type":"string","const":"resources"},"limit":{"default":30,"type":"integer","minimum":1,"maximum":100},"cursor":{"type":"string","minLength":1,"maxLength":16384},"canvasRef":{"type":"string","minLength":1,"description":"Canvas UUID or full canvas/selection URL. Preserve the supplied scope."},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["view","canvasRef"],"additionalProperties":false},{"type":"object","properties":{"canvasRef":{"type":"string","minLength":1,"description":"Canvas UUID or full canvas/selection URL. Preserve the supplied scope."},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"view":{"type":"string","const":"editable"},"rootNodeId":{"type":"string","minLength":1}},"required":["canvasRef","view","rootNodeId"],"additionalProperties":false},{"type":"object","properties":{"canvasRef":{"type":"string","minLength":1,"description":"Canvas UUID or full canvas/selection URL. Preserve the supplied scope."},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"view":{"type":"string","const":"source"},"nodeId":{"type":"string","minLength":1},"transcript":{"type":"object","properties":{"startMs":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991},"endMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"default":30,"type":"integer","minimum":1,"maximum":100},"cursor":{"type":"string","minLength":1,"maxLength":16384}},"additionalProperties":false}},"required":["canvasRef","view","nodeId"],"additionalProperties":false},{"type":"object","properties":{"canvasRef":{"type":"string","minLength":1,"description":"Canvas UUID or full canvas/selection URL. Preserve the supplied scope."},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"view":{"type":"string","const":"outline"},"rootNodeIds":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"string","minLength":1}},"depth":{"default":2,"type":"integer","minimum":0,"maximum":64},"limit":{"default":50,"type":"integer","minimum":1,"maximum":100},"cursor":{"type":"string","minLength":1,"maxLength":16384}},"required":["canvasRef","view"],"additionalProperties":false}],"type":"object"},{"type":"object","properties":{"canvas":{"type":"string","minLength":1,"description":"Complete canvas, page or selection URL, or canvas UUID. Preserve the supplied scope."},"nodeId":{"description":"Optional subtree within the supplied page or selection.","type":"string","minLength":1}},"required":["canvas"],"additionalProperties":false}],"type":"object"}

Output

This command writes JSON records to standard output. Returns a typed canvas.read result from the Enhance API without transport-specific prose.

Show complete output JSON Schema (JSON file)

Examples

enhance-dev canvas read --canvas <url-or-id>
Show example input
{
 "canvasRef": "00000000-0000-4000-8000-000000000010",
 "view": "outline",
 "depth": 2,
 "limit": 50
}
Show example output
{
 "canvasId": "00000000-0000-4000-8000-000000000010",
 "version": 1,
 "scope": {
  "rootNodeIds": [
   "root"
  ]
 },
 "view": "outline",
 "complete": true,
 "returnedCount": 1,
 "total": 1,
 "nextCursor": null,
 "omittedDescendants": false,
 "nodes": [
  {
   "id": "root",
   "label": "Canvas",
   "kind": "root",
   "parentId": null,
   "sortKey": null,
   "depth": 0,
   "childCount": 0,
   "childrenOmitted": false,
   "locked": false,
   "visible": true,
   "editable": true,
   "bounds": null
  }
 ],
 "warnings": []
}

Exit behaviour

Exit codeMeaning
0The command succeeded.
1The command failed for another reason (INTERNAL). A write may have an unknown outcome.
2The command line was malformed. Nothing ran.
3The API refused the input (BAD_REQUEST).
4The credential is missing or expired (UNAUTHORIZED).
5The API refused the request (FORBIDDEN, NOT_FOUND, CONFLICT, RATE_LIMITED).
6A batch finished only in part. Retry with the same --client-token.

Versions

Minimum tested versions: Enhance CLI and MCP runtime 0.1.40, plugin 1.0.38, Node.js 24. No older floor is published.