Agent skill
pencil-mcp-get-editor-state
Get current design environment context. Use when you need to understand what is currently selected, canvas position, and environment state before any task.
Install this agent skill to your Project
npx add-skill https://github.com/partme-ai/full-stack-skills/tree/main/skills/pencil-skills/pencil-mcp-get-editor-state
SKILL.md
Tools
This skill is designed to call the Pencil MCP tool:
get_editor_state
If your client namespaces MCP tools, it may appear as mcp__pencil__get_editor_state.
When to use this skill
Intent Recognition (CRITICAL)
Even if a trigger phrase matches, you must verify the user's intent:
- Is the user explicitly asking to use "Pencil"?
- Is the current conversation context clearly about "Pencil" design tasks?
If the answer is NO, do NOT use this skill. (e.g., "What is selected?" might refer to selected text in the IDE, not the Pencil canvas).
CRITICAL PREREQUISITE: You must ONLY use this skill when the user EXPLICITLY mentions "Pencil".
ALWAYS use this skill when:
- You need to know what the user has currently selected on the canvas.
- You need to check the active document path.
- You are starting a new design task and need to orient yourself.
- The user asks "What am I looking at?" or "Get context" in Pencil.
Trigger phrases include:
- "Get Pencil editor state" (获取 Pencil 编辑器状态)
- "Check current selection in Pencil" (检查 Pencil 当前选区)
- "What is selected in Pencil?" (Pencil 中选中了什么?)
- "Where am I on the Pencil canvas?" (我在 Pencil 画布哪里?)
Input Parameters
include_schema(boolean, optional):- Set to
trueif you want the.penfile schema to be included. - If you are already aware of the schema, set to
false(default) to save context.
- Set to
How to use this skill
- Call the MCP Tool: Invoke
get_editor_state. - Analyze Output:
- Check
selection: List of selected node IDs. - Check
activePageId: Current page ID. - Check
filePath: Path of the current document.
- Check
Examples
1. Simple: Basic State Check
Get the current state to understand what the user is looking at. See 1-basic-check.json.
2. Medium: State with Schema
Get state including the .pen file schema to understand the document structure definitions. See 2-with-schema.json.
3. Complex: State Verification (Explicit)
Explicitly checking state during a multi-step workflow where schema is already known. See 3-explicit-check.json.
Keywords
English keywords: get state, editor context, current selection, active document, canvas position, check environment
Chinese keywords (中文关键词): 获取状态, 编辑器上下文, 当前选区, 选中节点, 画布位置, 环境检查
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ocrmypdf-batch
OCRmyPDF batch processing skill — process multiple PDFs, Docker automation, shell scripting, and CI/CD integration. Use when the user needs to OCR many PDFs, set up automated OCR pipelines, or integrate OCR into workflows.
ocrmypdf-optimize
OCRmyPDF optimization skill — compress PDFs, configure PDF/A output, JBIG2 encoding, and lossless optimization. Use when the user needs to reduce PDF file size, create archival PDF/A files, or optimize OCR output.
ocrmypdf-image
OCRmyPDF image processing skill — deskew, rotate, clean, despeckle, remove border from scanned documents. Use when the user needs to improve scanned PDF quality, fix skewed pages, remove noise, or clean up scanned documents before OCR.
ocrmypdf-api
OCRmyPDF Python API and plugin skill — use OCRmyPDF programmatically from Python, integrate with applications, and extend with plugins (EasyOCR, PaddleOCR, AppleOCR). Use when the user needs to call OCRmyPDF from Python code, build OCR pipelines, or use alternative OCR engines.
ocrmypdf
OCRmyPDF core skill — add searchable OCR text layer to scanned PDFs, convert images to searchable PDFs, support 100+ languages via Tesseract. Use when the user needs to OCR a PDF, make a scanned PDF searchable, or extract text from scanned documents.
svelte
Guides Svelte and SvelteKit development including reactive components, stores, transitions, lifecycle hooks, SSR, file-based routing, and deployment. Use when the user needs to build Svelte components, create SvelteKit applications, implement reactivity patterns, or configure Svelte with Vite.
Didn't find tool you were looking for?