@tduyng/pi-opencode-z 0.0.1 → 0.0.2
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/package.json +1 -1
- package/src/client.ts +5 -3
- package/src/config.ts +1 -1
- package/src/index.ts +5 -3
package/package.json
CHANGED
package/src/client.ts
CHANGED
|
@@ -128,9 +128,11 @@ export async function api<T = unknown>(
|
|
|
128
128
|
try {
|
|
129
129
|
return await request<T>(info, method, path, body, signal)
|
|
130
130
|
} catch (error) {
|
|
131
|
-
// A cached url or password goes stale when the server restarts.
|
|
132
|
-
//
|
|
133
|
-
const stale =
|
|
131
|
+
// A cached url or password goes stale when the server restarts. Retry a read, or a write
|
|
132
|
+
// the server rejected outright with 401; a POST that drops mid-flight may already have run.
|
|
133
|
+
const stale =
|
|
134
|
+
(error instanceof Error && error.message.includes('(401)')) ||
|
|
135
|
+
((method === 'GET' || method === 'DELETE') && error instanceof TypeError)
|
|
134
136
|
if (signal?.aborted || !stale) throw error
|
|
135
137
|
service = undefined
|
|
136
138
|
return request<T>(await resolveService(), method, path, body, signal)
|
package/src/config.ts
CHANGED
|
@@ -88,7 +88,7 @@ export function resolveBin(envRaw: string | undefined, fileBin: string | undefin
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
export function bridgeBin(): string {
|
|
91
|
-
return resolveBin(process.env['OPENCODE_Z_BIN'],
|
|
91
|
+
return resolveBin(process.env['OPENCODE_Z_BIN'], readBridgeFile(configPath()).bin)
|
|
92
92
|
}
|
|
93
93
|
|
|
94
94
|
export function bridgeModelsRaw(): string | undefined {
|
package/src/index.ts
CHANGED
|
@@ -51,10 +51,12 @@ export default async function opencodeBridge(pi: ExtensionAPI): Promise<void> {
|
|
|
51
51
|
|
|
52
52
|
async function start(): Promise<void> {
|
|
53
53
|
await resolveService()
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
const models = await loadModels()
|
|
55
|
+
const server = await startMcpServer()
|
|
56
|
+
mcpServer = server
|
|
57
|
+
attachMcpServer(runtime, server)
|
|
56
58
|
events = startEventStream((event) => routeEvent(runtime, event))
|
|
57
|
-
register(
|
|
59
|
+
register(models)
|
|
58
60
|
startupError = undefined
|
|
59
61
|
}
|
|
60
62
|
|