You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(sandbox-mcp): add crayon workflow tools and enriched instructions to sandbox server
Merges the 12 existing crayon MCP tools (listWorkflows, runWorkflow, etc.)
into the sandbox server so local Claude Code has full workflow engine access.
Expands MCP instructions with project CLAUDE.md, workflow development guide,
and scaffold templates. Fixes cwd to /data/app so tools discover workflows
correctly over SSH.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- \`run_workflow\` — execute a workflow with JSON input
67
+
- \`run_node\` — execute a single node (for testing)
68
+
69
+
**Run history:**
70
+
- \`list_runs\` — list past executions
71
+
- \`get_run\` — get details of a specific run
72
+
- \`get_trace\` — full execution trace with step-by-step output
73
+
74
+
**Integrations:**
75
+
- \`list_integrations\` — list available OAuth integrations (Salesforce, Slack, etc.)
76
+
- \`get_connection_info\` — get credentials for a specific integration + node
77
+
78
+
**Scaffolding:**
79
+
- \`create_app\` — scaffold a new crayon project
80
+
- \`create_database\` — set up a database
81
+
- \`setup_app_schema\` — initialize crayon tables in existing DB
82
+
83
+
### Workflow Development Pipeline
84
+
85
+
1. **Design** — create \`src/crayon/workflows/<name>.ts\` with a \`description\` field that captures the flow (task ordering, conditions, loops)
86
+
2. **Create stubs** — for each task, create node stubs in \`src/crayon/nodes/<name>.ts\` or agent stubs in \`src/crayon/agents/<name>.ts\` + \`<name>.md\`
87
+
3. **Refine** — add typed Zod schemas, tools, implementation details to each node/agent
88
+
4. **Compile** — update the workflow's \`run()\` method from embedded descriptions
89
+
90
+
### Key Patterns
91
+
92
+
- **Description-driven:** The \`description\` field in workflows and nodes is the source of truth. It drives code generation.
93
+
- **Node types:** \`Node.create()\` for deterministic functions, \`Agent.create()\` for AI reasoning (uses Vercel AI SDK)
94
+
- **Agent specs:** Each agent has a colocated \`.md\` file with system prompt, guidelines, and output format
95
+
- **Integrations:** Declare in \`integrations: ["salesforce", "openai"]\` array. Credentials fetched at runtime via \`ctx.getConnection()\`.
96
+
- **Draft first, ask later:** Make your best guess and let the user correct, rather than interrogating upfront.
97
+
- **Run it yourself:** When the user wants to test, use \`run_workflow\` / \`run_node\` tools directly.
Before implementing nodes that use external services, call \`get_connection_info\` to verify the connection exists. If it fails, tell the user to set up the connection in the Dev UI first.`;
184
+
33
185
/**
34
186
* Start the sandbox MCP server in stdio mode.
35
187
* Exposes filesystem and bash tools for remote sandbox access.
0 commit comments