opencode-windsurf-codeium 0.1.18 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Vedant
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -8,10 +8,11 @@ OpenCode plugin for Windsurf/Codeium authentication - use Windsurf models in Ope
8
8
  - Automatic credential discovery (CSRF token, port, API key)
9
9
  - Transparent REST↔gRPC translation over HTTP/2
10
10
  - Zero extra auth prompts when Windsurf is running
11
+ - OpenCode tool-calling compatible: tools are planned via Windsurf inference but executed by OpenCode (MCP/tool registry remains authoritative)
11
12
 
12
13
  ## Overview
13
14
 
14
- This plugin enables OpenCode users to access Windsurf/Codeium models by leveraging their existing Windsurf installation. It communicates directly with the **local Windsurf language server** via gRPC - no network traffic capture or OAuth flows required.
15
+ This plugin enables OpenCode users to access Windsurf/Codeium models by leveraging their existing Windsurf installation. It communicates directly with the **local Windsurf language server** via gRPCno network traffic capture or OAuth flows required.
15
16
 
16
17
  ## Prerequisites
17
18
 
@@ -28,7 +29,7 @@ bun add opencode-windsurf-codeium@beta
28
29
 
29
30
  ## OpenCode Configuration
30
31
 
31
- Add the following to your OpenCode config (typically `~/.config/opencode/config.json`). The plugin starts a local proxy server on port 42100:
32
+ Add the following to your OpenCode config (typically `~/.config/opencode/config.json`). The plugin starts a local proxy server on port 42100 (falls back to a random free port and updates `chat.params` automatically):
32
33
 
