mirror of
https://github.com/aljazceru/opencode.git
synced 2025-12-22 02:04:22 +01:00
feat: add input context to chat.params and chat.message (#4085)
This commit is contained in:
@@ -206,6 +206,8 @@ export namespace SessionPrompt {
|
|||||||
const params = await Plugin.trigger(
|
const params = await Plugin.trigger(
|
||||||
"chat.params",
|
"chat.params",
|
||||||
{
|
{
|
||||||
|
sessionID: input.sessionID,
|
||||||
|
agent: agent.name,
|
||||||
model: model.info,
|
model: model.info,
|
||||||
provider: await Provider.getProvider(model.providerID),
|
provider: await Provider.getProvider(model.providerID),
|
||||||
message: userMsg,
|
message: userMsg,
|
||||||
@@ -882,7 +884,12 @@ export namespace SessionPrompt {
|
|||||||
|
|
||||||
await Plugin.trigger(
|
await Plugin.trigger(
|
||||||
"chat.message",
|
"chat.message",
|
||||||
{},
|
{
|
||||||
|
sessionID: input.sessionID,
|
||||||
|
agent: input.agent,
|
||||||
|
model: input.model,
|
||||||
|
messageID: input.messageID,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
message: info,
|
message: info,
|
||||||
parts,
|
parts,
|
||||||
|
|||||||
@@ -143,12 +143,15 @@ export interface Hooks {
|
|||||||
/**
|
/**
|
||||||
* Called when a new message is received
|
* Called when a new message is received
|
||||||
*/
|
*/
|
||||||
"chat.message"?: (input: {}, output: { message: UserMessage; parts: Part[] }) => Promise<void>
|
"chat.message"?: (
|
||||||
|
input: { sessionID: string; agent?: string; model?: { providerID: string; modelID: string; messageID?: string } },
|
||||||
|
output: { message: UserMessage; parts: Part[] },
|
||||||
|
) => Promise<void>
|
||||||
/**
|
/**
|
||||||
* Modify parameters sent to LLM
|
* Modify parameters sent to LLM
|
||||||
*/
|
*/
|
||||||
"chat.params"?: (
|
"chat.params"?: (
|
||||||
input: { model: Model; provider: Provider; message: UserMessage },
|
input: { sessionID: string; agent: string; model: Model; provider: Provider; message: UserMessage },
|
||||||
output: { temperature: number; topP: number; options: Record<string, any> },
|
output: { temperature: number; topP: number; options: Record<string, any> },
|
||||||
) => Promise<void>
|
) => Promise<void>
|
||||||
"permission.ask"?: (input: Permission, output: { status: "ask" | "deny" | "allow" }) => Promise<void>
|
"permission.ask"?: (input: Permission, output: { status: "ask" | "deny" | "allow" }) => Promise<void>
|
||||||
|
|||||||
Reference in New Issue
Block a user