diff --git a/data/plugins/opencode-headroom-plugin.yaml b/data/plugins/opencode-headroom-plugin.yaml new file mode 100644 index 0000000..827b445 --- /dev/null +++ b/data/plugins/opencode-headroom-plugin.yaml @@ -0,0 +1,9 @@ +name: opencode-headroom-plugin +repo: https://github.com/goldfix/opencode-headroom-plugin +tagline: OpenCode v2 plugin compressing large tool results via Headroom at the message level +description: "A plugin for OpenCode v2 that transparently compresses large tool results in a session via Headroom, without touching the provider configuration already set up in OpenCode and without any provider-specific limitations (it also works with AWS Bedrock). It doesn't modify opencode.json/opencode.jsonc, doesn't create fake providers, and doesn't route provider HTTP traffic through a proxy: it hooks into session.hook(\"context\", ...), the point where OpenCode assembles the session's messages before translating them into the provider's native format (Anthropic Messages, OpenAI Chat, Bedrock Converse, ...) and before signing the request. Only tool results (role: \"tool\") are sent to Headroom for compression — never user/assistant text, never system messages." +kind: plugin +topics: + - context + - cost +compat: v2