@agent-os-sdk/client 0.7.12 → 0.8.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.
Files changed (49) hide show
  1. package/dist/client/AgentOsClient.d.ts +25 -23
  2. package/dist/client/AgentOsClient.d.ts.map +1 -1
  3. package/dist/client/AgentOsClient.js +26 -22
  4. package/dist/client/HttpRequestBuilder.d.ts +48 -0
  5. package/dist/client/HttpRequestBuilder.d.ts.map +1 -0
  6. package/dist/client/HttpRequestBuilder.js +73 -0
  7. package/dist/client/OperationContext.d.ts +19 -0
  8. package/dist/client/OperationContext.d.ts.map +1 -0
  9. package/dist/client/OperationContext.js +13 -0
  10. package/dist/client/OperationContextProvider.d.ts +54 -0
  11. package/dist/client/OperationContextProvider.d.ts.map +1 -0
  12. package/dist/client/OperationContextProvider.js +71 -0
  13. package/dist/client/raw.d.ts +31 -0
  14. package/dist/client/raw.d.ts.map +1 -1
  15. package/dist/client/raw.js +11 -6
  16. package/dist/client/sanitize.d.ts +19 -0
  17. package/dist/client/sanitize.d.ts.map +1 -0
  18. package/dist/client/sanitize.js +28 -0
  19. package/dist/index.d.ts +6 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +4 -0
  22. package/dist/modules/agents.d.ts +22 -6
  23. package/dist/modules/agents.d.ts.map +1 -1
  24. package/dist/modules/agents.js +26 -7
  25. package/dist/modules/credentials.d.ts +1 -0
  26. package/dist/modules/credentials.d.ts.map +1 -1
  27. package/dist/modules/credentials.js +2 -1
  28. package/dist/modules/crons.d.ts +1 -0
  29. package/dist/modules/crons.d.ts.map +1 -1
  30. package/dist/modules/crons.js +2 -1
  31. package/dist/modules/presets.d.ts +32 -0
  32. package/dist/modules/presets.d.ts.map +1 -0
  33. package/dist/modules/presets.js +116 -0
  34. package/dist/modules/triggers.d.ts +11 -0
  35. package/dist/modules/triggers.d.ts.map +1 -1
  36. package/dist/modules/triggers.js +17 -2
  37. package/package.json +51 -49
  38. package/src/client/AgentOsClient.ts +27 -24
  39. package/src/client/HttpRequestBuilder.ts +102 -0
  40. package/src/client/OperationContext.ts +22 -0
  41. package/src/client/OperationContextProvider.ts +89 -0
  42. package/src/client/raw.ts +19 -8
  43. package/src/client/sanitize.ts +31 -0
  44. package/src/index.ts +15 -0
  45. package/src/modules/agents.ts +44 -14
  46. package/src/modules/credentials.ts +2 -1
  47. package/src/modules/crons.ts +2 -1
  48. package/src/modules/presets.ts +162 -0
  49. package/src/modules/triggers.ts +21 -2
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Header Sanitization — Security layer for HTTP headers
3
+ *
4
+ * Removes control characters and enforces size limits.
5
+ *
6
+ * @see sdk-upgrade.md Section 1.4
7
+ */
8
+ const MAX_LEN = 1024;
9
+ /**
10
+ * Sanitize a single header value.
11
+ * - Removes control characters (0x00-0x1F, 0x7F)
12
+ * - Truncates to MAX_LEN
13
+ */
14
+ export function sanitizeHeader(v) {
15
+ return v.replace(/[\u0000-\u001F\u007F]/g, "").slice(0, MAX_LEN);
16
+ }
17
+ /**
18
+ * Sanitize all header values in a record.
19
+ * Mutates in place for performance.
20
+ */
21
+ export function sanitizeHeaders(h) {
22
+ for (const k in h) {
23
+ if (Object.prototype.hasOwnProperty.call(h, k) && h[k] !== undefined) {
24
+ h[k] = sanitizeHeader(h[k]);
25
+ }
26
+ }
27
+ return h;
28
+ }
package/dist/index.d.ts CHANGED
@@ -33,6 +33,12 @@ export type { paths, components } from "./generated/openapi.js";
33
33
  export { AgentOsClient } from "./client/AgentOsClient.js";
