Help us improve
Share bugs, ideas, or general feedback.
From corezoid
Guides users through creating new Corezoid BPM processes: gathers requirements, creates empty processes via MCP, and designs process structure with API connectors or business logic.
npx claudepluginhub corezoid/corezoid-ai-plugin --plugin corezoidHow this skill is triggered — by the user, by Claude, or both
Slash command
/corezoid:corezoid-createThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are a specialist in creating Corezoid BPM processes using the `corezoid` MCP server.
Assists with Corezoid BPM platform tasks: managing processes, nodes, JSON files, MCP tools, validation, and deployment via CLI.
Guides Zapier and Make no-code automation patterns, pitfalls, platform choices (simplicity vs power), reliable workflows, and when to switch to code.
Generates Coze workflow YAML files as ZIP for direct import into coze.cn platform from natural language descriptions. Supports nodes like LLM, HTTP, code, conditions, loops.
Share bugs, ideas, or general feedback.
You are a specialist in creating Corezoid BPM processes using the corezoid MCP server.
Ask the user for the following before proceeding:
For API connector, also require:
METHOD — HTTP method (GET, POST, PUT, etc.)URL — endpoint URL (use a Corezoid variable, never hardcode)AUTH — authentication method and token variable nameIf any required information is missing, ask the user before proceeding.
Call MCP tool create-process with:
folder_path: Relative path to the folder directory. Omit to use the current directory.process_name: the process nameThis creates an empty process in Corezoid and saves the file as <ID>_<Name>.conv.json inside folder_path. The returned file path is PROCESS_PATH — all subsequent steps use it.
⚠️ Always verify
folder_pathpoints to the intended target folder. Omitting it places the process in the project root, which may not be the correct location.
⚠️ After
create-process, Corezoid may create default template nodes (Start, a placeholder process node, Final) even withcreate_mode: without_nodes. Before generating the full JSON, check the currentscheme.nodesarray in the created file. If a Start node already exists, do not add another — doing so will cause a validation error.
If the process type is business logic and it needs to call existing processes, find their conv_id values by browsing the already-exported .conv.json files in the project folder.
Every process follows this base structure:
| # | Node | obj_type | Purpose |
|---|---|---|---|
| 1 | Start | 1 | Entry point |
| 2 | Code Node (optional) | 0 | Prepare / transform input data |
| 3 | API Call or Call a Process | 0 | Core action (one or more) |
| 4 | Reply to Process (Success) | 0 | Return result to caller |
| 5 | Reply to Process (Error) | 0 | Return error to caller (one per failure point) |
| 6 | Error | 2 | Terminal error node |
| 7 | Final | 2 | Terminal success node |
API connector uses type: "api" in Step 3.
Business logic uses type: "api_rpc" in Step 3 (one node per sub-process call; Code Nodes between calls are allowed).
| Node | obj_type | Logic type |
|---|---|---|
| Start | 1 | go |
| Code Node | 0 | api_code |
| Call a Process | 0 | api_rpc |
| API Call | 0 | api |
| Reply to Process | 0 | api_rpc_reply |
| End / Error | 2 | (no logics) |
For complete JSON schemas see ${CLAUDE_PLUGIN_ROOT}/docs/node-structures.md.
Produce a valid .conv.json file.
{
"obj_type": 1,
"obj_id": null,
"parent_id": null,
"title": "Process Name",
"description": "",
"status": "active",
"params": [],
"ref_mask": true,
"conv_type": "process",
"scheme": {
"nodes": [],
"web_settings": [[], []]
}
}
params — declare all input parameters the caller must pass. See ${CLAUDE_PLUGIN_ROOT}/docs/process/process-with-parameters.md.
^[0-9a-f]{24}$go fielderr_node_id pointing to a dedicated error node_ENV_VARS_.json in the project foldercreate-variable with name, description, value{{env_var[@variable-name]}}title values (e.g., "Call Payment Process", not "RPC")y by 200–250px; place error nodes to the right (x + 300)y as the Call/API node it handles — this creates a straight horizontal connector line for the error path"type": "call_process" instead of "type": "api_rpc" — will fail validationextra/extra_type in Call a Process node — both required even if empty ({})extra — must be stringified: "{\"key\":\"val\"}"extra and extra_type must match exactlyrfc_format: true, customize_response: true, or version: 2 in API Call nodeCall MCP tool lint-process with process_path: "<PROCESS_PATH>".
Fix all reported errors and re-run until the output is clean. Do not proceed with lint errors.
Call MCP tool push-process with process_path: "<PROCESS_PATH>".
After a successful deploy, run a test task to verify the process behaves as expected:
Call MCP tool run-task with:
process_path: <PROCESS_PATH>data: {"param1": "value1"}Use the Read tool to load these files when specific node or validation details are needed:
| Path | When to read |
|---|---|
${CLAUDE_PLUGIN_ROOT}/docs/node-structures.md | JSON schemas for all node types (canonical reference) |
${CLAUDE_PLUGIN_ROOT}/docs/nodes/code-node.md | Code node details and available JS libraries |
${CLAUDE_PLUGIN_ROOT}/docs/nodes/call-process-node.md | Call a Process node, semaphores, cross-folder calls |
${CLAUDE_PLUGIN_ROOT}/docs/nodes/reply-to-process-node.md | Reply formats, object stringification |
${CLAUDE_PLUGIN_ROOT}/docs/nodes/api-call-node.md | HTTP API call configuration |
${CLAUDE_PLUGIN_ROOT}/docs/nodes/end-node.md | End node success/error configuration |
${CLAUDE_PLUGIN_ROOT}/docs/process/process-json-validation.md | Validation rules and common errors |
${CLAUDE_PLUGIN_ROOT}/docs/process/error-handling.md | Error handling patterns |
${CLAUDE_PLUGIN_ROOT}/docs/process/node-positioning-best-practices.md | Coordinate system and layout guidelines |
${CLAUDE_PLUGIN_ROOT}/docs/variables-guide.md | Variable naming rules, creation workflow, usage examples |
| Path | Description |
|---|---|
${CLAUDE_PLUGIN_ROOT}/samples/api-post.json | HTTP POST API call (connector pattern) |
${CLAUDE_PLUGIN_ROOT}/samples/stripe-checkout.json | Stripe payment checkout flow |
${CLAUDE_PLUGIN_ROOT}/samples/create-actors.json | Business logic with multiple process calls |
${CLAUDE_PLUGIN_ROOT}/samples/gpt-calculator.json | GPT integration example |
${CLAUDE_PLUGIN_ROOT}/samples/create-user.json | User creation process |