superplane-cli
npx skills add https://github.com/superplanehq/skills --skill superplane-cli
Agent 安装分布
Skill 文档
SuperPlane CLI
Operate a SuperPlane instance through the superplane CLI.
Quick Reference
| Task | Command |
|---|---|
| Connect to org | superplane connect <URL> <TOKEN> |
| Who am I | superplane whoami |
| List/switch contexts | superplane contexts |
| List canvases | superplane canvases list |
| Create canvas | superplane canvases create <name> |
| Create canvas from YAML | superplane canvases create --file canvas.yaml |
| Export canvas | superplane canvases get <name> |
| Update canvas (default) | superplane canvases update --file canvas.yaml --auto-layout horizontal |
| Auto layout full canvas | superplane canvases update <name-or-id> --auto-layout horizontal |
| Auto layout connected subgraph | superplane canvases update <name-or-id> --auto-layout horizontal --auto-layout-scope connected-component --auto-layout-node <node-id> |
| Auto layout exact selected set | superplane canvases update <name-or-id> --auto-layout horizontal --auto-layout-scope exact-set --auto-layout-node <node-a> --auto-layout-node <node-b> |
| List available providers | superplane index integrations |
| Describe a provider | superplane index integrations --name github |
| List connected integrations | superplane integrations list |
| Inspect connected integration | superplane integrations get <id> |
| List integration resources | superplane integrations list-resources --id <id> --type <type> |
| List components | superplane index components |
| Components from provider | superplane index components --from github |
| Describe a component | superplane index components --name semaphore.runWorkflow |
| List triggers | superplane index triggers |
| Triggers from provider | superplane index triggers --from github |
| Describe a trigger | superplane index triggers --name github.onPush |
| List secrets | superplane secrets list |
| Create secret | superplane secrets create --file secret.yaml |
| List events | superplane events list --canvas-id <id> |
| Trace event executions | superplane events list-executions --canvas-id <id> --event-id <eid> |
| List node executions | superplane executions list --canvas-id <id> --node-id <nid> |
| Cancel execution | superplane executions cancel --canvas-id <id> --execution-id <eid> |
Verify CLI Is Installed
Before any CLI operation, confirm the CLI is available:
superplane whoami
If this returns command not found, the CLI is not installed. Stop and tell the user:
The SuperPlane CLI is not installed. Install it from https://docs.superplane.com/installation/cli and then re-run this task.
Do not attempt to install the CLI on behalf of the user. Do not continue with doc-based guesswork â the CLI provides exact trigger names, component names, integration IDs, and config schemas that documentation cannot reliably substitute.
Core Workflow
1. Authenticate
Create a service account in the SuperPlane UI, then:
superplane connect https://superplane.example.com <API_TOKEN>
superplane whoami
2. Discover What Exists
Run these first to understand what’s available:
superplane index integrations # available providers
superplane integrations list # connected instances in this org
superplane index triggers # all trigger types
superplane index components # all component types
Narrow to one provider:
superplane index triggers --from github
superplane index components --from github
Inspect required config fields and payload shapes:
superplane index triggers --name github.onPush
superplane index components --name semaphore.runWorkflow
List runtime options for integration-resource fields (e.g., repos, projects):
superplane integrations list-resources --id <integration-id> --type <type> --parameters key1=value1,key2=value2
Use superplane integrations list first to find valid integration IDs.
3. Build a Canvas Incrementally
Create a blank canvas, then iterate:
superplane canvases create my-canvas
superplane canvases get my-canvas > canvas.yaml
# edit canvas.yaml
superplane canvases update --file canvas.yaml --auto-layout horizontal
See Canvas YAML Spec for the full format.
Auto Layout via CLI
Use canvases update with auto-layout flags:
Default agent behavior:
- Always include
--auto-layout horizontalonsuperplane canvases update. - Do not wait for the user to explicitly ask for auto layout.
# connected component around one seed node (recommended default for existing canvases)
superplane canvases update <name-or-id> \
--auto-layout horizontal \
--auto-layout-scope connected-component \
--auto-layout-node <node-id>
# exact node set only (best when the user selected nodes)
superplane canvases update <name-or-id> \
--auto-layout horizontal \
--auto-layout-scope exact-set \
--auto-layout-node <node-a> \
--auto-layout-node <node-b>
# full canvas (use sparingly; see policy below)
superplane canvases update <name-or-id> --auto-layout horizontal
Rules and behavior:
--auto-layoutis required when using--auto-layout-scopeor--auto-layout-node.- Supported algorithm:
horizontal. - Supported scopes:
full-canvas,connected-component,exact-set. - Default scope behavior:
- If no seed nodes are provided: behaves like
full-canvas. - If seed nodes are provided and scope omitted: behaves like
connected-component.
- If no seed nodes are provided: behaves like
- Recommended policy for agents:
- Prefer
connected-componentfor existing/disconnected canvases. - Prefer
exact-setwhen the user selected specific nodes. - Use
full-canvasonly when creating from scratch, when the graph is one connected component, or when the user explicitly asks for full-canvas layout.
- Prefer
- Scope selection default:
- If a changed/selected node ID is known, use
connected-component+--auto-layout-node. - If a set of changed node IDs is known, use
exact-set+ repeated--auto-layout-node. - If no node IDs are available, use
full-canvas.
- If a changed/selected node ID is known, use
- Positioning is anchor-preserving: the laid-out region keeps its top-left anchor relative to current canvas coordinates to avoid large jumps.
4. Manage Secrets
superplane secrets create --file secret.yaml
superplane secrets list
superplane secrets update --file secret.yaml
superplane secrets delete <name_or_id>
5. Monitor Runs
superplane events list --canvas-id <id>
superplane events list-executions --canvas-id <id> --event-id <eid>
6. Troubleshooting Checklist
Run after every canvas update:
superplane canvases get <name>
Check:
- All required
configurationfields are present - Edges use the correct output channels
- No node
errorMessageremains (especially “integration is required”) - No
warningMessageabout duplicate names - Expressions reference existing node names (case-sensitive)
Resolving “integration is required”
When a field type is integration-resource (like repository or project), the node needs a connected integration instance.
superplane integrations listâ confirm the provider is connectedsuperplane integrations get <id>â inspect the connection- Add
integration.idto the node in the canvas YAML superplane integrations list-resources --id <id> --type <type>â find valid resource valuessuperplane canvases update --file canvas.yamlâ apply the fixsuperplane canvases get <name>â verify errors are cleared
When to Use Other Skills
| Need | Use Skill |
|---|---|
| Design a canvas from requirements | superplane-canvas-builder |
| Debug a failed execution | superplane-monitor |
Documentation
For agents that can fetch URLs, the full SuperPlane docs are available in LLM-friendly format:
- Compact index: https://docs.superplane.com/llms.txt
- Full content: https://docs.superplane.com/llms-full.txt
References
- Canvas YAML Spec â Full YAML format with examples