@ai_kit/client-kit 0.1.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 ADDED
@@ -0,0 +1,51 @@
1
+ # @ai_kit/client-kit
2
+
3
+ Client léger pour interagir avec un serveur AI Kit. Il standardise les appels HTTP et vous évite de manipuler manuellement les URLs ou les en-têtes.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @ai_kit/client-kit
9
+ ```
10
+
11
+ ## Utilisation
12
+
13
+ ```ts
14
+ import { ClientKit } from "@ai_kit/client-kit";
15
+
16
+ const client = new ClientKit({
17
+ baseUrl: "https://agents.internal.aidalinfo.fr",
18
+ headers: { Authorization: `Bearer ${process.env.SERVER_TOKEN}` },
19
+ runtime: {
20
+ metadata: { tenant: "aidalinfo" },
21
+ ctx: { locale: "fr-FR" },
22
+ },
23
+ });
24
+
25
+ const agent = await client.getAgent("support");
26
+ const answer = await client.generateAgent("support", {
27
+ prompt: "Donne-moi le résumé de la dernière release.",
28
+ });
29
+
30
+ const run = await client.runWorkflow("enrich-contact", {
31
+ inputData: { contactId: "123" },
32
+ metadata: { requestId: "run_abc" },
33
+ });
34
+
35
+ if (run.status === "waiting_human" && run.pendingHuman) {
36
+ await client.resumeWorkflow("enrich-contact", run.runId, {
37
+ stepId: run.pendingHuman.stepId,
38
+ data: { approved: true },
39
+ });
40
+ }
41
+ ```
42
+
43
+ ## API
44
+
45
+ - `listAgents()` / `getAgent(id)`
46
+ - `generateAgent(id, payload)`
47
+ - `listWorkflows()` / `getWorkflow(id)`
48
+ - `runWorkflow(id, payload)`
49
+ - `resumeWorkflow(id, runId, payload)`
50
+
51
+ Les métadonnées et le contexte (`ctx`) définis dans `runtime` sont fusionnés automatiquement avec ceux fournis à l’appel.
@@ -0,0 +1,74 @@
1
+ import type { AgentGenerateResult, WorkflowRunOptions, WorkflowRunResult } from "@ai_kit/core";
2
+ export interface ClientKitOptions {
3
+ baseUrl?: string;
4
+ headers?: HeadersInit;
5
+ fetch?: typeof fetch;
6
+ runtime?: DefaultRuntimeContext;
7
+ }
8
+ export interface DefaultRuntimeContext {
9
+ metadata?: Record<string, unknown>;
10
+ ctx?: Record<string, unknown>;
11
+ }
12
+ export interface RequestOptions {
13
+ headers?: HeadersInit;
14
+ signal?: AbortSignal;
15
+ }
16
+ export interface AgentSummary {
17
+ id: string;
18
+ name: string;
19
+ instructions?: string;
20
+ }
21
+ export interface WorkflowSummary {
22
+ id: string;
23
+ workflowId: string;
24
+ description?: string;
25
+ }
26
+ export type AgentGeneratePayload = ({
27
+ prompt: string;
28
+ messages?: never;
29
+ } & Record<string, unknown>) | ({
30
+ messages: unknown;
31
+ prompt?: never;
32
+ } & Record<string, unknown>) | ({
33
+ prompt: string;
34
+ messages: unknown;
35
+ } & Record<string, unknown>);
36
+ export interface WorkflowRunPayload<Input, Meta extends Record<string, unknown> = Record<string, unknown>, Ctx extends Record<string, unknown> = Record<string, unknown>> {
37
+ inputData: Input;
38
+ metadata?: Meta;
39
+ ctx?: Ctx;
40
+ telemetry?: WorkflowRunOptions<Input, Meta, Ctx>["telemetry"];
41
+ }
42
+ export interface ResumeWorkflowPayload {
43
+ stepId: string;
44
+ data: unknown;
45
+ }
46
+ export type WorkflowRunResponse<Output, Meta extends Record<string, unknown>, Ctx extends Record<string, unknown>> = WorkflowRunResult<Output, Meta, Ctx> & {
47
+ runId: string;
48
+ };
49
+ export declare class ClientKitError extends Error {
50
+ readonly status: number;
51
+ readonly details?: unknown;
52
+ constructor(message: string, status: number, details?: unknown);
53
+ }
54
+ export declare class ClientKit {
55
+ private readonly baseUrl;
56
+ private readonly defaultHeaders;
57
+ private readonly fetchImpl;
58
+ private readonly runtimeDefaults;
59
+ constructor(options?: ClientKitOptions);
60
+ listAgents(options?: RequestOptions): Promise<AgentSummary[]>;
61
+ getAgent(id: string, options?: RequestOptions): Promise<AgentSummary>;
62
+ generateAgent<OUTPUT = unknown, PAYLOAD extends AgentGeneratePayload = AgentGeneratePayload>(id: string, payload: PAYLOAD, options?: RequestOptions): Promise<AgentGenerateResult<OUTPUT>>;
63
+ listWorkflows(options?: RequestOptions): Promise<WorkflowSummary[]>;
64
+ getWorkflow(id: string, options?: RequestOptions): Promise<WorkflowSummary>;
65
+ runWorkflow<Input, Output = unknown, Meta extends Record<string, unknown> = Record<string, unknown>, Ctx extends Record<string, unknown> = Record<string, unknown>>(id: string, payload: WorkflowRunPayload<Input, Meta, Ctx>, options?: RequestOptions): Promise<WorkflowRunResponse<Output, Meta, Ctx>>;
66
+ resumeWorkflow<Output = unknown, Meta extends Record<string, unknown> = Record<string, unknown>, Ctx extends Record<string, unknown> = Record<string, unknown>>(id: string, runId: string, payload: ResumeWorkflowPayload, options?: RequestOptions): Promise<WorkflowRunResponse<Output, Meta, Ctx>>;
67
+ private buildWorkflowBody;
68
+ private toHeaders;
69
+ private mergeHeaders;
70
+ private resolveUrl;
71
+ private requestJson;
72
+ }
73
+ export default ClientKit;
74
+ //# sourceMappingURL=ClientKit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClientKit.d.ts","sourceRoot":"","sources":["../src/ClientKit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ export class ClientKitError extends Error {
2
+ status;
3
+ details;
4
+ constructor(message, status, details) {
5
+ super(message);
6
+ this.name = "ClientKitError";
7
+ this.status = status;
8
+ this.details = details;
9
+ }
10
+ }
11
+ function mergeRecords(base, override) {
12
+ if (!base && !override) {
13
+ return undefined;
14
+ }
15
+ if (!base) {
16
+ return override;
17
+ }
18
+ if (!override) {
19
+ return base;
20
+ }
21
+ return { ...base, ...override };
22
+ }
23
+ function ensureAgentPayload(payload) {
24
+ if (!payload || typeof payload !== "object") {
25
+ throw new ClientKitError("Agent payload must be an object", 400);
26
+ }
27
+ const hasPrompt = "prompt" in payload && payload.prompt !== undefined;
28
+ const hasMessages = "messages" in payload && payload.messages !== undefined;
29
+ if (!hasPrompt && !hasMessages) {
30
+ throw new ClientKitError("Agent payload must include a prompt or messages field", 400);
31
+ }
32
+ }
33
+ export class ClientKit {
34
+ baseUrl;
35
+ defaultHeaders;
36
+ fetchImpl;
37
+ runtimeDefaults;
38
+ constructor(options = {}) {
39
+ const baseUrl = options.baseUrl ?? "http://localhost:3000";
40
+ this.baseUrl = new URL(baseUrl.endsWith("/") ? baseUrl : `${baseUrl}/`);
41
+ this.defaultHeaders = this.toHeaders(options.headers);
42
+ this.fetchImpl = options.fetch ?? globalThis.fetch;
43
+ if (typeof this.fetchImpl !== "function") {
44
+ throw new Error("ClientKit requires a fetch implementation");
45
+ }
46
+ this.runtimeDefaults = options.runtime ?? {};
47
+ }
48
+ async listAgents(options) {
49
+ const { agents } = await this.requestJson("/api/agents", {
50
+ method: "GET",
51
+ headers: options?.headers,
52
+ signal: options?.signal,
53
+ });
54
+ return agents;
55
+ }
56
+ async getAgent(id, options) {
57
+ const agents = await this.listAgents(options);
58
+ const agent = agents.find(entry => entry.id === id);
59
+ if (!agent) {
60
+ throw new ClientKitError(`Agent ${id} not found`, 404);
61
+ }
62
+ return agent;
63
+ }
64
+ async generateAgent(id, payload, options) {
65
+ ensureAgentPayload(payload);
66
+ return this.requestJson(`/api/agents/${encodeURIComponent(id)}/generate`, {
67
+ method: "POST",
68
+ body: payload,
69
+ headers: options?.headers,
70
+ signal: options?.signal,
71
+ });
72
+ }
73
+ async listWorkflows(options) {
74
+ const { workflows } = await this.requestJson("/api/workflows", {
75
+ method: "GET",
76
+ headers: options?.headers,
77
+ signal: options?.signal,
78
+ });
79
+ return workflows;
80
+ }
81
+ async getWorkflow(id, options) {
82
+ const workflows = await this.listWorkflows(options);
83
+ const workflow = workflows.find(entry => entry.id === id);
84
+ if (!workflow) {
85
+ throw new ClientKitError(`Workflow ${id} not found`, 404);
86
+ }
87
+ return workflow;
88
+ }
89
+ async runWorkflow(id, payload, options) {
90
+ if (!payload || typeof payload !== "object") {
91
+ throw new ClientKitError("Workflow payload must be an object", 400);
92
+ }
93
+ if (!("inputData" in payload)) {
94
+ throw new ClientKitError("Workflow payload must include an inputData field", 400);
95
+ }
96
+ const body = this.buildWorkflowBody(payload);
97
+ return this.requestJson(`/api/workflows/${encodeURIComponent(id)}/run`, {
98
+ method: "POST",
99
+ body,
100
+ headers: options?.headers,
101
+ signal: options?.signal,
102
+ });
103
+ }
104
+ async resumeWorkflow(id, runId, payload, options) {
105
+ if (!payload || typeof payload !== "object") {
106
+ throw new ClientKitError("Resume payload must be an object", 400);
107
+ }
108
+ if (typeof payload.stepId !== "string" || payload.stepId.length === 0) {
109
+ throw new ClientKitError("Resume payload must include a stepId", 400);
110
+ }
111
+ return this.requestJson(`/api/workflows/${encodeURIComponent(id)}/runs/${encodeURIComponent(runId)}/resume`, {
112
+ method: "POST",
113
+ body: payload,
114
+ headers: options?.headers,
115
+ signal: options?.signal,
116
+ });
117
+ }
118
+ buildWorkflowBody(payload) {
119
+ const metadata = mergeRecords(this.runtimeDefaults.metadata, payload.metadata);
120
+ const ctx = mergeRecords(this.runtimeDefaults.ctx, payload.ctx);
121
+ const body = {
122
+ inputData: payload.inputData,
123
+ };
124
+ if (metadata !== undefined) {
125
+ body.metadata = metadata;
126
+ }
127
+ if (ctx !== undefined) {
128
+ body.ctx = ctx;
129
+ }
130
+ if (payload.telemetry !== undefined) {
131
+ body.telemetry = payload.telemetry;
132
+ }
133
+ return body;
134
+ }
135
+ toHeaders(init) {
136
+ const headers = new Headers();
137
+ if (init) {
138
+ const normalized = new Headers(init);
139
+ normalized.forEach((value, key) => {
140
+ headers.set(key, value);
141
+ });
142
+ }
143
+ return headers;
144
+ }
145
+ mergeHeaders(...inits) {
146
+ const headers = new Headers(this.defaultHeaders);
147
+ for (const init of inits) {
148
+ if (!init) {
149
+ continue;
150
+ }
151
+ const normalized = new Headers(init);
152
+ normalized.forEach((value, key) => {
153
+ headers.set(key, value);
154
+ });
155
+ }
156
+ return headers;
157
+ }
158
+ resolveUrl(path) {
159
+ const relative = path.startsWith("/") ? path.slice(1) : path;
160
+ return new URL(relative, this.baseUrl).toString();
161
+ }
162
+ async requestJson(path, init = {}) {
163
+ const headers = this.mergeHeaders(init.headers);
164
+ if (init.body !== undefined && !headers.has("content-type")) {
165
+ headers.set("content-type", "application/json");
166
+ }
167
+ if (!headers.has("accept")) {
168
+ headers.set("accept", "application/json");
169
+ }
170
+ const response = await this.fetchImpl(this.resolveUrl(path), {
171
+ method: init.method ?? (init.body === undefined ? "GET" : "POST"),
172
+ headers,
173
+ body: init.body === undefined
174
+ ? undefined
175
+ : JSON.stringify(init.body, (_key, value) => value instanceof Map ? Object.fromEntries(value) : value),
176
+ signal: init.signal,
177
+ });
178
+ if (!response.ok) {
179
+ let details;
180
+ const contentType = response.headers.get("content-type");
181
+ if (contentType && contentType.includes("application/json")) {
182
+ try {
183
+ details = await response.json();
184
+ }
185
+ catch {
186
+ details = undefined;
187
+ }
188
+ }
189
+ else {
190
+ try {
191
+ details = await response.text();
192
+ }
193
+ catch {
194
+ details = undefined;
195
+ }
196
+ }
197
+ throw new ClientKitError(`Request to ${path} failed with status ${response.status}`, response.status, details);
198
+ }
199
+ if (response.status === 204) {
200
+ return undefined;
201
+ }
202
+ const contentType = response.headers.get("content-type");
203
+ if (!contentType || !contentType.includes("application/json")) {
204
+ throw new ClientKitError(`Expected JSON response from ${path} but received ${contentType ?? "unknown content type"}`, response.status);
205
+ }
206
+ return (await response.json());
207
+ }
208
+ }
209
+ export default ClientKit;
210
+ //# sourceMappingURL=ClientKit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClientKit.js","sourceRoot":"","sources":["../src/ClientKit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { ClientKit, ClientKit as default } from "./ClientKit.js";
2
+ export * from "./ClientKit.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACjE,cAAc,gBAAgB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export { ClientKit, ClientKit as default } from "./ClientKit.js";
2
+ export * from "./ClientKit.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACjE,cAAc,gBAAgB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@ai_kit/client-kit",
3
+ "version": "0.1.0",
4
+ "description": "Lightweight HTTP client for interacting with AI Kit servers",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "publishConfig": {
18
+ "access": "public"
19
+ },
20
+ "keywords": [
21
+ "ai",
22
+ "agent",
23
+ "workflow",
24
+ "client"
25
+ ],
26
+ "license": "MIT",
27
+ "dependencies": {
28
+ "@ai_kit/core": "^1.0.25-alpha.2"
29
+ },
30
+ "devDependencies": {
31
+ "@types/node": "^24.7.0",
32
+ "typescript": "^5.9.2",
33
+ "vitest": "^2.1.3"
34
+ },
35
+ "scripts": {
36
+ "clean": "rm -rf dist",
37
+ "build": "pnpm run clean && tsc -p tsconfig.build.json",
38
+ "test": "vitest run"
39
+ }
40
+ }