add chat.headers hook, adjust codex and copilot plugins to use it

This commit is contained in:
Aiden Cline
2026-01-21 15:09:56 -06:00
parent 17a5f75b54
commit c89f6e7ac6
4 changed files with 45 additions and 11 deletions

View File

@@ -1,7 +1,8 @@
import type { Hooks, PluginInput } from "@opencode-ai/plugin"
import { Log } from "../util/log"
import { OAUTH_DUMMY_KEY } from "../auth"
import { ProviderTransform } from "../provider/transform"
import { Installation } from "../installation"
import { Auth, OAUTH_DUMMY_KEY } from "../auth"
import os from "os"
const log = Log.create({ service: "plugin.codex" })
@@ -489,5 +490,11 @@ export async function CodexAuthPlugin(input: PluginInput): Promise<Hooks> {
},
],
},
"chat.headers": async (input, output) => {
if (input.model.providerID !== "openai") return
output.headers.originator = "opencode"
output.headers["User-Agent"] = `opencode/${Installation.VERSION} (${os.platform()} ${os.release()}; ${os.arch()})`
output.headers.session_id = input.sessionID
},
}
}