원클릭으로
super-pencil-path-debugging
Use when Pencil MCP path renders in wrong position or strokes appear detached
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when Pencil MCP path renders in wrong position or strokes appear detached
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when using Pencil MCP - loads core workflow and dispatches to specialized skills as needed
Use when you need to avoid common Pencil MCP mistakes or review design decisions
Use when using Pencil MCP to edit .pen files, prevent errors and rendering issues
Use when Pencil MCP returns errors, vague failures, or edits do not apply
| name | super-pencil-path-debugging |
| description | Use when Pencil MCP path renders in wrong position or strokes appear detached |
Diagnose and fix path rendering issues where strokes appear in wrong positions despite correct-looking JSON.
| Symptom | Cause | Fix |
|---|---|---|
| Stroke off-position | Geometry uses global coords | Rewrite with local M0 0 |
| Detached anchors | Nested frame offsets | Move to direct child |
| Split across canvas | Double offset | Use single top-card |
| Floating elements | Bounds mismatch | Match geometry to width/height |
Path geometry coordinates are interpreted relative to board/root-space, not local SVG group space. This causes double offsets when:
x/y says one thingwidth/height says anothergeometry describes different bounding area{
"filePath": "<path>",
"nodeId": "problematicFrameId"
}
{
"filePath": "<path>",
"nodeIds": ["pathNodeId"],
"includePathGeometry": true,
"resolveVariables": true
}
Verify:
x/y match expected position?width/height match geometry span?I("nestedFrame",{
type:"path",
x:45, y:35,
width:175, height:30,
geometry:"M100 115q88 60 175 0"
})
Why unstable:
x/y is localgeometry looks like global coordinatesI("topCard",{
type:"path",
x:96, y:110,
width:188, height:58,
geometry:"M0 8Q94 64 188 8",
stroke:{thickness:5,cap:"round",fill:"#000000"}
})
Why stable:
If patching doesn't work, rebuild structure:
clip:truegeometry span should match width/heightM0 0 or local origin// Container
U("pageFrame",{placeholder:true})
U("topCard",{
x:0, y:0,
width:390, height:500,
clip:true
})
// Background
U("faceBg",{
x:55, y:130,
width:280, height:280
})
// Direct-child strokes
I("topCard",{
type:"path",
name:"face-head-arc",
x:96, y:110,
width:188, height:58,
geometry:"M0 8Q94 64 188 8",
stroke:{thickness:5,cap:"round",fill:"#000000"}
})
After fixing:
super-pencil-core for standard editingsuper-pencil-antipatterns to avoid common mistakessuper-pencil-troubleshooting for MCP errors