2.6 KiB
ctx.bashEnv
BashEnvRegistry — provided by @deepseek-ai/dsh-tool-bash.
Registry (ctx.bashEnv) for trusted, per-execution DSH_* variables. The namespace is rebuilt for every model bash call: ambient DSH_* values are discarded by the executor, then the registry's current snapshot is injected. Built-in shell facts remain owned by the registry itself while plugins can register additional, enumerable facts with effect-scoped disposal.
ctx.bashEnv.register(contributor)
/**
* Register one environment contributor. Names and keys are unique; built-in
* keys are reserved. Registration is disposed with the calling plugin fiber.
* @param contributor - declared key ownership and per-execution resolver.
* @returns the disposer that unregisters the contribution.
*/
register(contributor: BashEnvContributor): () => void
Register one environment contributor. Names and keys are unique; built-in keys are reserved. Registration is disposed with the calling plugin fiber.
contributor— declared key ownership and per-execution resolver.
Returns the disposer that unregisters the contribution.
ctx.bashEnv.collect(execution)
/**
* Build the trusted `DSH_*` snapshot for one bash tool execution.
* @param execution - the current tool execution.
* @returns an immutable environment overlay containing built-ins and current contributions.
*/
collect(execution: ToolExecution): DshEnvironment
Build the trusted DSH_* snapshot for one bash tool execution.
execution— the current tool execution.
Returns an immutable environment overlay containing built-ins and current contributions.
ctx.bashEnv.list()
/**
* Enumerate plugin-contributed variables without executing their resolvers.
* @returns declarations sorted by environment variable name.
*/
list(): BashEnvVariableInfo[]
Enumerate plugin-contributed variables without executing their resolvers.
Returns declarations sorted by environment variable name.