websims-sd.pages.dev
system design studio
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 7 · Act 19 · Transact 0 · Score: Not yet scored
Tool inspector
studio_apply_architecture_patch
Apply a small atomic graph delta to an experiment instead of resending the whole design. Operations can add, update or remove nodes and links, replace the workflow, or rename the design. Every accepted patch is drawn on the canvas immediately, so drawing an architecture one component or link per call lets a person watch it form; coordinates communicate the topology (callers to dependencies left-to-right, parallel branches on separate rows, shared dependencies centered): either choose x/y per node from studio_get_catalog.layoutGuide, or include an auto-layout operation and the studio computes that layout from the links. Overlapping nodes and missing coordinates are otherwise refused, never silently repositioned. Agent-authored servers must set fanout explicitly; agent-authored service components must set positive timing fields explicitly, and links must include explicit synchronous/asynchronous semantics, a network profile with positive one-way propagationLatency plus fanoutFactor (1 for one-to-one; asynchronous queue/event links also require maxHops). Requires the revision read from studio_get_architecture or returned by the previous call, and refuses baselines, promoted versions, stale revisions, missing targets and results with errors (a link to a node that does not exist yet, for example).
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
candidateId |
string | yes | — |
expectedRevision |
integer | yes | — |
operations |
array | yes | Atomic graph changes, applied in order and committed only if the final design validates. |
Raw JSON schema
{
"type": "object",
"properties": {
"candidateId": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"expectedRevision": {
"type": "integer",
"minimum": 0
},
"operations": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"op": {
"const": "add-node"
},
"node": {
"description": "Complete node. x and y are required and should follow studio_get_catalog.layoutGuide (x by dependency depth, parallel branches on separate y rows), unless the same patch contains an auto-layout operation, which places every node."
}
},
"additionalProperties": false,
"required": [
"op",
"node"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update-node"
},
"nodeId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"patch": {
"type": "object",
"additionalProperties": {},
"description": "Shallow node field patch. Cannot contain id or kind."
}
},
"additionalProperties": false,
"required": [
"op",
"nodeId",
"patch"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove-node"
},
"nodeId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"additionalProperties": false,
"required": [
"op",
"nodeId"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "add-edge"
},
"edge": {}
},
"additionalProperties": false,
"required": [
"op",
"edge"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update-edge"
},
"edgeId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"patch": {
"type": "object",
"additionalProperties": {},
"description": "Shallow link field patch. Cannot contain id."
}
},
"additionalProperties": false,
"required": [
"op",
"edgeId",
"patch"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove-edge"
},
"edgeId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"additionalProperties": false,
"required": [
"op",
"edgeId"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "set-workflow"
},
"workflow": {}
},
"additionalProperties": false,
"required": [
"op",
"workflow"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "set-design-name"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"additionalProperties": false,
"required": [
"op",
"name"
]
},
{
"type": "object",
"properties": {
"op": {
"const": "auto-layout"
}
},
"additionalProperties": false,
"required": [
"op"
],
"description": "Move every node to a layered layout computed from the links: callers in the leftmost column, one column per dependency depth, each node level with the middle of its callers, no overlaps. Applied after the other operations in the patch, so nodes added in the same patch may omit x and y. Use it when hand-placed coordinates would be guesswork, or after a newly found dependency changes the shape of the graph."
}
]
},
"minItems": 1,
"maxItems": 128,
"description": "Atomic graph changes, applied in order and committed only if the final design validates."
}
},
"additionalProperties": false,
"required": [
"candidateId",
"expectedRevision",
"operations"
]
}
Similar websites
morphus.myles4miles.chatgpt.site
Morphus is an AI-native workspace for designing worlds and generating playable game experiences.
damnpdfs.com
Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.
insignifi4nt.github.io
broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.
cabinet.varera.studio
The Cartographer's Cabinet