33
34
  ```json
34
35
  {
@@ -95,7 +96,9 @@ src/
95
96
  1. **Credential Discovery**: Extracts CSRF token and port from the running `language_server_macos` process
96
97
  2. **API Key**: Reads from `~/.codeium/config.json`
97
98
  3. **gRPC Communication**: Sends requests to `localhost:{port}` using HTTP/2 gRPC protocol
98
- 4. **Response Transformation**: Converts gRPC responses to OpenAI-compatible SSE format
99
+ 4. **Response Transformation**: Converts gRPC responses to OpenAI-compatible SSE format (assistant/tool turns are not replayed back to Windsurf)
100
+ 5. **Model Naming**: Sends both model enum and `chat_model_name` for fidelity with Windsurf’s expectations
101
+ 6. **Tool Planning**: When `tools` are provided, we build a tool-calling prompt (with system messages) and ask Windsurf to produce `tool_calls`/final text. Tool execution and MCP tool registry stay on OpenCode’s side.
99
102
 
100
103
  ### Supported Models (canonical names)
101
104
 
@@ -139,8 +142,7 @@ bun test
139
142
 
140
143
  - **Windsurf must be running** - The plugin communicates with the local language server
141
144
  - **macOS focus** - Linux/Windows paths need verification
142
- - **Response parsing** - Uses heuristic text extraction from protobuf (may miss edge cases)
143
- - **No tool calling yet** - Basic chat completion only
145
+ - **Tool execution** - OpenCode executes tools; plugin only plans tool_calls via Windsurf inference
144
146
 
145
147
  ## Further Reading
146
148
 
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAqX9D;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC9B,aAAY,MAAkB,MACxB,UAAU,WAAW,KAAG,OAAO,CAAC,KAAK,CA6B3C,CAAC;AAEJ,qCAAqC;AACrC,eAAO,MAAM,cAAc,aAhCR,WAAW,KAAG,OAAO,CAAC,KAAK,CAgCM,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,aAnCP,WAAW,KAAG,OAAO,CAAC,KAAK,CAmCc,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AA0qB9D;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC9B,aAAY,MAAkB,MACxB,UAAU,WAAW,KAAG,OAAO,CAAC,KAAK,CA6B3C,CAAC;AAEJ,qCAAqC;AACrC,eAAO,MAAM,cAAc,aAhCR,WAAW,KAAG,OAAO,CAAC,KAAK,CAgCM,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,aAnCP,WAAW,KAAG,OAAO,CAAC,KAAK,CAmCc,CAAC"}
@@ -18,9 +18,249 @@ import { getCredentials, isWindsurfRunning } from './plugin/auth.js';
18
18
  import { streamChatGenerator } from './plugin/grpc-client.js';
19
19
  import { getDefaultModel, getCanonicalModels } from './plugin/models.js';
20
20
  import { PLUGIN_ID } from './constants.js';
21
- // ============================================================================
22
- // Response Helpers
23
- // ============================================================================
21
+ async function runWindsurfOnce(credentials, model, prompt) {
22
+ const chunks = [];
23
+ const generator = streamChatGenerator(credentials, {
24
+ model,
25
+ messages: [{ role: 'user', content: prompt }],
26
+ });
27
+ for await (const chunk of generator) {
28
+ chunks.push(chunk);
29
+ }
30
+ return chunks.join('');
31
+ }
32
+ async function planToolCall(credentials, request) {
33
+ const model = request.model || getDefaultModel();
34
+ const prompt = buildToolPrompt(request);
35
+ const content = await runWindsurfOnce(credentials, model, prompt);
36
+ const plan = parseToolCallPlan(content);
37
+ return { plan, content, model };
38
+ }
39
+ function buildToolCallPayload(model, toolCalls) {
40
+ const mapped = toolCalls.map((tc, i) => ({
41
+ id: `call_${Date.now()}_${i}`,
42
+ type: 'function',
43
+ function: {
44
+ name: tc.name,
45
+ arguments: JSON.stringify(tc.arguments ?? {}),
46
+ },
47
+ }));
48
+ return {
49
+ id: `windsurf-tools-${Date.now()}`,
50
+ object: 'chat.completion',
51
+ created: Math.floor(Date.now() / 1000),
52
+ model,
53
+ choices: [
54
+ {
55
+ index: 0,
56
+ message: {
57
+ role: 'assistant',
58
+ content: null,
59
+ tool_calls: mapped,
60
+ },
61
+ finish_reason: 'tool_calls',
62
+ },
63
+ ],
64
+ };
65
+ }
66
+ async function handleToolPlanning(credentials, request) {
67
+ const { plan, content, model } = await planToolCall(credentials, request);
68
+ if (plan?.action === 'tool_call') {
69
+ const payload = buildToolCallPayload(model, plan.tool_calls);
70
+ return new Response(JSON.stringify(payload), {
71
+ status: 200,
72
+ headers: { 'Content-Type': 'application/json' },
73
+ });
74
+ }
75
+ const finalContent = plan?.action === 'final' ? plan.content : content;
76
+ const payload = {
77
+ id: `windsurf-tools-${Date.now()}`,
78
+ object: 'chat.completion',
79
+ created: Math.floor(Date.now() / 1000),
80
+ model,
81
+ choices: [
82
+ {
83
+ index: 0,
84
+ message: { role: 'assistant', content: finalContent },
85
+ finish_reason: 'stop',
86
+ },
87
+ ],
88
+ };
89
+ return new Response(JSON.stringify(payload), {
90
+ status: 200,
91
+ headers: { 'Content-Type': 'application/json' },
92
+ });
93
+ }
94
+ function handleToolPlanningStream(credentials, request) {
95
+ const encoder = new TextEncoder();
96
+ return new ReadableStream({
97
+ async start(controller) {
98
+ try {
99
+ const { plan, content, model } = await planToolCall(credentials, request);
100
+ const id = `windsurf-tools-${Date.now()}`;
101
+ const created = Math.floor(Date.now() / 1000);
102
+ if (plan?.action === 'tool_call') {
103
+ const mapped = plan.tool_calls.map((tc, i) => ({
104
+ index: i,
105
+ id: `call_${Date.now()}_${i}`,
106
+ type: 'function',
107
+ function: {
108
+ name: tc.name,
109
+ arguments: JSON.stringify(tc.arguments ?? {}),
110
+ },
111
+ }));
112
+ const chunk = {
113
+ id,
114
+ object: 'chat.completion.chunk',
115
+ created,
116
+ model,
117
+ choices: [
118
+ {
119
+ index: 0,
120
+ delta: {
121
+ role: 'assistant',
122
+ content: null,
123
+ tool_calls: mapped,
124
+ },
125
+ finish_reason: 'tool_calls',
126
+ },
127
+ ],
128
+ };
129
+ controller.enqueue(encoder.encode(`data: ${JSON.stringify(chunk)}\n\n`));
130
+ controller.enqueue(encoder.encode('data: [DONE]\n\n'));
131
+ controller.close();
132
+ return;
133
+ }
134
+ const finalContent = plan?.action === 'final' ? plan.content : content;
135
+ const finalChunk = {
136
+ id,
137
+ object: 'chat.completion.chunk',
138
+ created,
139
+ model,
140
+ choices: [
141
+ {
142
+ index: 0,
143
+ delta: { content: finalContent },
144
+ finish_reason: 'stop',
145
+ },
146
+ ],
147
+ };
148
+ controller.enqueue(encoder.encode(`data: ${JSON.stringify(finalChunk)}\n\n`));
149
+ controller.enqueue(encoder.encode('data: [DONE]\n\n'));
150
+ controller.close();
151
+ }
152
+ catch (err) {
153
+ const msg = err instanceof Error ? err.message : String(err);
154
+ controller.enqueue(encoder.encode(`data: ${JSON.stringify({ error: { message: msg } })}\n\n`));
155
+ controller.enqueue(encoder.encode('data: [DONE]\n\n'));
156
+ controller.close();
157
+ }
158
+ },
159
+ });
160
+ }
161
+ function summarizeTool(tool) {
162
+ const name = tool?.function?.name || 'unknown';
163
+ const description = tool?.function?.description || '';
164
+ const params = tool?.function?.parameters;
165
+ let paramsSummary = '';
166
+ if (params && typeof params === 'object') {
167
+ const props = params.properties && typeof params.properties === 'object' ? Object.keys(params.properties) : [];
168
+ const required = Array.isArray(params.required) ? params.required : [];
169
+ paramsSummary = `args: { ${props.join(', ')} } required: [${required.join(', ')}]`;
170
+ }
171
+ return `- ${name}${description ? `: ${description}` : ''}${paramsSummary ? ` (${paramsSummary})` : ''}`;
172
+ }
173
+ function extractTextParts(content) {
174
+ if (typeof content === 'string')
175
+ return content;
176
+ return content.map((p) => (p?.type === 'text' && p.text ? p.text : '')).filter(Boolean).join('\n');
177
+ }
178
+ function buildToolPrompt(request) {
179
+ const tools = Array.isArray(request.tools) ? request.tools : [];
180
+ const toolList = tools.length ? tools.map(summarizeTool).join('\n') : '(none)';
181
+ const systemMessages = request.messages.filter((m) => m.role === 'system');
182
+ const systemText = systemMessages.map((m) => extractTextParts(m.content)).filter(Boolean).join('\n\n');
183
+ const conversationLines = [];
184
+ for (const message of request.messages) {
185
+ const role = message.role || 'user';
186
+ if (role === 'system')
187
+ continue; // already aggregated
188
+ if (role === 'tool') {
189
+ const content = extractTextParts(message.content);
190
+ const name = message.name || 'tool';
191
+ const toolCallId = message.tool_call_id;
192
+ conversationLines.push(`TOOL RESULT (${name}${toolCallId ? `, id=${toolCallId}` : ''}): ${content}`);
193
+ continue;
194
+ }
195
+ if (role === 'assistant' && Array.isArray(message.tool_calls)) {
196
+ conversationLines.push(`ASSISTANT TOOL_CALLS: ${JSON.stringify(message.tool_calls)}`);
197
+ continue;
198
+ }
199
+ const content = extractTextParts(message.content);
200
+ if (content) {
201
+ conversationLines.push(`${role.toUpperCase()}: ${content}`);
202
+ }
203
+ }
204
+ return [
205
+ 'You are a tool-calling assistant running inside OpenCode.',
206
+ systemText ? `System: ${systemText}` : '',
207
+ '',
208
+ 'Available tools:',
209
+ toolList,
210
+ '',
211
+ 'STRICT OUTPUT:',
212
+ '- Output MUST be exactly one JSON object and nothing else.',
213
+ '- If you output anything outside JSON, your answer is discarded.',
214
+ '',
215
+ 'RESPONSE FORMAT:',
216
+ '- Call tool(s):',
217
+ '{"action":"tool_call","tool_calls":[{"name":"tool_name","arguments":{"arg":"value"}}]}',
218
+ '- Final answer:',
219
+ '{"action":"final","content":"..."}',
220
+ '',
221
+ 'Conversation:',
222
+ conversationLines.join('\n\n'),
223
+ ]
224
+ .filter(Boolean)
225
+ .join('\n');
226
+ }
227
+ function parseToolCallPlan(output) {
228
+ const start = output.indexOf('{');
229
+ const end = output.lastIndexOf('}');
230
+ if (start === -1 || end === -1 || end <= start)
231
+ return null;
232
+ const jsonText = output.slice(start, end + 1);
233
+ try {
234
+ const parsed = JSON.parse(jsonText);
235
+ if (parsed && parsed.action === 'final' && typeof parsed.content === 'string') {
236
+ return { action: 'final', content: parsed.content };
237
+ }
238
+ if (parsed && parsed.action === 'tool_call' && Array.isArray(parsed.tool_calls)) {
239
+ return {
240
+ action: 'tool_call',
241
+ tool_calls: parsed.tool_calls
242
+ .filter((t) => t && typeof t.name === 'string')
243
+ .map((t) => ({ name: t.name, arguments: t.arguments ?? {} })),
244
+ };
245
+ }
246
+ return null;
247
+ }
248
+ catch {
249
+ // heuristic: look for <tool_call>name {json}
250
+ const toolCallMatch = output.match(/<tool_call>\s*([\w.-]+)\s*(\{[\s\S]*\})/);
251
+ if (toolCallMatch) {
252
+ const name = toolCallMatch[1];
253
+ try {
254
+ const args = JSON.parse(toolCallMatch[2]);
255
+ return { action: 'tool_call', tool_calls: [{ name, arguments: args }] };
256
+ }
257
+ catch {
258
+ return null;
259
+ }
260
+ }
261
+ return null;
262
+ }
263
+ }
24
264
  /**
25
265
  * Create an OpenAI-compatible response object
26
266
  */
@@ -184,6 +424,24 @@ async function ensureWindsurfProxyServer() {
184
424
  const body = await req.json().catch(() => ({}));
185
425
  const requestBody = body;
186
426
  const isStreaming = requestBody.stream === true;
427
+ const hasToolsField = Array.isArray(requestBody.tools) && requestBody.tools.length > 0;
428
+ const hasToolMessages = requestBody.messages?.some((m) => m.role === 'tool' ||
429
+ (m.role === 'assistant' && Array.isArray(m.tool_calls) && m.tool_calls.length > 0));
430
+ // If tools are requested, run local planning loop (non-streaming only).
431
+ if (hasToolsField || hasToolMessages) {
432
+ if (isStreaming) {
433
+ const stream = handleToolPlanningStream(credentials, requestBody);
434
+ return new Response(stream, {
435
+ status: 200,
436
+ headers: {
437
+ 'Content-Type': 'text/event-stream',
438
+ 'Cache-Control': 'no-cache',
439
+ Connection: 'keep-alive',
440
+ },
441
+ });
442
+ }
443
+ return await handleToolPlanning(credentials, requestBody);
444
+ }
187
445
  if (isStreaming) {
188
446
  const stream = createStreamingResponse(credentials, requestBody);
189
447
  return new Response(stream, {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-windsurf-codeium",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "description": "OpenCode plugin for Windsurf/Codeium authentication - use Windsurf models in OpenCode",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",