oh-my-opencode 5.0.0-beta.12 → 5.0.0-beta.14
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/.agents/skills/senpi-qa/SKILL.md +80 -0
- package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.mjs +65 -0
- package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs +171 -0
- package/README.ja.md +25 -21
- package/README.ko.md +25 -21
- package/README.md +26 -22
- package/README.ru.md +24 -20
- package/README.zh-cn.md +25 -21
- package/dist/cli/index.js +16747 -15223
- package/dist/cli-node/index.js +16898 -15374
- package/dist/create-hooks.d.ts +1 -0
- package/dist/features/btw-side/btw-command-draft.d.ts +7 -0
- package/dist/features/btw-side/context-injector.d.ts +15 -0
- package/dist/features/btw-side/index.d.ts +8 -0
- package/dist/features/btw-side/metadata.d.ts +15 -0
- package/dist/features/btw-side/parent-context-budget.d.ts +9 -0
- package/dist/features/btw-side/server-session-registry.d.ts +8 -0
- package/dist/features/btw-side/tui-adoption-cache.d.ts +13 -0
- package/dist/features/btw-side/tui-adoption-guard.d.ts +5 -0
- package/dist/features/btw-side/tui-controller-types.d.ts +68 -0
- package/dist/features/btw-side/tui-controller.d.ts +19 -0
- package/dist/features/btw-side/tui-escape-return.d.ts +12 -0
- package/dist/features/btw-side/tui-keymap.d.ts +17 -0
- package/dist/features/btw-side/tui-parent-validator.d.ts +6 -0
- package/dist/features/btw-side/tui-picker-options.d.ts +20 -0
- package/dist/features/btw-side/tui-picker.d.ts +9 -0
- package/dist/features/btw-side/tui-prompt-queue.d.ts +8 -0
- package/dist/features/btw-side/tui-session-bridge.d.ts +11 -0
- package/dist/features/btw-side/tui-session-catalog.d.ts +35 -0
- package/dist/features/btw-side/tui-side-removal.d.ts +11 -0
- package/dist/features/btw-side/tui-side-start.d.ts +9 -0
- package/dist/features/btw-side/tui-wiring.d.ts +8 -0
- package/dist/features/opengateway-provider/index.d.ts +13 -0
- package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +2 -0
- package/dist/hooks/runtime-fallback/retry-model-payload.d.ts +1 -0
- package/dist/hooks/runtime-fallback/runtime-model-settings.d.ts +6 -0
- package/dist/hooks/runtime-fallback/session-status-handler.d.ts +1 -1
- package/dist/hooks/runtime-fallback/types.d.ts +3 -1
- package/dist/index.js +10814 -6018
- package/dist/plugin/event-session-lifecycle.d.ts +1 -0
- package/dist/plugin/hooks/create-core-hooks.d.ts +1 -0
- package/dist/plugin/hooks/create-transform-hooks.d.ts +2 -0
- package/dist/plugin/messages-transform.d.ts +1 -0
- package/dist/shared/index.d.ts +1 -0
- package/dist/shared/runtime-fallback-retry-marker.d.ts +16 -0
- package/dist/skills/frontend/SKILL.md +1 -0
- package/dist/skills/frontend/references/design/print-paged-media.md +76 -0
- package/dist/skills/ulw-research/SKILL.md +1 -1
- package/dist/skills/visual-qa/SKILL.md +3 -2
- package/dist/tui.js +8273 -8493
- package/package.json +30 -29
- package/packages/git-bash-mcp/dist/cli.js +5 -1
- package/packages/git-bash-mcp/package.json +1 -1
- package/packages/lsp-daemon/dist/cli.js +86 -114
- package/packages/lsp-daemon/dist/client.js +87 -118
- package/packages/lsp-daemon/dist/ensure-daemon.js +1 -0
- package/packages/lsp-daemon/dist/index.js +93 -123
- package/packages/lsp-daemon/dist/version-reap.js +1 -1
- package/packages/lsp-tools-mcp/dist/cli.js +67 -94
- package/packages/lsp-tools-mcp/dist/lsp/manager.js +62 -92
- package/packages/lsp-tools-mcp/dist/mcp.js +69 -96
- package/packages/lsp-tools-mcp/dist/request-context.js +11 -12
- package/packages/lsp-tools-mcp/dist/tools.js +73 -104
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +30 -29
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/src/hook.ts +1 -0
- package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +86 -65
- package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +86 -66
- package/packages/omo-codex/plugin/components/codegraph/package.json +4 -4
- package/packages/omo-codex/plugin/components/codegraph/src/mcp-bridge.ts +1 -0
- package/packages/omo-codex/plugin/components/codegraph/src/session-start-hook-runtime.ts +1 -0
- package/packages/omo-codex/plugin/components/comment-checker/dist/cli.js +2 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +5 -5
- package/packages/omo-codex/plugin/components/comment-checker/src/runner.ts +1 -0
- package/packages/omo-codex/plugin/components/git-bash/AGENTS.md +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +3 -4
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +5 -5
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
- package/packages/omo-codex/plugin/components/lsp/dist/cli.js +70 -107
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +5 -5
- package/packages/omo-codex/plugin/components/lsp/src/cli.ts +1 -1
- package/packages/omo-codex/plugin/components/rules/dist/cli.js +14 -12
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +7 -7
- package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/start-work-continuation/package.json +5 -5
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +5 -5
- package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +2266 -405
- package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +2270 -409
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +5 -5
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +1 -3
- package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +25 -0
- package/packages/omo-codex/plugin/components/ulw-loop/test/paths.test.ts +9 -0
- package/packages/omo-codex/plugin/components/ulw-loop/vitest.config.ts +1 -0
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/package-lock.json +661 -375
- package/packages/omo-codex/plugin/package.json +1 -1
- package/packages/omo-codex/plugin/shared/package.json +2 -3
- package/packages/omo-codex/plugin/skills/frontend/SKILL.md +1 -0
- package/packages/omo-codex/plugin/skills/frontend/references/design/print-paged-media.md +76 -0
- package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +1 -1
- package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +3 -2
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +2410 -504
- package/packages/shared-skills/skills/frontend/SKILL.md +1 -0
- package/packages/shared-skills/skills/frontend/references/design/print-paged-media.md +76 -0
- package/packages/shared-skills/skills/ulw-research/SKILL.md +1 -1
- package/packages/shared-skills/skills/visual-qa/SKILL.md +3 -2
- package/script/qa/web-terminal-visual-qa.mjs +2 -0
- package/script/qa/xterm-live-terminal.mjs +18 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oh-my-opencode",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.14",
|
|
4
4
|
"description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -137,7 +137,7 @@
|
|
|
137
137
|
"test": "bun test",
|
|
138
138
|
"test:codex": "bun run build:codex-install && bun run build:git-bash-mcp && bun run build:lsp-tools-mcp && bun run build:lsp-daemon && npm --prefix packages/lsp-tools-mcp test && npm --prefix packages/omo-codex/plugin ci && npm --prefix packages/omo-codex/plugin/components/ulw-loop test && bun run --cwd packages/omo-codex/plugin build && npm --prefix packages/omo-codex/plugin/components/codegraph run typecheck && npm --prefix packages/omo-codex/plugin/components/codegraph test && node scripts/check-third-party-notices.mjs --ship && bun test packages/omo-opencode/src/cli/cli-installer.platform.test.ts packages/omo-codex/src/install/codex-cache.test.ts packages/omo-codex/src/install/codex-cleanup.test.ts packages/omo-codex/src/install/codex-config-agent-cleanup.test.ts packages/omo-codex/src/install/codex-config-autonomous-features.test.ts packages/omo-codex/src/install/codex-config-reasoning.test.ts packages/omo-codex/src/install/codex-config-toml.test.ts packages/omo-codex/src/install/codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex-project-local-cleanup.test.ts packages/omo-codex/src/install/install-codex.test.ts packages/omo-codex/src/install/install-codex-packaged.test.ts packages/omo-codex/src/install/link-cached-plugin-agents.test.ts packages/omo-codex/src/**/*.test.ts packages/utils/src/jsonc-parser.test.ts packages/utils/src/frontmatter.test.ts packages/hashline-core/src/hash-computation.test.ts packages/hashline-core/src/smoke-untested-modules.test.ts packages/rules-engine/src/index.test.ts packages/rules-engine/src/security-boundary.test.ts packages/agents-md-core/src/injector.test.ts packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts && node --test packages/omo-codex/plugin/test/*.test.mjs packages/omo-codex/scripts/install-cache-copy.test.mjs packages/omo-codex/scripts/install-cli-args.test.mjs packages/omo-codex/scripts/install-delegated-command.test.mjs packages/omo-codex/scripts/install-config-autonomous-features.test.mjs packages/omo-codex/scripts/install-config-autonomous.test.mjs packages/omo-codex/scripts/install-config-reasoning.test.mjs packages/omo-codex/scripts/install-config.test.mjs packages/omo-codex/scripts/install-hook-targets.test.mjs packages/omo-codex/scripts/install-project-local-cleanup.test.mjs packages/omo-codex/scripts/install-lazycodex-version-stamp.test.mjs packages/omo-codex/scripts/install-local-entrypoint.test.mjs packages/omo-codex/scripts/install-local-git-bash-preflight.test.mjs packages/omo-codex/scripts/install-local.test.mjs packages/omo-codex/scripts/install-marketplace-cache.test.mjs packages/omo-codex/scripts/install-mcp-context7-runtime.test.mjs packages/omo-codex/scripts/install-mcp-runtime.test.mjs packages/omo-codex/scripts/install-packaged-local.test.mjs packages/omo-codex/scripts/install-generated-bundle.test.mjs packages/omo-codex/scripts/install-agent-links.test.mjs packages/omo-codex/scripts/install-bin-links.test.mjs",
|
|
139
139
|
"test:fast": "bun run script/test-fast.ts",
|
|
140
|
-
"test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test packages/omo-senpi",
|
|
140
|
+
"test:senpi": "bun run build:senpi-plugin && tsgo --noEmit -p packages/omo-senpi/tsconfig.json && bun test packages/omo-senpi && bun test ./.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs",
|
|
141
141
|
"test:windows-codex": "bun run test:codex",
|
|
142
142
|
"build:git-bash-mcp": "bun run --cwd packages/git-bash-mcp build",
|
|
143
143
|
"build:ast-grep-mcp": "bun run --cwd packages/ast-grep-mcp build"
|
|
@@ -162,26 +162,26 @@
|
|
|
162
162
|
},
|
|
163
163
|
"homepage": "https://github.com/code-yeongyu/oh-my-openagent#readme",
|
|
164
164
|
"dependencies": {
|
|
165
|
-
"@clack/prompts": "^1.
|
|
165
|
+
"@clack/prompts": "^1.7.0",
|
|
166
166
|
"@code-yeongyu/comment-checker": "^0.8.0",
|
|
167
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
168
|
-
"@opencode-ai/plugin": "1.
|
|
169
|
-
"@opencode-ai/sdk": "1.
|
|
170
|
-
"@opentui/core": "^0.
|
|
171
|
-
"@opentui/keymap": "^0.
|
|
172
|
-
"@opentui/solid": "^0.
|
|
173
|
-
"commander": "^
|
|
167
|
+
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
168
|
+
"@opencode-ai/plugin": "1.18.19",
|
|
169
|
+
"@opencode-ai/sdk": "1.18.19",
|
|
170
|
+
"@opentui/core": "^0.5.6",
|
|
171
|
+
"@opentui/keymap": "^0.5.6",
|
|
172
|
+
"@opentui/solid": "^0.5.6",
|
|
173
|
+
"commander": "^15.0.0",
|
|
174
174
|
"detect-libc": "^2.1.2",
|
|
175
175
|
"diff": "^9.0.0",
|
|
176
|
-
"js-yaml": "^
|
|
176
|
+
"js-yaml": "^5.0.0",
|
|
177
177
|
"jsonc-parser": "^3.3.1",
|
|
178
178
|
"picocolors": "^1.1.1",
|
|
179
|
-
"picomatch": "^4.0.
|
|
180
|
-
"posthog-node": "^5.
|
|
179
|
+
"picomatch": "^4.0.5",
|
|
180
|
+
"posthog-node": "^5.49.2",
|
|
181
181
|
"zod": "^4.4.3"
|
|
182
182
|
},
|
|
183
183
|
"devDependencies": {
|
|
184
|
-
"@code-yeongyu/senpi": "2026.8.
|
|
184
|
+
"@code-yeongyu/senpi": "2026.8.21-2",
|
|
185
185
|
"@oh-my-opencode/agents-md-core": "workspace:*",
|
|
186
186
|
"@oh-my-opencode/ast-grep-mcp": "workspace:*",
|
|
187
187
|
"@oh-my-opencode/boulder-state": "workspace:*",
|
|
@@ -216,24 +216,24 @@
|
|
|
216
216
|
"@typescript/native-preview": "7.0.0-dev.20260707.2",
|
|
217
217
|
"@xterm/addon-unicode11": "^0.9.0",
|
|
218
218
|
"@xterm/xterm": "^6.0.0",
|
|
219
|
-
"bun-types": "1.
|
|
219
|
+
"bun-types": "1.4.0",
|
|
220
220
|
"node-pty": "^1.1.0",
|
|
221
|
-
"puppeteer-core": "^25.
|
|
221
|
+
"puppeteer-core": "^25.8.0",
|
|
222
222
|
"typescript": "^7.0.2"
|
|
223
223
|
},
|
|
224
224
|
"optionalDependencies": {
|
|
225
|
-
"oh-my-opencode-darwin-arm64": "5.0.0-beta.
|
|
226
|
-
"oh-my-opencode-darwin-x64": "5.0.0-beta.
|
|
227
|
-
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.
|
|
228
|
-
"oh-my-opencode-linux-arm64": "5.0.0-beta.
|
|
229
|
-
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.
|
|
230
|
-
"oh-my-opencode-linux-x64": "5.0.0-beta.
|
|
231
|
-
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.
|
|
232
|
-
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.
|
|
233
|
-
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.
|
|
234
|
-
"oh-my-opencode-windows-arm64": "5.0.0-beta.
|
|
235
|
-
"oh-my-opencode-windows-x64": "5.0.0-beta.
|
|
236
|
-
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.
|
|
225
|
+
"oh-my-opencode-darwin-arm64": "5.0.0-beta.14",
|
|
226
|
+
"oh-my-opencode-darwin-x64": "5.0.0-beta.14",
|
|
227
|
+
"oh-my-opencode-darwin-x64-baseline": "5.0.0-beta.14",
|
|
228
|
+
"oh-my-opencode-linux-arm64": "5.0.0-beta.14",
|
|
229
|
+
"oh-my-opencode-linux-arm64-musl": "5.0.0-beta.14",
|
|
230
|
+
"oh-my-opencode-linux-x64": "5.0.0-beta.14",
|
|
231
|
+
"oh-my-opencode-linux-x64-baseline": "5.0.0-beta.14",
|
|
232
|
+
"oh-my-opencode-linux-x64-musl": "5.0.0-beta.14",
|
|
233
|
+
"oh-my-opencode-linux-x64-musl-baseline": "5.0.0-beta.14",
|
|
234
|
+
"oh-my-opencode-windows-arm64": "5.0.0-beta.14",
|
|
235
|
+
"oh-my-opencode-windows-x64": "5.0.0-beta.14",
|
|
236
|
+
"oh-my-opencode-windows-x64-baseline": "5.0.0-beta.14"
|
|
237
237
|
},
|
|
238
238
|
"overrides": {
|
|
239
239
|
"@earendil-works/pi-agent-core": "0.84.2",
|
|
@@ -244,7 +244,8 @@
|
|
|
244
244
|
"@hono/node-server": "^1.19.13",
|
|
245
245
|
"express-rate-limit": "^8.5.1",
|
|
246
246
|
"fast-uri": "^3.1.2",
|
|
247
|
-
"path-to-regexp": "^8.4.2"
|
|
247
|
+
"path-to-regexp": "^8.4.2",
|
|
248
|
+
"@types/node": "26.2.0"
|
|
248
249
|
},
|
|
249
250
|
"trustedDependencies": [
|
|
250
251
|
"@code-yeongyu/comment-checker"
|
|
@@ -276,7 +276,11 @@ function createParentWatchdog(config, onDeadParent) {
|
|
|
276
276
|
const probeAlive = config.probeAlive ?? isProcessAlive;
|
|
277
277
|
let fired = false;
|
|
278
278
|
const timer = setInterval(() => {
|
|
279
|
-
if (fired
|
|
279
|
+
if (fired)
|
|
280
|
+
return;
|
|
281
|
+
const alive = probeAlive(parentPid);
|
|
282
|
+
config.onPoll?.(alive);
|
|
283
|
+
if (alive)
|
|
280
284
|
return;
|
|
281
285
|
fired = true;
|
|
282
286
|
onDeadParent(parentPid, pollIntervalMs);
|
|
@@ -280,7 +280,11 @@ function createParentWatchdog(config, onDeadParent) {
|
|
|
280
280
|
const probeAlive = config.probeAlive ?? isProcessAlive;
|
|
281
281
|
let fired = false;
|
|
282
282
|
const timer = setInterval(() => {
|
|
283
|
-
if (fired
|
|
283
|
+
if (fired)
|
|
284
|
+
return;
|
|
285
|
+
const alive = probeAlive(parentPid);
|
|
286
|
+
config.onPoll?.(alive);
|
|
287
|
+
if (alive)
|
|
284
288
|
return;
|
|
285
289
|
fired = true;
|
|
286
290
|
onDeadParent(parentPid, pollIntervalMs);
|
|
@@ -325,18 +329,17 @@ import { homedir } from "node:os";
|
|
|
325
329
|
import { basename, delimiter, dirname, isAbsolute, join, relative, resolve } from "node:path";
|
|
326
330
|
|
|
327
331
|
class LspRequestContextParseError extends Error {
|
|
328
|
-
code;
|
|
329
|
-
name = "LspRequestContextParseError";
|
|
330
332
|
constructor(code, message) {
|
|
331
333
|
super(message);
|
|
332
334
|
this.code = code;
|
|
335
|
+
this.name = "LspRequestContextParseError";
|
|
333
336
|
}
|
|
334
337
|
}
|
|
335
338
|
|
|
336
339
|
class LspRequestContextUnavailableError extends Error {
|
|
337
|
-
name = "LspRequestContextUnavailableError";
|
|
338
340
|
constructor() {
|
|
339
341
|
super("LSP request context is required. Standalone MCP startup must install one with runWithRequestContext(createStandaloneMcpRequestContext()).");
|
|
342
|
+
this.name = "LspRequestContextUnavailableError";
|
|
340
343
|
}
|
|
341
344
|
}
|
|
342
345
|
var storage = new AsyncLocalStorage;
|
|
@@ -499,22 +502,15 @@ function effectiveExtension(filePath) {
|
|
|
499
502
|
|
|
500
503
|
// ../lsp-core/src/lsp/errors.ts
|
|
501
504
|
class LspConnectionClosedError extends Error {
|
|
502
|
-
serverId;
|
|
503
|
-
root;
|
|
504
|
-
name = "LspConnectionClosedError";
|
|
505
505
|
constructor(serverId, root, message) {
|
|
506
506
|
super(message ?? `LSP connection closed for ${serverId} at ${root}`);
|
|
507
507
|
this.serverId = serverId;
|
|
508
508
|
this.root = root;
|
|
509
|
+
this.name = "LspConnectionClosedError";
|
|
509
510
|
}
|
|
510
511
|
}
|
|
511
512
|
|
|
512
513
|
class LspProcessExitedError extends Error {
|
|
513
|
-
serverId;
|
|
514
|
-
root;
|
|
515
|
-
exitCode;
|
|
516
|
-
stderrTail;
|
|
517
|
-
name = "LspProcessExitedError";
|
|
518
514
|
constructor(serverId, root, exitCode, stderrTail) {
|
|
519
515
|
const stderrSuffix = stderrTail ? `
|
|
520
516
|
stderr tail: ${stderrTail}` : "";
|
|
@@ -523,46 +519,49 @@ stderr tail: ${stderrTail}` : "";
|
|
|
523
519
|
this.root = root;
|
|
524
520
|
this.exitCode = exitCode;
|
|
525
521
|
this.stderrTail = stderrTail;
|
|
522
|
+
this.name = "LspProcessExitedError";
|
|
526
523
|
}
|
|
527
524
|
}
|
|
528
525
|
|
|
529
526
|
class LspRequestTimeoutError extends Error {
|
|
530
|
-
method;
|
|
531
|
-
stderrTail;
|
|
532
|
-
name = "LspRequestTimeoutError";
|
|
533
527
|
constructor(method, stderrTail) {
|
|
534
528
|
const stderrSuffix = stderrTail ? `
|
|
535
529
|
recent stderr: ${stderrTail}` : "";
|
|
536
530
|
super(`LSP request timeout (method: ${method})${stderrSuffix}`);
|
|
537
531
|
this.method = method;
|
|
538
532
|
this.stderrTail = stderrTail;
|
|
533
|
+
this.name = "LspRequestTimeoutError";
|
|
539
534
|
}
|
|
540
535
|
}
|
|
541
536
|
|
|
542
537
|
class LspInvalidPathError extends Error {
|
|
543
|
-
|
|
538
|
+
constructor() {
|
|
539
|
+
super(...arguments);
|
|
540
|
+
this.name = "LspInvalidPathError";
|
|
541
|
+
}
|
|
544
542
|
}
|
|
545
543
|
|
|
546
544
|
class LspServerLookupError extends Error {
|
|
547
|
-
lookup;
|
|
548
|
-
name = "LspServerLookupError";
|
|
549
545
|
constructor(message, lookup) {
|
|
550
546
|
super(message);
|
|
551
547
|
this.lookup = lookup;
|
|
548
|
+
this.name = "LspServerLookupError";
|
|
552
549
|
}
|
|
553
550
|
}
|
|
554
551
|
|
|
555
552
|
class LspServerInitializingError extends Error {
|
|
556
|
-
originalError;
|
|
557
|
-
name = "LspServerInitializingError";
|
|
558
553
|
constructor(originalError) {
|
|
559
554
|
super(`LSP server is still initializing. Please retry in a few seconds. Original error: ${originalError.message}`);
|
|
560
555
|
this.originalError = originalError;
|
|
556
|
+
this.name = "LspServerInitializingError";
|
|
561
557
|
}
|
|
562
558
|
}
|
|
563
559
|
|
|
564
560
|
class LspProcessSpawnError extends Error {
|
|
565
|
-
|
|
561
|
+
constructor() {
|
|
562
|
+
super(...arguments);
|
|
563
|
+
this.name = "LspProcessSpawnError";
|
|
564
|
+
}
|
|
566
565
|
}
|
|
567
566
|
function isLspDeadConnectionError(err) {
|
|
568
567
|
return err instanceof LspConnectionClosedError || err instanceof LspProcessExitedError;
|
|
@@ -607,20 +606,31 @@ var METHOD_NOT_FOUND = -32601;
|
|
|
607
606
|
var INTERNAL_ERROR = -32603;
|
|
608
607
|
|
|
609
608
|
class JsonRpcConnection {
|
|
610
|
-
reader;
|
|
611
|
-
writer;
|
|
612
|
-
pendingRequests = new Map;
|
|
613
|
-
notificationHandlers = new Map;
|
|
614
|
-
requestHandlers = new Map;
|
|
615
|
-
closeHandlers = [];
|
|
616
|
-
errorHandlers = [];
|
|
617
|
-
inputBuffer = Buffer.alloc(0);
|
|
618
|
-
nextRequestId = 1;
|
|
619
|
-
listening = false;
|
|
620
|
-
disposed = false;
|
|
621
609
|
constructor(reader, writer) {
|
|
622
610
|
this.reader = reader;
|
|
623
611
|
this.writer = writer;
|
|
612
|
+
this.pendingRequests = new Map;
|
|
613
|
+
this.notificationHandlers = new Map;
|
|
614
|
+
this.requestHandlers = new Map;
|
|
615
|
+
this.closeHandlers = [];
|
|
616
|
+
this.errorHandlers = [];
|
|
617
|
+
this.inputBuffer = Buffer.alloc(0);
|
|
618
|
+
this.nextRequestId = 1;
|
|
619
|
+
this.listening = false;
|
|
620
|
+
this.disposed = false;
|
|
621
|
+
this.handleData = (chunk) => {
|
|
622
|
+
const chunkBuffer = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk, "utf8");
|
|
623
|
+
this.inputBuffer = Buffer.concat([this.inputBuffer, chunkBuffer]);
|
|
624
|
+
this.drainInputBuffer();
|
|
625
|
+
};
|
|
626
|
+
this.handleClose = () => {
|
|
627
|
+
for (const handler of this.closeHandlers) {
|
|
628
|
+
handler();
|
|
629
|
+
}
|
|
630
|
+
};
|
|
631
|
+
this.handleStreamError = (error) => {
|
|
632
|
+
this.emitError(error);
|
|
633
|
+
};
|
|
624
634
|
}
|
|
625
635
|
listen() {
|
|
626
636
|
if (this.listening)
|
|
@@ -741,19 +751,6 @@ class JsonRpcConnection {
|
|
|
741
751
|
this.notificationHandlers.clear();
|
|
742
752
|
this.requestHandlers.clear();
|
|
743
753
|
}
|
|
744
|
-
handleData = (chunk) => {
|
|
745
|
-
const chunkBuffer = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk, "utf8");
|
|
746
|
-
this.inputBuffer = Buffer.concat([this.inputBuffer, chunkBuffer]);
|
|
747
|
-
this.drainInputBuffer();
|
|
748
|
-
};
|
|
749
|
-
handleClose = () => {
|
|
750
|
-
for (const handler of this.closeHandlers) {
|
|
751
|
-
handler();
|
|
752
|
-
}
|
|
753
|
-
};
|
|
754
|
-
handleStreamError = (error) => {
|
|
755
|
-
this.emitError(error);
|
|
756
|
-
};
|
|
757
754
|
drainInputBuffer() {
|
|
758
755
|
while (true) {
|
|
759
756
|
const headerEnd = this.inputBuffer.indexOf(HEADER_SEPARATOR2);
|
|
@@ -1101,31 +1098,25 @@ function isPosition(value) {
|
|
|
1101
1098
|
|
|
1102
1099
|
// ../lsp-core/src/lsp/transport.ts
|
|
1103
1100
|
class LspClientNotStartedError extends Error {
|
|
1104
|
-
serverId;
|
|
1105
|
-
root;
|
|
1106
|
-
name = "LspClientNotStartedError";
|
|
1107
1101
|
constructor(serverId, root) {
|
|
1108
1102
|
super("LSP client not started");
|
|
1109
1103
|
this.serverId = serverId;
|
|
1110
1104
|
this.root = root;
|
|
1105
|
+
this.name = "LspClientNotStartedError";
|
|
1111
1106
|
}
|
|
1112
1107
|
}
|
|
1113
1108
|
|
|
1114
1109
|
class LspClientTransport {
|
|
1115
|
-
root;
|
|
1116
|
-
server;
|
|
1117
|
-
proc = null;
|
|
1118
|
-
connection = null;
|
|
1119
|
-
stderrBuffer = [];
|
|
1120
|
-
processExited = false;
|
|
1121
|
-
diagnosticsStore = new Map;
|
|
1122
|
-
requestTimeoutMs;
|
|
1123
|
-
initializeTimeoutMs;
|
|
1124
|
-
workspaceApplyEditHandler = null;
|
|
1125
|
-
diagnosticPullSupported = false;
|
|
1126
1110
|
constructor(root, server2, timeouts = {}) {
|
|
1127
1111
|
this.root = root;
|
|
1128
1112
|
this.server = server2;
|
|
1113
|
+
this.proc = null;
|
|
1114
|
+
this.connection = null;
|
|
1115
|
+
this.stderrBuffer = [];
|
|
1116
|
+
this.processExited = false;
|
|
1117
|
+
this.diagnosticsStore = new Map;
|
|
1118
|
+
this.workspaceApplyEditHandler = null;
|
|
1119
|
+
this.diagnosticPullSupported = false;
|
|
1129
1120
|
this.requestTimeoutMs = timeouts.requestTimeoutMs ?? REQUEST_TIMEOUT_MS;
|
|
1130
1121
|
this.initializeTimeoutMs = timeouts.initializeTimeoutMs ?? INIT_TIMEOUT_MS;
|
|
1131
1122
|
}
|
|
@@ -1622,16 +1613,12 @@ function movedPath(candidate, oldPath, newPath) {
|
|
|
1622
1613
|
}
|
|
1623
1614
|
|
|
1624
1615
|
class WorkspaceDocumentState {
|
|
1625
|
-
sendNotification;
|
|
1626
|
-
clearDiagnostics;
|
|
1627
|
-
openDocuments = new Map;
|
|
1628
|
-
openByUri = new Map;
|
|
1629
|
-
openPromises = new Map;
|
|
1630
|
-
now;
|
|
1631
|
-
versionlessPublishQuiescenceMs;
|
|
1632
1616
|
constructor(sendNotification, clearDiagnostics, options = {}) {
|
|
1633
1617
|
this.sendNotification = sendNotification;
|
|
1634
1618
|
this.clearDiagnostics = clearDiagnostics;
|
|
1619
|
+
this.openDocuments = new Map;
|
|
1620
|
+
this.openByUri = new Map;
|
|
1621
|
+
this.openPromises = new Map;
|
|
1635
1622
|
this.now = options.now ?? (() => Date.now());
|
|
1636
1623
|
this.versionlessPublishQuiescenceMs = options.versionlessPublishQuiescenceMs ?? DEFAULT_VERSIONLESS_PUBLISH_QUIESCENCE_MS;
|
|
1637
1624
|
}
|
|
@@ -1895,13 +1882,11 @@ import { dirname as dirname2, isAbsolute as isAbsolute2, relative as relative3,
|
|
|
1895
1882
|
import { fileURLToPath } from "node:url";
|
|
1896
1883
|
|
|
1897
1884
|
class WorkspaceEditPathError extends Error {
|
|
1898
|
-
path;
|
|
1899
|
-
detail;
|
|
1900
|
-
name = "WorkspaceEditPathError";
|
|
1901
1885
|
constructor(path, detail) {
|
|
1902
1886
|
super(`${detail}: ${path}`);
|
|
1903
1887
|
this.path = path;
|
|
1904
1888
|
this.detail = detail;
|
|
1889
|
+
this.name = "WorkspaceEditPathError";
|
|
1905
1890
|
}
|
|
1906
1891
|
}
|
|
1907
1892
|
function isPathInsideWorkspace(filePath, workspaceRoot) {
|
|
@@ -2193,13 +2178,11 @@ function canonicalFingerprint(operations) {
|
|
|
2193
2178
|
|
|
2194
2179
|
// ../lsp-core/src/lsp/workspace-edit-types.ts
|
|
2195
2180
|
class WorkspaceEditValidationError extends Error {
|
|
2196
|
-
changeIndex;
|
|
2197
|
-
detail;
|
|
2198
|
-
name = "WorkspaceEditValidationError";
|
|
2199
2181
|
constructor(changeIndex, detail) {
|
|
2200
2182
|
super(`change ${changeIndex}: ${detail}`);
|
|
2201
2183
|
this.changeIndex = changeIndex;
|
|
2202
2184
|
this.detail = detail;
|
|
2185
|
+
this.name = "WorkspaceEditValidationError";
|
|
2203
2186
|
}
|
|
2204
2187
|
}
|
|
2205
2188
|
|
|
@@ -2697,10 +2680,9 @@ function simulateDelete(operation, virtual) {
|
|
|
2697
2680
|
import { existsSync as existsSync5, lstatSync as lstatSync3, readdirSync as readdirSync2 } from "node:fs";
|
|
2698
2681
|
import { dirname as dirname4, resolve as resolve5 } from "node:path";
|
|
2699
2682
|
class WorkspaceSnapshotBuilder {
|
|
2700
|
-
workspaceRoot;
|
|
2701
|
-
snapshots = new Map;
|
|
2702
2683
|
constructor(workspaceRoot) {
|
|
2703
2684
|
this.workspaceRoot = workspaceRoot;
|
|
2685
|
+
this.snapshots = new Map;
|
|
2704
2686
|
}
|
|
2705
2687
|
build(operations) {
|
|
2706
2688
|
this.add(this.workspaceRoot, false);
|
|
@@ -2744,8 +2726,10 @@ function snapshotOperations(operations, workspaceRoot) {
|
|
|
2744
2726
|
|
|
2745
2727
|
// ../lsp-core/src/lsp/workspace-edit-plan.ts
|
|
2746
2728
|
class PlanPathIndex {
|
|
2747
|
-
|
|
2748
|
-
|
|
2729
|
+
constructor() {
|
|
2730
|
+
this.firstChangeByPath = new Map;
|
|
2731
|
+
this.reportedPathByCanonical = new Map;
|
|
2732
|
+
}
|
|
2749
2733
|
build(operations) {
|
|
2750
2734
|
for (const operation of operations) {
|
|
2751
2735
|
switch (operation.kind) {
|
|
@@ -2834,14 +2818,11 @@ function isRecord4(value) {
|
|
|
2834
2818
|
}
|
|
2835
2819
|
|
|
2836
2820
|
class WorkspaceMutationController {
|
|
2837
|
-
workspaceRoot;
|
|
2838
|
-
documents;
|
|
2839
|
-
activeLease = null;
|
|
2840
|
-
nextLeaseId = 1;
|
|
2841
|
-
io;
|
|
2842
2821
|
constructor(workspaceRoot, documents) {
|
|
2843
2822
|
this.workspaceRoot = workspaceRoot;
|
|
2844
2823
|
this.documents = documents;
|
|
2824
|
+
this.activeLease = null;
|
|
2825
|
+
this.nextLeaseId = 1;
|
|
2845
2826
|
}
|
|
2846
2827
|
setIo(io) {
|
|
2847
2828
|
this.io = io;
|
|
@@ -2954,12 +2935,9 @@ var DIAGNOSTICS_FRESHNESS_TIMEOUT_MS = 3000;
|
|
|
2954
2935
|
var VERSIONLESS_PUBLISH_QUIESCENCE_MS = 250;
|
|
2955
2936
|
|
|
2956
2937
|
class LspClient extends LspClientConnection {
|
|
2957
|
-
diagnosticPullErrors = [];
|
|
2958
|
-
documents;
|
|
2959
|
-
workspaceMutations;
|
|
2960
|
-
diagnosticsFreshnessTimeoutMs;
|
|
2961
2938
|
constructor(root, server2, options = {}) {
|
|
2962
2939
|
super(root, server2, options);
|
|
2940
|
+
this.diagnosticPullErrors = [];
|
|
2963
2941
|
this.diagnosticsFreshnessTimeoutMs = options.diagnosticsFreshnessTimeoutMs ?? DIAGNOSTICS_FRESHNESS_TIMEOUT_MS;
|
|
2964
2942
|
this.documents = new WorkspaceDocumentState((method, params) => this.sendNotification(method, params), (uri) => this.diagnosticsStore.delete(uri), {
|
|
2965
2943
|
versionlessPublishQuiescenceMs: options.versionlessPublishQuiescenceMs ?? VERSIONLESS_PUBLISH_QUIESCENCE_MS
|
|
@@ -3259,16 +3237,11 @@ function awaitWithSignal(promise, signal) {
|
|
|
3259
3237
|
}
|
|
3260
3238
|
|
|
3261
3239
|
class LspManager {
|
|
3262
|
-
clients = new Map;
|
|
3263
|
-
reaperHandle = null;
|
|
3264
|
-
signalDisposer = null;
|
|
3265
|
-
disposed = false;
|
|
3266
|
-
idleTimeoutMs;
|
|
3267
|
-
initTimeoutMs;
|
|
3268
|
-
reaperIntervalMs;
|
|
3269
|
-
clientFactory;
|
|
3270
|
-
now;
|
|
3271
3240
|
constructor(options = {}) {
|
|
3241
|
+
this.clients = new Map;
|
|
3242
|
+
this.reaperHandle = null;
|
|
3243
|
+
this.signalDisposer = null;
|
|
3244
|
+
this.disposed = false;
|
|
3272
3245
|
this.idleTimeoutMs = options.idleTimeoutMs ?? IDLE_TIMEOUT_MS;
|
|
3273
3246
|
this.initTimeoutMs = options.initTimeoutMs ?? INIT_TIMEOUT_MS;
|
|
3274
3247
|
this.reaperIntervalMs = options.reaperIntervalMs ?? REAPER_INTERVAL_MS;
|
|
@@ -5206,7 +5179,6 @@ import { join as join8 } from "node:path";
|
|
|
5206
5179
|
|
|
5207
5180
|
// src/daemon-request-error.ts
|
|
5208
5181
|
class DaemonRequestError extends Error {
|
|
5209
|
-
requestWritten;
|
|
5210
5182
|
constructor(message, requestWritten) {
|
|
5211
5183
|
super(message);
|
|
5212
5184
|
this.name = "DaemonRequestError";
|
|
@@ -5229,7 +5201,6 @@ class DaemonRequestCancelledError extends DaemonRequestError {
|
|
|
5229
5201
|
}
|
|
5230
5202
|
|
|
5231
5203
|
class DaemonRequestTimedOutError extends DaemonRequestError {
|
|
5232
|
-
timeoutMs;
|
|
5233
5204
|
constructor(requestWritten, timeoutMs) {
|
|
5234
5205
|
super("daemon request timed out", requestWritten);
|
|
5235
5206
|
this.name = "DaemonRequestTimedOutError";
|
|
@@ -5308,14 +5279,12 @@ var PROTOCOL_ERROR_CODE = -32002;
|
|
|
5308
5279
|
var AUTH_TOKEN_BYTES = 32;
|
|
5309
5280
|
|
|
5310
5281
|
class UnsafePrivateDirectoryError extends Error {
|
|
5311
|
-
path;
|
|
5312
|
-
reason;
|
|
5313
|
-
name = "UnsafePrivateDirectoryError";
|
|
5314
|
-
code = "unsafe_private_directory";
|
|
5315
5282
|
constructor(path, reason) {
|
|
5316
5283
|
super(`unsafe private directory ${path}: ${reason}`);
|
|
5317
5284
|
this.path = path;
|
|
5318
5285
|
this.reason = reason;
|
|
5286
|
+
this.name = "UnsafePrivateDirectoryError";
|
|
5287
|
+
this.code = "unsafe_private_directory";
|
|
5319
5288
|
}
|
|
5320
5289
|
}
|
|
5321
5290
|
function authEnvelope(token) {
|
|
@@ -5499,20 +5468,18 @@ var OMO_LSP_DAEMON_VERSION = "OMO_LSP_DAEMON_VERSION";
|
|
|
5499
5468
|
var DAEMON_VERSION_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._+-]{0,127}$/;
|
|
5500
5469
|
|
|
5501
5470
|
class InvalidRuntimeOverrideError extends Error {
|
|
5502
|
-
code = "invalid_runtime_override";
|
|
5503
|
-
reason;
|
|
5504
5471
|
constructor(reason, message) {
|
|
5505
5472
|
super(message);
|
|
5473
|
+
this.code = "invalid_runtime_override";
|
|
5506
5474
|
this.name = "InvalidRuntimeOverrideError";
|
|
5507
5475
|
this.reason = reason;
|
|
5508
5476
|
}
|
|
5509
5477
|
}
|
|
5510
5478
|
|
|
5511
5479
|
class InvalidDaemonVersionError extends Error {
|
|
5512
|
-
code = "invalid_daemon_version";
|
|
5513
|
-
version;
|
|
5514
5480
|
constructor(version) {
|
|
5515
5481
|
super("LSP daemon version must match [A-Za-z0-9][A-Za-z0-9._+-]{0,127}");
|
|
5482
|
+
this.code = "invalid_daemon_version";
|
|
5516
5483
|
this.name = "InvalidDaemonVersionError";
|
|
5517
5484
|
this.version = version;
|
|
5518
5485
|
}
|
|
@@ -5558,10 +5525,9 @@ var requireFromHere = createRequire(import.meta.url);
|
|
|
5558
5525
|
var MAX_SOCKET_PATH_LENGTH = 100;
|
|
5559
5526
|
|
|
5560
5527
|
class InvalidDaemonDirectoryError extends Error {
|
|
5561
|
-
code = "invalid_daemon_directory";
|
|
5562
|
-
directory;
|
|
5563
5528
|
constructor(directory) {
|
|
5564
5529
|
super(`${OMO_LSP_DAEMON_DIR} must be an absolute path`);
|
|
5530
|
+
this.code = "invalid_daemon_directory";
|
|
5565
5531
|
this.name = "InvalidDaemonDirectoryError";
|
|
5566
5532
|
this.directory = directory;
|
|
5567
5533
|
}
|
|
@@ -5756,7 +5722,8 @@ function spawnDaemonProcess(paths) {
|
|
|
5756
5722
|
try {
|
|
5757
5723
|
const child = spawn2(resolveDaemonNodeExecutable(), [paths.cliPath, "daemon"], {
|
|
5758
5724
|
detached: true,
|
|
5759
|
-
stdio: ["ignore", logFd, logFd]
|
|
5725
|
+
stdio: ["ignore", logFd, logFd],
|
|
5726
|
+
windowsHide: true
|
|
5760
5727
|
});
|
|
5761
5728
|
child.once("spawn", () => closeSync2(logFd));
|
|
5762
5729
|
child.once("error", (error) => {
|
|
@@ -5869,7 +5836,10 @@ function parsePingResponse(message) {
|
|
|
5869
5836
|
var CONTEXT_KEY = "_context";
|
|
5870
5837
|
|
|
5871
5838
|
class InvalidDaemonRequestError extends Error {
|
|
5872
|
-
|
|
5839
|
+
constructor() {
|
|
5840
|
+
super(...arguments);
|
|
5841
|
+
this.name = "InvalidDaemonRequestError";
|
|
5842
|
+
}
|
|
5873
5843
|
}
|
|
5874
5844
|
function extractRequestContext(raw) {
|
|
5875
5845
|
if (!isPlainRecord(raw) || raw["method"] !== "tools/call")
|
|
@@ -6342,17 +6312,19 @@ function errorCode3(error) {
|
|
|
6342
6312
|
|
|
6343
6313
|
// src/ownership.ts
|
|
6344
6314
|
class DaemonAlreadyRunningError extends Error {
|
|
6345
|
-
|
|
6346
|
-
|
|
6315
|
+
constructor() {
|
|
6316
|
+
super(...arguments);
|
|
6317
|
+
this.name = "DaemonAlreadyRunningError";
|
|
6318
|
+
this.code = "daemon_already_running";
|
|
6319
|
+
}
|
|
6347
6320
|
}
|
|
6348
6321
|
|
|
6349
6322
|
class DaemonStartupDeferredError extends Error {
|
|
6350
|
-
reason;
|
|
6351
|
-
name = "DaemonStartupDeferredError";
|
|
6352
|
-
code = "daemon_startup_deferred";
|
|
6353
6323
|
constructor(reason) {
|
|
6354
6324
|
super(`LSP daemon startup deferred: ${reason}`);
|
|
6355
6325
|
this.reason = reason;
|
|
6326
|
+
this.name = "DaemonStartupDeferredError";
|
|
6327
|
+
this.code = "daemon_startup_deferred";
|
|
6356
6328
|
}
|
|
6357
6329
|
}
|
|
6358
6330
|
async function acquireStartupLease(paths, pingOwner) {
|
|
@@ -6649,7 +6621,7 @@ function defaultReadProcFile(path2) {
|
|
|
6649
6621
|
}
|
|
6650
6622
|
function defaultExecuteForStdout(file, args) {
|
|
6651
6623
|
return new Promise((resolve9) => {
|
|
6652
|
-
execFile(file, [...args], { encoding: "utf8", maxBuffer: 1024 * 1024, timeout: 1000 }, (error, stdout) => {
|
|
6624
|
+
execFile(file, [...args], { encoding: "utf8", maxBuffer: 1024 * 1024, timeout: 1000, windowsHide: true }, (error, stdout) => {
|
|
6653
6625
|
if (error !== null) {
|
|
6654
6626
|
resolve9(null);
|
|
6655
6627
|
return;
|