34
34
  export type { AgentOsClientOptions, AuthProvider } from "./client/auth.js";
35
35
  export { AgentOsError, NetworkError, TimeoutError, ValidationError, UnauthorizedError, ForbiddenError, NotFoundError, ConflictError, RateLimitError, ServerError, isAuthError, isRetryableError, } from "./errors/index.js";
36
+ export type { OperationContext } from "./client/OperationContext.js";
37
+ export { createOperationContext } from "./client/OperationContext.js";
38
+ export type { OperationContextProvider } from "./client/OperationContextProvider.js";
39
+ export { DefaultContextProvider, AsyncLocalStorageContextProvider, ManualContextProvider, } from "./client/OperationContextProvider.js";
40
+ export { HttpRequestBuilder, httpRequestBuilder } from "./client/HttpRequestBuilder.js";
41
+ export { sanitizeHeader, sanitizeHeaders } from "./client/sanitize.js";
36
42
  export { withRetry } from "./client/retry.js";
37
43
  export { withTimeout } from "./client/timeout.js";
38
44
  export { DEFAULT_NETWORK_CONFIG, INTERACTIVE_NETWORK_CONFIG, BACKGROUND_NETWORK_CONFIG, type NetworkConfig, } from "./client/config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,IAAI,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC7H,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMhE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAM3E,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,gBAAgB,GACnB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACH,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,aAAa,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,eAAe,GACvB,MAAM,wBAAwB,CAAC;AAMhC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,IAAI,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC7H,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMhE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAM3E,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,gBAAgB,GACnB,MAAM,mBAAmB,CAAC;AAM3B,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EACH,sBAAsB,EACtB,gCAAgC,EAChC,qBAAqB,GACxB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACH,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,aAAa,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,eAAe,GACvB,MAAM,wBAAwB,CAAC;AAMhC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -41,6 +41,10 @@ export { AgentOsClient } from "./client/AgentOsClient.js";
41
41
  // Errors
42
42
  // ============================================================
43
43
  export { AgentOsError, NetworkError, TimeoutError, ValidationError, UnauthorizedError, ForbiddenError, NotFoundError, ConflictError, RateLimitError, ServerError, isAuthError, isRetryableError, } from "./errors/index.js";
44
+ export { createOperationContext } from "./client/OperationContext.js";
45
+ export { DefaultContextProvider, AsyncLocalStorageContextProvider, ManualContextProvider, } from "./client/OperationContextProvider.js";
46
+ export { HttpRequestBuilder, httpRequestBuilder } from "./client/HttpRequestBuilder.js";
47
+ export { sanitizeHeader, sanitizeHeaders } from "./client/sanitize.js";
44
48
  // ============================================================
45
49
  // Utilities
46
50
  // ============================================================
@@ -12,12 +12,16 @@ type AgentBundleSchema = components["schemas"]["AgentExportBundle"];
12
12
  export interface Agent {
13
13
  id: string;
14
14
  name: string;
15
- description?: string;
16
15
  workspace_id: string;
17
16
  tenant_id: string;
18
17
  created_at: string;
19
18
  updated_at: string;
20
19
  live_bundle_id?: string | null;
20
+ status?: "live" | "draft";
21
+ has_draft?: boolean;
22
+ last_run_id?: string | null;
23
+ last_run_status?: string | null;
24
+ last_run_at?: string | null;
21
25
  }
22
26
  export interface AgentBundle extends AgentBundleSchema {
23
27
  }
