@irogane/kaji 0.2.0-beta.11

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 (136) hide show
  1. package/LICENSE +105 -0
  2. package/README.md +598 -0
  3. package/contracts/README.md +14 -0
  4. package/contracts/beta-core-v1.json +52 -0
  5. package/contracts/cli/init-cases-v1.json +27 -0
  6. package/contracts/errors/error-codes.json +48 -0
  7. package/contracts/errors/integration-recovery-v1.json +127 -0
  8. package/contracts/errors/provider-normalization.json +111 -0
  9. package/contracts/events/conformance-invalid.json +20 -0
  10. package/contracts/events/conformance.json +511 -0
  11. package/contracts/events/new-kaji-event-v1.schema.json +1021 -0
  12. package/contracts/events/stored-kaji-event-v1.schema.json +1025 -0
  13. package/contracts/feature-tiers-v1.json +488 -0
  14. package/contracts/integrations/abi-index-v1.json +8 -0
  15. package/contracts/integrations/conformance-invalid.json +443 -0
  16. package/contracts/integrations/conformance-valid.json +121 -0
  17. package/contracts/integrations/copy-provenance-v1.schema.json +61 -0
  18. package/contracts/integrations/echo-tool-abi-v1.json +37 -0
  19. package/contracts/integrations/github-api-conformance-v1.json +644 -0
  20. package/contracts/integrations/github-tool-abi-typescript-v1.json +369 -0
  21. package/contracts/integrations/github-tool-abi-v1.json +146 -0
  22. package/contracts/integrations/gmail-api-conformance-v1.json +750 -0
  23. package/contracts/integrations/gmail-tool-abi-v1.json +62 -0
  24. package/contracts/integrations/index.schema.json +37 -0
  25. package/contracts/integrations/manifest.schema.json +119 -0
  26. package/contracts/parity/expected-normalized.json +4906 -0
  27. package/contracts/parity/scenarios.json +100 -0
  28. package/contracts/parity/scenarios.schema.json +214 -0
  29. package/contracts/providers/cost-conformance.json +112 -0
  30. package/contracts/release/github-proof-v1.schema.json +138 -0
  31. package/contracts/release/gmail-proof-v1.schema.json +138 -0
  32. package/contracts/release/kaji-ts-consumer-handoff-v1.schema.json +1289 -0
  33. package/contracts/release/publisher-identity-receipt-v1.schema.json +319 -0
  34. package/contracts/release/typescript-onboarding-evidence-v1.schema.json +740 -0
  35. package/contracts/tools/conformance-invalid.json +271 -0
  36. package/contracts/tools/conformance-valid.json +78 -0
  37. package/contracts/tools/tool-schema-v1.schema.json +18 -0
  38. package/dist/anthropic.cjs +1231 -0
  39. package/dist/anthropic.cjs.map +1 -0
  40. package/dist/anthropic.d.cts +26 -0
  41. package/dist/anthropic.d.ts +26 -0
  42. package/dist/anthropic.js +270 -0
  43. package/dist/anthropic.js.map +1 -0
  44. package/dist/auth.cjs +1507 -0
  45. package/dist/auth.cjs.map +1 -0
  46. package/dist/auth.d.cts +129 -0
  47. package/dist/auth.d.ts +129 -0
  48. package/dist/auth.js +1039 -0
  49. package/dist/auth.js.map +1 -0
  50. package/dist/base-B9FRMcP8.d.cts +140 -0
  51. package/dist/base-nHQd1VtS.d.ts +140 -0
  52. package/dist/chunk-AAM33KAO.js +4367 -0
  53. package/dist/chunk-AAM33KAO.js.map +1 -0
  54. package/dist/chunk-KAJ6BM64.js +153 -0
  55. package/dist/chunk-KAJ6BM64.js.map +1 -0
  56. package/dist/chunk-KCAXIOZS.js +308 -0
  57. package/dist/chunk-KCAXIOZS.js.map +1 -0
  58. package/dist/chunk-LSJ4AVO2.js +243 -0
  59. package/dist/chunk-LSJ4AVO2.js.map +1 -0
  60. package/dist/chunk-TM7ZGOJX.js +716 -0
  61. package/dist/chunk-TM7ZGOJX.js.map +1 -0
  62. package/dist/cli/bin.d.ts +2 -0
  63. package/dist/cli/bin.js +13 -0
  64. package/dist/cli/bin.js.map +1 -0
  65. package/dist/cli/chunk-2RCWPRVY.js +6277 -0
  66. package/dist/cli/chunk-2RCWPRVY.js.map +1 -0
  67. package/dist/cli/chunk-SEBX54TR.js +681 -0
  68. package/dist/cli/chunk-SEBX54TR.js.map +1 -0
  69. package/dist/cli/index.d.ts +232 -0
  70. package/dist/cli/index.js +11 -0
  71. package/dist/cli/index.js.map +1 -0
  72. package/dist/cli/init-worker.d.ts +2 -0
  73. package/dist/cli/init-worker.js +18 -0
  74. package/dist/cli/init-worker.js.map +1 -0
  75. package/dist/cli/integration-copy-worker.js +48 -0
  76. package/dist/cli/integration-copy-worker.js.map +1 -0
  77. package/dist/cli/package-entry-cjs.cjs +21 -0
  78. package/dist/cli/package-entry-cjs.cjs.map +1 -0
  79. package/dist/cli/package-entry-cjs.d.cts +2 -0
  80. package/dist/cli/package-entry.d.ts +2 -0
  81. package/dist/cli/package-entry.js +13 -0
  82. package/dist/cli/package-entry.js.map +1 -0
  83. package/dist/context-BaFHrQHv.d.cts +21 -0
  84. package/dist/context-BaFHrQHv.d.ts +21 -0
  85. package/dist/context-C-YPY-GS.d.cts +1538 -0
  86. package/dist/context-C-YPY-GS.d.ts +1538 -0
  87. package/dist/index.cjs +12346 -0
  88. package/dist/index.cjs.map +1 -0
  89. package/dist/index.d.cts +1560 -0
  90. package/dist/index.d.ts +1560 -0
  91. package/dist/index.js +7852 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/integrations/github.cjs +2092 -0
  94. package/dist/integrations/github.cjs.map +1 -0
  95. package/dist/integrations/github.d.cts +21 -0
  96. package/dist/integrations/github.d.ts +21 -0
  97. package/dist/integrations/github.js +2088 -0
  98. package/dist/integrations/github.js.map +1 -0
  99. package/dist/integrations.cjs +3370 -0
  100. package/dist/integrations.cjs.map +1 -0
  101. package/dist/integrations.d.cts +202 -0
  102. package/dist/integrations.d.ts +202 -0
  103. package/dist/integrations.js +2650 -0
  104. package/dist/integrations.js.map +1 -0
  105. package/dist/observability-Cj--OkME.d.cts +96 -0
  106. package/dist/observability-Cj--OkME.d.ts +96 -0
  107. package/dist/openai.cjs +1235 -0
  108. package/dist/openai.cjs.map +1 -0
  109. package/dist/openai.d.cts +32 -0
  110. package/dist/openai.d.ts +32 -0
  111. package/dist/openai.js +272 -0
  112. package/dist/openai.js.map +1 -0
  113. package/dist/testing.cjs +554 -0
  114. package/dist/testing.cjs.map +1 -0
  115. package/dist/testing.d.cts +43 -0
  116. package/dist/testing.d.ts +43 -0
  117. package/dist/testing.js +118 -0
  118. package/dist/testing.js.map +1 -0
  119. package/package.json +188 -0
  120. package/registry/echo/index.ts +53 -0
  121. package/registry/echo/manifest.json +53 -0
  122. package/registry/github/LICENSE +105 -0
  123. package/registry/github/client.ts +1727 -0
  124. package/registry/github/index.ts +263 -0
  125. package/registry/github/manifest.json +227 -0
  126. package/registry/github/owner-fixtures.json +10 -0
  127. package/registry/github/tests/github.test.ts +32 -0
  128. package/registry/gmail/LICENSE +105 -0
  129. package/registry/gmail/client.ts +548 -0
  130. package/registry/gmail/index.ts +165 -0
  131. package/registry/gmail/manifest.json +102 -0
  132. package/registry/gmail/owner-fixtures.json +10 -0
  133. package/registry/gmail/tests/gmail.test.ts +32 -0
  134. package/registry/index.json +21 -0
  135. package/registry/index.schema.json +37 -0
  136. package/registry/schema.json +119 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/events/json.ts","../src/runtime/cancellation.ts","../src/observability.ts","../src/providers/base.ts","../src/providers/errors.ts","../src/providers/args.ts","../src/providers/costs.ts","../src/providers/openai-format.ts","../src/providers/response-budget.ts","../src/providers/openai.ts"],"names":[],"mappings":"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","file":"openai.cjs"}
