@agent-os-sdk/client 0.9.26 → 0.9.27

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 (209) hide show
  1. package/dist/client/AgentOsClient.d.ts +141 -0
  2. package/dist/client/AgentOsClient.d.ts.map +1 -0
  3. package/{src/client/AgentOsClient.ts → dist/client/AgentOsClient.js} +61 -105
  4. package/dist/client/HttpRequestBuilder.d.ts +50 -0
  5. package/dist/client/HttpRequestBuilder.d.ts.map +1 -0
  6. package/{src/client/HttpRequestBuilder.ts → dist/client/HttpRequestBuilder.js} +9 -41
  7. package/{src/client/OperationContext.ts → dist/client/OperationContext.d.ts} +6 -9
  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/{src/client/OperationContextProvider.ts → dist/client/OperationContextProvider.js} +17 -35
  13. package/{src/client/auth.ts → dist/client/auth.d.ts} +29 -65
  14. package/dist/client/auth.d.ts.map +1 -0
  15. package/dist/client/auth.js +38 -0
  16. package/dist/client/config.d.ts +49 -0
  17. package/dist/client/config.d.ts.map +1 -0
  18. package/{src/client/config.ts → dist/client/config.js} +5 -43
  19. package/dist/client/helpers.d.ts +63 -0
  20. package/dist/client/helpers.d.ts.map +1 -0
  21. package/{src/client/helpers.ts → dist/client/helpers.js} +9 -52
  22. package/dist/client/pagination.d.ts +105 -0
  23. package/dist/client/pagination.d.ts.map +1 -0
  24. package/{src/client/pagination.ts → dist/client/pagination.js} +15 -116
  25. package/dist/client/raw.d.ts +277 -0
  26. package/dist/client/raw.d.ts.map +1 -0
  27. package/dist/client/raw.js +337 -0
  28. package/dist/client/retry.d.ts +37 -0
  29. package/dist/client/retry.d.ts.map +1 -0
  30. package/{src/client/retry.ts → dist/client/retry.js} +13 -55
  31. package/dist/client/sanitize.d.ts +19 -0
  32. package/dist/client/sanitize.d.ts.map +1 -0
  33. package/{src/client/sanitize.ts → dist/client/sanitize.js} +4 -7
  34. package/dist/client/timeout.d.ts +26 -0
  35. package/dist/client/timeout.d.ts.map +1 -0
  36. package/{src/client/timeout.ts → dist/client/timeout.js} +10 -18
  37. package/dist/errors/factory.d.ts +22 -0
  38. package/dist/errors/factory.d.ts.map +1 -0
  39. package/{src/errors/factory.ts → dist/errors/factory.js} +18 -57
  40. package/dist/errors/index.d.ts +210 -0
  41. package/dist/errors/index.d.ts.map +1 -0
  42. package/{src/errors/index.ts → dist/errors/index.js} +74 -156
  43. package/{src/generated/client.ts → dist/generated/client.d.ts} +5 -17
  44. package/dist/generated/client.d.ts.map +1 -0
  45. package/dist/generated/client.js +15 -0
  46. package/{src/generated/index.ts → dist/generated/index.d.ts} +1 -1
  47. package/dist/generated/index.d.ts.map +1 -0
  48. package/dist/generated/index.js +1 -0
  49. package/{src/generated/openapi.ts → dist/generated/openapi.d.ts} +1 -1
  50. package/dist/generated/openapi.d.ts.map +1 -0
  51. package/dist/generated/openapi.js +5 -0
  52. package/dist/index.d.ts +69 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/{src/index.ts → dist/index.js} +13 -63
  55. package/dist/modules/a2a.d.ts +48 -0
  56. package/dist/modules/a2a.d.ts.map +1 -0
  57. package/dist/modules/a2a.js +37 -0
  58. package/dist/modules/agents.d.ts +346 -0
  59. package/dist/modules/agents.d.ts.map +1 -0
  60. package/dist/modules/agents.js +296 -0
  61. package/dist/modules/apiTokens.d.ts +62 -0
  62. package/dist/modules/apiTokens.d.ts.map +1 -0
  63. package/dist/modules/apiTokens.js +56 -0
  64. package/dist/modules/approvals.d.ts +75 -0
  65. package/dist/modules/approvals.d.ts.map +1 -0
  66. package/dist/modules/approvals.js +91 -0
  67. package/dist/modules/audit.d.ts +78 -0
  68. package/dist/modules/audit.d.ts.map +1 -0
  69. package/{src/modules/audit.ts → dist/modules/audit.js} +23 -74
  70. package/{src/modules/auth.ts → dist/modules/auth.d.ts} +6 -11
  71. package/dist/modules/auth.d.ts.map +1 -0
  72. package/dist/modules/auth.js +22 -0
  73. package/dist/modules/builder.d.ts +242 -0
  74. package/dist/modules/builder.d.ts.map +1 -0
  75. package/dist/modules/builder.js +248 -0
  76. package/dist/modules/catalog.d.ts +142 -0
  77. package/dist/modules/catalog.d.ts.map +1 -0
  78. package/dist/modules/catalog.js +136 -0
  79. package/dist/modules/chatwoot.d.ts +59 -0
  80. package/dist/modules/chatwoot.d.ts.map +1 -0
  81. package/dist/modules/chatwoot.js +200 -0
  82. package/dist/modules/checkpoints.d.ts +62 -0
  83. package/dist/modules/checkpoints.d.ts.map +1 -0
  84. package/dist/modules/checkpoints.js +48 -0
  85. package/dist/modules/contracts.d.ts +48 -0
  86. package/dist/modules/contracts.d.ts.map +1 -0
  87. package/dist/modules/contracts.js +25 -0
  88. package/dist/modules/credentials.d.ts +105 -0
  89. package/dist/modules/credentials.d.ts.map +1 -0
  90. package/dist/modules/credentials.js +135 -0
  91. package/dist/modules/crons.d.ts +73 -0
  92. package/dist/modules/crons.d.ts.map +1 -0
  93. package/dist/modules/crons.js +67 -0
  94. package/dist/modules/datasets.d.ts +80 -0
  95. package/dist/modules/datasets.d.ts.map +1 -0
  96. package/dist/modules/datasets.js +91 -0
  97. package/{src/modules/evaluation.ts → dist/modules/evaluation.d.ts} +23 -109
  98. package/dist/modules/evaluation.d.ts.map +1 -0
  99. package/dist/modules/evaluation.js +108 -0
  100. package/dist/modules/files.d.ts +89 -0
  101. package/dist/modules/files.d.ts.map +1 -0
  102. package/dist/modules/files.js +133 -0
  103. package/dist/modules/graphs.d.ts +120 -0
  104. package/dist/modules/graphs.d.ts.map +1 -0
  105. package/dist/modules/graphs.js +69 -0
  106. package/{src/modules/improvements.ts → dist/modules/improvements.d.ts} +8 -27
  107. package/dist/modules/improvements.d.ts.map +1 -0
  108. package/dist/modules/improvements.js +27 -0
  109. package/dist/modules/info.d.ts +76 -0
  110. package/dist/modules/info.d.ts.map +1 -0
  111. package/{src/modules/info.ts → dist/modules/info.js} +16 -66
  112. package/dist/modules/knowledge.d.ts +91 -0
  113. package/dist/modules/knowledge.d.ts.map +1 -0
  114. package/dist/modules/knowledge.js +80 -0
  115. package/{src/modules/me.ts → dist/modules/me.d.ts} +7 -23
  116. package/dist/modules/me.d.ts.map +1 -0
  117. package/dist/modules/me.js +28 -0
  118. package/dist/modules/members.d.ts +124 -0
  119. package/dist/modules/members.d.ts.map +1 -0
  120. package/dist/modules/members.js +142 -0
  121. package/dist/modules/memberships.d.ts +25 -0
  122. package/dist/modules/memberships.d.ts.map +1 -0
  123. package/dist/modules/memberships.js +20 -0
  124. package/{src/modules/metaAgent.ts → dist/modules/metaAgent.d.ts} +8 -44
  125. package/dist/modules/metaAgent.d.ts.map +1 -0
  126. package/dist/modules/metaAgent.js +32 -0
  127. package/dist/modules/metrics.d.ts +20 -0
  128. package/dist/modules/metrics.d.ts.map +1 -0
  129. package/{src/modules/metrics.ts → dist/modules/metrics.js} +7 -14
  130. package/dist/modules/observability.d.ts +19 -0
  131. package/dist/modules/observability.d.ts.map +1 -0
  132. package/dist/modules/observability.js +14 -0
  133. package/dist/modules/playground.d.ts +42 -0
  134. package/dist/modules/playground.d.ts.map +1 -0
  135. package/dist/modules/playground.js +48 -0
  136. package/dist/modules/presets.d.ts +32 -0
  137. package/dist/modules/presets.d.ts.map +1 -0
  138. package/dist/modules/presets.js +199 -0
  139. package/dist/modules/prompts.d.ts +87 -0
  140. package/dist/modules/prompts.d.ts.map +1 -0
  141. package/dist/modules/prompts.js +87 -0
  142. package/dist/modules/roles.d.ts +64 -0
  143. package/dist/modules/roles.d.ts.map +1 -0
  144. package/dist/modules/roles.js +79 -0
  145. package/dist/modules/runs.d.ts +451 -0
  146. package/dist/modules/runs.d.ts.map +1 -0
  147. package/{src/modules/runs.ts → dist/modules/runs.js} +96 -438
  148. package/dist/modules/store.d.ts +37 -0
  149. package/dist/modules/store.d.ts.map +1 -0
  150. package/dist/modules/store.js +48 -0
  151. package/{src/modules/templates.ts → dist/modules/templates.d.ts} +8 -32
  152. package/dist/modules/templates.d.ts.map +1 -0
  153. package/dist/modules/templates.js +26 -0
  154. package/dist/modules/tenants.d.ts +49 -0
  155. package/dist/modules/tenants.d.ts.map +1 -0
  156. package/dist/modules/tenants.js +56 -0
  157. package/dist/modules/threads.d.ts +205 -0
  158. package/dist/modules/threads.d.ts.map +1 -0
  159. package/dist/modules/threads.js +225 -0
  160. package/dist/modules/tools.d.ts +62 -0
  161. package/dist/modules/tools.d.ts.map +1 -0
  162. package/dist/modules/tools.js +45 -0
  163. package/dist/modules/traces.d.ts +89 -0
  164. package/dist/modules/traces.d.ts.map +1 -0
  165. package/dist/modules/traces.js +65 -0
  166. package/{src/modules/triggers.ts → dist/modules/triggers.d.ts} +24 -153
  167. package/dist/modules/triggers.d.ts.map +1 -0
  168. package/dist/modules/triggers.js +176 -0
  169. package/{src/modules/usage.ts → dist/modules/usage.d.ts} +14 -46
  170. package/dist/modules/usage.d.ts.map +1 -0
  171. package/dist/modules/usage.js +43 -0
  172. package/dist/modules/vectorStores.d.ts +100 -0
  173. package/dist/modules/vectorStores.d.ts.map +1 -0
  174. package/dist/modules/vectorStores.js +159 -0
  175. package/dist/modules/workspaces.d.ts +138 -0
  176. package/dist/modules/workspaces.d.ts.map +1 -0
  177. package/dist/modules/workspaces.js +121 -0
  178. package/dist/sse/client.d.ts +140 -0
  179. package/dist/sse/client.d.ts.map +1 -0
  180. package/{src/sse/client.ts → dist/sse/client.js} +24 -100
  181. package/package.json +8 -15
  182. package/src/client/raw.ts +0 -609
  183. package/src/generated/swagger.json +0 -17014
  184. package/src/modules/a2a.ts +0 -64
  185. package/src/modules/agents.ts +0 -604
  186. package/src/modules/apiTokens.ts +0 -101
  187. package/src/modules/approvals.ts +0 -151
  188. package/src/modules/catalog.ts +0 -241
  189. package/src/modules/chatwoot.ts +0 -242
  190. package/src/modules/checkpoints.ts +0 -87
  191. package/src/modules/contracts.ts +0 -80
  192. package/src/modules/credentials.ts +0 -216
  193. package/src/modules/crons.ts +0 -115
  194. package/src/modules/datasets.ts +0 -142
  195. package/src/modules/files.ts +0 -208
  196. package/src/modules/members.ts +0 -199
  197. package/src/modules/memberships.ts +0 -42
  198. package/src/modules/observability.ts +0 -28
  199. package/src/modules/playground.ts +0 -68
  200. package/src/modules/presets.ts +0 -246
  201. package/src/modules/prompts.ts +0 -147
  202. package/src/modules/roles.ts +0 -112
  203. package/src/modules/store.ts +0 -65
  204. package/src/modules/tenants.ts +0 -79
  205. package/src/modules/threads.ts +0 -343
  206. package/src/modules/tools.ts +0 -91
  207. package/src/modules/traces.ts +0 -133
  208. package/src/modules/vectorStores.ts +0 -257
  209. package/src/modules/workspaces.ts +0 -216
