---
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.