@@ -0,0 +1,32 @@
1
+ import { M as ModelProvider, R as RetryOptions, P as ProviderMessage, T as ToolSpec, a as ModelProviderOptions, b as ModelResponse, c as ModelResponseChunk } from './base-B9FRMcP8.cjs';
2
+ import './observability-Cj--OkME.cjs';
3
+
4
+ interface OpenAIProviderOptions {
5
+ apiKey: string;
6
+ model?: string;
7
+ baseURL?: string;
8
+ temperature?: number;
9
+ maxTokens?: number;
10
+ /** Per-request timeout in milliseconds. Must be a positive finite integer. */
11
+ requestTimeoutMs?: number;
12
+ /** Extra HTTP headers to send with every request. Used by OpenAI-compatible
13
+ * gateways (OpenRouter, Together, Groq) to attach attribution or routing
14
+ * metadata. Ignored when the value is empty. */
15
+ defaultHeaders?: Record<string, string>;
16
+ /** Rate-limit retry configuration. */
17
+ retry?: RetryOptions;
18
+ }
19
+ declare class OpenAIProvider implements ModelProvider {
20
+ readonly providerFamily: "openai";
21
+ private readonly opts;
22
+ private client;
23
+ constructor(opts: OpenAIProviderOptions);
24
+ /** Expose the model name for downstream cost calculation. */
25
+ get model(): string;
26
+ protected createClient(): Promise<object>;
27
+ private getClient;
28
+ generate(messages: ProviderMessage[], tools: ToolSpec[], options?: ModelProviderOptions): Promise<ModelResponse>;
29
+ generateStream(messages: ProviderMessage[], tools: ToolSpec[], options?: ModelProviderOptions): AsyncGenerator<ModelResponseChunk>;
30
+ }
31
+
32
+ export { OpenAIProvider, type OpenAIProviderOptions, RetryOptions };
@@ -0,0 +1,32 @@
1
+ import { M as ModelProvider, R as RetryOptions, P as ProviderMessage, T as ToolSpec, a as ModelProviderOptions, b as ModelResponse, c as ModelResponseChunk } from './base-nHQd1VtS.js';
2
+ import './observability-Cj--OkME.js';
3
+
4
+ interface OpenAIProviderOptions {
5
+ apiKey: string;
6
+ model?: string;
7
+ baseURL?: string;
8
+ temperature?: number;
9
+ maxTokens?: number;
10
+ /** Per-request timeout in milliseconds. Must be a positive finite integer. */
11
+ requestTimeoutMs?: number;
12
+ /** Extra HTTP headers to send with every request. Used by OpenAI-compatible
13
+ * gateways (OpenRouter, Together, Groq) to attach attribution or routing
14
+ * metadata. Ignored when the value is empty. */
15
+ defaultHeaders?: Record<string, string>;
16
+ /** Rate-limit retry configuration. */
17
+ retry?: RetryOptions;
18
+ }
19
+ declare class OpenAIProvider implements ModelProvider {
20
+ readonly providerFamily: "openai";
21
+ private readonly opts;
22
+ private client;
23
+ constructor(opts: OpenAIProviderOptions);
24
+ /** Expose the model name for downstream cost calculation. */
25
+ get model(): string;
26
+ protected createClient(): Promise<object>;
27
+ private getClient;
28
+ generate(messages: ProviderMessage[], tools: ToolSpec[], options?: ModelProviderOptions): Promise<ModelResponse>;
29
+ generateStream(messages: ProviderMessage[], tools: ToolSpec[], options?: ModelProviderOptions): AsyncGenerator<ModelResponseChunk>;
30
+ }
31
+
32
+ export { OpenAIProvider, type OpenAIProviderOptions, RetryOptions };
package/dist/openai.js ADDED
@@ -0,0 +1,272 @@
1
+ import { ProviderConfigError, ProviderError, throwIfCancellationRequested, ProviderResponseBudget, withRetry, lookupCost, calculateCostUsd, ProviderOutputLimitError, providerAPIErrorFromUnknown, getProviderResponseDiagnostics, openStreamWithRetry, LinearStringParts, parseToolArgsJSON, closeProviderStream } from './chunk-TM7ZGOJX.js';
2
+ import { canonicalJsonValue } from './chunk-KAJ6BM64.js';
3
+ import './chunk-LSJ4AVO2.js';
4
+
5
+ // src/providers/openai-format.ts
6
+ function toOpenAIChatMessages(messages) {
7
+ return messages.map((m) => {
8
+ if (m.role === "tool") {
9
+ return {
10
+ role: "tool",
11
+ content: m.content,
12
+ tool_call_id: m.tool_call_id ?? ""
13
+ };
14
+ }
15
+ if (m.role === "assistant" && m.toolCalls?.length) {
16
+ return {
17
+ role: "assistant",
18
+ content: m.content,
19
+ tool_calls: m.toolCalls.map((tc) => ({
20
+ id: tc.id,
21
+ type: "function",
22
+ function: {
23
+ name: tc.name,
24
+ arguments: JSON.stringify(tc.args ?? {})
25
+ }
26
+ }))
27
+ };
28
+ }
29
+ return { role: m.role, content: m.content };
30
+ });
31
+ }
32
+
33
+ // src/providers/openai.ts
34
+ function toOpenAITools(tools) {
35
+ return tools.map((t) => ({
36
+ type: "function",
37
+ function: {
38
+ name: t.name,
39
+ description: t.description,
40
+ parameters: t.parameters
41
+ }
42
+ }));
43
+ }
44
+ function parseToolCalls(raw) {
45
+ return (raw ?? []).map((tc) => {
46
+ if (tc.type !== "function") {
47
+ return { id: tc.id ?? "", name: "", args: {} };
48
+ }
49
+ const argsRaw = tc.function?.arguments;
50
+ return {
51
+ id: tc.id ?? "",
52
+ name: tc.function?.name ?? "",
53
+ // The OpenAI SDK types arguments as `string`; treat non-strings as
54
+ // already-parsed for forward-compat with mocked SDK shapes.
55
+ args: typeof argsRaw === "string" ? parseToolArgsJSON(argsRaw, "OpenAI") : argsRaw ?? {}
56
+ };
57
+ });
58
+ }
59
+ function rawToolCallFragments(raw) {
60
+ return (raw ?? []).map((toolCall, key) => {
61
+ const args = toolCall.type === "function" ? toolCall.function?.arguments : void 0;
62
+ return {
63
+ key,
64
+ startsCall: true,
65
+ idFragment: toolCall.id ?? "",
66
+ nameFragment: toolCall.type === "function" ? toolCall.function?.name ?? "" : "",
67
+ argumentsFragment: typeof args === "string" ? args : canonicalJsonValue(args ?? {}, "tool arguments")
68
+ };
69
+ });
70
+ }
71
+ var OpenAIProvider = class {
72
+ providerFamily = "openai";
73
+ opts;
74
+ client = null;
75
+ constructor(opts) {
76
+ if (!opts.apiKey?.trim()) {
77
+ throw new ProviderConfigError("OpenAI API key is not configured.", { service: "openai" });
78
+ }
79
+ if (opts.requestTimeoutMs !== void 0 && (!Number.isFinite(opts.requestTimeoutMs) || !Number.isInteger(opts.requestTimeoutMs) || opts.requestTimeoutMs <= 0)) {
80
+ throw new RangeError("requestTimeoutMs must be a positive finite integer");
81
+ }
82
+ this.opts = {
83
+ apiKey: opts.apiKey,
84
+ model: opts.model ?? "gpt-5.4-mini",
85
+ baseURL: opts.baseURL ?? "",
86
+ temperature: opts.temperature ?? 0.7,
87
+ maxTokens: opts.maxTokens ?? 4096,
88
+ requestTimeoutMs: opts.requestTimeoutMs,
89
+ defaultHeaders: opts.defaultHeaders && Object.keys(opts.defaultHeaders).length > 0 ? opts.defaultHeaders : void 0,
90
+ retry: {
91
+ maxAttempts: opts.retry?.maxAttempts ?? 3,
92
+ baseDelayMs: opts.retry?.baseDelayMs ?? 1e3
93
+ }
94
+ };
95
+ }
96
+ /** Expose the model name for downstream cost calculation. */
97
+ get model() {
98
+ return this.opts.model;
99
+ }
100
+ async createClient() {
101
+ const { default: OpenAIDefault } = await import('openai');
102
+ return new OpenAIDefault({
103
+ apiKey: this.opts.apiKey,
104
+ maxRetries: 0,
105
+ ...this.opts.baseURL ? { baseURL: this.opts.baseURL } : {},
106
+ ...this.opts.defaultHeaders ? { defaultHeaders: this.opts.defaultHeaders } : {}
107
+ });
108
+ }
109
+ async getClient() {
110
+ if (this.client !== null) return this.client;
111
+ try {
112
+ this.client = await this.createClient();
113
+ } catch (error) {
114
+ if (error instanceof ProviderError) throw error;
115
+ throw new ProviderConfigError("OpenAI provider requires the openai package.", {
116
+ service: "openai"
117
+ });
118
+ }
119
+ return this.client;
120
+ }
121
+ async generate(messages, tools, options) {
122
+ throwIfCancellationRequested(options?.cancellationToken);
123
+ const client = await this.getClient();
124
+ const params = {
125
+ model: this.opts.model,
126
+ messages: toOpenAIChatMessages(messages),
127
+ temperature: options?.temperature ?? this.opts.temperature,
128
+ max_completion_tokens: options?.maxTokens ?? this.opts.maxTokens
129
+ };
130
+ if (tools.length > 0) params.tools = toOpenAITools(tools);
131
+ const budget = new ProviderResponseBudget(options?.responseLimits);
132
+ try {
133
+ const response = await withRetry(
134
+ () => client.chat.completions.create(params, {
135
+ signal: options?.cancellationToken?.signal,
136
+ ...this.opts.requestTimeoutMs === void 0 ? {} : { timeout: this.opts.requestTimeoutMs }
137
+ }),
138
+ this.opts.retry,
139
+ options?.cancellationToken,
140
+ options?.metricsSink,
141
+ "openai"
142
+ );
143
+ const choice = response.choices[0];
144
+ if (!choice) {
145
+ return { content: "", toolCalls: [], usage: void 0 };
146
+ }
147
+ const message = choice.message;
148
+ const content = message.content ?? "";
149
+ budget.acceptRaw({
150
+ text: content,
151
+ toolFragments: rawToolCallFragments(message.tool_calls)
152
+ });
153
+ budget.finish();
154
+ const usage = response.usage ? { input: response.usage.prompt_tokens, output: response.usage.completion_tokens } : void 0;
155
+ const costUsd = usage && lookupCost(this.opts.model) !== void 0 ? calculateCostUsd(this.opts.model, usage.input, usage.output) : void 0;
156
+ return {
157
+ content,
158
+ toolCalls: parseToolCalls(message.tool_calls),
159
+ usage,
160
+ costUsd
161
+ };
162
+ } catch (error) {
163
+ if (error instanceof ProviderOutputLimitError) throw error;
164
+ throwIfCancellationRequested(options?.cancellationToken);
165
+ throw providerAPIErrorFromUnknown("openai", error, "request");
166
+ } finally {
167
+ getProviderResponseDiagnostics(options)?.record(budget.providerDiagnostics);
168
+ }
169
+ }
170
+ async *generateStream(messages, tools, options) {
171
+ throwIfCancellationRequested(options?.cancellationToken);
172
+ const client = await this.getClient();
173
+ const params = {
174
+ model: this.opts.model,
175
+ messages: toOpenAIChatMessages(messages),
176
+ temperature: options?.temperature ?? this.opts.temperature,
177
+ max_completion_tokens: options?.maxTokens ?? this.opts.maxTokens,
178
+ stream: true,
179
+ stream_options: { include_usage: true }
180
+ };
181
+ if (tools.length > 0) params.tools = toOpenAITools(tools);
182
+ const budget = new ProviderResponseBudget(options?.responseLimits);
183
+ let stream;
184
+ try {
185
+ stream = await openStreamWithRetry(
186
+ () => client.chat.completions.create(params, {
187
+ signal: options?.cancellationToken?.signal,
188
+ ...this.opts.requestTimeoutMs === void 0 ? {} : { timeout: this.opts.requestTimeoutMs }
189
+ }),
190
+ this.opts.retry,
191
+ options?.cancellationToken,
192
+ options?.metricsSink,
193
+ "openai"
194
+ );
195
+ const pendingCalls = /* @__PURE__ */ new Map();
196
+ for await (const chunk of stream) {
197
+ const usage = chunk.usage ? { input: chunk.usage.prompt_tokens, output: chunk.usage.completion_tokens } : void 0;
198
+ if (usage) {
199
+ yield {
200
+ delta: "",
201
+ toolCalls: [],
202
+ usage,
203
+ costUsd: lookupCost(this.opts.model) === void 0 ? void 0 : calculateCostUsd(this.opts.model, usage.input, usage.output)
204
+ };
205
+ continue;
206
+ }
207
+ const delta = chunk.choices[0]?.delta;
208
+ if (!delta) continue;
209
+ const text = delta.content ?? "";
210
+ const incomingCalls = [];
211
+ const fragments = [];
212
+ const knownIndices = new Set(pendingCalls.keys());
213
+ for (const tc of delta.tool_calls ?? []) {
214
+ const idx = tc.index ?? 0;
215
+ const startsCall = !knownIndices.has(idx);
216
+ knownIndices.add(idx);
217
+ fragments.push({
218
+ key: idx,
219
+ startsCall,
220
+ idFragment: tc.id ?? "",
221
+ nameFragment: tc.function?.name ?? "",
222
+ argumentsFragment: tc.function?.arguments ?? ""
223
+ });
224
+ }
225
+ budget.acceptRaw({ text, toolFragments: fragments });
226
+ for (const fragment of fragments) {
227
+ let entry = pendingCalls.get(fragment.key);
228
+ if (entry === void 0) {
229
+ entry = {
230
+ id: new LinearStringParts(),
231
+ name: new LinearStringParts(),
232
+ arguments: new LinearStringParts()
233
+ };
234
+ pendingCalls.set(fragment.key, entry);
235
+ }
236
+ entry.id.append(fragment.idFragment ?? "");
237
+ entry.name.append(fragment.nameFragment ?? "");
238
+ entry.arguments.append(fragment.argumentsFragment ?? "");
239
+ }
240
+ if (chunk.choices[0]?.finish_reason === "tool_calls") {
241
+ for (const [key, entry] of pendingCalls) {
242
+ budget.finishRawTool(key);
243
+ budget.recordToolArgumentJoin();
244
+ incomingCalls.push({
245
+ id: entry.id.join(),
246
+ name: entry.name.join(),
247
+ args: parseToolArgsJSON(entry.arguments.join(), "OpenAI")
248
+ });
249
+ }
250
+ pendingCalls.clear();
251
+ }
252
+ if (text || incomingCalls.length > 0) {
253
+ yield { delta: text, toolCalls: incomingCalls };
254
+ }
255
+ }
256
+ budget.finish();
257
+ } catch (error) {
258
+ if (error instanceof ProviderOutputLimitError) {
259
+ await closeProviderStream(stream);
260
+ throw error;
261
+ }
262
+ throwIfCancellationRequested(options?.cancellationToken);
263
+ throw providerAPIErrorFromUnknown("openai", error, "stream");
264
+ } finally {
265
+ getProviderResponseDiagnostics(options)?.record(budget.providerDiagnostics);
266
+ }
267
+ }
268
+ };
269
+
270
+ export { OpenAIProvider };
271
+ //# sourceMappingURL=openai.js.map
272
+ //# sourceMappingURL=openai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/providers/openai-format.ts","../src/providers/openai.ts"],"names":[],"mappings":"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","file":"openai.js"}