@superglue/cli 1.1.30 → 1.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +7 -0
- package/dist/cli.js +189 -163
- package/dist/skills/superglue/SKILL.md +50 -28
- package/dist/skills/superglue/references/http.md +11 -10
- package/dist/skills/superglue/references/superglue-info.md +14 -7
- package/package.json +1 -1
- package/skills/superglue/SKILL.md +50 -28
- package/skills/superglue/references/http.md +11 -10
- package/skills/superglue/references/superglue-info.md +14 -7
|
@@ -5,7 +5,7 @@ description: "Build, test, deploy and integrate superglue tools via the sg CLI a
|
|
|
5
5
|
|
|
6
6
|
# superglue CLI (`sg`) — Agent Reference
|
|
7
7
|
|
|
8
|
-
This file is the entry point for operating superglue via the `sg` CLI. It covers setup, tool building, tool editing, system management, running tools, and deployment via SDK/REST/webhooks.
|
|
8
|
+
This file is the entry point for operating superglue via the `sg` CLI. It covers setup, tool building, tool editing, system management, running tools, schedules, and deployment via SDK/REST/webhooks.
|
|
9
9
|
|
|
10
10
|
For protocol-specific details (HTTP, databases, Redis, file servers, GraphQL), file handling, access rules, SDK integration, and general superglue information, run `sg skill <topic>` (linked throughout and listed at the bottom).
|
|
11
11
|
|
|
@@ -77,7 +77,7 @@ The CLI will not work until configured with an API key. The endpoint defaults to
|
|
|
77
77
|
sg init
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
Prompts for: API key (required — get one at https://app.superglue.cloud/
|
|
80
|
+
Prompts for: API key (required — get one at https://app.superglue.cloud/api-keys), API endpoint, web endpoint (for OAuth callbacks), output mode (`stdout` or `stdout+file`), and config location (project-local `.superglue/config.json` vs global `~/.superglue/config.json`). Verifies the connection before saving.
|
|
81
81
|
|
|
82
82
|
**Non-interactive (CI, agents):**
|
|
83
83
|
|
|
@@ -103,11 +103,11 @@ Verify with `sg system list` — should return a list (possibly empty) without e
|
|
|
103
103
|
|
|
104
104
|
Set during `sg init` or via `SUPERGLUE_CLI_PRESET` env var. Stored in `config.json` as `"preset"`.
|
|
105
105
|
|
|
106
|
-
| Preset | Description
|
|
107
|
-
| --------- |
|
|
108
|
-
| `runner` | Run saved tools by ID only. Read-only lookups. No building/editing
|
|
109
|
-
| `builder` | Runner + build/edit/save tools, call systems, manage MCP servers. No system CRUD |
|
|
110
|
-
| `admin` | Full access (default)
|
|
106
|
+
| Preset | Description |
|
|
107
|
+
| --------- | ---------------------------------------------------------------------------------------------- |
|
|
108
|
+
| `runner` | Run saved tools by ID only. Read-only lookups. No building/editing |
|
|
109
|
+
| `builder` | Runner + build/edit/save tools, call systems, manage MCP servers and schedules. No system CRUD |
|
|
110
|
+
| `admin` | Full access (default) |
|
|
111
111
|
|
|
112
112
|
Blocked commands print a clear error showing the current preset and how to change it.
|
|
113
113
|
|
|
@@ -185,6 +185,26 @@ Auth modes:
|
|
|
185
185
|
|
|
186
186
|
If `sg mcp ...` returns "MCP server management is not available", the target instance or plan does not support named MCP server management. The default all-tools MCP endpoint may still be usable at `<api-endpoint>/mcp`.
|
|
187
187
|
|
|
188
|
+
### Creating/Editing Tool Schedules
|
|
189
|
+
|
|
190
|
+
Schedules run saved tools on cron expressions. Use 5-field cron syntax and an IANA timezone.
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
sg schedule list
|
|
194
|
+
sg schedule list --tool <toolId>
|
|
195
|
+
sg schedule create --tool daily_report --cron "0 9 * * 1-5" --timezone UTC
|
|
196
|
+
sg schedule edit --tool daily_report --id <scheduleId> --disabled
|
|
197
|
+
sg schedule edit --tool daily_report --id <scheduleId> --cron "0 8 * * *" --timezone UTC
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Optional flags:
|
|
201
|
+
|
|
202
|
+
- `--payload '{"key":"value"}'` or `--payload-file payload.json` sets the scheduled run payload.
|
|
203
|
+
- `--webhook-url <url>` posts results to a webhook after success.
|
|
204
|
+
- `--tool-chain <toolId>` runs another saved tool after success.
|
|
205
|
+
- `--retries <n>` and `--timeout <ms>` set request options.
|
|
206
|
+
- `--clear-webhook` removes the webhook/tool-chain success action during edit.
|
|
207
|
+
|
|
188
208
|
---
|
|
189
209
|
|
|
190
210
|
## Reference
|
|
@@ -193,27 +213,29 @@ If `sg mcp ...` returns "MCP server management is not available", the target ins
|
|
|
193
213
|
|
|
194
214
|
Agents familiar with the web tool names can map them directly to CLI commands:
|
|
195
215
|
|
|
196
|
-
| Web agent tool | CLI command
|
|
197
|
-
| ------------------------------------------------ |
|
|
198
|
-
| `build_tool` | `sg tool build --config '{...}'`
|
|
199
|
-
| `edit_tool` | `sg tool edit --tool <id> --patches '[...]'`
|
|
200
|
-
| `run_tool` | `sg tool run --tool <id>` / `--draft <id>`
|
|
201
|
-
| `save_tool` | `sg tool save --draft <draftId>`
|
|
202
|
-
| `run_command` with `vfs` for `/org/tools/` | `sg tool find --id <id>` / `sg tool find <q>`
|
|
203
|
-
| `create_system` | `sg system create --name "..." --url "..."`
|
|
204
|
-
| `edit_system` | `sg system edit --id <id> ...`
|
|
205
|
-
| `run_command` with `vfs` for `/org/systems/` | `sg system find <query>` / `--id <id>`
|
|
206
|
-
| Credentials VFS / user-owned credentials | `sg system credentials get/set/clear`
|
|
207
|
-
| `call_system` | `sg system call --url "..." --system-id <id>`
|
|
208
|
-
| `run_command search` | `sg system search-docs --system-id <id> -k`
|
|
209
|
-
| `authenticate_oauth` | `sg system oauth --system-id <id> [--scopes]`
|
|
210
|
-
| `run_command` with `vfs` for `/org/runs/` | `sg run list` / `sg run get <runId>`
|
|
211
|
-
| `run_command` with `vfs` for `/org/mcp-servers/` | `sg mcp list` / `sg mcp find --id <id>`
|
|
212
|
-
| `create_mcp_server` | `sg mcp create --name <n> --tool <id>`
|
|
213
|
-
| `edit_mcp_server` | `sg mcp edit --id <id> ...`
|
|
214
|
-
|
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
| Web agent tool | CLI command | Notes |
|
|
217
|
+
| ------------------------------------------------ | ---------------------------------------------- | ------------------------------------------------------------------ |
|
|
218
|
+
| `build_tool` | `sg tool build --config '{...}'` | CLI is not AI-powered — you provide the full JSON config |
|
|
219
|
+
| `edit_tool` | `sg tool edit --tool <id> --patches '[...]'` | JSON Patch (RFC 6902). Use `--draft <id>` for drafts |
|
|
220
|
+
| `run_tool` | `sg tool run --tool <id>` / `--draft <id>` | Add `--include-step-results` to inspect per-step data |
|
|
221
|
+
| `save_tool` | `sg tool save --draft <draftId>` | Persists a draft to the database |
|
|
222
|
+
| `run_command` with `vfs` for `/org/tools/` | `sg tool find --id <id>` / `sg tool find <q>` | Full config with `--id`, compact search with a query string |
|
|
223
|
+
| `create_system` | `sg system create --name "..." --url "..."` | Use `--template <id>` when available |
|
|
224
|
+
| `edit_system` | `sg system edit --id <id> ...` | Supports `--env dev\|prod` |
|
|
225
|
+
| `run_command` with `vfs` for `/org/systems/` | `sg system find <query>` / `--id <id>` | Returns `storedCredentials` and system URL |
|
|
226
|
+
| Credentials VFS / user-owned credentials | `sg system credentials get/set/clear` | Manage current user's credentials for user-owned systems |
|
|
227
|
+
| `call_system` | `sg system call --url "..." --system-id <id>` | Authenticated ad-hoc calls for testing / schema introspection |
|
|
228
|
+
| `run_command search` | `sg system search-docs --system-id <id> -k` | Targeted keyword search over ingested system docs |
|
|
229
|
+
| `authenticate_oauth` | `sg system oauth --system-id <id> [--scopes]` | Opens browser flow. Supports `--grant-type client_credentials` too |
|
|
230
|
+
| `run_command` with `vfs` for `/org/runs/` | `sg run list` / `sg run get <runId>` | Filter `list` by `--tool`, `--status`, `--source`, `--limit` |
|
|
231
|
+
| `run_command` with `vfs` for `/org/mcp-servers/` | `sg mcp list` / `sg mcp find --id <id>` | Returns endpoint, auth mode, selected tool IDs, and client config |
|
|
232
|
+
| `create_mcp_server` | `sg mcp create --name <n> --tool <id>` | Creates a named MCP endpoint for selected saved tools |
|
|
233
|
+
| `edit_mcp_server` | `sg mcp edit --id <id> ...` | Edits name, auth mode, description, or selected tool IDs |
|
|
234
|
+
| `create_schedule` | `sg schedule create --tool <id> --cron <expr>` | Creates a cron schedule for a saved tool |
|
|
235
|
+
| `edit_schedule` | `sg schedule edit --tool <id> --id <schedule>` | Updates, enables, or disables an existing schedule |
|
|
236
|
+
| (no direct equivalent) | `sg init`, `sg update`, `sg skill` | CLI-specific setup, updater, and this reference system |
|
|
237
|
+
|
|
238
|
+
Web-agent-only concepts with no CLI equivalent: `run_command`'s virtual filesystem (CLI uses concrete `sg` subcommands), `authenticate_oauth`'s dedicated MCP `authenticate` tool (CLI uses `sg system oauth`).
|
|
217
239
|
|
|
218
240
|
### Command Reference
|
|
219
241
|
|
|
@@ -19,15 +19,15 @@ All fields support `<<variable>>` and `<<(sourceData) => ...>>` expressions.
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ------------- | -------- |
|
|
24
|
-
| `url` | yes |
|
|
25
|
-
| `method` | yes | `GET`, `POST`, `PUT`, `DELETE`, `PATCH`
|
|
26
|
-
| `headers` | no | Auth headers, content type, custom headers
|
|
27
|
-
| `queryParams` | no | Key-value pairs appended to URL
|
|
28
|
-
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS
|
|
29
|
-
| `pagination` | no | See Pagination section
|
|
30
|
-
| `systemId` | no | Links system credentials and URL. Omit for public APIs
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ------------- | -------- | ------------------------------------------------------------------------------------------------------------ |
|
|
24
|
+
| `url` | yes | Use `<<systemId_url>>` for the base; join with exactly one `/` (the system's `url` may or may not end in `/` |
|
|
25
|
+
| `method` | yes | `GET`, `POST`, `PUT`, `DELETE`, `PATCH` |
|
|
26
|
+
| `headers` | no | Auth headers, content type, custom headers |
|
|
27
|
+
| `queryParams` | no | Key-value pairs appended to URL |
|
|
28
|
+
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS |
|
|
29
|
+
| `pagination` | no | See Pagination section |
|
|
30
|
+
| `systemId` | no | Links system credentials and URL. Omit for public APIs |
|
|
31
31
|
|
|
32
32
|
For APIs that require the same query key multiple times, use an array value:
|
|
33
33
|
`{ metadataHeaders: ["From", "Subject"] }` -> `?metadataHeaders=From&metadataHeaders=Subject`.
|
|
@@ -237,7 +237,8 @@ When an HTTP step downloads a file (PDF, CSV, binary response), set `outputFile:
|
|
|
237
237
|
|
|
238
238
|
## Common Pitfalls
|
|
239
239
|
|
|
240
|
-
- Hardcoding base URLs
|
|
240
|
+
- Hardcoding base URLs instead of using `<<systemId_url>>`.
|
|
241
|
+
- Wrong slash at the `<<systemId_url>>` join. The placeholder resolves to the system's `url` exactly as stored, which may or may not end in `/`. Read the `url` shown by `sg system find` and write the path so there is exactly one `/` between base and path: against a base with no trailing slash, `<<systemId_url>>crm/v3/...` becomes a broken host (`https://api.hubapi.comcrm/...`) that silently hits the wrong server; against a base ending in `/`, a leading `/` produces `//`.
|
|
241
242
|
- Forgetting auth headers entirely — nothing is injected automatically, including for OAuth systems (only token refresh is automatic)
|
|
242
243
|
- Forgetting `outputFile: true` on steps that download files the user wants
|
|
243
244
|
- Putting pagination variables in the config but not setting a `pagination` block, or vice versa
|
|
@@ -22,7 +22,7 @@ API, SDK, CLI, and webhook usage require an **API key**. MCP clients can use OAu
|
|
|
22
22
|
|
|
23
23
|
MCP authentication is separate from API/SDK/CLI setup. For MCP OAuth, dynamic client registration, Langdock setup, and named server permissions, use the MCP documentation.
|
|
24
24
|
|
|
25
|
-
Users can generate and manage API keys
|
|
25
|
+
Users can generate and manage API keys on the standalone **API Keys** page (`/api-keys`).
|
|
26
26
|
|
|
27
27
|
## Interfaces
|
|
28
28
|
|
|
@@ -36,13 +36,13 @@ Users can generate and manage API keys in **My Credentials -> superglue API keys
|
|
|
36
36
|
|
|
37
37
|
Tools can be triggered via webhook: `POST {apiEndpoint}/v1/hooks/{toolId}?token={apiKey}`
|
|
38
38
|
|
|
39
|
-
On superglue Cloud, the API endpoint is `https://api.superglue.cloud`. Self-hosted and enterprise deployments use their own API endpoint
|
|
39
|
+
On superglue Cloud, the API endpoint is `https://api.superglue.cloud`. Self-hosted and enterprise deployments use their own API endpoint from deployment configuration.
|
|
40
40
|
|
|
41
41
|
### OAuth Callback URL
|
|
42
42
|
|
|
43
43
|
OAuth flows require a callback URL: `{appEndpoint}/api/auth/callback`
|
|
44
44
|
|
|
45
|
-
On superglue Cloud, the app endpoint is `https://app.superglue.cloud`. Self-hosted and enterprise deployments use their own app URL. If a user doesn't know their endpoints, they can check the browser URL bar for the app endpoint
|
|
45
|
+
On superglue Cloud, the app endpoint is `https://app.superglue.cloud`. Self-hosted and enterprise deployments use their own app URL. If a user doesn't know their endpoints, they can check the browser URL bar for the app endpoint and deployment configuration for the API endpoint.
|
|
46
46
|
|
|
47
47
|
## Web App UI Layout
|
|
48
48
|
|
|
@@ -53,18 +53,25 @@ The persistent left sidebar contains these top-level items:
|
|
|
53
53
|
- **Agent** (`/`) — primary AI chat assistant for building and debugging tools and systems.
|
|
54
54
|
- **Tools** (`/tools`, detail at `/tools/{toolId}`) — saved tools; opens the tool playground for editing, testing, and running.
|
|
55
55
|
- **Systems** (`/systems`, detail at `/systems/{systemId}`) — connected external systems with credentials and documentation.
|
|
56
|
-
- **My Credentials** (`/credentials`) — credential management
|
|
56
|
+
- **My Credentials** (`/credentials`) — personal credential management for systems configured to use user-owned credentials. Admins and members open it inside the normal app shell from the sidebar. API keys are not managed here.
|
|
57
57
|
- **Runs** (`/runs`, detail at `/runs/{runId}`) — execution history for full, draft, and single-step tool runs. Runs is a top-level sidebar item, not a Control Panel sub-item.
|
|
58
58
|
- **Control Panel** (`/admin`) — expandable group for organization and account administration:
|
|
59
59
|
- **Overview** (`/admin`) — dashboard summary, including failed-run and schedule summaries.
|
|
60
60
|
- **Landscape** (`/landscape`) — graph overview of tools, systems, and their connections.
|
|
61
61
|
- **Schedules** (`/admin?view=schedules`) — scheduled and recurring tool runs.
|
|
62
62
|
- **Access Rules** (`/admin/access`) — role and access-rule configuration; visible to admins on paid tiers. Use the access-rules reference for RBAC behavior, base roles, and personal roles.
|
|
63
|
-
- **Organization** (`/
|
|
63
|
+
- **Organization** (`/organization`) — visible on paid tiers as a standalone page without tabs. It shows members, invitations, role assignment, and member-management actions; management actions are admin-gated.
|
|
64
64
|
- **MCP Servers** (`/admin?view=mcp-servers`) — manage and export named MCP server endpoints. Use the MCP documentation for behavior, permissions, and client setup.
|
|
65
|
-
- **Notifications** (`/admin?view=notifications`) — failure-alert channels; shown as a Control Panel sub-item only on the free tier. On paid tiers this lives in the Organization page's Notifications tab instead.
|
|
66
65
|
|
|
67
|
-
Below the navigation, the sidebar shows the organization
|
|
66
|
+
Below the navigation, the sidebar shows the current organization menu. Opening it shows the signed-in user email and menu items for **API Keys** (`/api-keys`), **Settings** (`/settings`, admin-only), **Switch organization**, and **Sign Out**. Depending on the plan, the sidebar also shows **Upgrade Plan** or **Subscription**; Subscription opens the external Stripe billing portal. There is no separate in-app Billing page.
|
|
67
|
+
|
|
68
|
+
**API Keys** (`/api-keys`) is a standalone page with a simple own-key editor for superglue API keys used by API, SDK, CLI, webhook, and non-OAuth MCP clients. Org users can create, copy, and delete their own keys.
|
|
69
|
+
|
|
70
|
+
**Settings** (`/settings`) is an admin-only standalone page with distinct sections:
|
|
71
|
+
|
|
72
|
+
- **Organization** — organization name and organization logo settings.
|
|
73
|
+
- **Run Settings** — run preferences: draft/single-step run visibility, run result storage, member run visibility, and delete-all-runs.
|
|
74
|
+
- **Notifications** — failure-alert channels for Slack and email. Slack setup opens `/settings/notifications/slack`; email setup opens `/settings/notifications/email`.
|
|
68
75
|
|
|
69
76
|
## Internals
|
|
70
77
|
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ description: "Build, test, deploy and integrate superglue tools via the sg CLI a
|
|
|
5
5
|
|
|
6
6
|
# superglue CLI (`sg`) — Agent Reference
|
|
7
7
|
|
|
8
|
-
This file is the entry point for operating superglue via the `sg` CLI. It covers setup, tool building, tool editing, system management, running tools, and deployment via SDK/REST/webhooks.
|
|
8
|
+
This file is the entry point for operating superglue via the `sg` CLI. It covers setup, tool building, tool editing, system management, running tools, schedules, and deployment via SDK/REST/webhooks.
|
|
9
9
|
|
|
10
10
|
For protocol-specific details (HTTP, databases, Redis, file servers, GraphQL), file handling, access rules, SDK integration, and general superglue information, run `sg skill <topic>` (linked throughout and listed at the bottom).
|
|
11
11
|
|
|
@@ -77,7 +77,7 @@ The CLI will not work until configured with an API key. The endpoint defaults to
|
|
|
77
77
|
sg init
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
Prompts for: API key (required — get one at https://app.superglue.cloud/
|
|
80
|
+
Prompts for: API key (required — get one at https://app.superglue.cloud/api-keys), API endpoint, web endpoint (for OAuth callbacks), output mode (`stdout` or `stdout+file`), and config location (project-local `.superglue/config.json` vs global `~/.superglue/config.json`). Verifies the connection before saving.
|
|
81
81
|
|
|
82
82
|
**Non-interactive (CI, agents):**
|
|
83
83
|
|
|
@@ -103,11 +103,11 @@ Verify with `sg system list` — should return a list (possibly empty) without e
|
|
|
103
103
|
|
|
104
104
|
Set during `sg init` or via `SUPERGLUE_CLI_PRESET` env var. Stored in `config.json` as `"preset"`.
|
|
105
105
|
|
|
106
|
-
| Preset | Description
|
|
107
|
-
| --------- |
|
|
108
|
-
| `runner` | Run saved tools by ID only. Read-only lookups. No building/editing
|
|
109
|
-
| `builder` | Runner + build/edit/save tools, call systems, manage MCP servers. No system CRUD |
|
|
110
|
-
| `admin` | Full access (default)
|
|
106
|
+
| Preset | Description |
|
|
107
|
+
| --------- | ---------------------------------------------------------------------------------------------- |
|
|
108
|
+
| `runner` | Run saved tools by ID only. Read-only lookups. No building/editing |
|
|
109
|
+
| `builder` | Runner + build/edit/save tools, call systems, manage MCP servers and schedules. No system CRUD |
|
|
110
|
+
| `admin` | Full access (default) |
|
|
111
111
|
|
|
112
112
|
Blocked commands print a clear error showing the current preset and how to change it.
|
|
113
113
|
|
|
@@ -185,6 +185,26 @@ Auth modes:
|
|
|
185
185
|
|
|
186
186
|
If `sg mcp ...` returns "MCP server management is not available", the target instance or plan does not support named MCP server management. The default all-tools MCP endpoint may still be usable at `<api-endpoint>/mcp`.
|
|
187
187
|
|
|
188
|
+
### Creating/Editing Tool Schedules
|
|
189
|
+
|
|
190
|
+
Schedules run saved tools on cron expressions. Use 5-field cron syntax and an IANA timezone.
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
sg schedule list
|
|
194
|
+
sg schedule list --tool <toolId>
|
|
195
|
+
sg schedule create --tool daily_report --cron "0 9 * * 1-5" --timezone UTC
|
|
196
|
+
sg schedule edit --tool daily_report --id <scheduleId> --disabled
|
|
197
|
+
sg schedule edit --tool daily_report --id <scheduleId> --cron "0 8 * * *" --timezone UTC
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Optional flags:
|
|
201
|
+
|
|
202
|
+
- `--payload '{"key":"value"}'` or `--payload-file payload.json` sets the scheduled run payload.
|
|
203
|
+
- `--webhook-url <url>` posts results to a webhook after success.
|
|
204
|
+
- `--tool-chain <toolId>` runs another saved tool after success.
|
|
205
|
+
- `--retries <n>` and `--timeout <ms>` set request options.
|
|
206
|
+
- `--clear-webhook` removes the webhook/tool-chain success action during edit.
|
|
207
|
+
|
|
188
208
|
---
|
|
189
209
|
|
|
190
210
|
## Reference
|
|
@@ -193,27 +213,29 @@ If `sg mcp ...` returns "MCP server management is not available", the target ins
|
|
|
193
213
|
|
|
194
214
|
Agents familiar with the web tool names can map them directly to CLI commands:
|
|
195
215
|
|
|
196
|
-
| Web agent tool | CLI command
|
|
197
|
-
| ------------------------------------------------ |
|
|
198
|
-
| `build_tool` | `sg tool build --config '{...}'`
|
|
199
|
-
| `edit_tool` | `sg tool edit --tool <id> --patches '[...]'`
|
|
200
|
-
| `run_tool` | `sg tool run --tool <id>` / `--draft <id>`
|
|
201
|
-
| `save_tool` | `sg tool save --draft <draftId>`
|
|
202
|
-
| `run_command` with `vfs` for `/org/tools/` | `sg tool find --id <id>` / `sg tool find <q>`
|
|
203
|
-
| `create_system` | `sg system create --name "..." --url "..."`
|
|
204
|
-
| `edit_system` | `sg system edit --id <id> ...`
|
|
205
|
-
| `run_command` with `vfs` for `/org/systems/` | `sg system find <query>` / `--id <id>`
|
|
206
|
-
| Credentials VFS / user-owned credentials | `sg system credentials get/set/clear`
|
|
207
|
-
| `call_system` | `sg system call --url "..." --system-id <id>`
|
|
208
|
-
| `run_command search` | `sg system search-docs --system-id <id> -k`
|
|
209
|
-
| `authenticate_oauth` | `sg system oauth --system-id <id> [--scopes]`
|
|
210
|
-
| `run_command` with `vfs` for `/org/runs/` | `sg run list` / `sg run get <runId>`
|
|
211
|
-
| `run_command` with `vfs` for `/org/mcp-servers/` | `sg mcp list` / `sg mcp find --id <id>`
|
|
212
|
-
| `create_mcp_server` | `sg mcp create --name <n> --tool <id>`
|
|
213
|
-
| `edit_mcp_server` | `sg mcp edit --id <id> ...`
|
|
214
|
-
|
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
| Web agent tool | CLI command | Notes |
|
|
217
|
+
| ------------------------------------------------ | ---------------------------------------------- | ------------------------------------------------------------------ |
|
|
218
|
+
| `build_tool` | `sg tool build --config '{...}'` | CLI is not AI-powered — you provide the full JSON config |
|
|
219
|
+
| `edit_tool` | `sg tool edit --tool <id> --patches '[...]'` | JSON Patch (RFC 6902). Use `--draft <id>` for drafts |
|
|
220
|
+
| `run_tool` | `sg tool run --tool <id>` / `--draft <id>` | Add `--include-step-results` to inspect per-step data |
|
|
221
|
+
| `save_tool` | `sg tool save --draft <draftId>` | Persists a draft to the database |
|
|
222
|
+
| `run_command` with `vfs` for `/org/tools/` | `sg tool find --id <id>` / `sg tool find <q>` | Full config with `--id`, compact search with a query string |
|
|
223
|
+
| `create_system` | `sg system create --name "..." --url "..."` | Use `--template <id>` when available |
|
|
224
|
+
| `edit_system` | `sg system edit --id <id> ...` | Supports `--env dev\|prod` |
|
|
225
|
+
| `run_command` with `vfs` for `/org/systems/` | `sg system find <query>` / `--id <id>` | Returns `storedCredentials` and system URL |
|
|
226
|
+
| Credentials VFS / user-owned credentials | `sg system credentials get/set/clear` | Manage current user's credentials for user-owned systems |
|
|
227
|
+
| `call_system` | `sg system call --url "..." --system-id <id>` | Authenticated ad-hoc calls for testing / schema introspection |
|
|
228
|
+
| `run_command search` | `sg system search-docs --system-id <id> -k` | Targeted keyword search over ingested system docs |
|
|
229
|
+
| `authenticate_oauth` | `sg system oauth --system-id <id> [--scopes]` | Opens browser flow. Supports `--grant-type client_credentials` too |
|
|
230
|
+
| `run_command` with `vfs` for `/org/runs/` | `sg run list` / `sg run get <runId>` | Filter `list` by `--tool`, `--status`, `--source`, `--limit` |
|
|
231
|
+
| `run_command` with `vfs` for `/org/mcp-servers/` | `sg mcp list` / `sg mcp find --id <id>` | Returns endpoint, auth mode, selected tool IDs, and client config |
|
|
232
|
+
| `create_mcp_server` | `sg mcp create --name <n> --tool <id>` | Creates a named MCP endpoint for selected saved tools |
|
|
233
|
+
| `edit_mcp_server` | `sg mcp edit --id <id> ...` | Edits name, auth mode, description, or selected tool IDs |
|
|
234
|
+
| `create_schedule` | `sg schedule create --tool <id> --cron <expr>` | Creates a cron schedule for a saved tool |
|
|
235
|
+
| `edit_schedule` | `sg schedule edit --tool <id> --id <schedule>` | Updates, enables, or disables an existing schedule |
|
|
236
|
+
| (no direct equivalent) | `sg init`, `sg update`, `sg skill` | CLI-specific setup, updater, and this reference system |
|
|
237
|
+
|
|
238
|
+
Web-agent-only concepts with no CLI equivalent: `run_command`'s virtual filesystem (CLI uses concrete `sg` subcommands), `authenticate_oauth`'s dedicated MCP `authenticate` tool (CLI uses `sg system oauth`).
|
|
217
239
|
|
|
218
240
|
### Command Reference
|
|
219
241
|
|
|
@@ -19,15 +19,15 @@ All fields support `<<variable>>` and `<<(sourceData) => ...>>` expressions.
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ------------- | -------- |
|
|
24
|
-
| `url` | yes |
|
|
25
|
-
| `method` | yes | `GET`, `POST`, `PUT`, `DELETE`, `PATCH`
|
|
26
|
-
| `headers` | no | Auth headers, content type, custom headers
|
|
27
|
-
| `queryParams` | no | Key-value pairs appended to URL
|
|
28
|
-
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS
|
|
29
|
-
| `pagination` | no | See Pagination section
|
|
30
|
-
| `systemId` | no | Links system credentials and URL. Omit for public APIs
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ------------- | -------- | ------------------------------------------------------------------------------------------------------------ |
|
|
24
|
+
| `url` | yes | Use `<<systemId_url>>` for the base; join with exactly one `/` (the system's `url` may or may not end in `/` |
|
|
25
|
+
| `method` | yes | `GET`, `POST`, `PUT`, `DELETE`, `PATCH` |
|
|
26
|
+
| `headers` | no | Auth headers, content type, custom headers |
|
|
27
|
+
| `queryParams` | no | Key-value pairs appended to URL |
|
|
28
|
+
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS |
|
|
29
|
+
| `pagination` | no | See Pagination section |
|
|
30
|
+
| `systemId` | no | Links system credentials and URL. Omit for public APIs |
|
|
31
31
|
|
|
32
32
|
For APIs that require the same query key multiple times, use an array value:
|
|
33
33
|
`{ metadataHeaders: ["From", "Subject"] }` -> `?metadataHeaders=From&metadataHeaders=Subject`.
|
|
@@ -237,7 +237,8 @@ When an HTTP step downloads a file (PDF, CSV, binary response), set `outputFile:
|
|
|
237
237
|
|
|
238
238
|
## Common Pitfalls
|
|
239
239
|
|
|
240
|
-
- Hardcoding base URLs
|
|
240
|
+
- Hardcoding base URLs instead of using `<<systemId_url>>`.
|
|
241
|
+
- Wrong slash at the `<<systemId_url>>` join. The placeholder resolves to the system's `url` exactly as stored, which may or may not end in `/`. Read the `url` shown by `sg system find` and write the path so there is exactly one `/` between base and path: against a base with no trailing slash, `<<systemId_url>>crm/v3/...` becomes a broken host (`https://api.hubapi.comcrm/...`) that silently hits the wrong server; against a base ending in `/`, a leading `/` produces `//`.
|
|
241
242
|
- Forgetting auth headers entirely — nothing is injected automatically, including for OAuth systems (only token refresh is automatic)
|
|
242
243
|
- Forgetting `outputFile: true` on steps that download files the user wants
|
|
243
244
|
- Putting pagination variables in the config but not setting a `pagination` block, or vice versa
|
|
@@ -22,7 +22,7 @@ API, SDK, CLI, and webhook usage require an **API key**. MCP clients can use OAu
|
|
|
22
22
|
|
|
23
23
|
MCP authentication is separate from API/SDK/CLI setup. For MCP OAuth, dynamic client registration, Langdock setup, and named server permissions, use the MCP documentation.
|
|
24
24
|
|
|
25
|
-
Users can generate and manage API keys
|
|
25
|
+
Users can generate and manage API keys on the standalone **API Keys** page (`/api-keys`).
|
|
26
26
|
|
|
27
27
|
## Interfaces
|
|
28
28
|
|
|
@@ -36,13 +36,13 @@ Users can generate and manage API keys in **My Credentials -> superglue API keys
|
|
|
36
36
|
|
|
37
37
|
Tools can be triggered via webhook: `POST {apiEndpoint}/v1/hooks/{toolId}?token={apiKey}`
|
|
38
38
|
|
|
39
|
-
On superglue Cloud, the API endpoint is `https://api.superglue.cloud`. Self-hosted and enterprise deployments use their own API endpoint
|
|
39
|
+
On superglue Cloud, the API endpoint is `https://api.superglue.cloud`. Self-hosted and enterprise deployments use their own API endpoint from deployment configuration.
|
|
40
40
|
|
|
41
41
|
### OAuth Callback URL
|
|
42
42
|
|
|
43
43
|
OAuth flows require a callback URL: `{appEndpoint}/api/auth/callback`
|
|
44
44
|
|
|
45
|
-
On superglue Cloud, the app endpoint is `https://app.superglue.cloud`. Self-hosted and enterprise deployments use their own app URL. If a user doesn't know their endpoints, they can check the browser URL bar for the app endpoint
|
|
45
|
+
On superglue Cloud, the app endpoint is `https://app.superglue.cloud`. Self-hosted and enterprise deployments use their own app URL. If a user doesn't know their endpoints, they can check the browser URL bar for the app endpoint and deployment configuration for the API endpoint.
|
|
46
46
|
|
|
47
47
|
## Web App UI Layout
|
|
48
48
|
|
|
@@ -53,18 +53,25 @@ The persistent left sidebar contains these top-level items:
|
|
|
53
53
|
- **Agent** (`/`) — primary AI chat assistant for building and debugging tools and systems.
|
|
54
54
|
- **Tools** (`/tools`, detail at `/tools/{toolId}`) — saved tools; opens the tool playground for editing, testing, and running.
|
|
55
55
|
- **Systems** (`/systems`, detail at `/systems/{systemId}`) — connected external systems with credentials and documentation.
|
|
56
|
-
- **My Credentials** (`/credentials`) — credential management
|
|
56
|
+
- **My Credentials** (`/credentials`) — personal credential management for systems configured to use user-owned credentials. Admins and members open it inside the normal app shell from the sidebar. API keys are not managed here.
|
|
57
57
|
- **Runs** (`/runs`, detail at `/runs/{runId}`) — execution history for full, draft, and single-step tool runs. Runs is a top-level sidebar item, not a Control Panel sub-item.
|
|
58
58
|
- **Control Panel** (`/admin`) — expandable group for organization and account administration:
|
|
59
59
|
- **Overview** (`/admin`) — dashboard summary, including failed-run and schedule summaries.
|
|
60
60
|
- **Landscape** (`/landscape`) — graph overview of tools, systems, and their connections.
|
|
61
61
|
- **Schedules** (`/admin?view=schedules`) — scheduled and recurring tool runs.
|
|
62
62
|
- **Access Rules** (`/admin/access`) — role and access-rule configuration; visible to admins on paid tiers. Use the access-rules reference for RBAC behavior, base roles, and personal roles.
|
|
63
|
-
- **Organization** (`/
|
|
63
|
+
- **Organization** (`/organization`) — visible on paid tiers as a standalone page without tabs. It shows members, invitations, role assignment, and member-management actions; management actions are admin-gated.
|
|
64
64
|
- **MCP Servers** (`/admin?view=mcp-servers`) — manage and export named MCP server endpoints. Use the MCP documentation for behavior, permissions, and client setup.
|
|
65
|
-
- **Notifications** (`/admin?view=notifications`) — failure-alert channels; shown as a Control Panel sub-item only on the free tier. On paid tiers this lives in the Organization page's Notifications tab instead.
|
|
66
65
|
|
|
67
|
-
Below the navigation, the sidebar shows the organization
|
|
66
|
+
Below the navigation, the sidebar shows the current organization menu. Opening it shows the signed-in user email and menu items for **API Keys** (`/api-keys`), **Settings** (`/settings`, admin-only), **Switch organization**, and **Sign Out**. Depending on the plan, the sidebar also shows **Upgrade Plan** or **Subscription**; Subscription opens the external Stripe billing portal. There is no separate in-app Billing page.
|
|
67
|
+
|
|
68
|
+
**API Keys** (`/api-keys`) is a standalone page with a simple own-key editor for superglue API keys used by API, SDK, CLI, webhook, and non-OAuth MCP clients. Org users can create, copy, and delete their own keys.
|
|
69
|
+
|
|
70
|
+
**Settings** (`/settings`) is an admin-only standalone page with distinct sections:
|
|
71
|
+
|
|
72
|
+
- **Organization** — organization name and organization logo settings.
|
|
73
|
+
- **Run Settings** — run preferences: draft/single-step run visibility, run result storage, member run visibility, and delete-all-runs.
|
|
74
|
+
- **Notifications** — failure-alert channels for Slack and email. Slack setup opens `/settings/notifications/slack`; email setup opens `/settings/notifications/email`.
|
|
68
75
|
|
|
69
76
|
## Internals
|
|
70
77
|
|