Install
openclaw skills install dessix-skillAccess a local Dessix desktop workspace by calling the Electron MCP bridge directly from Node.js (socket/pipe), without using MCP stdio JSON-RPC. Use when an agent needs to read or invoke Dessix tools programmatically, build local automations, or fetch Action/Scene prompt content from Dessix blocks.
openclaw skills install dessix-skillCall the local Dessix bridge directly through a line-delimited JSON socket protocol.
Use scripts/dessix-bridge.mjs for all requests instead of re-implementing socket logic.
node scripts/dessix-bridge.mjs locate-mcp-script
node scripts/dessix-bridge.mjs health
node scripts/dessix-bridge.mjs invoke \
--tool dessix_list_workspaces \
--args '{}'
node scripts/dessix-bridge.mjs invoke \
--tool dessix_search_blocks \
--args '{"query":"MCP","limit":10}'
node scripts/dessix-bridge.mjs invoke \
--tool dessix_get_skill \
--args '{"block_id":"<BLOCK_ID>"}'
node scripts/dessix-bridge.mjs locate-mcp-script.
DESSIX_MCP_SCRIPT_PATH (or --mcpScriptPath <path>)./Applications/Dessix.app/Contents/Resources/electron/compiled/dessix-mcp.js%LOCALAPPDATA%\\Programs\\Dessix\\resources\\electron\\compiled\\dessix-mcp.jsDESSIX_MCP_BRIDGE_ENDPOINT is unset, this bridge client uses platform endpoint defaults:
~/.dessix/mcp/dessix-mcp-bridge.sock\\\\.\\pipe\\dessix-mcp-bridge--args. Invalid JSON fails fast.references/dessix-tools.md for tool names and argument templates.Combine tools to achieve higher-level goals. Validate outputs before any write.
Build a skill map for the current workspace (read-only):
node scripts/dessix-bridge.mjs invoke --tool dessix_get_current_workspace --args '{}'
node scripts/dessix-bridge.mjs invoke --tool dessix_search_blocks --args '{"types":["Action","Scene"],"limit":100}'
# for each block_id in results:
node scripts/dessix-bridge.mjs invoke --tool dessix_get_skill --args '{"block_id":"<BLOCK_ID>"}'
Turn a discussion thread into a reusable Action/Scene block:
node scripts/dessix-bridge.mjs invoke --tool dessix_get_topic_context --args '{"topic_id":"<THREAD_BLOCK_ID>"}'
node scripts/dessix-bridge.mjs invoke --tool dessix_search_blocks --args '{"semantic":"related skills and constraints","limit":20}'
# draft title+content from combined context, then:
node scripts/dessix-bridge.mjs invoke --tool dessix_create_block --args '{"patch":{"type":"Action","title":"<TITLE>","content":"<CONTENT>"}}'
Find and refresh stale skill blocks:
node scripts/dessix-bridge.mjs invoke --tool dessix_search_blocks --args '{"query":"skill","types":["Action","Scene"],"limit":50}'
node scripts/dessix-bridge.mjs invoke --tool dessix_read_block --args '{"block_id":"<BLOCK_ID>"}'
# compare current state, then patch:
node scripts/dessix-bridge.mjs invoke --tool dessix_update_block --args '{"block_id":"<BLOCK_ID>","patch":{"title":"<UPDATED>","content":"<UPDATED>"}}'
block_id and result counts.--args.