@@ -61,25 +65,29 @@ export declare class AgentsModule {
61
65
  get(agentId: string): Promise<APIResponse<Agent>>;
62
66
  /**
63
67
  * Create a new agent.
68
+ * Backend only accepts `name` per CreateAgentRequest DTO.
64
69
  * @example
65
70
  * ```ts
71
+ * const { data: agent } = await client.agents.create({ name: "My Agent" });
72
+ *
73
+ * // With idempotency (safe to retry)
66
74
  * const { data: agent } = await client.agents.create({
67
75
  * name: "My Agent",
68
- * description: "Does cool stuff"
76
+ * idempotency_key: "unique-key"
69
77
  * });
70
78
  * ```
71
79
  */
72
80
  create(body: {
73
81
  name: string;
74
- description?: string;
75
- graph_json?: unknown;
82
+ /** Idempotency key for safe retries. When set, duplicate requests with the same key return 409 Conflict. */
83
+ idempotency_key?: string;
76
84
  }): Promise<APIResponse<Agent>>;
77
85
  /**
78
86
  * Update an existing agent.
87
+ * Uses PATCH per backend AgentsController.
79
88
  */
80
89
  update(agentId: string, body: {
81
90
  name?: string;
82
- description?: string;
83
91
  live_bundle_id?: string;
84
92
  }): Promise<APIResponse<Agent>>;
85
93
  /**
@@ -108,12 +116,20 @@ export declare class AgentsModule {
108
116
  * Publish a new version (bundle) of the agent.
109
117
  * @param agentId The agent UUID
110
118
  * @param graph_spec The graph specification to publish
111
- * @param options Optional settings: version_label for tagging, set_as_live to make this the active version
119
+ * @param options Optional settings: version_label for tagging, set_as_live to make this the active version, idempotency_key for safe retries
112
120
  * @returns Bundle response with version details
121
+ * @example
122
+ * ```ts
123
+ * const { data: bundle } = await client.agents.publish(agentId, graphSpec, {
124
+ * idempotency_key: "publish-unique-key"
125
+ * });
126
+ * ```
113
127
  */
114
128
  publish(agentId: string, graph_spec: Record<string, unknown>, options?: {
115
129
  version_label?: string | null;
116
130
  set_as_live?: boolean;
131
+ /** Idempotency key for safe retries */
132
+ idempotency_key?: string;
117
133
  }): Promise<APIResponse<components["schemas"]["BundleResponse"]>>;
118
134
  /**
119
135
  * Get the manifest for a specific bundle.
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/modules/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/modules/agents.ts"],"names":[],"mappings":"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"}
@@ -43,26 +43,35 @@ export class AgentsModule {
43
43
  }
44
44
  /**
45
45
  * Create a new agent.
46
+ * Backend only accepts `name` per CreateAgentRequest DTO.
46
47
  * @example
47
48
  * ```ts
49
+ * const { data: agent } = await client.agents.create({ name: "My Agent" });
50
+ *
51
+ * // With idempotency (safe to retry)
48
52
  * const { data: agent } = await client.agents.create({
49
53
  * name: "My Agent",
50
- * description: "Does cool stuff"
54
+ * idempotency_key: "unique-key"
51
55
  * });
52
56
  * ```
53
57
  */
54
58
  async create(body) {
59
+ const headers = { ...this.headers() };
60
+ if (body.idempotency_key) {
61
+ headers["X-Idempotency-Key"] = body.idempotency_key;
62
+ }
55
63
  return this.client.POST("/v1/api/agents", {
56
- body,
57
- headers: this.headers(),
64
+ body: { name: body.name },
65
+ headers,
58
66
  });
59
67
  }
60
68
  /**
61
69
  * Update an existing agent.
70
+ * Uses PATCH per backend AgentsController.
62
71
  */
63
72
  async update(agentId, body) {
64
- return this.client.PUT("/v1/api/agents/{agentId}", {
65
- params: { path: { agentId } },
73
+ return this.client.PATCH("/v1/api/agents/{id}", {
74
+ params: { path: { id: agentId } },
66
75
  body,
67
76
  headers: this.headers(),
68
77
  });
@@ -121,10 +130,20 @@ export class AgentsModule {
121
130
  * Publish a new version (bundle) of the agent.
122
131
  * @param agentId The agent UUID
123
132
  * @param graph_spec The graph specification to publish
124
- * @param options Optional settings: version_label for tagging, set_as_live to make this the active version
133
+ * @param options Optional settings: version_label for tagging, set_as_live to make this the active version, idempotency_key for safe retries
125
134
  * @returns Bundle response with version details
135
+ * @example
136
+ * ```ts
137
+ * const { data: bundle } = await client.agents.publish(agentId, graphSpec, {
138
+ * idempotency_key: "publish-unique-key"
139
+ * });
140
+ * ```
126
141
  */
127
142
  async publish(agentId, graph_spec, options) {
143
+ const headers = { ...this.headers() };
144
+ if (options?.idempotency_key) {
145
+ headers["X-Idempotency-Key"] = options.idempotency_key;
146
+ }
128
147
  return this.client.POST("/v1/api/agents/{id}/publish", {
129
148
  params: { path: { id: agentId } },
130
149
  body: {
@@ -132,7 +151,7 @@ export class AgentsModule {
132
151
  version_label: options?.version_label ?? null,
133
152
  set_as_live: options?.set_as_live ?? true
134
153
  },
135
- headers: this.headers()
154
+ headers
136
155
  });
137
156
  }
138
157
  // ======================== Bundles ========================
@@ -66,6 +66,7 @@ export declare class CredentialsModule {
66
66
  }): Promise<APIResponse<Credential>>;
67
67
  /**
68
68
  * Update a credential.
69
+ * Uses PATCH per backend CredentialsController.
69
70
  */
70
71
  update(credentialId: string, body: {
71
72
  name?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/modules/credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/modules/credentials.ts"],"names":[],"mappings":"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"}
@@ -42,9 +42,10 @@ export class CredentialsModule {
42
42
  }
43
43
  /**
44
44
  * Update a credential.
45
+ * Uses PATCH per backend CredentialsController.
45
46
  */
46
47
  async update(credentialId, body) {
47
- return this.client.PUT("/v1/api/credentials/{id}", {
48
+ return this.client.PATCH("/v1/api/credentials/{id}", {
48
49
  params: { path: { id: credentialId } },
49
50
  body,
50
51
  headers: this.headers(),
@@ -54,6 +54,7 @@ export declare class CronsModule {
54
54
  }): Promise<APIResponse<CronJob>>;
55
55
  /**
56
56
  * Update a cron job.
57
+ * Uses PATCH per backend CronsController.
57
58
  */
58
59
  update(cronId: string, body: {
59
60
  schedule?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"crons.d.ts","sourceRoot":"","sources":["../../src/modules/crons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,kBAAkB,CAAC;AAK3E,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;IAAa,OAAO,CAAC,OAAO;gBAAlC,MAAM,EAAE,SAAS,EAAU,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAEpF;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAO7C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAOxD;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAOjC;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAQjC;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAOxD;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;CAM3E"}
1
+ {"version":3,"file":"crons.d.ts","sourceRoot":"","sources":["../../src/modules/crons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,kBAAkB,CAAC;AAK3E,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;IAAa,OAAO,CAAC,OAAO;gBAAlC,MAAM,EAAE,SAAS,EAAU,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAEpF;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAO7C;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAOxD;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAOjC;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAQjC;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAOxD;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;CAM3E"}
@@ -37,9 +37,10 @@ export class CronsModule {
37
37
  }
38
38
  /**
39
39
  * Update a cron job.
40
+ * Uses PATCH per backend CronsController.
40
41
  */
41
42
  async update(cronId, body) {
42
- return this.client.PUT("/v1/api/crons/{id}", {
43
+ return this.client.PATCH("/v1/api/crons/{id}", {
43
44
  params: { path: { id: cronId } },
44
45
  body,
45
46
  headers: this.headers(),
@@ -0,0 +1,32 @@
1
+ import type { RawClient } from "../client/raw.js";
2
+ export interface AgentTemplateConfig {
3
+ name: string;
4
+ trigger_type: "chatwoot" | "webhook" | "schedule";
5
+ output_type: "chatwoot" | "http";
6
+ llm?: {
7
+ credential_id?: string;
8
+ model?: string;
9
+ system_prompt?: string;
10
+ };
11
+ bindings?: Array<{
12
+ credential_id: string;
13
+ alias: string;
14
+ }>;
15
+ }
16
+ export interface CreatedAgentResult {
17
+ agent_id: string;
18
+ agent_name: string;
19
+ bundle_id?: string;
20
+ trigger_id?: string;
21
+ trigger_url?: string;
22
+ status: "live" | "draft";
23
+ }
24
+ export declare class PresetsModule {
25
+ private _client;
26
+ private _headers;
27
+ private _agents;
28
+ private _triggers;
29
+ constructor(client: RawClient, getHeaders: () => Record<string, string>);
30
+ createAgent(config: AgentTemplateConfig): Promise<CreatedAgentResult | null>;
31
+ }
32
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/modules/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIlD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;IAClD,WAAW,EAAE,UAAU,GAAG,MAAM,CAAC;IACjC,GAAG,CAAC,EAAE;QACJ,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AA6DD,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,QAAQ,CAA+B;IAG/C,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,SAAS,CAAiB;gBAEtB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAOjE,WAAW,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;CA2DnF"}
@@ -0,0 +1,116 @@
1
+ import { AgentsModule } from "./agents.js";
2
+ import { TriggersModule } from "./triggers.js";
3
+ const TRIGGER_TYPE_MAP = {
4
+ chatwoot: { type: "webhook", template_slug: "chatwoot" },
5
+ webhook: { type: "webhook", template_slug: "generic" },
6
+ schedule: { type: "schedule", template_slug: "cron" },
7
+ };
8
+ const OUTPUT_NODE_MAP = {
9
+ chatwoot: { kind: "output.chatwoot", config: {} },
10
+ http: { kind: "output.http", config: {} },
11
+ };
12
+ function generateGraphSpec(config) {
13
+ const triggerMapping = TRIGGER_TYPE_MAP[config.trigger_type] ?? TRIGGER_TYPE_MAP.webhook;
14
+ const outputMapping = OUTPUT_NODE_MAP[config.output_type] ?? OUTPUT_NODE_MAP.http;
15
+ // Safe validation (TS knows these keys exist in the constant, but runtime check is good practice)
16
+ if (!triggerMapping)
17
+ throw new Error(`Invalid trigger type: ${config.trigger_type}`);
18
+ if (!outputMapping)
19
+ throw new Error(`Invalid output type: ${config.output_type}`);
20
+ const nodes = [
21
+ {
22
+ id: "node-llm",
23
+ kind: "llm.chat",
24
+ label: "LLM",
25
+ config: {
26
+ model: config.llm?.model || "gpt-4o",
27
+ system_prompt: config.llm?.system_prompt || "You are a helpful assistant.",
28
+ ...(config.llm?.credential_id ? { credential_id: config.llm.credential_id } : {}),
29
+ },
30
+ ui: { x: 300, y: 200 },
31
+ },
32
+ {
33
+ id: "node-output",
34
+ ...outputMapping,
35
+ label: "Output",
36
+ ui: { x: 500, y: 200 },
37
+ },
38
+ ];
39
+ const edges = [
40
+ { from: "node-llm", to: "node-output" },
41
+ ];
42
+ const triggers = [
43
+ {
44
+ type: `${triggerMapping.template_slug}.${triggerMapping.type}`,
45
+ config: { events: ["message_created"] },
46
+ },
47
+ ];
48
+ return {
49
+ version: "1",
50
+ entrypoint: "node-llm",
51
+ nodes,
52
+ edges,
53
+ triggers,
54
+ };
55
+ }
56
+ export class PresetsModule {
57
+ _client;
58
+ _headers;
59
+ // Internal modules needed for orchestration
60
+ _agents;
61
+ _triggers;
62
+ constructor(client, getHeaders) {
63
+ this._client = client;
64
+ this._headers = getHeaders;
65
+ this._agents = new AgentsModule(client, getHeaders);
66
+ this._triggers = new TriggersModule(client, getHeaders);
67
+ }
68
+ async createAgent(config) {
69
+ try {
70
+ console.log("[AgentOS SDK] Creating agent from preset...", {
71
+ name: config.name,
72
+ trigger_type: config.trigger_type,
73
+ output_type: config.output_type,
74
+ });
75
+ const { data: agent, error: createError } = await this._agents.create({ name: config.name });
76
+ if (createError || !agent) {
77
+ console.error("[AgentOS SDK] Failed to create agent:", createError);
78
+ return null;
79
+ }
80
+ const graphSpec = generateGraphSpec(config);
81
+ const { data: bundle, error: publishError } = await this._agents.publish(agent.id, graphSpec, { set_as_live: true });
82
+ if (publishError) {
83
+ console.error("[AgentOS SDK] Failed to publish bundle:", publishError);
84
+ return {
85
+ agent_id: agent.id,
86
+ agent_name: agent.name,
87
+ status: "draft",
88
+ };
89
+ }
90
+ const triggerMapping = TRIGGER_TYPE_MAP[config.trigger_type] ?? TRIGGER_TYPE_MAP.webhook;
91
+ if (!triggerMapping)
92
+ throw new Error("Trigger mapping failed");
93
+ const { data: trigger, error: triggerError } = await this._triggers.create({
94
+ name: `${config.name} - ${config.trigger_type}`,
95
+ agent_id: agent.id,
96
+ trigger_type: triggerMapping.type,
97
+ template_slug: triggerMapping.template_slug,
98
+ });
99
+ if (triggerError) {
100
+ console.warn("[AgentOS SDK] Failed to create trigger:", triggerError);
101
+ }
102
+ return {
103
+ agent_id: agent.id,
104
+ agent_name: agent.name,
105
+ bundle_id: bundle?.id,
106
+ trigger_id: trigger?.id,
107
+ trigger_url: trigger?.invoke_url,
108
+ status: "live",
109
+ };
110
+ }
111
+ catch (err) {
112
+ console.error("[AgentOS SDK] Exception creating agent from preset:", err);
113
+ return null;
114
+ }
115
+ }
116
+ }
@@ -106,6 +106,15 @@ export declare class TriggersModule {
106
106
  getSecret(triggerId: string): Promise<APIResponse<TriggerSecretResponse>>;
107
107
  /**
108
108
  * Create a new trigger.
109
+ * @example
110
+ * ```ts
111
+ * const { data: trigger } = await client.triggers.create({
112
+ * name: "My Webhook",
113
+ * agent_id: "agent-uuid",
114
+ * trigger_type: "webhook",
115
+ * idempotency_key: "create-trigger-unique-key"
116
+ * });
117
+ * ```
109
118
  */
110
119
  create(body: {
111
120
  name: string;
@@ -113,6 +122,8 @@ export declare class TriggersModule {
113
122
  trigger_type: string;
114
123
  template_slug?: string;
115
124
  config?: Record<string, unknown>;
125
+ /** Idempotency key for safe retries. When set, duplicate requests with the same key return 409 Conflict. */
126
+ idempotency_key?: string;
116
127
  }): Promise<APIResponse<Trigger>>;
117
128
  /**
118
129
  * Update a trigger.
@@ -1 +1 @@
1
- {"version":3,"file":"triggers.d.ts","sourceRoot":"","sources":["../../src/modules/triggers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"triggers.d.ts","sourceRoot":"","sources":["../../src/modules/triggers.ts"],"names":[],"mappings":"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"}
@@ -51,11 +51,26 @@ export class TriggersModule {
51
51
  }
52
52
  /**
53
53
  * Create a new trigger.
54
+ * @example
55
+ * ```ts
56
+ * const { data: trigger } = await client.triggers.create({
57
+ * name: "My Webhook",
58
+ * agent_id: "agent-uuid",
59
+ * trigger_type: "webhook",
60
+ * idempotency_key: "create-trigger-unique-key"
61
+ * });
62
+ * ```
54
63
  */
55
64
  async create(body) {
65
+ const headers = { ...this.headers() };
66
+ if (body.idempotency_key) {
67
+ headers["X-Idempotency-Key"] = body.idempotency_key;
68
+ }
69
+ // Send body without idempotency_key (it's header-only)
70
+ const { idempotency_key, ...requestBody } = body;
56
71
  return this.client.POST("/v1/api/triggers", {
57
- body,
58
- headers: this.headers(),
72
+ body: requestBody,
73
+ headers,
59
74
  });
60
75
  }
61
76
  /**
package/package.json CHANGED
@@ -1,51 +1,53 @@
1
1
  {
2
- "name": "@agent-os-sdk/client",
3
- "version": "0.7.12",
4
- "description": "Official TypeScript SDK for Agent OS platform",
5
- "type": "module",
6
- "main": "./dist/index.js",
7
- "module": "./dist/index.js",
8
- "types": "./dist/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "import": "./dist/index.js",
12
- "types": "./dist/index.d.ts"
13
- }
14
- },
15
- "keywords": [
16
- "agent-os",
17
- "sdk",
18
- "ai",
19
- "agents",
20
- "typescript"
21
- ],
22
- "author": "Agent OS Team",
23
- "license": "MIT",
24
- "repository": {
25
- "type": "git",
26
- "url": "https://github.com/yuri12344/agent-os.git"
27
- },
28
- "publishConfig": {
29
- "access": "public"
30
- },
31
- "dependencies": {
32
- "openapi-fetch": "^0.13.0"
33
- },
34
- "devDependencies": {
35
- "openapi-typescript": "^7.4.0",
36
- "tsx": "^4.19.0",
37
- "typescript": "^5.5.0",
38
- "vitest": "^4.0.18"
39
- },
40
- "files": [
41
- "dist",
42
- "src"
43
- ],
44
- "scripts": {
45
- "generate": "tsx scripts/generate.ts",
46
- "build": "tsc",
47
- "dev": "tsc --watch",
48
- "test": "vitest run",
49
- "typecheck": "tsc --noEmit"
50
- }
2
+ "name": "@agent-os-sdk/client",
3
+ "version": "0.8.0",
4
+ "description": "Official TypeScript SDK for Agent OS platform",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "import": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
13
+ }
14
+ },
15
+ "scripts": {
16
+ "generate": "tsx scripts/generate.ts",
17
+ "build": "tsc",
18
+ "dev": "tsc --watch",
19
+ "test": "vitest run",
20
+ "typecheck": "tsc --noEmit",
21
+ "prepublishOnly": "pnpm build"
22
+ },
23
+ "keywords": [
24
+ "agent-os",
25
+ "sdk",
26
+ "ai",
27
+ "agents",
28
+ "typescript"
29
+ ],
30
+ "author": "Agent OS Team",
31
+ "license": "MIT",
32
+ "repository": {
33
+ "type": "git",
34
+ "url": "https://github.com/yuri12344/agent-os.git"
35
+ },
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
39
+ "dependencies": {
40
+ "openapi-fetch": "^0.13.0"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^25.2.1",
44
+ "openapi-typescript": "^7.4.0",
45
+ "tsx": "^4.19.0",
46
+ "typescript": "^5.5.0",
47
+ "vitest": "^4.0.18"
48
+ },
49
+ "files": [
50
+ "dist",
51
+ "src"
52
+ ]
51
53
  }