@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,488 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://kaji.dev/contracts/feature-tiers-v1.json",
4
+ "contractVersion": "1.0.0",
5
+ "cliCommands": {
6
+ "python": {
7
+ "stable": ["add", "connect", "disconnect", "init", "list-integrations"],
8
+ "experimental": ["doctor", "gen", "info", "secret", "upgrade"]
9
+ },
10
+ "typescript": {
11
+ "stable": ["add", "connect", "disconnect", "init", "list-integrations", "replay"],
12
+ "experimental": []
13
+ }
14
+ },
15
+ "packageSubpaths": {
16
+ "typescript": {
17
+ "./anthropic": {
18
+ "tier": "experimental",
19
+ "exports": ["AnthropicProvider", "AnthropicProviderOptions"]
20
+ },
21
+ "./auth": {
22
+ "tier": "experimental",
23
+ "exports": [
24
+ "GoogleOAuthClient",
25
+ "GoogleOAuthClientOptions",
26
+ "MacOSKeychainTokenStorage",
27
+ "OAuthAccessTokenProvider",
28
+ "OAuthCredentialRecord",
29
+ "OAuthTokenSet",
30
+ "OAuthTokenStorage",
31
+ "canonicalOAuthCredentialJson",
32
+ "snapshotOAuthCredentialRecord"
33
+ ]
34
+ },
35
+ "./cli": {
36
+ "tier": "stable",
37
+ "exports": []
38
+ },
39
+ "./integrations": {
40
+ "tier": "experimental",
41
+ "exports": [
42
+ "BoundedResponse",
43
+ "FixedOriginRequester",
44
+ "INTEGRATION_RECOVERY",
45
+ "IntegrationAuthRequiredError",
46
+ "IntegrationExecutionError",
47
+ "IntegrationPolicyError",
48
+ "IntegrationRateLimitedError",
49
+ "IntegrationRecoveryFields",
50
+ "IntegrationRecoveryReason",
51
+ "IntegrationTransientReadError",
52
+ "closedRecoveryFields",
53
+ "createGitHubRequester",
54
+ "createGmailRequester",
55
+ "snapshotIntegrationResult"
56
+ ]
57
+ },
58
+ "./integrations/github": {
59
+ "tier": "experimental",
60
+ "exports": [
61
+ "CreateGitHubIntegrationOptions",
62
+ "GitHubIntegration",
63
+ "createGithubIntegration",
64
+ "inspectIntegration"
65
+ ]
66
+ },
67
+ "./openai": {
68
+ "tier": "stable",
69
+ "exports": ["OpenAIProvider", "OpenAIProviderOptions", "RetryOptions"]
70
+ },
71
+ "./testing": {
72
+ "tier": "experimental",
73
+ "exports": [
74
+ "MockProvider",
75
+ "ProviderResponseDiagnostics",
76
+ "createSessionState",
77
+ "withProviderResponseDiagnostics"
78
+ ]
79
+ }
80
+ }
81
+ },
82
+ "publicExports": {
83
+ "python": {
84
+ "stable": [
85
+ "AgentBuilder",
86
+ "AgentRuntime",
87
+ "ApprovalDecision",
88
+ "ApprovalHandler",
89
+ "ApprovalRequestContext",
90
+ "CancellationToken",
91
+ "Clock",
92
+ "DurableJsonLimitError",
93
+ "EffectiveRuntimeLimits",
94
+ "EventApprovalHandler",
95
+ "EventBackedApprovalHandler",
96
+ "EventBufferOverflowError",
97
+ "EventDeliveryError",
98
+ "EventIdConflictError",
99
+ "EventJournal",
100
+ "EventStore",
101
+ "EventStoreCapacityError",
102
+ "IdFactory",
103
+ "IdempotencyCapacityExceeded",
104
+ "IdempotencyConflictError",
105
+ "InMemoryEventJournal",
106
+ "InMemoryEventStore",
107
+ "InMemorySessionStore",
108
+ "InMemoryToolIdempotencyLedger",
109
+ "InMemoryTurnCoordinator",
110
+ "Integration",
111
+ "InvalidDurableValueError",
112
+ "Measurement",
113
+ "MetricsSink",
114
+ "MissingToolIdentityError",
115
+ "ModelProvider",
116
+ "NOOP_METRICS",
117
+ "NOOP_TRACE",
118
+ "NewKajiEvent",
119
+ "NormalizedProviderError",
120
+ "ProviderAPIError",
121
+ "ProviderCancellationContractViolation",
122
+ "ProviderConfigError",
123
+ "ProviderConnectionError",
124
+ "ProviderError",
125
+ "ProviderOutputLimitError",
126
+ "ProviderRateLimitedError",
127
+ "ProviderResponseLimits",
128
+ "PurgeableEventStore",
129
+ "SessionManager",
130
+ "SessionPurgeBusyError",
131
+ "SessionPurgeUnsupportedError",
132
+ "SessionRecord",
133
+ "SessionState",
134
+ "SessionStore",
135
+ "SpanHandle",
136
+ "StoredKajiEvent",
137
+ "SystemClock",
138
+ "SystemIdFactory",
139
+ "ToolArgumentValidationError",
140
+ "ToolExecutionContext",
141
+ "ToolExecutionController",
142
+ "ToolExecutionError",
143
+ "ToolExecutionLimits",
144
+ "ToolIdempotencyLedger",
145
+ "ToolInvocation",
146
+ "ToolRegistry",
147
+ "ToolSchemaValidationError",
148
+ "ToolSchemaValidator",
149
+ "ToolSpec",
150
+ "TraceSink",
151
+ "TurnContext",
152
+ "TurnCoordinator",
153
+ "TurnExecutionLimits",
154
+ "TurnResult",
155
+ "TurnTimeoutError",
156
+ "UnclassifiedToolRiskError",
157
+ "UnknownToolError",
158
+ "UserMessage",
159
+ "__version__",
160
+ "build_tools_payload",
161
+ "function_tool",
162
+ "get_provider",
163
+ "list_tool_specs",
164
+ "normalize_provider_error",
165
+ "register_provider",
166
+ "register_tool",
167
+ "replay_session",
168
+ "spec_to_neutral",
169
+ "supports_session_purge",
170
+ "to_openai",
171
+ "tool"
172
+ ],
173
+ "experimental": [
174
+ "AppendResult",
175
+ "Chunk",
176
+ "CredentialStore",
177
+ "DisconnectResult",
178
+ "Document",
179
+ "DocumentRAG",
180
+ "Embedder",
181
+ "EmbeddingCache",
182
+ "EventBus",
183
+ "GoogleOAuthClient",
184
+ "HistoryStore",
185
+ "InMemoryEventBus",
186
+ "InMemoryHistoryStore",
187
+ "InMemoryVectorStore",
188
+ "JournalEventEmitter",
189
+ "MacOSKeychainTokenStorage",
190
+ "OAuthCredentialRecord",
191
+ "OAuthTokenSet",
192
+ "SplitEventJournal",
193
+ "ToolRetriever",
194
+ "VectorStore",
195
+ "to_anthropic",
196
+ "to_gemini"
197
+ ],
198
+ "deprecated": []
199
+ },
200
+ "typescript": {
201
+ "stable": [
202
+ "AgentBuilder",
203
+ "AgentBuilderBuildOptions",
204
+ "AgentRuntime",
205
+ "AgentRuntimeOptions",
206
+ "AgentStrategy",
207
+ "AgentTurnFailed",
208
+ "ApprovalDeadlineSource",
209
+ "ApprovalDecision",
210
+ "ApprovalFailureCode",
211
+ "ApprovalKey",
212
+ "ApprovalRejectionCode",
213
+ "ApprovalRequestContext",
214
+ "AutoApprovalHandler",
215
+ "AutoApprovalPolicy",
216
+ "BaseEvent",
217
+ "BoundTool",
218
+ "BoundedResponse",
219
+ "CancellationError",
220
+ "CancellationToken",
221
+ "CancellationTokenLike",
222
+ "CliApprovalInput",
223
+ "CliApprovalOptions",
224
+ "CliApprovalOutput",
225
+ "Clock",
226
+ "ContextDiagnostics",
227
+ "ContextIntegrityError",
228
+ "ContextWindow",
229
+ "ContextWindowOverflowError",
230
+ "DEFAULT_CONTEXT_WINDOW",
231
+ "DEFAULT_PROVIDER_RESPONSE_LIMITS",
232
+ "DEFAULT_TOOL_EXECUTION_LIMITS",
233
+ "DEFAULT_TURN_EXECUTION_LIMITS",
234
+ "DurableJsonLimitError",
235
+ "EffectiveRuntimeLimits",
236
+ "EnvSecretSource",
237
+ "EventApprovalHandler",
238
+ "EventApprovalHandlerOptions",
239
+ "EventBackedApprovalHandler",
240
+ "EventBufferOverflowError",
241
+ "EventBusProtocol",
242
+ "EventCommitter",
243
+ "EventDeliveryError",
244
+ "EventIdConflictError",
245
+ "EventSchemaIncompatibleError",
246
+ "EventStore",
247
+ "EventStoreCapacityError",
248
+ "EventType",
249
+ "FunctionToolHandler",
250
+ "FunctionToolMeta",
251
+ "GenerateTextOptions",
252
+ "IdFactory",
253
+ "IdScope",
254
+ "IdempotencyCapacityError",
255
+ "IdempotencyConflictError",
256
+ "InMemoryEventCommitter",
257
+ "InMemoryEventCommitterOptions",
258
+ "InMemoryEventStore",
259
+ "InMemorySessionStore",
260
+ "InMemorySessionTurnCoordinator",
261
+ "InMemoryToolIdempotencyLedger",
262
+ "InMemoryToolIdempotencyLedgerOptions",
263
+ "IndexValidationError",
264
+ "Integrable",
265
+ "Integration",
266
+ "IntegrationAuth",
267
+ "IntegrationExperimentalError",
268
+ "IntegrationManifestDocument",
269
+ "IntegrationManifestTool",
270
+ "IntegrationNotFoundError",
271
+ "IntegrationRuntime",
272
+ "IntegrationStability",
273
+ "IntegrationToolRisk",
274
+ "IntegrationValidationCode",
275
+ "IntegrationValidationError",
276
+ "InvalidDurableValueError",
277
+ "JSONSchema",
278
+ "JournalStage",
279
+ "KajiEvent",
280
+ "KajiEventInput",
281
+ "ListToolSpecsOptions",
282
+ "LoadedIntegrationManifest",
283
+ "METRIC_NAMES",
284
+ "ManifestValidationError",
285
+ "Message",
286
+ "MetricLabels",
287
+ "MetricMeasurement",
288
+ "MetricName",
289
+ "MetricsSink",
290
+ "MissingToolIdentityError",
291
+ "ModelCostEntry",
292
+ "ModelProvider",
293
+ "ModelProviderOptions",
294
+ "ModelResponse",
295
+ "ModelResponseChunk",
296
+ "NOOP_METRICS",
297
+ "NOOP_TRACE",
298
+ "NewKajiEvent",
299
+ "NormalizedIntegrationValidationError",
300
+ "NormalizedProviderError",
301
+ "ObservableCancellationToken",
302
+ "OpenAIProvider",
303
+ "OpenAIProviderOptions",
304
+ "ProviderAPIError",
305
+ "ProviderCancellationContractViolation",
306
+ "ProviderConfigError",
307
+ "ProviderConnectionError",
308
+ "ProviderError",
309
+ "ProviderFamily",
310
+ "ProviderMessage",
311
+ "ProviderOutputDimension",
312
+ "ProviderOutputLimitError",
313
+ "ProviderRateLimitedError",
314
+ "ProviderResponseLimits",
315
+ "ProviderStatus",
316
+ "PurgeableEventStore",
317
+ "RegistryIndexDocument",
318
+ "RegistryIndexEntry",
319
+ "RegistryLoaderOptions",
320
+ "RetryOptions",
321
+ "RunTurnOptions",
322
+ "SecretSource",
323
+ "SessionCreated",
324
+ "SessionManager",
325
+ "SessionProjector",
326
+ "SessionPurgeBusyError",
327
+ "SessionPurgeUnsupportedError",
328
+ "SessionRecord",
329
+ "SessionState",
330
+ "SessionStore",
331
+ "SessionTokens",
332
+ "SessionTurnCoordinator",
333
+ "SessionTurnLease",
334
+ "SpanName",
335
+ "StoredKajiEvent",
336
+ "StreamTextResult",
337
+ "SubscriberStage",
338
+ "TimerHandle",
339
+ "TimerScheduler",
340
+ "TokenUsage",
341
+ "ToolArgumentValidationError",
342
+ "ToolCall",
343
+ "ToolCallInstruction",
344
+ "ToolCallResult",
345
+ "ToolClaimResult",
346
+ "ToolExecutionContext",
347
+ "ToolExecutionController",
348
+ "ToolExecutionControllerOptions",
349
+ "ToolExecutionControllerOutcome",
350
+ "ToolExecutionError",
351
+ "ToolExecutionLimits",
352
+ "ToolExecutionOutcome",
353
+ "ToolExecutionRequest",
354
+ "ToolExecutor",
355
+ "ToolFailureFields",
356
+ "ToolFailureOutcome",
357
+ "ToolHandler",
358
+ "ToolIdempotencyClaim",
359
+ "ToolIdempotencyLedger",
360
+ "ToolLedgerOutcome",
361
+ "ToolMetricOutcome",
362
+ "ToolParameters",
363
+ "ToolPlanner",
364
+ "ToolPlannerOptions",
365
+ "ToolPolicy",
366
+ "ToolPolicyOptions",
367
+ "ToolPolicyViolation",
368
+ "ToolRegistry",
369
+ "ToolRisk",
370
+ "ToolSchemaValidationError",
371
+ "ToolSchemaValidator",
372
+ "ToolSpec",
373
+ "ToolValidationCode",
374
+ "ToolValidationError",
375
+ "TraceAttributeName",
376
+ "TraceAttributeValue",
377
+ "TraceAttributes",
378
+ "TraceSink",
379
+ "TraceSpan",
380
+ "TurnAccounting",
381
+ "TurnContext",
382
+ "TurnDeadlineOutcome",
383
+ "TurnExecutionLimits",
384
+ "TurnLeaseOptions",
385
+ "TurnOptions",
386
+ "TurnOutcome",
387
+ "TurnPhase",
388
+ "TurnResult",
389
+ "TurnTimeoutError",
390
+ "TypedApprovalHandler",
391
+ "UnclassifiedToolRiskError",
392
+ "UnknownToolError",
393
+ "UuidFactory",
394
+ "VERSION",
395
+ "applyEvent",
396
+ "approvalKey",
397
+ "calculateCostUsd",
398
+ "cliApprovalHandler",
399
+ "deadlineAfter",
400
+ "executeTool",
401
+ "formatIntegrationError",
402
+ "functionTool",
403
+ "generateText",
404
+ "getProvider",
405
+ "listToolSpecs",
406
+ "loadManifest",
407
+ "loadRegistryIndex",
408
+ "lookupCost",
409
+ "normalizeProviderError",
410
+ "openai",
411
+ "providerFamily",
412
+ "recordMetric",
413
+ "registerProvider",
414
+ "registerTool",
415
+ "replaySession",
416
+ "resolveProviderResponseLimits",
417
+ "startSpan",
418
+ "streamText",
419
+ "supportsSessionPurge",
420
+ "throwIfCancellationRequested",
421
+ "tool",
422
+ "toolSpecFromSchema",
423
+ "validateIndexDocument",
424
+ "validateManifestDocument",
425
+ "validateNewEvent",
426
+ "validateStoredEvent"
427
+ ],
428
+ "experimental": [
429
+ "AnthropicProvider",
430
+ "AnthropicProviderOptions",
431
+ "BoundNetworkTransport",
432
+ "EventBus",
433
+ "GeminiFactoryOptions",
434
+ "OpenRouterFactoryOptions",
435
+ "SafeFetchPolicy",
436
+ "SplitEventCommitter",
437
+ "SplitEventCommitterOptions",
438
+ "anthropic",
439
+ "gemini",
440
+ "kimi",
441
+ "openrouter",
442
+ "safeRequest"
443
+ ],
444
+ "deprecated": []
445
+ }
446
+ },
447
+ "stable": [
448
+ { "id": "agent-builder", "surface": "Agent builder" },
449
+ { "id": "runtime-turn-loop", "surface": "Runtime turn loop" },
450
+ { "id": "cancellation", "surface": "Cancellation" },
451
+ { "id": "sessions", "surface": "Sessions" },
452
+ {
453
+ "id": "in-memory-event-store-journal",
454
+ "surface": "In-memory event store/journal"
455
+ },
456
+ { "id": "event-replay", "surface": "Event replay" },
457
+ {
458
+ "id": "tool-registry-planner-policy",
459
+ "surface": "Tool registry/planner/policy"
460
+ },
461
+ { "id": "openai-adapter", "surface": "OpenAI adapter" },
462
+ { "id": "echo-integration", "surface": "Echo integration" }
463
+ ],
464
+ "experimental": [
465
+ {
466
+ "id": "python-redis-event-history",
467
+ "surface": "Python-only Redis event/history backends"
468
+ },
469
+ { "id": "voice-tts", "surface": "Voice/TTS" },
470
+ { "id": "rag-retrieval", "surface": "RAG/retrieval" },
471
+ { "id": "native-gemini-kimi", "surface": "Native Gemini/Kimi" },
472
+ { "id": "anthropic-adapter", "surface": "Anthropic adapter" },
473
+ { "id": "retriever-selection", "surface": "Retriever selection" },
474
+ {
475
+ "id": "distributed-session-serialization",
476
+ "surface": "Distributed same-session serialization"
477
+ },
478
+ {
479
+ "id": "exactly-once-external-side-effects",
480
+ "surface": "Exactly-once external side effects"
481
+ },
482
+ {
483
+ "id": "unbounded-cross-process-replay",
484
+ "surface": "Unbounded or cross-process replay"
485
+ },
486
+ { "id": "durable-snapshotting", "surface": "Durable snapshotting" }
487
+ ]
488
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "schemaVersion": "1.0.0",
3
+ "integrations": {
4
+ "echo": "echo-tool-abi-v1.json",
5
+ "gmail": "gmail-tool-abi-v1.json",
6
+ "github": "github-tool-abi-v1.json"
7
+ }
8
+ }