@oxagen/cli 0.4.0 → 0.5.0
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/README.md +2 -2
- package/dist/commands/agent.mcp.consent.list.d.ts +3 -0
- package/dist/commands/agent.mcp.consent.list.d.ts.map +1 -0
- package/dist/commands/agent.mcp.consent.list.js +30 -0
- package/dist/commands/agent.mcp.consent.list.js.map +1 -0
- package/dist/commands/agent.mcp.consent.resolve.d.ts +3 -0
- package/dist/commands/agent.mcp.consent.resolve.d.ts.map +1 -0
- package/dist/commands/agent.mcp.consent.resolve.js +34 -0
- package/dist/commands/agent.mcp.consent.resolve.js.map +1 -0
- package/dist/commands/agent.mcp.delete.d.ts +3 -0
- package/dist/commands/agent.mcp.delete.d.ts.map +1 -0
- package/dist/commands/agent.mcp.delete.js +27 -0
- package/dist/commands/agent.mcp.delete.js.map +1 -0
- package/dist/commands/agent.mcp.set_enabled.d.ts +3 -0
- package/dist/commands/agent.mcp.set_enabled.d.ts.map +1 -0
- package/dist/commands/agent.mcp.set_enabled.js +33 -0
- package/dist/commands/agent.mcp.set_enabled.js.map +1 -0
- package/dist/commands/audit.log.query.d.ts +3 -0
- package/dist/commands/audit.log.query.d.ts.map +1 -0
- package/dist/commands/audit.log.query.js +42 -0
- package/dist/commands/audit.log.query.js.map +1 -0
- package/dist/commands/automation.create.d.ts.map +1 -1
- package/dist/commands/automation.create.js +43 -4
- package/dist/commands/automation.create.js.map +1 -1
- package/dist/commands/automation.disable.d.ts +3 -0
- package/dist/commands/automation.disable.d.ts.map +1 -0
- package/dist/commands/automation.disable.js +24 -0
- package/dist/commands/automation.disable.js.map +1 -0
- package/dist/commands/automation.enable.d.ts +3 -0
- package/dist/commands/automation.enable.d.ts.map +1 -0
- package/dist/commands/automation.enable.js +24 -0
- package/dist/commands/automation.enable.js.map +1 -0
- package/dist/commands/automation.update.d.ts +3 -0
- package/dist/commands/automation.update.d.ts.map +1 -0
- package/dist/commands/automation.update.js +42 -0
- package/dist/commands/automation.update.js.map +1 -0
- package/dist/commands/conversation.files.list.d.ts +3 -0
- package/dist/commands/conversation.files.list.d.ts.map +1 -0
- package/dist/commands/conversation.files.list.js +39 -0
- package/dist/commands/conversation.files.list.js.map +1 -0
- package/dist/commands/markdown.generate.d.ts +3 -0
- package/dist/commands/markdown.generate.d.ts.map +1 -0
- package/dist/commands/markdown.generate.js +37 -0
- package/dist/commands/markdown.generate.js.map +1 -0
- package/dist/commands/mermaid.generate.d.ts +3 -0
- package/dist/commands/mermaid.generate.d.ts.map +1 -0
- package/dist/commands/mermaid.generate.js +33 -0
- package/dist/commands/mermaid.generate.js.map +1 -0
- package/dist/commands/ontology.neighbors.d.ts +3 -0
- package/dist/commands/ontology.neighbors.d.ts.map +1 -0
- package/dist/commands/ontology.neighbors.js +34 -0
- package/dist/commands/ontology.neighbors.js.map +1 -0
- package/dist/commands/ontology.query.d.ts +3 -0
- package/dist/commands/ontology.query.d.ts.map +1 -0
- package/dist/commands/ontology.query.js +36 -0
- package/dist/commands/ontology.query.js.map +1 -0
- package/dist/commands/privacy.erase.d.ts.map +1 -1
- package/dist/commands/privacy.erase.js +2 -1
- package/dist/commands/privacy.erase.js.map +1 -1
- package/dist/commands/privacy.erase.test.d.ts +2 -0
- package/dist/commands/privacy.erase.test.d.ts.map +1 -0
- package/dist/commands/privacy.erase.test.js +125 -0
- package/dist/commands/privacy.erase.test.js.map +1 -0
- package/dist/commands/skill.edit.d.ts +3 -0
- package/dist/commands/skill.edit.d.ts.map +1 -0
- package/dist/commands/skill.edit.js +28 -0
- package/dist/commands/skill.edit.js.map +1 -0
- package/dist/commands/skill.export.d.ts +3 -0
- package/dist/commands/skill.export.d.ts.map +1 -0
- package/dist/commands/skill.export.js +25 -0
- package/dist/commands/skill.export.js.map +1 -0
- package/dist/commands/skill.metrics.read.d.ts +3 -0
- package/dist/commands/skill.metrics.read.d.ts.map +1 -0
- package/dist/commands/skill.metrics.read.js +56 -0
- package/dist/commands/skill.metrics.read.js.map +1 -0
- package/dist/commands/skill.version.activate.d.ts +3 -0
- package/dist/commands/skill.version.activate.d.ts.map +1 -0
- package/dist/commands/skill.version.activate.js +24 -0
- package/dist/commands/skill.version.activate.js.map +1 -0
- package/dist/commands/skill.version.get.d.ts +3 -0
- package/dist/commands/skill.version.get.d.ts.map +1 -0
- package/dist/commands/skill.version.get.js +43 -0
- package/dist/commands/skill.version.get.js.map +1 -0
- package/dist/commands/skill.version.list.d.ts +3 -0
- package/dist/commands/skill.version.list.d.ts.map +1 -0
- package/dist/commands/skill.version.list.js +38 -0
- package/dist/commands/skill.version.list.js.map +1 -0
- package/dist/commands/skill.version.upload.d.ts +3 -0
- package/dist/commands/skill.version.upload.d.ts.map +1 -0
- package/dist/commands/skill.version.upload.js +28 -0
- package/dist/commands/skill.version.upload.js.map +1 -0
- package/dist/commands/skill.workspace.install.d.ts +3 -0
- package/dist/commands/skill.workspace.install.d.ts.map +1 -0
- package/dist/commands/skill.workspace.install.js +52 -0
- package/dist/commands/skill.workspace.install.js.map +1 -0
- package/dist/commands.test.js +117 -73
- package/dist/commands.test.js.map +1 -1
- package/dist/components/DevStatus.d.ts.map +1 -1
- package/dist/components/DevStatus.js +1 -1
- package/dist/components/DevStatus.js.map +1 -1
- package/dist/index.js +53 -7
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +9 -2
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/config.test.js +21 -3
- package/dist/lib/config.test.js.map +1 -1
- package/package.json +1 -1
- package/README.html +0 -379
package/README.md
CHANGED
|
@@ -102,7 +102,7 @@ oxagen api-key create # copy the key that's printed
|
|
|
102
102
|
|
|
103
103
|
claude mcp add oxagen \
|
|
104
104
|
--transport http \
|
|
105
|
-
--url https://
|
|
105
|
+
--url https://mcp.oxagen.sh/mcp \
|
|
106
106
|
--header "Authorization: Bearer $OXAGEN_API_KEY"
|
|
107
107
|
```
|
|
108
108
|
|
|
@@ -354,7 +354,7 @@ Releases are managed monorepo-wide via `pnpm release:patch|minor|major`, which b
|
|
|
354
354
|
|
|
355
355
|
## Support
|
|
356
356
|
|
|
357
|
-
- Docs: https://
|
|
357
|
+
- Docs: https://docs.oxagen.sh
|
|
358
358
|
- Issues: https://github.com/oxagen/oxagen-monorepo/issues
|
|
359
359
|
- Email: support@oxagen.ai
|
|
360
360
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.consent.list.d.ts","sourceRoot":"","sources":["../../src/commands/agent.mcp.consent.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,eAAO,MAAM,0BAA0B,SAwBnC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
import { getOrgId, getWorkspaceId } from "../lib/config.js";
|
|
4
|
+
export const agentMcpConsentListCommand = new Command("consent-list")
|
|
5
|
+
.description("List external MCP tool consent grants in the active workspace")
|
|
6
|
+
.option("--mine", "Return only the calling user's grants")
|
|
7
|
+
.option("-o, --org <id>", "Organization ID")
|
|
8
|
+
.option("-w, --workspace <id>", "Workspace ID")
|
|
9
|
+
.action(async (options) => {
|
|
10
|
+
try {
|
|
11
|
+
const data = await apiRequest("/agent/mcp-consents", {
|
|
12
|
+
method: "POST",
|
|
13
|
+
body: JSON.stringify({
|
|
14
|
+
mineOnly: options.mine,
|
|
15
|
+
org_id: options.org ?? getOrgId(),
|
|
16
|
+
workspace_id: options.workspace ?? getWorkspaceId(),
|
|
17
|
+
}),
|
|
18
|
+
});
|
|
19
|
+
console.log(`MCP consent grants (${data.consents.length}):`);
|
|
20
|
+
data.consents.forEach((consent) => {
|
|
21
|
+
console.log(` ${consent.toolName} on ${consent.mcpServerId}: ${consent.status} (${consent.publicId})`);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
catch (err) {
|
|
25
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
26
|
+
console.error(`Error: ${msg}`);
|
|
27
|
+
process.exit(1);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=agent.mcp.consent.list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.consent.list.js","sourceRoot":"","sources":["../../src/commands/agent.mcp.consent.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAiB5D,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC;KAClE,WAAW,CAAC,+DAA+D,CAAC;KAC5E,MAAM,CAAC,QAAQ,EAAE,uCAAuC,CAAC;KACzD,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,cAAc,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,OAA6D,EAAE,EAAE;IAC9E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAA8B,qBAAqB,EAAE;YAChF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,QAAQ,EAAE,OAAO,CAAC,IAAI;gBACtB,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;gBACjC,YAAY,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc,EAAE;aACpD,CAAC;SACH,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,QAAQ,OAAO,OAAO,CAAC,WAAW,KAAK,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1G,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.consent.resolve.d.ts","sourceRoot":"","sources":["../../src/commands/agent.mcp.consent.resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,6BAA6B,SA4BtC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
import { getOrgId, getWorkspaceId } from "../lib/config.js";
|
|
4
|
+
export const agentMcpConsentResolveCommand = new Command("consent-resolve")
|
|
5
|
+
.description("Grant or deny first-use consent for an external MCP tool")
|
|
6
|
+
.requiredOption("-a, --approval <id>", "Pending consent request (approval) ID")
|
|
7
|
+
.requiredOption("-d, --decision <decision>", "Decision (granted|denied)")
|
|
8
|
+
.option("--grant-all-tools", "Pre-grant every tool on the server (only with granted)")
|
|
9
|
+
.option("-o, --org <id>", "Organization ID")
|
|
10
|
+
.option("-w, --workspace <id>", "Workspace ID")
|
|
11
|
+
.action(async (options) => {
|
|
12
|
+
try {
|
|
13
|
+
if (!["granted", "denied"].includes(options.decision)) {
|
|
14
|
+
throw new Error("--decision must be 'granted' or 'denied'");
|
|
15
|
+
}
|
|
16
|
+
const data = await apiRequest("/agent/mcp-consents/resolve", {
|
|
17
|
+
method: "POST",
|
|
18
|
+
body: JSON.stringify({
|
|
19
|
+
approvalId: options.approval,
|
|
20
|
+
decision: options.decision,
|
|
21
|
+
grantAllTools: options.grantAllTools,
|
|
22
|
+
org_id: options.org ?? getOrgId(),
|
|
23
|
+
workspace_id: options.workspace ?? getWorkspaceId(),
|
|
24
|
+
}),
|
|
25
|
+
});
|
|
26
|
+
console.log(`✓ Consent ${data.approvalId} resolved: ${data.resolution}`);
|
|
27
|
+
}
|
|
28
|
+
catch (err) {
|
|
29
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
30
|
+
console.error(`Error: ${msg}`);
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=agent.mcp.consent.resolve.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.consent.resolve.js","sourceRoot":"","sources":["../../src/commands/agent.mcp.consent.resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAO5D,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC;KACxE,WAAW,CAAC,0DAA0D,CAAC;KACvE,cAAc,CAAC,qBAAqB,EAAE,uCAAuC,CAAC;KAC9E,cAAc,CAAC,2BAA2B,EAAE,2BAA2B,CAAC;KACxE,MAAM,CAAC,mBAAmB,EAAE,wDAAwD,CAAC;KACrF,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,cAAc,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,OAA0G,EAAE,EAAE;IAC3H,IAAI,CAAC;QACH,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAiC,6BAA6B,EAAE;YAC3F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,UAAU,EAAE,OAAO,CAAC,QAAQ;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;gBACjC,YAAY,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc,EAAE;aACpD,CAAC;SACH,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,UAAU,cAAc,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.delete.d.ts","sourceRoot":"","sources":["../../src/commands/agent.mcp.delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,qBAAqB,SAqB9B,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
import { getOrgId, getWorkspaceId } from "../lib/config.js";
|
|
4
|
+
export const agentMcpDeleteCommand = new Command("delete")
|
|
5
|
+
.description("Soft-delete a registered external MCP server")
|
|
6
|
+
.requiredOption("-s, --server <id>", "MCP server ID")
|
|
7
|
+
.option("-o, --org <id>", "Organization ID")
|
|
8
|
+
.option("-w, --workspace <id>", "Workspace ID")
|
|
9
|
+
.action(async (options) => {
|
|
10
|
+
try {
|
|
11
|
+
const data = await apiRequest("/agent/mcp-servers/delete", {
|
|
12
|
+
method: "POST",
|
|
13
|
+
body: JSON.stringify({
|
|
14
|
+
mcpServerId: options.server,
|
|
15
|
+
org_id: options.org ?? getOrgId(),
|
|
16
|
+
workspace_id: options.workspace ?? getWorkspaceId(),
|
|
17
|
+
}),
|
|
18
|
+
});
|
|
19
|
+
console.log(`✓ MCP server ${data.mcpServerId} ${data.deleted ? "deleted" : "not deleted"}`);
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
23
|
+
console.error(`Error: ${msg}`);
|
|
24
|
+
process.exit(1);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=agent.mcp.delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.delete.js","sourceRoot":"","sources":["../../src/commands/agent.mcp.delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAO5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KACvD,WAAW,CAAC,8CAA8C,CAAC;KAC3D,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC;KACpD,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,cAAc,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,OAA6D,EAAE,EAAE;IAC9E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAyB,2BAA2B,EAAE;YACjF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,WAAW,EAAE,OAAO,CAAC,MAAM;gBAC3B,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;gBACjC,YAAY,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc,EAAE;aACpD,CAAC;SACH,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;IAC9F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.set_enabled.d.ts","sourceRoot":"","sources":["../../src/commands/agent.mcp.set_enabled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,eAAO,MAAM,yBAAyB,SA6BlC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
import { getOrgId, getWorkspaceId } from "../lib/config.js";
|
|
4
|
+
export const agentMcpSetEnabledCommand = new Command("set-enabled")
|
|
5
|
+
.description("Enable or disable a registered external MCP server")
|
|
6
|
+
.requiredOption("-s, --server <id>", "MCP server ID")
|
|
7
|
+
.requiredOption("--enabled <bool>", "Enable (true) or disable (false) the server")
|
|
8
|
+
.option("-o, --org <id>", "Organization ID")
|
|
9
|
+
.option("-w, --workspace <id>", "Workspace ID")
|
|
10
|
+
.action(async (options) => {
|
|
11
|
+
try {
|
|
12
|
+
if (!["true", "false"].includes(options.enabled)) {
|
|
13
|
+
throw new Error("--enabled must be 'true' or 'false'");
|
|
14
|
+
}
|
|
15
|
+
const enabled = options.enabled === "true";
|
|
16
|
+
const data = await apiRequest("/agent/mcp-servers/set-enabled", {
|
|
17
|
+
method: "POST",
|
|
18
|
+
body: JSON.stringify({
|
|
19
|
+
mcpServerId: options.server,
|
|
20
|
+
enabled,
|
|
21
|
+
org_id: options.org ?? getOrgId(),
|
|
22
|
+
workspace_id: options.workspace ?? getWorkspaceId(),
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
25
|
+
console.log(`✓ MCP server ${data.mcpServerId} ${data.enabled ? "enabled" : "disabled"} (${data.snapshotCount} snapshot${data.snapshotCount === 1 ? "" : "s"})`);
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
29
|
+
console.error(`Error: ${msg}`);
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=agent.mcp.set_enabled.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.mcp.set_enabled.js","sourceRoot":"","sources":["../../src/commands/agent.mcp.set_enabled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAQ5D,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;KAChE,WAAW,CAAC,oDAAoD,CAAC;KACjE,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC;KACpD,cAAc,CAAC,kBAAkB,EAAE,6CAA6C,CAAC;KACjF,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,cAAc,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,OAA8E,EAAE,EAAE;IAC/F,IAAI,CAAC;QACH,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,UAAU,CAA6B,gCAAgC,EAAE;YAC1F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,WAAW,EAAE,OAAO,CAAC,MAAM;gBAC3B,OAAO;gBACP,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;gBACjC,YAAY,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc,EAAE;aACpD,CAAC;SACH,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CACT,gBAAgB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,aAAa,YAAY,IAAI,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CACnJ,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.log.query.d.ts","sourceRoot":"","sources":["../../src/commands/audit.log.query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,oBAAoB,SAuC7B,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest } from "../lib/api-client.js";
|
|
3
|
+
export const auditLogQueryCommand = new Command("query")
|
|
4
|
+
.description("Query the org's security and automation audit events with filters — " +
|
|
5
|
+
"actor, capability, outcome, event type, time range — newest first.")
|
|
6
|
+
.option("-s, --source <source>", "Which spine: all | security | playbook", "all")
|
|
7
|
+
.option("-e, --event-type <type>", "Exact event-type match")
|
|
8
|
+
.option("--actor <userId>", "Filter security events by acting user id")
|
|
9
|
+
.option("-c, --capability <name>", "Filter security events by capability name")
|
|
10
|
+
.option("-o, --outcome <outcome>", "Filter security events: allow | deny | error | success")
|
|
11
|
+
.option("--run <playbookRunId>", "Filter playbook events to a single run")
|
|
12
|
+
.option("--workspace <workspaceId>", "Restrict to one workspace")
|
|
13
|
+
.option("--from <iso>", "Inclusive ISO-8601 lower bound on occurredAt")
|
|
14
|
+
.option("--to <iso>", "Exclusive ISO-8601 upper bound on occurredAt")
|
|
15
|
+
.option("--limit <n>", "Max events (1–200)", "50")
|
|
16
|
+
.option("--offset <n>", "Pagination offset", "0")
|
|
17
|
+
.action(async (options) => {
|
|
18
|
+
try {
|
|
19
|
+
const result = await apiRequest("/audit/log/query", {
|
|
20
|
+
method: "POST",
|
|
21
|
+
body: JSON.stringify({
|
|
22
|
+
source: options.source,
|
|
23
|
+
eventType: options.eventType,
|
|
24
|
+
actorUserId: options.actor,
|
|
25
|
+
capability: options.capability,
|
|
26
|
+
outcome: options.outcome,
|
|
27
|
+
playbookRunId: options.run,
|
|
28
|
+
workspaceId: options.workspace,
|
|
29
|
+
from: options.from,
|
|
30
|
+
to: options.to,
|
|
31
|
+
limit: Number(options.limit),
|
|
32
|
+
offset: Number(options.offset),
|
|
33
|
+
}),
|
|
34
|
+
});
|
|
35
|
+
console.log(JSON.stringify(result, null, 2));
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
console.error("Failed to query audit log:", error);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=audit.log.query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.log.query.js","sourceRoot":"","sources":["../../src/commands/audit.log.query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;KACrD,WAAW,CACV,sEAAsE;IACpE,oEAAoE,CACvE;KACA,MAAM,CAAC,uBAAuB,EAAE,wCAAwC,EAAE,KAAK,CAAC;KAChF,MAAM,CAAC,yBAAyB,EAAE,wBAAwB,CAAC;KAC3D,MAAM,CAAC,kBAAkB,EAAE,0CAA0C,CAAC;KACtE,MAAM,CAAC,yBAAyB,EAAE,2CAA2C,CAAC;KAC9E,MAAM,CAAC,yBAAyB,EAAE,wDAAwD,CAAC;KAC3F,MAAM,CAAC,uBAAuB,EAAE,wCAAwC,CAAC;KACzE,MAAM,CAAC,2BAA2B,EAAE,2BAA2B,CAAC;KAChE,MAAM,CAAC,cAAc,EAAE,8CAA8C,CAAC;KACtE,MAAM,CAAC,YAAY,EAAE,8CAA8C,CAAC;KACpE,MAAM,CAAC,aAAa,EAAE,oBAAoB,EAAE,IAAI,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,mBAAmB,EAAE,GAAG,CAAC;KAChD,MAAM,CAAC,KAAK,EAAE,OAAgC,EAAE,EAAE;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE;YAClD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW,EAAE,OAAO,CAAC,KAAK;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,aAAa,EAAE,OAAO,CAAC,GAAG;gBAC1B,WAAW,EAAE,OAAO,CAAC,SAAS;gBAC9B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5B,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aAC/B,CAAC;SACH,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automation.create.d.ts","sourceRoot":"","sources":["../../src/commands/automation.create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"automation.create.d.ts","sourceRoot":"","sources":["../../src/commands/automation.create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,eAAO,MAAM,uBAAuB,SA2FjC,CAAC"}
|
|
@@ -3,23 +3,62 @@ import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
|
3
3
|
export const automationCreateCommand = new Command("create")
|
|
4
4
|
.description("Create a new automation")
|
|
5
5
|
.requiredOption("-n, --name <name>", "Automation name")
|
|
6
|
-
.option("-
|
|
7
|
-
.option("-
|
|
6
|
+
.option("-d, --description <text>", "What this automation does and when it fires")
|
|
7
|
+
.option("--trigger-type <type>", "Trigger type: event | schedule | api (default: api)", "api")
|
|
8
|
+
.option("--entity-type <type>", "Graph entity type to watch (required for event triggers)")
|
|
9
|
+
.option("--event-type <type>", "Graph event type: node.created | node.updated | node.deleted (required for event triggers)")
|
|
10
|
+
.option("--conditions <json>", "JSON array of propertyConditions for event triggers")
|
|
11
|
+
.option("--cron <expression>", "POSIX cron expression (required for schedule triggers, e.g. '0 9 * * 1')")
|
|
12
|
+
.option("--timezone <tz>", "IANA timezone for schedule triggers (default: UTC)")
|
|
13
|
+
.option("--steps <json>", "JSON array of step objects to scaffold in the playbook")
|
|
14
|
+
.option("--enabled", "Start the trigger enabled (human-origin only; AI calls are forced off)")
|
|
8
15
|
.action(async (options) => {
|
|
9
16
|
try {
|
|
17
|
+
const triggerConfig = {};
|
|
18
|
+
if (options.entityType)
|
|
19
|
+
triggerConfig.entityType = options.entityType;
|
|
20
|
+
if (options.eventType)
|
|
21
|
+
triggerConfig.eventType = options.eventType;
|
|
22
|
+
if (options.conditions) {
|
|
23
|
+
try {
|
|
24
|
+
triggerConfig.propertyConditions = JSON.parse(options.conditions);
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
throw new Error("Invalid --conditions JSON");
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (options.cron)
|
|
31
|
+
triggerConfig.cronExpression = options.cron;
|
|
32
|
+
if (options.timezone)
|
|
33
|
+
triggerConfig.timezone = options.timezone;
|
|
34
|
+
let steps = [];
|
|
35
|
+
if (options.steps) {
|
|
36
|
+
try {
|
|
37
|
+
steps = JSON.parse(options.steps);
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
throw new Error("Invalid --steps JSON");
|
|
41
|
+
}
|
|
42
|
+
}
|
|
10
43
|
console.log(`Creating automation "${options.name}"...`);
|
|
11
44
|
const data = await apiRequest("/automation/create", {
|
|
12
45
|
method: "POST",
|
|
13
46
|
body: JSON.stringify({
|
|
14
47
|
name: options.name,
|
|
15
|
-
|
|
16
|
-
|
|
48
|
+
description: options.description,
|
|
49
|
+
triggerType: options.triggerType,
|
|
50
|
+
triggerConfig,
|
|
51
|
+
steps,
|
|
52
|
+
enabled: options.enabled ?? false,
|
|
17
53
|
}),
|
|
18
54
|
});
|
|
19
55
|
console.log(`✓ Automation created`);
|
|
20
56
|
console.log(` ID: ${data.automation_id}`);
|
|
57
|
+
console.log(` Playbook ID: ${data.playbook_id}`);
|
|
21
58
|
console.log(` Name: ${data.name}`);
|
|
22
59
|
console.log(` Status: ${data.status}`);
|
|
60
|
+
console.log(` Trigger type: ${data.triggerType}`);
|
|
61
|
+
console.log(` Enabled: ${data.enabled}`);
|
|
23
62
|
}
|
|
24
63
|
catch (err) {
|
|
25
64
|
const msg = err instanceof ApiError ? err.message : String(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automation.create.js","sourceRoot":"","sources":["../../src/commands/automation.create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"automation.create.js","sourceRoot":"","sources":["../../src/commands/automation.create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.disable.d.ts","sourceRoot":"","sources":["../../src/commands/automation.disable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,wBAAwB,SAmBjC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
export const automationDisableCommand = new Command("disable")
|
|
4
|
+
.description("Disable an automation trigger so it stops firing")
|
|
5
|
+
.argument("<id>", "Automation trigger public ID")
|
|
6
|
+
.action(async (id) => {
|
|
7
|
+
try {
|
|
8
|
+
console.log(`Disabling automation ${id}...`);
|
|
9
|
+
const data = await apiRequest("/automation/disable", {
|
|
10
|
+
method: "POST",
|
|
11
|
+
body: JSON.stringify({ automation_id: id }),
|
|
12
|
+
});
|
|
13
|
+
console.log(`✓ Automation disabled`);
|
|
14
|
+
console.log(` ID: ${data.automation_id}`);
|
|
15
|
+
console.log(` Enabled: ${data.enabled}`);
|
|
16
|
+
console.log(` Status: ${data.status}`);
|
|
17
|
+
}
|
|
18
|
+
catch (err) {
|
|
19
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
20
|
+
console.error(`Error: ${msg}`);
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=automation.disable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.disable.js","sourceRoot":"","sources":["../../src/commands/automation.disable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQ5D,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KAC3D,WAAW,CAAC,kDAAkD,CAAC;KAC/D,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC;KAChD,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,EAAE;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,UAAU,CAA4B,qBAAqB,EAAE;YAC9E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;SAC5C,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.enable.d.ts","sourceRoot":"","sources":["../../src/commands/automation.enable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,uBAAuB,SAmBhC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
export const automationEnableCommand = new Command("enable")
|
|
4
|
+
.description("Enable an automation trigger so it fires live")
|
|
5
|
+
.argument("<id>", "Automation trigger public ID")
|
|
6
|
+
.action(async (id) => {
|
|
7
|
+
try {
|
|
8
|
+
console.log(`Enabling automation ${id}...`);
|
|
9
|
+
const data = await apiRequest("/automation/enable", {
|
|
10
|
+
method: "POST",
|
|
11
|
+
body: JSON.stringify({ automation_id: id }),
|
|
12
|
+
});
|
|
13
|
+
console.log(`✓ Automation enabled`);
|
|
14
|
+
console.log(` ID: ${data.automation_id}`);
|
|
15
|
+
console.log(` Enabled: ${data.enabled}`);
|
|
16
|
+
console.log(` Status: ${data.status}`);
|
|
17
|
+
}
|
|
18
|
+
catch (err) {
|
|
19
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
20
|
+
console.error(`Error: ${msg}`);
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=automation.enable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.enable.js","sourceRoot":"","sources":["../../src/commands/automation.enable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQ5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KACzD,WAAW,CAAC,+CAA+C,CAAC;KAC5D,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC;KAChD,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,EAAE;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,UAAU,CAA2B,oBAAoB,EAAE;YAC5E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;SAC5C,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.update.d.ts","sourceRoot":"","sources":["../../src/commands/automation.update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,eAAO,MAAM,uBAAuB,SAuCjC,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
export const automationUpdateCommand = new Command("update")
|
|
4
|
+
.description("Edit an existing automation: rename, change description, or replace trigger config")
|
|
5
|
+
.argument("<id>", "Automation trigger public ID")
|
|
6
|
+
.option("-n, --name <name>", "New name")
|
|
7
|
+
.option("-d, --description <description>", "New description")
|
|
8
|
+
.option("--trigger-config <json>", "Replacement trigger config as a JSON string")
|
|
9
|
+
.action(async (id, opts) => {
|
|
10
|
+
try {
|
|
11
|
+
const body = { automation_id: id };
|
|
12
|
+
if (opts.name !== undefined)
|
|
13
|
+
body.name = opts.name;
|
|
14
|
+
if (opts.description !== undefined)
|
|
15
|
+
body.description = opts.description;
|
|
16
|
+
if (opts.triggerConfig !== undefined) {
|
|
17
|
+
try {
|
|
18
|
+
body.triggerConfig = JSON.parse(opts.triggerConfig);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
console.error("Error: --trigger-config must be valid JSON");
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
console.log(`Updating automation ${id}...`);
|
|
26
|
+
const data = await apiRequest("/automation/update", {
|
|
27
|
+
method: "PATCH",
|
|
28
|
+
body: JSON.stringify(body),
|
|
29
|
+
});
|
|
30
|
+
console.log(`✓ Automation updated`);
|
|
31
|
+
console.log(` ID: ${data.automation_id}`);
|
|
32
|
+
console.log(` Name: ${data.name}`);
|
|
33
|
+
console.log(` Status: ${data.status}`);
|
|
34
|
+
console.log(` Trigger: ${data.triggerType} (enabled: ${data.enabled})`);
|
|
35
|
+
}
|
|
36
|
+
catch (err) {
|
|
37
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
38
|
+
console.error(`Error: ${msg}`);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=automation.update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"automation.update.js","sourceRoot":"","sources":["../../src/commands/automation.update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAW5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KACzD,WAAW,CAAC,oFAAoF,CAAC;KACjG,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC;KAChD,MAAM,CAAC,mBAAmB,EAAE,UAAU,CAAC;KACvC,MAAM,CAAC,iCAAiC,EAAE,iBAAiB,CAAC;KAC5D,MAAM,CAAC,yBAAyB,EAAE,6CAA6C,CAAC;KAChF,MAAM,CACL,KAAK,EACH,EAAU,EACV,IAAqE,EACrE,EAAE;IACF,IAAI,CAAC;QACH,MAAM,IAAI,GAA4B,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACnD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACxE,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,UAAU,CAA2B,oBAAoB,EAAE;YAC5E,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,WAAW,cAAc,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation.files.list.d.ts","sourceRoot":"","sources":["../../src/commands/conversation.files.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwBpC,eAAO,MAAM,4BAA4B,SA2CtC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, requireAuth, ApiError } from "../lib/api-client.js";
|
|
3
|
+
export const conversationFilesListCommand = new Command("files")
|
|
4
|
+
.description("List generated files attached to a conversation")
|
|
5
|
+
.requiredOption("-c, --conversation <id>", "Conversation public ID")
|
|
6
|
+
.option("--kind <kind>", "Filter by kind: image|video|document|spreadsheet|presentation|pdf|archive")
|
|
7
|
+
.option("--limit <n>", "Maximum results (1–200)", "50")
|
|
8
|
+
.option("--cursor <cursor>", "Pagination cursor (ISO createdAt of last row)")
|
|
9
|
+
.action(async (options) => {
|
|
10
|
+
requireAuth();
|
|
11
|
+
try {
|
|
12
|
+
const qs = new URLSearchParams();
|
|
13
|
+
if (options.kind)
|
|
14
|
+
qs.set("kind", options.kind);
|
|
15
|
+
if (options.limit)
|
|
16
|
+
qs.set("limit", options.limit);
|
|
17
|
+
if (options.cursor)
|
|
18
|
+
qs.set("cursor", options.cursor);
|
|
19
|
+
const data = await apiRequest(`/conversations/${options.conversation}/files?${qs}`);
|
|
20
|
+
if (data.files.length === 0) {
|
|
21
|
+
console.log("No files found.");
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
console.log("Files:");
|
|
25
|
+
for (const f of data.files) {
|
|
26
|
+
const size = f.sizeBytes !== null ? ` (${Math.round(f.sizeBytes / 1024)}KB)` : "";
|
|
27
|
+
console.log(` ${f.publicId} [${f.kind}] ${f.name}${size} ${f.createdAt}`);
|
|
28
|
+
}
|
|
29
|
+
if (data.nextCursor) {
|
|
30
|
+
console.log(`\nNext cursor: ${data.nextCursor}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
catch (err) {
|
|
34
|
+
const _msg = err instanceof ApiError ? err.message : String(err);
|
|
35
|
+
console.error(`Error: ${_msg}`);
|
|
36
|
+
process.exit(1);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=conversation.files.list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation.files.list.js","sourceRoot":"","sources":["../../src/commands/conversation.files.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAuBzE,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;KAC7D,WAAW,CAAC,iDAAiD,CAAC;KAC9D,cAAc,CAAC,yBAAyB,EAAE,wBAAwB,CAAC;KACnE,MAAM,CAAC,eAAe,EAAE,2EAA2E,CAAC;KACpG,MAAM,CAAC,aAAa,EAAE,yBAAyB,EAAE,IAAI,CAAC;KACtD,MAAM,CAAC,mBAAmB,EAAE,+CAA+C,CAAC;KAC5E,MAAM,CACL,KAAK,EAAE,OAKN,EAAE,EAAE;IACH,WAAW,EAAE,CAAC;IACd,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,CAAC,KAAK;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,MAAM;YAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,UAAU,CAC3B,kBAAkB,OAAO,CAAC,YAAY,UAAU,EAAE,EAAE,CACrD,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,GACR,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,SAAS,EAAE,CACjE,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.generate.d.ts","sourceRoot":"","sources":["../../src/commands/markdown.generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,eAAO,MAAM,uBAAuB,SA2CjC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, ApiError } from "../lib/api-client.js";
|
|
3
|
+
import { getOrgId, getWorkspaceId } from "../lib/config.js";
|
|
4
|
+
export const markdownGenerateCommand = new Command("markdown-generate")
|
|
5
|
+
.description("Persist a Markdown document as a generated asset")
|
|
6
|
+
.requiredOption("-t, --title <title>", "Document title / filename (without .md extension)")
|
|
7
|
+
.option("-m, --markdown <source>", "Raw Markdown source (use --sections as fallback)")
|
|
8
|
+
.option("--sections <json>", "Structured sections as JSON: [{heading?, paragraphs: string[]}]")
|
|
9
|
+
.option("-o, --org <id>", "Organization ID")
|
|
10
|
+
.option("-w, --workspace <id>", "Workspace ID")
|
|
11
|
+
.action(async (options) => {
|
|
12
|
+
try {
|
|
13
|
+
let sections;
|
|
14
|
+
if (options.sections)
|
|
15
|
+
sections = JSON.parse(options.sections);
|
|
16
|
+
const data = await apiRequest("/markdown/generate", {
|
|
17
|
+
method: "POST",
|
|
18
|
+
body: JSON.stringify({
|
|
19
|
+
title: options.title,
|
|
20
|
+
markdown: options.markdown,
|
|
21
|
+
sections,
|
|
22
|
+
org_id: options.org ?? getOrgId(),
|
|
23
|
+
workspace_id: options.workspace ?? getWorkspaceId(),
|
|
24
|
+
}),
|
|
25
|
+
});
|
|
26
|
+
console.log(`Markdown document created`);
|
|
27
|
+
console.log(` Asset ID: ${data.assetId}`);
|
|
28
|
+
console.log(` Size: ${data.sizeBytes} bytes`);
|
|
29
|
+
console.log(` URL: ${data.serveUrl}`);
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
const msg = err instanceof ApiError ? err.message : String(err);
|
|
33
|
+
console.error(`Error: ${msg}`);
|
|
34
|
+
process.exit(1);
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=markdown.generate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.generate.js","sourceRoot":"","sources":["../../src/commands/markdown.generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAY5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC;KACpE,WAAW,CAAC,kDAAkD,CAAC;KAC/D,cAAc,CAAC,qBAAqB,EAAE,mDAAmD,CAAC;KAC1F,MAAM,CAAC,yBAAyB,EAAE,kDAAkD,CAAC;KACrF,MAAM,CACL,mBAAmB,EACnB,iEAAiE,CAClE;KACA,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC3C,MAAM,CAAC,sBAAsB,EAAE,cAAc,CAAC;KAC9C,MAAM,CACL,KAAK,EAAE,OAMN,EAAE,EAAE;IACH,IAAI,CAAC;QACH,IAAI,QAAiB,CAAC;QACtB,IAAI,OAAO,CAAC,QAAQ;YAAE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAY,CAAC;QAEzE,MAAM,IAAI,GAAG,MAAM,UAAU,CAA2B,oBAAoB,EAAE;YAC5E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,QAAQ;gBACR,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;gBACjC,YAAY,EAAE,OAAO,CAAC,SAAS,IAAI,cAAc,EAAE;aACpD,CAAC;SACH,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,SAAS,QAAQ,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mermaid.generate.d.ts","sourceRoot":"","sources":["../../src/commands/mermaid.generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,eAAO,MAAM,sBAAsB,SA8B/B,CAAC"}
|