Skip to content

client-extensions

@fungi.computer/shiitake


@fungi.computer/shiitake / client-extensions

ClientActivityV0 = "idle" | "working" | "unknown"

Activity already observed by the client, never an execution authority.


ClientExtensionContextV0 = Readonly<{ activity: Stream.Stream<ClientActivityV0>>; onError: (error) => void; }>

Borrowed client observation; no Session mutations, storage or credentials.


ShiitakeClientExtensionV0 = Readonly<{ manifest: ExtensionIdentityV0; client: Readonly<{ attach: (context) => Effect.Effect<void, Error, Scope.Scope>>; }>; }>

Trusted installed code, explicitly enabled for a selected client lifetime.


ShiitakeExtensionProtocolV0 = "shiitake.extension/v0"

Identity shared by run and client extensions without importing either host.


ExtensionIdentityV0 = Readonly<{ protocol: ShiitakeExtensionProtocolV0; id: string; version: string; }>

Stable package identity shared by model-run and client extensions.

parseClientExtensionV0(value): ShiitakeClientExtensionV0

Decode the installed entry; this does not sandbox its JavaScript authority.

unknown

ShiitakeClientExtensionV0