diff options
| author | Adam Malczewski <[email protected]> | 2026-06-04 22:26:46 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-04 22:26:46 +0900 |
| commit | fd855ffb335e72a94b6f992ede5a859237460a8b (patch) | |
| tree | 3833674b0957ddec1ed3b3e6140c89360e675037 /packages/kernel/src/contracts/index.ts | |
| parent | a6119e0434597399c773da6f0b31363003f6aa09 (diff) | |
| download | dispatch-fd855ffb335e72a94b6f992ede5a859237460a8b.tar.gz dispatch-fd855ffb335e72a94b6f992ede5a859237460a8b.zip | |
feat(kernel): define the ABI contracts (conversation, tool, provider, auth, dispatch, hooks, extension/HostAPI, runtime, events)
Diffstat (limited to 'packages/kernel/src/contracts/index.ts')
| -rw-r--r-- | packages/kernel/src/contracts/index.ts | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/packages/kernel/src/contracts/index.ts b/packages/kernel/src/contracts/index.ts new file mode 100644 index 0000000..1c3393f --- /dev/null +++ b/packages/kernel/src/contracts/index.ts @@ -0,0 +1,95 @@ +/** + * Kernel contracts barrel — the stable ABI every extension compiles against. + * + * Re-exports all contract types and pure helpers. No implementations, no I/O, + * no concrete feature names. This is the only surface extensions depend on + * from the kernel. + */ + +export type { + ApiKeyCredentials, + AuthContract, + BearerTokenCredentials, + Credentials, +} from "./auth.js"; +export type { + ChatMessage, + Chunk, + ErrorChunk, + Role, + StepId, + SystemChunk, + TextChunk, + ThinkingChunk, + ToolCallChunk, + ToolResultChunk, + TurnId, +} from "./conversation.js"; +export type { ToolDispatchPolicy } from "./dispatch.js"; +export type { + AgentEvent, + StatusEvent, + TurnDoneEvent, + TurnErrorEvent, + TurnReasoningDeltaEvent, + TurnSealedEvent, + TurnStartEvent, + TurnTextDeltaEvent, + TurnToolCallEvent, + TurnToolOutputEvent, + TurnToolResultEvent, + TurnUsageEvent, +} from "./events.js"; +export type { + ConfigAccess, + EventsEmitter, + Extension, + HostAPI, + Logger, + Manifest, + ManifestCapabilities, + ManifestContributions, + PermissionDecision, + PermissionGate, + PermissionRequest, + ScheduledJob, + SecretsAccess, + StorageNamespace, + TrustLevel, +} from "./extension.js"; + +export type { + EventHandler, + EventHookDescriptor, + FilterDescriptor, + FilterHandler, + HookDescriptor, + ServiceHandle, +} from "./hooks.js"; + +export { defineEventHook, defineFilter, defineService } from "./hooks.js"; +export type { + FinishEvent, + ProviderContract, + ProviderErrorEvent, + ProviderEvent, + ProviderStreamOptions, + ProviderToolCallEvent, + ReasoningDeltaEvent, + TextDeltaEvent, + Usage, + UsageEvent, +} from "./provider.js"; +export type { + EventEmitter, + RunTurnInput, + RunTurnResult, +} from "./runtime.js"; +export type { + JsonSchemaProperty, + ToolCall, + ToolContract, + ToolExecuteContext, + ToolParameterSchema, + ToolResult, +} from "./tool.js"; |
