Class: KernelSession
Defined in: packages/plugin-sdk/src/kernel/session.ts:149
Constructors
Constructor
new KernelSession(
port,options,limits?):KernelSession
Defined in: packages/plugin-sdk/src/kernel/session.ts:172
Parameters
port
MessagePort
options
limits?
Partial<StreamLimitsConfig>
Returns
KernelSession
Properties
limits
readonlylimits:StreamLimitsConfig
Defined in: packages/plugin-sdk/src/kernel/session.ts:163
scope
readonlyscope:Scope
Defined in: packages/plugin-sdk/src/kernel/session.ts:162
Accessors
instanceId
Get Signature
get instanceId():
string
Defined in: packages/plugin-sdk/src/kernel/session.ts:168
Session/sandbox identifier, stable for the lifetime of the session.
Returns
string
isDisposed
Get Signature
get isDisposed():
boolean
Defined in: packages/plugin-sdk/src/kernel/session.ts:196
Returns
boolean
Methods
call()
call(
method,params,options?):Promise<unknown>
Defined in: packages/plugin-sdk/src/kernel/session.ts:263
Invoke a remote method. Honors deadlineMs locally and forwards
cancellation; the peer may also enforce its own deadline.
Parameters
method
string
params
unknown
options?
deadlineMs?
number
idempotencyKey?
string
signal?
AbortSignal
Returns
Promise<unknown>
dispose()
dispose():
void
Defined in: packages/plugin-sdk/src/kernel/session.ts:666
Close everything: pending calls, in-flight streams, handlers.
Returns
void
emitEvent()
emitEvent(
event,payload,cursor?):void
Defined in: packages/plugin-sdk/src/kernel/session.ts:249
Emit an evt.emit envelope to the peer (rev4 §E1). No credit/ack is
involved: the peer drops envelopes it has no listener for. eventId is
generated by the sender for ordering/debugging; cursor is optional and
passed through when provided.
Parameters
event
string
payload
unknown
cursor?
string
Returns
void
getInboundStream()
getInboundStream(
streamId):InboundStream|null
Defined in: packages/plugin-sdk/src/kernel/session.ts:389
Parameters
streamId
string
Returns
InboundStream | null
handle()
handle(
method,handler): () =>void
Defined in: packages/plugin-sdk/src/kernel/session.ts:201
Register an RPC method handler. Returns an unregister function.
Parameters
method
string
handler
Returns
() => void
notifyCapabilityRevoked()
notifyCapabilityRevoked(
name,revision):void
Defined in: packages/plugin-sdk/src/kernel/session.ts:218
Notify the peer that a capability grant was revoked (rev4 §B2).
Parameters
name
string
revision
number
Returns
void
onCapabilityRevoked()
onCapabilityRevoked(
listener): () =>void
Defined in: packages/plugin-sdk/src/kernel/session.ts:212
Subscribe to capability.revoked envelopes (rev4 §B2).
Parameters
listener
(name, revision) => void
Returns
() => void
onEvent()
onEvent(
listener): () =>void
Defined in: packages/plugin-sdk/src/kernel/session.ts:238
Subscribe to peer-emitted evt.emit envelopes (rev4 §E1). The plugin
side uses this to receive app events the host relays; the host side can
use it for plugin→host event channels. Returns an unsubscribe function.
Parameters
listener
Returns
() => void
onInboundStream()
onInboundStream(
listener): () =>void
Defined in: packages/plugin-sdk/src/kernel/session.ts:384
Subscribe to streams the peer opens toward us.
Parameters
listener
(streamId, meta) => void
Returns
() => void
onPeerClose()
onPeerClose(
listener): () =>void
Defined in: packages/plugin-sdk/src/kernel/session.ts:228
rev4 §M3: subscribe to the peer side of the port closing (sandbox process death, navigation away, or the peer's own dispose). The host uses this as the fast crash signal for restart-budget handling. Returns an unsubscribe function.
Parameters
listener
() => void
Returns
() => void
openOutboundStream()
openOutboundStream(
meta):object
Defined in: packages/plugin-sdk/src/kernel/session.ts:320
Open a stream toward the peer; returns a writer.
Parameters
meta
Record<string, unknown>
Returns
object
streamId
streamId:
string
end()
end():
void
Returns
void
fail()
fail(
error?):void
Parameters
error?
unknown
Returns
void
write()
write(
chunk):Promise<void>
Parameters
chunk
Uint8Array
Returns
Promise<void>
replenishCredit()
replenishCredit(
streamId):void
Defined in: packages/plugin-sdk/src/kernel/session.ts:394
Internal: top up credit for a stream the consumer just read from.
Parameters
streamId
string
Returns
void