@@ -0,0 +1,199 @@
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
+ function buildAgentDefinitionId(name) {
9
+ const normalized = name
10
+ .trim()
11
+ .toLowerCase()
12
+ .replace(/[^a-z0-9]+/g, ".")
13
+ .replace(/\.{2,}/g, ".")
14
+ .replace(/^\.|\.$/g, "");
15
+ return `agent.${normalized || "untitled"}`;
16
+ }
17
+ function generateAgentIr(config) {
18
+ const agentDefinitionId = buildAgentDefinitionId(config.name);
19
+ const triggerLabel = config.trigger_type === "schedule" ? "Scheduled Trigger" : "Incoming Trigger";
20
+ const outputLabel = config.output_type === "chatwoot" ? "Chatwoot Output" : "HTTP Output";
21
+ return {
22
+ ir_version: "1.0",
23
+ agent_definition_id: agentDefinitionId,
24
+ version: "1.0.0",
25
+ metadata: {
26
+ name: config.name,
27
+ description: "Preset-generated agent_ir.v1 draft",
28
+ },
29
+ state_schema: {
30
+ type: "object",
31
+ properties: {
32
+ global: {
33
+ type: "object",
34
+ },
35
+ },
36
+ },
37
+ inputs_schema: {
38
+ type: "object",
39
+ properties: {
40
+ message: {
41
+ type: "string",
42
+ },
43
+ },
44
+ required: ["message"],
45
+ },
46
+ outputs_schema: {
47
+ type: "object",
48
+ },
49
+ outcome_schema: {
50
+ type: "object",
51
+ properties: {
52
+ preset_ready: {
53
+ type: "boolean",
54
+ },
55
+ },
56
+ required: ["preset_ready"],
57
+ },
58
+ kpi_bindings: [
59
+ {
60
+ kpi_ref: `${agentDefinitionId}.preset_ready`,
61
+ source_scope: "outcome",
62
+ source_path: "preset_ready",
63
+ },
64
+ ],
65
+ evaluation_policy: {
66
+ execution_mode: "async",
67
+ evaluators: [
68
+ {
69
+ evaluator_ref: `eval.${agentDefinitionId}.preset_shape_v1`,
70
+ kind: "rule",
71
+ },
72
+ ],
73
+ sampling_policy: {
74
+ mode: "all",
75
+ },
76
+ },
77
+ improvement_policy_ref: null,
78
+ nodes: [
79
+ {
80
+ id: "start",
81
+ kind: "start",
82
+ capability_ref: "capability://agent-ir/start",
83
+ label: triggerLabel,
84
+ config: {},
85
+ bindings: {},
86
+ editability: { mode: "read_only" },
87
+ },
88
+ {
89
+ id: "draft_output",
90
+ kind: "end",
91
+ capability_ref: "capability://agent-ir/end",
92
+ label: outputLabel,
93
+ config: {},
94
+ bindings: {},
95
+ editability: { mode: "full" },
96
+ },
97
+ ],
98
+ edges: [
99
+ {
100
+ id: "edge_start_to_output",
101
+ from: "start",
102
+ to: "draft_output",
103
+ kind: "default",
104
+ priority: 0,
105
+ },
106
+ ],
107
+ capability_registry_refs: [],
108
+ policies: {},
109
+ editability: {
110
+ mode: "full",
111
+ },
112
+ entrypoints: ["start"],
113
+ };
114
+ }
115
+ function generateUUID() {
116
+ if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {
117
+ return crypto.randomUUID();
118
+ }
119
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
120
+ var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
121
+ return v.toString(16);
122
+ });
123
+ }
124
+ export class PresetsModule {
125
+ _client;
126
+ _headers;
127
+ // Internal modules needed for orchestration
128
+ _agents;
129
+ _triggers;
130
+ constructor(client, getHeaders) {
131
+ this._client = client;
132
+ this._headers = getHeaders;
133
+ this._agents = new AgentsModule(client, getHeaders);
134
+ this._triggers = new TriggersModule(client, getHeaders);
135
+ }
136
+ async createAgent(config) {
137
+ try {
138
+ console.log("[AgentOS SDK] Creating agent from preset...", {
139
+ name: config.name,
140
+ trigger_type: config.trigger_type,
141
+ output_type: config.output_type,
142
+ });
143
+ const { data: agent, error: createError } = await this._agents.create({
144
+ name: config.name,
145
+ idempotency_key: generateUUID()
146
+ });
147
+ if (createError || !agent) {
148
+ console.error("[AgentOS SDK] Failed to create agent:", createError);
149
+ return null;
150
+ }
151
+ const { error: draftError } = await this._agents.updateDraftIr(agent.id, generateAgentIr(config), { if_match: `"${agent.id}:0"` });
152
+ if (draftError) {
153
+ console.error("[AgentOS SDK] Failed to save agent_ir.v1 draft:", draftError);
154
+ return {
155
+ agent_id: agent.id,
156
+ agent_name: agent.name,
157
+ status: "draft",
158
+ };
159
+ }
160
+ const { data: bundle, error: publishError } = await this._agents.publish(agent.id, {
161
+ set_as_live: true,
162
+ required_tools: [],
163
+ idempotency_key: generateUUID(),
164
+ });
165
+ if (publishError) {
166
+ console.error("[AgentOS SDK] Failed to publish bundle:", publishError);
167
+ return {
168
+ agent_id: agent.id,
169
+ agent_name: agent.name,
170
+ status: "draft",
171
+ };
172
+ }
173
+ const triggerMapping = TRIGGER_TYPE_MAP[config.trigger_type] ?? TRIGGER_TYPE_MAP.webhook;
174
+ if (!triggerMapping)
175
+ throw new Error("Trigger mapping failed");
176
+ const { data: trigger, error: triggerError } = await this._triggers.create({
177
+ name: `${config.name} - ${config.trigger_type}`,
178
+ agent_id: agent.id,
179
+ trigger_type: triggerMapping.type,
180
+ template_slug: triggerMapping.template_slug,
181
+ });
182
+ if (triggerError) {
183
+ console.warn("[AgentOS SDK] Failed to create trigger:", triggerError);
184
+ }
185
+ return {
186
+ agent_id: agent.id,
187
+ agent_name: agent.name,
188
+ bundle_id: bundle?.id,
189
+ trigger_id: trigger?.id,
190
+ trigger_url: trigger?.invoke_url,
191
+ status: "live",
192
+ };
193
+ }
194
+ catch (err) {
195
+ console.error("[AgentOS SDK] Exception creating agent from preset:", err);
196
+ return null;
197
+ }
198
+ }
199
+ }
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Prompts Module - Fully Typed
3
+ */
4
+ import type { RawClient, APIResponse } from "../client/raw.js";
5
+ export interface Prompt {
6
+ id: string;
7
+ name: string;
8
+ description?: string;
9
+ workspace_id: string;
10
+ tenant_id: string;
11
+ created_at: string;
12
+ updated_at: string;
13
+ versions?: PromptVersion[];
14
+ }
15
+ export interface PromptVersion {
16
+ id: string;
17
+ prompt_id: string;
18
+ version: number;
19
+ template: string;
20
+ input_schema?: Record<string, unknown>;
21
+ output_schema?: Record<string, unknown>;
22
+ is_live: boolean;
23
+ created_at: string;
24
+ }
25
+ export interface PromptListResponse {
26
+ items: Prompt[];
27
+ total: number;
28
+ }
29
+ export interface PromptVersionListResponse {
30
+ items: PromptVersion[];
31
+ total: number;
32
+ }
33
+ export interface RenderPromptResponse {
34
+ rendered: string;
35
+ input_used: Record<string, unknown>;
36
+ }
37
+ export declare class PromptsModule {
38
+ private client;
39
+ private headers;
40
+ constructor(client: RawClient, headers: () => Record<string, string>);
41
+ /**
42
+ * List all prompts.
43
+ */
44
+ list(params?: {
45
+ workspace_id?: string;
46
+ limit?: number;
47
+ offset?: number;
48
+ }): Promise<APIResponse<PromptListResponse>>;
49
+ /**
50
+ * Get a prompt by ID.
51
+ */
52
+ get(promptId: string): Promise<APIResponse<Prompt>>;
53
+ /**
54
+ * Create a new prompt.
55
+ */
56
+ create(body: {
57
+ name: string;
58
+ description?: string;
59
+ template?: string;
60
+ input_schema?: Record<string, unknown>;
61
+ }): Promise<APIResponse<Prompt>>;
62
+ /**
63
+ * Delete a prompt.
64
+ */
65
+ delete(promptId: string): Promise<APIResponse<void>>;
66
+ /**
67
+ * List all versions of a prompt.
68
+ */
69
+ listVersions(promptId: string): Promise<APIResponse<PromptVersionListResponse>>;
70
+ /**
71
+ * Create a new version.
72
+ */
73
+ createVersion(promptId: string, body: {
74
+ template: string;
75
+ input_schema?: Record<string, unknown>;
76
+ output_schema?: Record<string, unknown>;
77
+ }): Promise<APIResponse<PromptVersion>>;
78
+ /**
79
+ * Set the live version.
80
+ */
81
+ setLiveVersion(promptId: string, versionNumber: number): Promise<APIResponse<void>>;
82
+ /**
83
+ * Render a prompt with variables.
84
+ */
85
+ render(promptId: string, variables: Record<string, unknown>): Promise<APIResponse<RenderPromptResponse>>;
86
+ }
87
+ //# sourceMappingURL=prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/modules/prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Prompts Module - Fully Typed
3
+ */
4
+ export class PromptsModule {
5
+ client;
6
+ headers;
7
+ constructor(client, headers) {
8
+ this.client = client;
9
+ this.headers = headers;
10
+ }
11
+ /**
12
+ * List all prompts.
13
+ */
14
+ async list(params) {
15
+ return this.client.GET("/v1/api/prompts", {
16
+ params: { query: params },
17
+ headers: this.headers(),
18
+ });
19
+ }
20
+ /**
21
+ * Get a prompt by ID.
22
+ */
23
+ async get(promptId) {
24
+ return this.client.GET("/v1/api/prompts/{id}", {
25
+ params: { path: { id: promptId } },
26
+ headers: this.headers(),
27
+ });
28
+ }
29
+ /**
30
+ * Create a new prompt.
31
+ */
32
+ async create(body) {
33
+ return this.client.POST("/v1/api/prompts", {
34
+ body,
35
+ headers: this.headers(),
36
+ });
37
+ }
38
+ /**
39
+ * Delete a prompt.
40
+ */
41
+ async delete(promptId) {
42
+ return this.client.DELETE("/v1/api/prompts/{id}", {
43
+ params: { path: { id: promptId } },
44
+ headers: this.headers(),
45
+ });
46
+ }
47
+ // ======================== Versions ========================
48
+ /**
49
+ * List all versions of a prompt.
50
+ */
51
+ async listVersions(promptId) {
52
+ return this.client.GET("/v1/api/prompts/{id}/versions", {
53
+ params: { path: { id: promptId } },
54
+ headers: this.headers(),
55
+ });
56
+ }
57
+ /**
58
+ * Create a new version.
59
+ */
60
+ async createVersion(promptId, body) {
61
+ return this.client.POST("/v1/api/prompts/{id}/versions", {
62
+ params: { path: { id: promptId } },
63
+ body,
64
+ headers: this.headers(),
65
+ });
66
+ }
67
+ /**
68
+ * Set the live version.
69
+ */
70
+ async setLiveVersion(promptId, versionNumber) {
71
+ return this.client.POST("/v1/api/prompts/{id}/set-live", {
72
+ params: { path: { id: promptId } },
73
+ body: { version_number: versionNumber },
74
+ headers: this.headers(),
75
+ });
76
+ }
77
+ /**
78
+ * Render a prompt with variables.
79
+ */
80
+ async render(promptId, variables) {
81
+ return this.client.POST("/v1/api/prompts/{id}/render", {
82
+ params: { path: { id: promptId } },
83
+ body: { variables },
84
+ headers: this.headers(),
85
+ });
86
+ }
87
+ }
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Roles Module — Tenant role and permission management.
3
+ *
4
+ * Endpoints: /v1/api/roles
5
+ */
6
+ import type { RawClient, APIResponse } from "../client/raw.js";
7
+ export interface TenantRole {
8
+ id: string;
9
+ name: string;
10
+ is_system: boolean;
11
+ permissions: string[];
12
+ created_at: string;
13
+ members_count: number;
14
+ }
15
+ export interface RoleListResponse {
16
+ items: TenantRole[];
17
+ }
18
+ export interface PermissionsListResponse {
19
+ items: string[];
20
+ }
21
+ export declare class RolesModule {
22
+ private client;
23
+ private headers;
24
+ constructor(client: RawClient, headers: () => Record<string, string>);
25
+ /**
26
+ * List all roles available in the tenant.
27
+ */
28
+ list(): Promise<APIResponse<RoleListResponse>>;
29
+ /**
30
+ * Get a specific role by ID.
31
+ */
32
+ get(roleId: string): Promise<APIResponse<TenantRole>>;
33
+ /**
34
+ * List all available system permissions.
35
+ */
36
+ getPermissions(): Promise<APIResponse<PermissionsListResponse>>;
37
+ /**
38
+ * Create a new custom role.
39
+ */
40
+ create(body: {
41
+ name: string;
42
+ permissions?: string[];
43
+ }): Promise<APIResponse<TenantRole>>;
44
+ /**
45
+ * Update an existing custom role.
46
+ * System roles cannot be updated.
47
+ */
48
+ update(roleId: string, body: {
49
+ name?: string;
50
+ permissions?: string[];
51
+ }): Promise<APIResponse<TenantRole>>;
52
+ /**
53
+ * Delete a custom role.
54
+ * System roles and roles assigned to members cannot be deleted.
55
+ */
56
+ delete(roleId: string): Promise<APIResponse<void>>;
57
+ /**
58
+ * Seed default permissions for all roles in the tenant.
59
+ */
60
+ seedDefaults(): Promise<APIResponse<{
61
+ message: string;
62
+ }>>;
63
+ }
64
+ //# sourceMappingURL=roles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../src/modules/roles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAM/D,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACpC,KAAK,EAAE,MAAM,EAAE,CAAC;CACnB;AAMD,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,IAAI,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAMpD;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAO3D;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAMrE;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAOpC;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAQpC;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAOxD;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAKlE"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Roles Module — Tenant role and permission management.
3
+ *
4
+ * Endpoints: /v1/api/roles
5
+ */
6
+ // =============================================================================
7
+ // Module
8
+ // =============================================================================
9
+ export class RolesModule {
10
+ client;
11
+ headers;
12
+ constructor(client, headers) {
13
+ this.client = client;
14
+ this.headers = headers;
15
+ }
16
+ /**
17
+ * List all roles available in the tenant.
18
+ */
19
+ async list() {
20
+ return this.client.GET("/v1/api/roles", {
21
+ headers: this.headers(),
22
+ });
23
+ }
24
+ /**
25
+ * Get a specific role by ID.
26
+ */
27
+ async get(roleId) {
28
+ return this.client.GET("/v1/api/roles/{id}", {
29
+ params: { path: { id: roleId } },
30
+ headers: this.headers(),
31
+ });
32
+ }
33
+ /**
34
+ * List all available system permissions.
35
+ */
36
+ async getPermissions() {
37
+ return this.client.GET("/v1/api/roles/permissions", {
38
+ headers: this.headers(),
39
+ });
40
+ }
41
+ /**
42
+ * Create a new custom role.
43
+ */
44
+ async create(body) {
45
+ return this.client.POST("/v1/api/roles", {
46
+ body,
47
+ headers: this.headers(),
48
+ });
49
+ }
50
+ /**
51
+ * Update an existing custom role.
52
+ * System roles cannot be updated.
53
+ */
54
+ async update(roleId, body) {
55
+ return this.client.PUT("/v1/api/roles/{id}", {
56
+ params: { path: { id: roleId } },
57
+ body,
58
+ headers: this.headers(),
59
+ });
60
+ }
61
+ /**
62
+ * Delete a custom role.
63
+ * System roles and roles assigned to members cannot be deleted.
64
+ */
65
+ async delete(roleId) {
66
+ return this.client.DELETE("/v1/api/roles/{id}", {
67
+ params: { path: { id: roleId } },
68
+ headers: this.headers(),
69
+ });
70
+ }
71
+ /**
72
+ * Seed default permissions for all roles in the tenant.
73
+ */
74
+ async seedDefaults() {
75
+ return this.client.POST("/v1/api/roles/seed-defaults", {
76
+ headers: this.headers(),
77
+ });
78
+ }
79
+ }