Make agent backends configurable and governable with encrypted credentials, explicit context sharing, and tool approval boundaries. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
17 lines
411 B
TypeScript
17 lines
411 B
TypeScript
import type {
|
|
AgentEvent,
|
|
AgentRequest,
|
|
AgentRuntimeStatus
|
|
} from '../../shared/contracts'
|
|
|
|
export interface AgentRuntime {
|
|
readonly requiresToolApproval: boolean
|
|
getStatus(): Promise<AgentRuntimeStatus>
|
|
run(
|
|
request: AgentRequest,
|
|
signal: AbortSignal,
|
|
authorize?: (requiresToolApproval: boolean) => Promise<void>
|
|
): AsyncGenerator<AgentEvent, void, void>
|
|
dispose(): Promise<void>
|
|
}
|