summaryrefslogtreecommitdiffhomepage
path: root/packages/kernel/src/contracts/index.ts
blob: f3e5bcac8883c9dccbb9ba1e1ad5d7e582dbd28a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/**
 * 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,
	CompactionResult,
	ConversationMeta,
	ConversationStatus,
	ErrorChunk,
	Role,
	StepId,
	StepMetrics,
	StoredChunk,
	SystemChunk,
	TextChunk,
	ThinkingChunk,
	ToolCallChunk,
	ToolResultChunk,
	TurnId,
	TurnMetrics,
	Workspace,
	WorkspaceEntry,
} from "./conversation.js";
export type { ToolDispatchPolicy } from "./dispatch.js";
export type {
	AgentEvent,
	StatusEvent,
	TurnDoneEvent,
	TurnErrorEvent,
	TurnInputEvent,
	TurnProviderRetryEvent,
	TurnReasoningDeltaEvent,
	TurnSealedEvent,
	TurnStartEvent,
	TurnSteeringEvent,
	TurnStepCompleteEvent,
	TurnTextDeltaEvent,
	TurnToolCallEvent,
	TurnToolOutputEvent,
	TurnToolResultEvent,
	TurnUsageEvent,
} from "./events.js";
export type {
	ConfigAccess,
	EventsEmitter,
	Extension,
	HostAPI,
	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 {
	Attributes,
	ErrorAttributes,
	Level,
	LogContext,
	LogDeps,
	Logger,
	LogLineRecord,
	LogRecord,
	LogSink,
	Span,
	SpanCloseRecord,
	SpanLink,
	SpanOpenRecord,
	SpanStatus,
} from "./logging.js";
export type {
	FinishEvent,
	ModelInfo,
	ProviderContract,
	ProviderErrorEvent,
	ProviderEvent,
	ProviderStreamOptions,
	ProviderToolCallEvent,
	ReasoningDeltaEvent,
	ReasoningEffort,
	TextDeltaEvent,
	Usage,
	UsageEvent,
} from "./provider.js";
export type {
	EventEmitter,
	FinishReason,
	RetryStrategy,
	RunTurnInput,
	RunTurnResult,
} from "./runtime.js";
export type {
	JsonSchemaProperty,
	ToolCall,
	ToolContract,
	ToolExecuteContext,
	ToolParameterSchema,
	ToolResult,
} from "./tool.js";