feat: add native runtime customization
OpenCode and Continue customization was previously planned but unavailable, and Runtime-native capabilities were not represented consistently across providers. GoodBuddy now provides secure Main-owned customization settings, truthful native inventories, OpenCode Agents and Commands, Continue Rules and Prompts, DSH Web Search/Fetch, MCP Prompt and Resource metadata, and manual compaction where supported. Native capabilities are presented in eleven accessible tabs with Tools separated from Commands, LSP, and Formatters. Tool source and Ask/Execute availability are explicit, external OpenCode remains connection-only, Continue reports unsupported static tool discovery instead of advertising unreachable Skills, and disposable inventory probes avoid retaining background runtimes. Ask remains read-only at the Runtime boundary, Execute keeps the existing authorization controls, and credentials remain confined to Main. Release note: 新增 OpenCode、Continue 与 DeepSeek Harness 的 Runtime 原生定制与真实能力清单;工具来源、Ask/Execute 可用性、上下文压缩和 MCP 元数据现在可清晰查看,同时继续保持 Main 进程凭据保护与现有权限边界。
This commit is contained in:
@@ -3,7 +3,10 @@ import type {
|
||||
AgentEvent,
|
||||
AgentQuestionAnswer,
|
||||
AgentRequest,
|
||||
AgentRuntimeStatus
|
||||
AgentRuntimeStatus,
|
||||
RuntimeConversationCompactInput,
|
||||
RuntimeConversationCompactResult,
|
||||
RuntimeNativeSnapshot
|
||||
} from '../../shared/contracts'
|
||||
import type { WorkMode } from '../../shared/assistant-contracts'
|
||||
|
||||
@@ -47,6 +50,11 @@ export type RuntimeEvent =
|
||||
| RuntimeGeneratedImageEvent
|
||||
| RuntimeModelUsageEvent
|
||||
|
||||
export type RuntimeConversationCompactOutcome = {
|
||||
result: RuntimeConversationCompactResult
|
||||
usageEvents?: RuntimeModelUsageEvent[]
|
||||
}
|
||||
|
||||
export interface AgentRuntime {
|
||||
readonly runtimeId?: AgentRuntimeStatus['id']
|
||||
readonly requiresToolApproval: boolean
|
||||
@@ -56,6 +64,11 @@ export interface AgentRuntime {
|
||||
readonly capability?: 'chat' | 'image-generation'
|
||||
getStatus(): Promise<AgentRuntimeStatus>
|
||||
testConnection?(): Promise<AgentRuntimeStatus>
|
||||
getNativeSnapshot?(): Promise<RuntimeNativeSnapshot>
|
||||
compactConversation?(
|
||||
request: RuntimeConversationCompactInput,
|
||||
signal: AbortSignal
|
||||
): Promise<RuntimeConversationCompactOutcome>
|
||||
run(
|
||||
request: AgentExecutionRequest,
|
||||
signal: AbortSignal,
|
||||
|
||||
Reference in New Issue
Block a user