effect
@fungi.computer/shiitake / effect
effect
Section titled “effect”Type Aliases
Section titled “Type Aliases”ShiitakeEffectHost
Section titled “ShiitakeEffectHost”ShiitakeEffectHost =
Readonly<{agent:ShiitakeEffectAgent;acceptMail: (Effect.Effect<Accepted,ShiitakeError>>; }>
Effect-native host composition with addressed mail kept off Session.
ModelAcquisitionEffect
Section titled “ModelAcquisitionEffect”ModelAcquisitionEffect =
Readonly<{model:Model<Api>>;stream?:MuleStreamFunction;release:Effect.Effect<void,ShiitakeError>>; }>
Effect-native acquired Pi model and finalizer.
ModelSourceEffect
Section titled “ModelSourceEffect”ModelSourceEffect =
Readonly<{acquire: (input) =>Effect.Effect<ModelAcquisitionEffect,ShiitakeError>>; }>
Effect-native model acquisition owner.
InstructionSourceEffect
Section titled “InstructionSourceEffect”InstructionSourceEffect =
Readonly<{load: (input) =>Effect.Effect<InstructionSnapshot,ShiitakeError>>; }>
Effect-native instruction snapshot owner.
ToolSourceEffect
Section titled “ToolSourceEffect”ToolSourceEffect =
Readonly<{fileTools?: readonlyMuleTool[];modules: readonlyModuleRegistration[];sources: readonlyCapabilitySource[];sandbox:Sandbox; }>
Effect-native Mycelium construction inputs.
RuntimeHostEffect
Section titled “RuntimeHostEffect”RuntimeHostEffect =
Readonly<{bind: (input) =>Effect.Effect<Readonly<{commit: <A>>(mutation) =>Effect.Effect<A,ShiitakeError>>;requestWake:Effect.Effect<void,ShiitakeError>>;close:Effect.Effect<void,ShiitakeError>>; }>,ShiitakeError>>; }>
Effect-native owner for scheduling the opaque durable reconciler.
ShiitakeEffectOptions
Section titled “ShiitakeEffectOptions”ShiitakeEffectOptions =
Readonly<{store:SqliteOwner;model:ModelSourceEffect;instructions:InstructionSourceEffect;tools?:ToolSourceEffect;runtime:RuntimeHostEffect;extensions:ExtensionRosterV1; }>
Validated construction bag for owned Effect composition.
ShiitakeEffectWatch
Section titled “ShiitakeEffectWatch”ShiitakeEffectWatch =
Readonly<{snapshot:SessionSnapshot;changes:Stream.Stream<SessionFrame,ShiitakeError>>;close:Effect.Effect<void,ShiitakeError>>; }>
Effect-native race-safe watch result.
ShiitakeEffectCommandHandler
Section titled “ShiitakeEffectCommandHandler”ShiitakeEffectCommandHandler = {(
input):Effect<Readonly<{status:"accepted";commandId:string; }>,ShiitakeError>>; (input):Effect<undefined,ShiitakeError>>; (input):Effect<Readonly<{sessionId:string; }>,ShiitakeError>>; (input):Effect<Readonly<{status:"accepted";commandId:string; }> |Readonly<{sessionId:string; }> |undefined,ShiitakeError>>; }
Effect-native addressable Session handle.
Call Signature
Section titled “Call Signature”(
input):Effect<Readonly<{status:"accepted";commandId:string; }>,ShiitakeError>>
Accept one durable prompt command.
Parameters
Section titled “Parameters”{ delivery: "followUp" | "steer"; requestId: string; type:
"prompt"; text: string; } | { commandId: string; onlyIfPending?:
boolean; type: "cancel"; }
Returns
Section titled “Returns”Effect<Readonly<{ status: "accepted"; commandId: string; }>,
ShiitakeError>
Call Signature
Section titled “Call Signature”(
input):Effect<undefined,ShiitakeError>>
Abort the active run or select a complete Session lineage leaf.
Parameters
Section titled “Parameters”{ type: "abort"; } | { type: "branch"; entryId: string; }
Returns
Section titled “Returns”Effect<undefined, ShiitakeError>
Call Signature
Section titled “Call Signature”(
input):Effect<Readonly<{sessionId:string; }>,ShiitakeError>>
Fork one complete entry lineage into a new Session.
Parameters
Section titled “Parameters”"fork" = ...
entryId
Section titled “entryId”string = boundedId
Returns
Section titled “Returns”Effect<Readonly<{ sessionId: string; }>,
ShiitakeError>
Call Signature
Section titled “Call Signature”(
input):Effect<Readonly<{status:"accepted";commandId:string; }> |Readonly<{sessionId:string; }> |undefined,ShiitakeError>>
Execute an already-decoded command union.
Parameters
Section titled “Parameters”{ delivery: "followUp" | "steer"; requestId: string; type:
"prompt"; text: string; } | { type: "abort"; } | { commandId:
string; onlyIfPending?: boolean; type: "cancel"; } | { type:
"branch"; entryId: string; } | { type: "fork"; entryId: string;
}
Returns
Section titled “Returns”Effect<Readonly<{ status: "accepted"; commandId: string; }> |
Readonly<{ sessionId: string; }> | undefined,
ShiitakeError>
ShiitakeEffectSendOptions
Section titled “ShiitakeEffectSendOptions”ShiitakeEffectSendOptions =
Readonly<{delivery?:PromptDelivery;requestId?:string; }>
Delivery intent and an optional private retry key for Effect-native sending.
ShiitakeEffectSession
Section titled “ShiitakeEffectSession”ShiitakeEffectSession =
Readonly<{command:ShiitakeEffectCommandHandler;abort:Effect.Effect<void,ShiitakeError>>;send: (text,options?) =>Effect.Effect<Accepted,ShiitakeError>>;cancel: (input) =>Effect.Effect<Accepted,ShiitakeError>>;extension: (extensionId) =>ShiitakeEffectSessionExtension;modelPreference:Readonly<{read:Effect.Effect<ModelPreference|null,ShiitakeError>>;set: (preference) =>Effect.Effect<void,ShiitakeError>>; }>;read: (input?) =>Effect.Effect<SessionSnapshot,ShiitakeError>>;subscribe: (input) =>Stream.Stream<SessionFrame,ShiitakeError>>;watch: (input?) =>Effect.Effect<ShiitakeEffectWatch,ShiitakeError>>; }>
Effect-native addressable Session handle.
ShiitakeEffectSessionExtension
Section titled “ShiitakeEffectSessionExtension”ShiitakeEffectSessionExtension =
Readonly<{call: (command,input) =>Effect.Effect<Json,ShiitakeError>>; }>
Effect-native Session-scope extension commands.
ShiitakeEffectAgentExtensions
Section titled “ShiitakeEffectAgentExtensions”ShiitakeEffectAgentExtensions =
Readonly<{list:Effect.Effect<readonlyExtensionStatusV1[],ShiitakeError>>;resume: (extensionId) =>Effect.Effect<ExtensionStatusV1,ShiitakeError>>;call: (extensionId,command,input) =>Effect.Effect<Json,ShiitakeError>>; }>
Effect-native Agent-scope extension controls.
ShiitakeEffectAgent
Section titled “ShiitakeEffectAgent”ShiitakeEffectAgent =
Readonly<{createSession: (requestId) =>Effect.Effect<string,ShiitakeError>>;listSessions: (after?) =>Effect.Effect<SessionSummaryPage,ShiitakeError>>;extensions:ShiitakeEffectAgentExtensions;session: (sessionId) =>ShiitakeEffectSession;close:Effect.Effect<void,ShiitakeError>>; }>
Effect-native durable harness.
StoredSessionSummary
Section titled “StoredSessionSummary”StoredSessionSummary =
Readonly<{createdAt:number;updatedAt:number;title:string; }>
Persisted conversation facts; run status belongs to the Session’s owner.
StoredSessionSummaryRow
Section titled “StoredSessionSummaryRow”StoredSessionSummaryRow =
StoredSessionSummary&Readonly<{kind:"session";sessionId:string; }> |Readonly<{kind:"unavailable";sessionId:string; }>
One persisted conversation’s stored facts, or a row that could not be read.
StoredSessionSummaryPage
Section titled “StoredSessionSummaryPage”StoredSessionSummaryPage =
Readonly<{sessions: readonlyStoredSessionSummaryRow[];next:string|undefined; }>
One page of stored conversation facts, in stable Session identity order.
Functions
Section titled “Functions”make()
Section titled “make()”make(
options):Effect<Readonly<{createSession: (requestId) =>Effect<string,ShiitakeError>>;listSessions: (after?) =>Effect<Readonly<{sessions: readonlySessionSummaryRow[];next:string|undefined; }>,ShiitakeError>>;extensions:ShiitakeEffectAgentExtensions;session: (sessionId) =>ShiitakeEffectSession;close:Effect<void,ShiitakeError>>; }>,ShiitakeError>>
Construct the canonical Effect-native Shiitake scaffold.
Parameters
Section titled “Parameters”options
Section titled “options”Returns
Section titled “Returns”Effect<Readonly<{ createSession: (requestId) => Effect<string,
ShiitakeError>; listSessions: (after?) =>
Effect<Readonly<{ sessions: readonly
SessionSummaryRow[]; next: string |
undefined; }>, ShiitakeError>; extensions:
ShiitakeEffectAgentExtensions; session:
(sessionId) => ShiitakeEffectSession; close:
Effect<void, ShiitakeError>; }>,
ShiitakeError>
openHost()
Section titled “openHost()”openHost(
options,mailRoom):Effect<Readonly<{agent:ShiitakeEffectAgent;acceptMail: (Effect<Readonly<{status:"accepted";commandId:string; }>,ShiitakeError>>; }>,ShiitakeError>>
Open the Effect-native host composition with addressed mail.
Parameters
Section titled “Parameters”options
Section titled “options”mailRoom
Section titled “mailRoom”BirdDogEffect
Returns
Section titled “Returns”Effect<Readonly<{ agent: ShiitakeEffectAgent;
acceptMail: (mail) => Effect<Readonly<{ status: "accepted";
commandId: string; }>, ShiitakeError>; }>,
ShiitakeError>
readSessionSummaries()
Section titled “readSessionSummaries()”readSessionSummaries(
owner,after?):Effect<Readonly<{sessions: readonlyStoredSessionSummaryRow[];next:string|undefined; }>,ShiitakeError,never>>
Enumerate saved conversations’ stored facts in bounded pages, for readers that
hold only the store. Run status is not stored; use the Agent’s listSessions
for it. An unreadable Session is its own unavailable row.
Parameters
Section titled “Parameters”after?
Section titled “after?”string
Returns
Section titled “Returns”Effect<Readonly<{ sessions: readonly
StoredSessionSummaryRow[]; next: string |
undefined; }>, ShiitakeError, never>
References
Section titled “References”AbortCommand
Section titled “AbortCommand”Re-exports AbortCommand
BranchCommand
Section titled “BranchCommand”Re-exports BranchCommand
CancelCommand
Section titled “CancelCommand”Re-exports CancelCommand
Accepted
Section titled “Accepted”Re-exports Accepted
ForkCommand
Section titled “ForkCommand”Re-exports ForkCommand
ForkedSession
Section titled “ForkedSession”Re-exports ForkedSession
PromptCommand
Section titled “PromptCommand”Re-exports PromptCommand
PromptDelivery
Section titled “PromptDelivery”Re-exports PromptDelivery
ReadOptions
Section titled “ReadOptions”Re-exports ReadOptions
SessionCommand
Section titled “SessionCommand”Re-exports SessionCommand
SessionCommandHandler
Section titled “SessionCommandHandler”Re-exports SessionCommandHandler
SessionFrame
Section titled “SessionFrame”Re-exports SessionFrame
SessionMessage
Section titled “SessionMessage”Re-exports SessionMessage
SessionProgress
Section titled “SessionProgress”Re-exports SessionProgress
SessionSnapshot
Section titled “SessionSnapshot”Re-exports SessionSnapshot
SessionStatus
Section titled “SessionStatus”Re-exports SessionStatus
SubscribeOptions
Section titled “SubscribeOptions”Re-exports SubscribeOptions
WatchOptions
Section titled “WatchOptions”Re-exports WatchOptions
InstructionSnapshot
Section titled “InstructionSnapshot”Re-exports InstructionSnapshot
InstructionSource
Section titled “InstructionSource”Re-exports InstructionSource
ModelAcquisition
Section titled “ModelAcquisition”Re-exports ModelAcquisition
ModelSource
Section titled “ModelSource”Re-exports ModelSource
RuntimeHost
Section titled “RuntimeHost”Re-exports RuntimeHost
RuntimePendingWork
Section titled “RuntimePendingWork”Re-exports RuntimePendingWork
SqliteCursor
Section titled “SqliteCursor”Re-exports SqliteCursor
SqliteOwner
Section titled “SqliteOwner”Re-exports SqliteOwner
SqliteValue
Section titled “SqliteValue”Re-exports SqliteValue
ShiitakeOptions
Section titled “ShiitakeOptions”Re-exports ShiitakeOptions
ToolSource
Section titled “ToolSource”Re-exports ToolSource
SessionSummary
Section titled “SessionSummary”Re-exports SessionSummary
BorrowedCompactionViewV1
Section titled “BorrowedCompactionViewV1”Re-exports BorrowedCompactionViewV1
CompactionHandoffErrorV1
Section titled “CompactionHandoffErrorV1”Re-exports CompactionHandoffErrorV1
CompactionHandoffResultV1
Section titled “CompactionHandoffResultV1”Re-exports CompactionHandoffResultV1
CompactionHandoffV1
Section titled “CompactionHandoffV1”Re-exports CompactionHandoffV1
ExtensionCapabilityV1
Section titled “ExtensionCapabilityV1”Re-exports ExtensionCapabilityV1
ExtensionGrantV1
Section titled “ExtensionGrantV1”Re-exports ExtensionGrantV1
ExtensionRosterV1
Section titled “ExtensionRosterV1”Re-exports ExtensionRosterV1
ExtensionSlotV1
Section titled “ExtensionSlotV1”Re-exports ExtensionSlotV1
ExtensionStatusV1
Section titled “ExtensionStatusV1”Re-exports ExtensionStatusV1
RosteredExtensionV1
Section titled “RosteredExtensionV1”Re-exports RosteredExtensionV1
ShiitakeError
Section titled “ShiitakeError”Re-exports ShiitakeError
ModelPreference
Section titled “ModelPreference”Re-exports ModelPreference
SessionSummaryPage
Section titled “SessionSummaryPage”Re-exports SessionSummaryPage
SessionSummaryRow
Section titled “SessionSummaryRow”Re-exports SessionSummaryRow