|
|
@@ -16,6 +16,12 @@ import { type ToolDefinition } from "./tool"
|
|
|
|
|
|
export * from "./tool"
|
|
|
|
|
|
+export type ProviderContext = {
|
|
|
+ source: "env" | "config" | "custom" | "api"
|
|
|
+ info: Provider
|
|
|
+ options: Record<string, any>
|
|
|
+}
|
|
|
+
|
|
|
export type PluginInput = {
|
|
|
client: ReturnType<typeof createOpencodeClient>
|
|
|
project: Project
|
|
|
@@ -153,7 +159,7 @@ export interface Hooks {
|
|
|
* Modify parameters sent to LLM
|
|
|
*/
|
|
|
"chat.params"?: (
|
|
|
- input: { sessionID: string; agent: string; model: Model; provider: Provider; message: UserMessage },
|
|
|
+ input: { sessionID: string; agent: string; model: Model; provider: ProviderContext; message: UserMessage },
|
|
|
output: { temperature: number; topP: number; options: Record<string, any> },
|
|
|
) => Promise<void>
|
|
|
"permission.ask"?: (input: Permission, output: { status: "ask" | "deny" | "allow" }) => Promise<void>
|