Use when you have a written implementation plan to execute in a separate session with review checkpoints
npx skills add millord237/10x-outreach-skill --skill "canvas-workflow"
Install specific skill from multi-skill repository
# Description
|
# SKILL.md
name: canvas-workflow
description: |
Visual workflow canvas for 10x-Team outreach system. Use this skill to design, visualize,
and execute multi-platform outreach workflows on an infinite canvas.
allowed-tools:
- Bash
- Read
- Write
- WebFetch
10x-Team Visual Workflow Canvas
An infinite canvas for designing and visualizing outreach workflows. Design workflows visually, configure nodes, connect them with arrows, and export to Claude Code for execution.
Quick Start
# Start the canvas
cd tldraw-canvas && npm install && npm run dev
Then open: http://localhost:3000/
When to Use This Skill
Use this skill when the user:
- Wants to visually design an outreach workflow
- Needs to see their campaign as a visual diagram
- Wants to drag-and-drop skill nodes
- Needs to configure workflow steps
- Wants to export workflow configurations
- Wants to brainstorm campaign strategies visually
Canvas Features
Skill Nodes
Visual representations of 100X Outreach skills:
| Node | Icon | Description | Inputs | Outputs |
|---|---|---|---|---|
| Discovery | π | Find people using Exa AI | query | people |
| Audience | π₯ | Define target audience | - | filters |
| πΌ | LinkedIn automation | person | sent | |
| π¦ | Twitter/X automation | person | sent | |
| πΈ | Instagram automation | person | sent | |
| Gmail | π§ | Send emails via Gmail | person, template | sent |
| Template | π | Message templates | context | message |
| Workflow | β‘ | Multi-step sequences | trigger | complete |
| Campaign | π | Full outreach campaigns | audience, message | results |
Node Configuration
Click any node to open the configuration panel:
- Discovery: Search query, max results, source (Exa/LinkedIn/Twitter)
- LinkedIn: Action (connect/message/view/like/comment), template, delay
- Twitter: Action (follow/dm/like/reply/retweet), template, delay
- Instagram: Action (follow/dm/like/comment/story_reply), template, delay
- Gmail: Subject, template, auto follow-up settings
- Template: Name, content with variables
- Campaign: Name, goal, daily limit
Workflow Templates
Pre-built workflow configurations with connections:
| Template | Nodes | Description |
|---|---|---|
| πΌ B2B Outreach | 4 | 14-day professional sequence: Audience β Discovery β LinkedIn β Email |
| π€ Brand Partnership | 4 | 21-day brand outreach: Audience β Instagram/Twitter β Email |
| β Influencer Outreach | 5 | Value-first creator approach with social warm-up |
| π Multi-Platform | 5 | 30-day adaptive routing across all channels |
| π§ Email Sequence | 4 | 7-day email drip campaign |
| π Discovery Pipeline | 4 | Find and qualify leads from multiple sources |
Connections
Draw arrows between nodes to define workflow order:
1. Click the π Connect button in the toolbar
2. Click the source node
3. Click the target node
4. Arrow is automatically drawn with proper styling
Canvas Controls
| Action | How |
|---|---|
| Add Node | Click skill icon in toolbar |
| Move Node | Drag node |
| Select | Click node |
| Multi-select | Shift+click or drag box |
| Delete | Select + Delete/Backspace |
| Connect Nodes | Click π, then source, then target |
| Configure Node | Select node β config panel appears |
| Pan | Drag empty space |
| Zoom | Scroll wheel |
| Fit View | Click "π Fit View" button |
Running Workflows (Auto-Execution)
When you click the βΆ Run button in the canvas:
- Workflow is saved to
output/workflow-queue/latest.json - Nodes turn orange to indicate they're queued
- Go to Claude Code and say:
/workflow run - Workflow executes automatically with proper rate limiting
The Run Flow
Canvas (Click Run) β Saves to workflow-queue β Claude Code β /workflow run β Executes Skills
Workflow Queue Location
output/
βββ workflow-queue/
βββ latest.json # Most recent workflow (always overwritten)
βββ workflow-{timestamp}.json # Archived workflows
JSON Format
The canvas exports workflows in this format:
{
"name": "10x-Team Workflow",
"version": "1.0",
"created": "2024-01-21T...",
"nodes": [
{
"id": "shape:abc123",
"type": "discovery",
"label": "Find Prospects",
"position": { "x": 100, "y": 100 },
"config": {
"query": "AI startup founders",
"maxResults": 50
}
}
],
"connections": [
{
"from": "shape:abc123",
"to": "shape:def456"
}
]
}
Alternative Methods
Method 1: Copy to Clipboard
If auto-save fails, workflow is copied to clipboard as backup.
Method 2: Manual Paste
Paste workflow JSON directly in Claude Code and say "Run this workflow".
Integration with Claude Code
The canvas works with Claude Code as the orchestration brain:
Canvas (Design) β Export JSON β Claude Code (Orchestrate) β Skills (Execute)
β
Browser Extension
Gmail API
Exa AI
Execution Flow
When user exports and pastes to Claude Code:
- Claude Code parses the workflow JSON
- Reads the execution order from connections
- For each node in order:
- Reads the node configuration
- Calls the appropriate skill (discovery-engine, linkedin-adapter, etc.)
- Passes inputs from previous nodes
- Respects rate limits and delays
- Updates node status
- Reports completion
Example Execution
User: "Run this workflow" (pastes JSON)
Claude Code:
1. Parses workflow with 4 nodes, 3 connections
2. Executes discovery-engine with query "AI founders"
3. Gets 50 people
4. For each person (with rate limiting):
- Executes linkedin-adapter (connect)
- Waits 24 hours
- Executes gmail-adapter (send email)
5. Reports: "Workflow complete! 50 people contacted"
Templates Library
The canvas includes 91 message templates across 4 platforms:
| Platform | Count | Categories |
|---|---|---|
| 29 | Connection Requests, Messages, InMails, Comments | |
| 22 | DMs, Tweets, Replies | |
| 22 | DMs, Comments, Stories | |
| 18 | Outreach, Follow-up, Promotional, Newsletters |
Templates can be selected directly in node configuration.
Claude Code Commands
# Start canvas server
cd canvas && npm run dev -- --port 3006
# Build for production
cd canvas && npm run build
# Preview production build
cd canvas && npm run preview
Node Properties
Each node has:
- id - Unique identifier
- type - Skill type (discovery, linkedin, etc.)
- label - Display name
- description - What the node does
- status - idle | running | completed | error
- inputs - Required inputs (blue badges)
- outputs - Produced outputs (green badges)
- config - Node-specific configuration
- position - x, y coordinates on canvas
Rate Limiting
The canvas respects 100X Outreach rules:
| Platform | Between Actions | After Follow |
|---|---|---|
| 24-48 hours | 24 hours | |
| 24-48 hours | 4-24 hours | |
| 48-72 hours | 24-48 hours | |
| Varies | N/A |
Best Practices
- Start with a template - Load a pre-built workflow and customize
- Connect nodes left-to-right - Maintains visual flow
- Configure before running - Set templates and queries
- Test with small batches - Set low maxResults first
- Use the config panel - Click nodes to set parameters
- Export regularly - Save workflows as JSON backups
Keyboard Shortcuts
| Key | Action |
|---|---|
| Delete | Remove selected nodes |
| Ctrl+A | Select all |
| Ctrl+Z | Undo |
| Ctrl+Y | Redo |
| Scroll | Zoom in/out |
Troubleshooting
Connections not appearing
- Make sure you click the source node first, then the target
- Wait for the connection mode indicator to show "Target"
- Try zooming out to see if connection is off-screen
Nodes not loading from template
- Clear the canvas first with "Clear All"
- Check browser console for errors
- Try refreshing the page
Export not copying
- Check browser clipboard permissions
- Try the "Copy Prompt" button instead
- Manually copy from browser console
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.