بنقرة واحدة
canvas
Display HTML content on connected nodes via the canvas tools (canvas_present, canvas_eval, canvas_snapshot).
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Display HTML content on connected nodes via the canvas tools (canvas_present, canvas_eval, canvas_snapshot).
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Decompose and route work through multi-agent Kanban systems
Task lifecycle management and workspace handoff for Kanban workers
Terminal-based Node.js debugging via V8 inspector protocol
Python debugging with pdb, debugpy, and remote attach
Root-cause investigation methodology before applying fixes
Enforce RED-GREEN-REFACTOR TDD cycle
| name | canvas |
| description | Display HTML content on connected nodes via the canvas tools (canvas_present, canvas_eval, canvas_snapshot). |
| version | 1.0.0 |
Display HTML content on connected nodes using the canvas tools.
The canvas tools let you present web content on any connected client's canvas view. Great for:
| Tool | Description |
|---|---|
canvas_present | Push HTML content for rich visual display |
canvas_eval | Execute JavaScript in the canvas context |
canvas_snapshot | Capture current canvas content as HTML |
+------------------+ +------------------+ +--------------+
| Canvas Service |---->| File Manager |---->| HTTP Server |
| (state + URL) | | (disk storage) | | Port 18793 |
+------------------+ +------------------+ +--------------+
|
v
+--------------+
| Client App |
| (WebView) |
+--------------+
Canvas is configured via application properties:
jaiclaw:
canvas:
enabled: true
port: 18793
host: 127.0.0.1
live-reload: true
| Property | Default | Description |
|---|---|---|
enabled | false | Enable the canvas feature |
port | 18793 | HTTP server port |
host | 127.0.0.1 | Bind address |
live-reload | true | Auto-reload on file changes |
Use the canvas_present tool with an html parameter:
canvas_present html:"<html><body><h1>Hello Canvas!</h1></body></html>"
The tool returns a URL like http://127.0.0.1:18793/<uuid>.html.
Use canvas_snapshot to retrieve the current HTML content:
canvas_snapshot
Returns the raw HTML of the currently displayed canvas.
Use canvas_eval to run JavaScript in the canvas context:
canvas_eval javascript:"document.title = 'Updated'"
Note: Requires a connected client with bidirectional communication.
canvas_snapshot to capture state before modifying contentCanvas content is served at:
http://{host}:{port}/{uuid}.html
The host and port come from the canvas configuration. The UUID is auto-generated per content push.
The canvas host binds based on configuration:
| Host Setting | Access |
|---|---|
127.0.0.1 | Local only (default) |
| LAN IP | Same network |
| Tailscale IP | Same tailnet |
0.0.0.0 | All interfaces |
For remote clients, set the host to an accessible address.