Projects
Project Canvas architect
Arrange Project context into a visual workspace while preserving the user's cards, edges, and layout.
What this skill teaches
The canvas preserves every card and edge that should remain.
New cards sit near the relevant context and use clear visual relationships.
Removals are visible in a dry run and occur only when the user intended them.
Workflow
- 1
List canvases for the Project and open the target canvas before deciding whether to create or update.
- 2
Read the complete JSON Canvas-compatible state, including ids, positions, sizes, groups, colors, labels, edges, and viewport.
- 3
Design the requested additions or layout changes while keeping existing user-authored structure intact.
- 4
Run update_library_canvas with dryRun true and the latest expectedUpdatedAt.
- 5
Inspect added, changed, and removed nodes or edges, then apply the complete replacement payload only when it matches the user's intent.
Tool routing
Read the latest complete visual workspace before editing.
Create a new canvas only when an existing one does not fit.
Dry-run and then replace the full canvas with concurrency protection.
Safety boundaries
- update_library_canvas replaces the full canvas JSON. Never send a partial patch.
- Pass allowRemovals true only when the user explicitly intended node or edge removals.
- Do not treat Canvas edges as Knowledge Graph writes.
SKILL.md source
Public Markdown you can inspect, copy, download, or adapt.
---
name: prism-project-canvas-architect
description: "Use when an AI client needs to create or revise a Prism Project Canvas while preserving user-authored cards, edges, positions, and layout intent."
---
# Project Canvas architect
Arrange Project context into a visual workspace while preserving the user's cards, edges, and layout.
## Before you start
Copy this guidance into ChatGPT, Claude, Codex, Grok, or another client that accepts custom instructions. It changes the client's instructions only; it does not grant Prism access. Direct MCP calls require the client's current MCP support, a configured connection, and separately authorized scopes.
Scopes this workflow may need:
- `knowledge:read`
- `library:write`
The installed skill does not grant these permissions. Use only the scopes and Projects authorized on the current Prism MCP connection.
## Workflow
1. List canvases for the Project and open the target canvas before deciding whether to create or update.
2. Read the complete JSON Canvas-compatible state, including ids, positions, sizes, groups, colors, labels, edges, and viewport.
3. Design the requested additions or layout changes while keeping existing user-authored structure intact.
4. Run update_library_canvas with dryRun true and the latest expectedUpdatedAt.
5. Inspect added, changed, and removed nodes or edges, then apply the complete replacement payload only when it matches the user's intent.
## Tool routing
- `list_library_canvases`, `get_library_canvas`: Read the latest complete visual workspace before editing.
- `create_library_canvas`: Create a new canvas only when an existing one does not fit.
- `update_library_canvas`: Dry-run and then replace the full canvas with concurrency protection.
## Expected result
- The canvas preserves every card and edge that should remain.
- New cards sit near the relevant context and use clear visual relationships.
- Removals are visible in a dry run and occur only when the user intended them.
## Boundaries
- A skill does not grant Prism access. The connection must separately authorize every required scope and Project.
- Call only tools verified callable by the current AI host. Use discover_prism_actions for granular actions. If a default workflow tool is missing, follow the capability-handshake recovery guidance instead of inventing a substitute tool.
- Read before writing. Mutate Prism only when the user asked for a durable change and the connected tool exposes that exact action.
- Keep retrieved evidence separate from analysis. Cite Prism source ids, titles, snippets, locations, and chunk ids when available.
- update_library_canvas replaces the full canvas JSON. Never send a partial patch.
- Pass allowRemovals true only when the user explicitly intended node or edge removals.
- Do not treat Canvas edges as Knowledge Graph writes.