@sms/kernel
Classes
Kernel
Defined in: packages/core/kernel/src/kernel.ts:38
The kernel: a loader + registry + effect tracker. Generic in the Linux-kernel sense — everything concrete is a plugin or an adapter handed in via options.
Implements
Constructors
Constructor
new Kernel(opts?): Kernel;
Defined in: packages/core/kernel/src/kernel.ts:52
Parameters
| Parameter | Type |
|---|---|
opts | KernelOptions |
Returns
Properties
blobs
readonly blobs: BlobStore;
Defined in: packages/core/kernel/src/kernel.ts:41
Implementation of
executor
executor: Executor | undefined;
Defined in: packages/core/kernel/src/kernel.ts:42
Whether an Executor is configured (needed for agent plugins with code).
Implementation of
log
readonly log: EventLog;
Defined in: packages/core/kernel/src/kernel.ts:40
Implementation of
name
readonly name: string;
Defined in: packages/core/kernel/src/kernel.ts:39
Implementation of
Methods
assertAgentManifest()
assertAgentManifest(manifest): void;
Defined in: packages/core/kernel/src/kernel.ts:247
Static trust checks on an agent manifest (defense in depth; effects re-check at apply time).
Parameters
| Parameter | Type |
|---|---|
manifest | PluginManifest |
Returns
void
Implementation of
authorize()
authorize(manifest, issuedBy): Promise<MountAuthorization>;
Defined in: packages/core/kernel/src/kernel.ts:187
Mint an authorization for an agent plugin. Only system fibers hold a KernelApi.
Parameters
| Parameter | Type |
|---|---|
manifest | PluginManifest |
issuedBy | string |
Returns
Promise<MountAuthorization>
Implementation of
contributions()
contributions<T>(point): Contribution<T>[];
Defined in: packages/core/kernel/src/kernel.ts:105
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
point | string |
Returns
Contribution<T>[]
Implementation of
defineKey()
defineKey(meta): void;
Defined in: packages/core/kernel/src/kernel.ts:78
Parameters
| Parameter | Type |
|---|---|
meta | KeyMeta |
Returns
void
Implementation of
definePoint()
definePoint(meta): void;
Defined in: packages/core/kernel/src/kernel.ts:82
Parameters
| Parameter | Type |
|---|---|
meta | ExtensionPointMeta |
Returns
void
Implementation of
disable()
disable(id, reason?): Promise<FiberView>;
Defined in: packages/core/kernel/src/kernel.ts:302
Parameters
| Parameter | Type | Default value |
|---|---|---|
id | string | undefined |
reason | string | 'disabled' |
Returns
Promise<FiberView>
Implementation of
dispose()
dispose(): Promise<void>;
Defined in: packages/core/kernel/src/kernel.ts:398
Returns
Promise<void>
enable()
enable(id): Promise<FiberView>;
Defined in: packages/core/kernel/src/kernel.ts:290
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
Promise<FiberView>
Implementation of
fiber()
fiber(id): FiberView | undefined;
Defined in: packages/core/kernel/src/kernel.ts:130
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
FiberView | undefined
Implementation of
fibers()
fibers(): FiberView[];
Defined in: packages/core/kernel/src/kernel.ts:126
Returns
Implementation of
getValue()
getValue<T>(key): T | undefined;
Defined in: packages/core/kernel/src/kernel.ts:101
Read a key from the host side (composition roots / tests). No trust check.
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
T | undefined
Implementation of
has()
has(key): boolean;
Defined in: packages/core/kernel/src/kernel.ts:96
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
boolean
Implementation of
install()
install(plugin, opts?): Promise<FiberView>;
Defined in: packages/core/kernel/src/kernel.ts:164
Install an in-process, system-trust plugin.
Parameters
| Parameter | Type |
|---|---|
plugin | SystemPlugin |
opts | { enabled?: boolean; settle?: boolean; } |
opts.enabled? | boolean |
opts.settle? | boolean |
Returns
Promise<FiberView>
keys()
keys(): KeyMeta[];
Defined in: packages/core/kernel/src/kernel.ts:87
Returns
KeyMeta[]
Implementation of
observeKeys()
observeKeys(observer): () => void;
Defined in: packages/core/kernel/src/kernel.ts:119
Parameters
| Parameter | Type |
|---|---|
observer | KeyObserver |
Returns
() => void
Implementation of
observePoint()
observePoint<T>(point, observer): () => void;
Defined in: packages/core/kernel/src/kernel.ts:109
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
point | string |
observer | PointObserver<T> |
Returns
() => void
Implementation of
points()
points(): ExtensionPointMeta[];
Defined in: packages/core/kernel/src/kernel.ts:92
Returns
Implementation of
propose()
propose(proposed, auth): Promise<FiberView>;
Defined in: packages/core/kernel/src/kernel.ts:200
Install or update an agent-trust plugin. Requires an authorization minted by a system fiber.
Parameters
| Parameter | Type |
|---|---|
proposed | PluginManifest |
auth | MountAuthorization |
Returns
Promise<FiberView>
Implementation of
restore()
restore(): Promise<FiberView[]>;
Defined in: packages/core/kernel/src/kernel.ts:325
Re-mount agent plugins recorded in the log (persistence axis). System plugins
must already be installed by the composition root; their enabled flag is
taken from the log by install().
Returns
Promise<FiberView[]>
setExecutor()
setExecutor(executor): void;
Defined in: packages/core/kernel/src/kernel.ts:72
Parameters
| Parameter | Type |
|---|---|
executor | Executor |
Returns
void
settle()
settle(): Promise<void>;
Defined in: packages/core/kernel/src/kernel.ts:367
Drive fibers toward the target: enabled + dependencies satisfied → active; disabled or a dependency withdrawn → inactive. Runs until nothing changes.
Returns
Promise<void>
Implementation of
uninstall()
uninstall(
id,
reason?,
opts?
): Promise<void>;
Defined in: packages/core/kernel/src/kernel.ts:310
Remove a plugin. System plugins are refused unless force (composition-root use only).
Parameters
| Parameter | Type | Default value |
|---|---|---|
id | string | undefined |
reason | string | 'uninstalled' |
opts | { force?: boolean; } | {} |
opts.force? | boolean | undefined |
Returns
Promise<void>
Implementation of
KernelError
Defined in: packages/core/kernel/src/errors.ts:15
Extends
Error
Constructors
Constructor
new KernelError(code, message): KernelError;
Defined in: packages/core/kernel/src/errors.ts:17
Parameters
| Parameter | Type |
|---|---|
code | KernelErrorCode |
message | string |
Returns
Overrides
Error.constructor
Properties
cause?
optional cause?: unknown;
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts:26
Inherited from
Error.cause
code
readonly code: KernelErrorCode;
Defined in: packages/core/kernel/src/errors.ts:16
message
message: string;
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1077
Inherited from
Error.message
name
name: string;
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1076
Inherited from
Error.name
stack?
optional stack?: string;
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1078
Inherited from
Error.stack
stackTraceLimit
static stackTraceLimit: number;
Defined in: node_modules/.pnpm/@types+node@22.20.1/node_modules/@types/node/globals.d.ts:68
The Error.stackTraceLimit property specifies the number of stack frames
collected by a stack trace (whether generated by new Error().stack or
Error.captureStackTrace(obj)).
The default value is 10 but may be set to any valid JavaScript number. Changes
will affect any stack trace captured after the value has been changed.
If set to a non-number value, or set to a negative number, stack traces will not capture any frames.
Inherited from
Error.stackTraceLimit
Methods
captureStackTrace()
static captureStackTrace(targetObject, constructorOpt?): void;
Defined in: node_modules/.pnpm/@types+node@22.20.1/node_modules/@types/node/globals.d.ts:52
Creates a .stack property on targetObject, which when accessed returns
a string representing the location in the code at which
Error.captureStackTrace() was called.
const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack; // Similar to `new Error().stack`
The first line of the trace will be prefixed with
${myObject.name}: ${myObject.message}.
The optional constructorOpt argument accepts a function. If given, all frames
above constructorOpt, including constructorOpt, will be omitted from the
generated stack trace.
The constructorOpt argument is useful for hiding implementation
details of error generation from the user. For instance:
function a() {
b();
}
function b() {
c();
}
function c() {
// Create an error without stack trace to avoid calculating the stack trace twice.
const { stackTraceLimit } = Error;
Error.stackTraceLimit = 0;
const error = new Error();
Error.stackTraceLimit = stackTraceLimit;
// Capture the stack trace above function b
Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
throw error;
}
a();
Parameters
| Parameter | Type |
|---|---|
targetObject | object |
constructorOpt? | Function |
Returns
void
Inherited from
Error.captureStackTrace
prepareStackTrace()
static prepareStackTrace(err, stackTraces): any;
Defined in: node_modules/.pnpm/@types+node@22.20.1/node_modules/@types/node/globals.d.ts:56
Parameters
| Parameter | Type |
|---|---|
err | Error |
stackTraces | CallSite[] |
Returns
any
See
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
Inherited from
Error.prepareStackTrace
MemoryBlobStore
Defined in: packages/core/kernel/src/log.ts:18
Content-addressed storage for plugin bundles.
Implements
Constructors
Constructor
new MemoryBlobStore(): MemoryBlobStore;
Returns
Methods
get()
get(hash): Promise<string | undefined>;
Defined in: packages/core/kernel/src/log.ts:25
Parameters
| Parameter | Type |
|---|---|
hash | string |
Returns
Promise<string | undefined>
Implementation of
put()
put(bytes): Promise<string>;
Defined in: packages/core/kernel/src/log.ts:20
Parameters
| Parameter | Type |
|---|---|
bytes | string |
Returns
Promise<string>
Implementation of
MemoryEventLog
Defined in: packages/core/kernel/src/log.ts:3
Implements
Constructors
Constructor
new MemoryEventLog(): MemoryEventLog;
Returns
Methods
all()
all(): Promise<KernelEvent[]>;
Defined in: packages/core/kernel/src/log.ts:10
Returns
Promise<KernelEvent[]>
Implementation of
append()
append(event): Promise<KernelEvent>;
Defined in: packages/core/kernel/src/log.ts:5
Parameters
| Parameter | Type |
|---|---|
event | Omit<KernelEvent, "seq" | "ts"> |
Returns
Promise<KernelEvent>
Implementation of
since()
since(seq): Promise<KernelEvent[]>;
Defined in: packages/core/kernel/src/log.ts:13
Parameters
| Parameter | Type |
|---|---|
seq | number |
Returns
Promise<KernelEvent[]>
Implementation of
Interfaces
AppliedEffect
Defined in: packages/core/kernel/src/types.ts:74
Properties
kind
kind: EffectKind;
Defined in: packages/core/kernel/src/types.ts:75
label
label: string;
Defined in: packages/core/kernel/src/types.ts:76
undo
undo: () => void | Promise<void>;
Defined in: packages/core/kernel/src/types.ts:77
Returns
void | Promise<void>
BlobStore
Defined in: packages/core/kernel/src/types.ts:200
Content-addressed storage for plugin bundles.
Methods
get()
get(hash): Promise<string | undefined>;
Defined in: packages/core/kernel/src/types.ts:202
Parameters
| Parameter | Type |
|---|---|
hash | string |
Returns
Promise<string | undefined>
put()
put(bytes): Promise<string>;
Defined in: packages/core/kernel/src/types.ts:201
Parameters
| Parameter | Type |
|---|---|
bytes | string |
Returns
Promise<string>
Contribution
Defined in: packages/core/kernel/src/types.ts:34
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Properties
id
id: string;
Defined in: packages/core/kernel/src/types.ts:35
item
item: T;
Defined in: packages/core/kernel/src/types.ts:38
owner
owner: string;
Defined in: packages/core/kernel/src/types.ts:37
point
point: string;
Defined in: packages/core/kernel/src/types.ts:36
EventLog
Defined in: packages/core/kernel/src/types.ts:193
Methods
all()
all(): Promise<KernelEvent[]>;
Defined in: packages/core/kernel/src/types.ts:195
Returns
Promise<KernelEvent[]>
append()
append(event): Promise<KernelEvent>;
Defined in: packages/core/kernel/src/types.ts:194
Parameters
| Parameter | Type |
|---|---|
event | Omit<KernelEvent, "seq" | "ts"> |
Returns
Promise<KernelEvent>
since()
since(seq): Promise<KernelEvent[]>;
Defined in: packages/core/kernel/src/types.ts:196
Parameters
| Parameter | Type |
|---|---|
seq | number |
Returns
Promise<KernelEvent[]>
Executor
Defined in: packages/core/kernel/src/types.ts:180
Methods
load()
load(
bundle,
host,
opts?
): Promise<ExecutorInstance>;
Defined in: packages/core/kernel/src/types.ts:181
Parameters
| Parameter | Type |
|---|---|
bundle | PluginBundle |
host | HostBridge |
opts? | { timeoutMs?: number; } |
opts.timeoutMs? | number |
Returns
Promise<ExecutorInstance>
ExecutorInstance
Defined in: packages/core/kernel/src/types.ts:174
Methods
call()
call(method, args): Promise<unknown>;
Defined in: packages/core/kernel/src/types.ts:176
Call into plugin code: ‘activate’, ‘fn’ {id,args}, …
Parameters
| Parameter | Type |
|---|---|
method | string |
args | unknown |
Returns
Promise<unknown>
dispose()
dispose(): Promise<void>;
Defined in: packages/core/kernel/src/types.ts:177
Returns
Promise<void>
ExtensionPointMeta
Defined in: packages/core/kernel/src/types.ts:25
A named bag of contributions (tools, routes, collections, ui slots, gates …).
Properties
description?
optional description?: string;
Defined in: packages/core/kernel/src/types.ts:27
minContributorTrust?
optional minContributorTrust?: Trust;
Defined in: packages/core/kernel/src/types.ts:29
Minimum trust a fiber needs to contribute here. Default: agent (open).
name
name: string;
Defined in: packages/core/kernel/src/types.ts:26
validate?
optional validate?: (item) => void;
Defined in: packages/core/kernel/src/types.ts:31
Host-side validation of an item; throw to reject (fails the contributor’s activation).
Parameters
| Parameter | Type |
|---|---|
item | unknown |
Returns
void
FiberView
Defined in: packages/core/kernel/src/types.ts:82
Properties
effects
effects: number;
Defined in: packages/core/kernel/src/types.ts:92
enabled
enabled: boolean;
Defined in: packages/core/kernel/src/types.ts:87
error?
optional error?: string;
Defined in: packages/core/kernel/src/types.ts:88
id
id: string;
Defined in: packages/core/kernel/src/types.ts:83
inject
inject: string[];
Defined in: packages/core/kernel/src/types.ts:89
optional
optional: string[];
Defined in: packages/core/kernel/src/types.ts:90
provide
provide: string[];
Defined in: packages/core/kernel/src/types.ts:91
state
state: FiberState;
Defined in: packages/core/kernel/src/types.ts:86
trust
trust: Trust;
Defined in: packages/core/kernel/src/types.ts:85
version
version: string;
Defined in: packages/core/kernel/src/types.ts:84
waitingFor
waitingFor: string[];
Defined in: packages/core/kernel/src/types.ts:93
HostBridge
Defined in: packages/core/kernel/src/types.ts:170
Host side of the bridge: handles calls coming from plugin code.
Methods
call()
call(method, args): Promise<unknown>;
Defined in: packages/core/kernel/src/types.ts:171
Parameters
| Parameter | Type |
|---|---|
method | string |
args | unknown |
Returns
Promise<unknown>
KernelApi
Defined in: packages/core/kernel/src/types.ts:135
What system-trust plugins can do to the kernel. Never reachable by agent code.
Properties
blobs
blobs: BlobStore;
Defined in: packages/core/kernel/src/types.ts:162
executor
executor: Executor | undefined;
Defined in: packages/core/kernel/src/types.ts:164
Whether an Executor is configured (needed for agent plugins with code).
log
log: EventLog;
Defined in: packages/core/kernel/src/types.ts:161
name
readonly name: string;
Defined in: packages/core/kernel/src/types.ts:136
Methods
assertAgentManifest()
assertAgentManifest(manifest): void;
Defined in: packages/core/kernel/src/types.ts:150
Static trust checks on a manifest that will be mounted with agent trust. Throws KernelError.
Parameters
| Parameter | Type |
|---|---|
manifest | PluginManifest |
Returns
void
authorize()
authorize(manifest, issuedBy): Promise<MountAuthorization>;
Defined in: packages/core/kernel/src/types.ts:152
Mint an authorization for an agent plugin. Only system fibers hold a KernelApi.
Parameters
| Parameter | Type |
|---|---|
manifest | PluginManifest |
issuedBy | string |
Returns
Promise<MountAuthorization>
contributions()
contributions<T>(point): Contribution<T>[];
Defined in: packages/core/kernel/src/types.ts:144
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
point | string |
Returns
Contribution<T>[]
defineKey()
defineKey(meta): void;
Defined in: packages/core/kernel/src/types.ts:137
Parameters
| Parameter | Type |
|---|---|
meta | KeyMeta |
Returns
void
definePoint()
definePoint(meta): void;
Defined in: packages/core/kernel/src/types.ts:138
Parameters
| Parameter | Type |
|---|---|
meta | ExtensionPointMeta |
Returns
void
disable()
disable(id, reason?): Promise<FiberView>;
Defined in: packages/core/kernel/src/types.ts:156
Parameters
| Parameter | Type |
|---|---|
id | string |
reason? | string |
Returns
Promise<FiberView>
enable()
enable(id): Promise<FiberView>;
Defined in: packages/core/kernel/src/types.ts:155
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
Promise<FiberView>
fiber()
fiber(id): FiberView | undefined;
Defined in: packages/core/kernel/src/types.ts:148
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
FiberView | undefined
fibers()
fibers(): FiberView[];
Defined in: packages/core/kernel/src/types.ts:147
Returns
getValue()
getValue<T>(key): T | undefined;
Defined in: packages/core/kernel/src/types.ts:143
Current value of a key, or undefined when nobody provides it (soft dependency — declare it in manifest.optional; no trust check).
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
T | undefined
has()
has(key): boolean;
Defined in: packages/core/kernel/src/types.ts:141
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
boolean
keys()
keys(): KeyMeta[];
Defined in: packages/core/kernel/src/types.ts:139
Returns
KeyMeta[]
observeKeys()
observeKeys(observer): () => void;
Defined in: packages/core/kernel/src/types.ts:146
Parameters
| Parameter | Type |
|---|---|
observer | KeyObserver |
Returns
() => void
observePoint()
observePoint<T>(point, observer): () => void;
Defined in: packages/core/kernel/src/types.ts:145
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
point | string |
observer | PointObserver<T> |
Returns
() => void
points()
points(): ExtensionPointMeta[];
Defined in: packages/core/kernel/src/types.ts:140
Returns
propose()
propose(manifest, auth): Promise<FiberView>;
Defined in: packages/core/kernel/src/types.ts:154
Install (or update to a new version) an agent plugin. Requires a valid authorization.
Parameters
| Parameter | Type |
|---|---|
manifest | PluginManifest |
auth | MountAuthorization |
Returns
Promise<FiberView>
settle()
settle(): Promise<void>;
Defined in: packages/core/kernel/src/types.ts:160
Run the reconciler until quiescence.
Returns
Promise<void>
uninstall()
uninstall(
id,
reason?,
opts?
): Promise<void>;
Defined in: packages/core/kernel/src/types.ts:158
Remove a plugin. System plugins are refused unless force (composition-root use only).
Parameters
| Parameter | Type |
|---|---|
id | string |
reason? | string |
opts? | { force?: boolean; } |
opts.force? | boolean |
Returns
Promise<void>
KernelEvent
Defined in: packages/core/kernel/src/types.ts:186
Indexable
[k: string]: unknown
Properties
seq
seq: number;
Defined in: packages/core/kernel/src/types.ts:187
ts
ts: number;
Defined in: packages/core/kernel/src/types.ts:188
type
type: string;
Defined in: packages/core/kernel/src/types.ts:189
KernelOptions
Defined in: packages/core/kernel/src/kernel.ts:23
Properties
blobs?
optional blobs?: BlobStore;
Defined in: packages/core/kernel/src/kernel.ts:26
executor?
optional executor?: Executor;
Defined in: packages/core/kernel/src/kernel.ts:27
log?
optional log?: EventLog;
Defined in: packages/core/kernel/src/kernel.ts:25
logger?
optional logger?: (...args) => void;
Defined in: packages/core/kernel/src/kernel.ts:29
Hook for kernel diagnostics (plugin logs, undo failures).
Parameters
| Parameter | Type |
|---|---|
…args | unknown[] |
Returns
void
name?
optional name?: string;
Defined in: packages/core/kernel/src/kernel.ts:24
KeyMeta
Defined in: packages/core/kernel/src/types.ts:15
A typed slot in the shared registry table (a Cordis “coeffect key”).
Properties
description?
optional description?: string;
Defined in: packages/core/kernel/src/types.ts:17
minConsumerTrust?
optional minConsumerTrust?: Trust;
Defined in: packages/core/kernel/src/types.ts:21
Minimum trust a fiber needs to inject/get/invoke this key. Default: agent (open).
minProviderTrust?
optional minProviderTrust?: Trust;
Defined in: packages/core/kernel/src/types.ts:19
Minimum trust a fiber needs to provide this key. Default: agent (open).
name
name: string;
Defined in: packages/core/kernel/src/types.ts:16
MountAuthorization
Defined in: packages/core/kernel/src/types.ts:118
A token proving a system-trust fiber vouched for mounting an agent plugin.
Properties
integrity
integrity: string | null;
Defined in: packages/core/kernel/src/types.ts:121
issuedBy
issuedBy: string;
Defined in: packages/core/kernel/src/types.ts:123
nonce
nonce: string;
Defined in: packages/core/kernel/src/types.ts:122
pluginId
pluginId: string;
Defined in: packages/core/kernel/src/types.ts:119
version
version: string;
Defined in: packages/core/kernel/src/types.ts:120
PluginBundle
Defined in: packages/core/kernel/src/types.ts:64
Properties
code
code: string;
Defined in: packages/core/kernel/src/types.ts:66
format
format: "esm";
Defined in: packages/core/kernel/src/types.ts:65
integrity?
optional integrity?: string;
Defined in: packages/core/kernel/src/types.ts:68
sha-256 hex of code, filled by the loader if absent.
PluginContext
Defined in: packages/core/kernel/src/types.ts:97
The only thing a plugin (in-process or remote) can do to the host.
Properties
id
readonly id: string;
Defined in: packages/core/kernel/src/types.ts:98
kernel?
readonly optional kernel?: KernelApi;
Defined in: packages/core/kernel/src/types.ts:108
Present only for system-trust fibers.
trust
readonly trust: Trust;
Defined in: packages/core/kernel/src/types.ts:99
Methods
contribute()
contribute(point, item): Promise<void>;
Defined in: packages/core/kernel/src/types.ts:105
Contribute an item to an extension point (revertible effect). Resolves once the point owner accepted it.
Parameters
| Parameter | Type |
|---|---|
point | string |
item | unknown |
Returns
Promise<void>
get()
get<T>(key): T;
Defined in: packages/core/kernel/src/types.ts:101
Read a key declared in inject.
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
T
log()
log(...args): void;
Defined in: packages/core/kernel/src/types.ts:106
Parameters
| Parameter | Type |
|---|---|
…args | unknown[] |
Returns
void
provide()
provide(key, value): void;
Defined in: packages/core/kernel/src/types.ts:103
Provide a key (revertible effect).
Parameters
| Parameter | Type |
|---|---|
key | string |
value | unknown |
Returns
void
PluginManifest
Defined in: packages/core/kernel/src/types.ts:42
What a plugin declares. Trust is NOT here — the loader assigns it.
Properties
contributes?
optional contributes?: Record<string, unknown[]>;
Defined in: packages/core/kernel/src/types.ts:59
Declarative contributions, applied by the kernel with no code execution.
description?
optional description?: string;
Defined in: packages/core/kernel/src/types.ts:45
entry?
optional entry?: PluginBundle;
Defined in: packages/core/kernel/src/types.ts:61
Optional code; executed through the Executor capability, never in-process.
id
id: string;
Defined in: packages/core/kernel/src/types.ts:43
inject?
optional inject?: string[];
Defined in: packages/core/kernel/src/types.ts:47
Keys this plugin needs. It activates only when all are provided (σ ⊨ d).
optional?
optional optional?: string[];
Defined in: packages/core/kernel/src/types.ts:53
Keys this plugin uses when present but can live without (soft dependency): read them with
ctx.kernel.getValue(key), which returns undefined while nobody provides them. Declared so the
dependency is visible to the kernel, the admin surface and the quality gate, not hidden in code.
provide?
optional provide?: string[];
Defined in: packages/core/kernel/src/types.ts:55
Keys this plugin promises to provide. Used for dependency ordering.
scopes?
optional scopes?: string[];
Defined in: packages/core/kernel/src/types.ts:57
Capability scopes requested (interpreted by the judge, e.g. ‘net’, ‘ui’, ‘collection:write’).
version
version: string;
Defined in: packages/core/kernel/src/types.ts:44
PointObserver
Defined in: packages/core/kernel/src/types.ts:127
Listener for extension point changes (the point owner reacts to contributions).
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Properties
added?
optional added?: (c) => void | Promise<void>;
Defined in: packages/core/kernel/src/types.ts:128
Parameters
| Parameter | Type |
|---|---|
c | Contribution<T> |
Returns
void | Promise<void>
removed?
optional removed?: (c) => void | Promise<void>;
Defined in: packages/core/kernel/src/types.ts:129
Parameters
| Parameter | Type |
|---|---|
c | Contribution<T> |
Returns
void | Promise<void>
SystemPlugin
Defined in: packages/core/kernel/src/types.ts:112
An in-process (system-trust) plugin.
Properties
activate
activate: (ctx) => void | Promise<void>;
Defined in: packages/core/kernel/src/types.ts:114
Parameters
| Parameter | Type |
|---|---|
ctx | PluginContext |
Returns
void | Promise<void>
manifest
manifest: PluginManifest;
Defined in: packages/core/kernel/src/types.ts:113
TargetEntry
Defined in: packages/core/kernel/src/log.ts:37
The target view: what the log says should exist. A pure fold, order-independent in its terminal state.
Properties
enabled
enabled: boolean;
Defined in: packages/core/kernel/src/log.ts:41
integrity
integrity: string | null;
Defined in: packages/core/kernel/src/log.ts:40
manifest
manifest: PluginManifest;
Defined in: packages/core/kernel/src/log.ts:38
trust
trust: Trust;
Defined in: packages/core/kernel/src/log.ts:39
Type Aliases
EffectKind
type EffectKind = "provide" | "contribute";
Defined in: packages/core/kernel/src/types.ts:72
Closed effect vocabulary. Undo is derived by the kernel, never written by a plugin.
FiberState
type FiberState = "inactive" | "loading" | "active" | "unloading" | "failed";
Defined in: packages/core/kernel/src/types.ts:80
KernelErrorCode
type KernelErrorCode =
| "UNDECLARED_ACCESS"
| "INACTIVE_ACCESS"
| "TRUST_VIOLATION"
| "ALREADY_PROVIDED"
| "UNKNOWN_POINT"
| "INVALID_ITEM"
| "UNAUTHORIZED"
| "NOT_FOUND"
| "NO_EXECUTOR"
| "RESERVED_ID";
Defined in: packages/core/kernel/src/errors.ts:3
KeyObserver
type KeyObserver = (event, key, value) => void;
Defined in: packages/core/kernel/src/types.ts:132
Parameters
| Parameter | Type |
|---|---|
event | "provided" | "withdrawn" |
key | string |
value | unknown |
Returns
void
Trust
type Trust = "system" | "agent";
Defined in: packages/core/kernel/src/types.ts:10
Who vouched for a plugin. Set by the loader, never by the manifest.
Variables
FN_MARKER
const FN_MARKER: "$fn" = '$fn';
Defined in: packages/core/kernel/src/marshal.ts:8
TRUST_RANK
const TRUST_RANK: Record<Trust, number>;
Defined in: packages/core/kernel/src/types.ts:12
Functions
assertTrust()
function assertTrust(
actual,
required,
what
): void;
Defined in: packages/core/kernel/src/errors.ts:24
Parameters
Returns
void
foldTarget()
function foldTarget(events): Map<string, TargetEntry>;
Defined in: packages/core/kernel/src/log.ts:44
Parameters
| Parameter | Type |
|---|---|
events | KernelEvent[] |
Returns
Map<string, TargetEntry>
sha256()
function sha256(text): Promise<string>;
Defined in: packages/core/kernel/src/log.ts:30
Parameters
| Parameter | Type |
|---|---|
text | string |
Returns
Promise<string>
toJson()
function toJson(value): unknown;
Defined in: packages/core/kernel/src/marshal.ts:24
Drop functions when sending host values to plugin code (they get undefined).
Parameters
| Parameter | Type |
|---|---|
value | unknown |
Returns
unknown
unmarshal()
function unmarshal(value, instance): unknown;
Defined in: packages/core/kernel/src/marshal.ts:10
Parameters
| Parameter | Type |
|---|---|
value | unknown |
instance | ExecutorInstance |
Returns
unknown