{"_id":"@agent-sh/harness-lsp","name":"@agent-sh/harness-lsp","dist-tags":{"latest":"0.2.0"},"versions":{"0.2.0":{"name":"@agent-sh/harness-lsp","version":"0.2.0","description":"LSP tool for AI agent harnesses — language-server-protocol operations (hover, definition, references, symbols) with .lsp.json manifest, lazy-spawn policy, and pluggable LspClient adapter","keywords":["ai","agent","llm","tool-use","lsp","language-server","code-navigation","bedrock","openai"],"license":"MIT","author":{"name":"Avi Fenesh"},"homepage":"https://github.com/avifenesh/tools/tree/main/packages/lsp#readme","bugs":{"url":"https://github.com/avifenesh/tools/issues"},"repository":{"type":"git","url":"git+https://github.com/avifenesh/tools.git","directory":"packages/lsp"},"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"publishConfig":{"access":"public"},"engines":{"node":">=20"},"dependencies":{"valibot":"^0.42.1","vscode-jsonrpc":"^8.2.1","vscode-languageserver-protocol":"^3.17.5","@agent-sh/harness-core":"0.2.0"},"devDependencies":{"@types/node":"^22.9.0","tsup":"^8.3.5","typescript":"^5.6.3","vitest":"^2.1.4"},"scripts":{"build":"tsup","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","clean":"rm -rf dist .turbo"},"_id":"@agent-sh/harness-lsp@0.2.0","_integrity":"sha512-Jd6U4TLiDfJ0lL7hopf1Krh6sfX/MQE5YqfhL+h07cUl/uGPWIPLG88ynRCwMsCTg/Lx+LEIACKMrnEPw2YU4Q==","_resolved":"/tmp/cf2fc302eb0ba2b027b07d3f9b02a1c4/agent-sh-harness-lsp-0.2.0.tgz","_from":"file:agent-sh-harness-lsp-0.2.0.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-Jd6U4TLiDfJ0lL7hopf1Krh6sfX/MQE5YqfhL+h07cUl/uGPWIPLG88ynRCwMsCTg/Lx+LEIACKMrnEPw2YU4Q==","shasum":"d25dccbf74ac43c73950070f1d717ccd34430b62","tarball":"https://registry.npmjs.org/@agent-sh/harness-lsp/-/harness-lsp-0.2.0.tgz","fileCount":9,"unpackedSize":325117,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDzan2wY/1MqIWacwiuRiA5Nk24U+X5vnKhq/VcwcYFmAIhALNkvkEikaoBqIQG/r015LdP7l2Az8Z/KUibyZe5fMed"}]},"_npmUser":{"name":"avifenesh","email":"aviarchi1994@gmail.com"},"directories":{},"maintainers":[{"name":"avifenesh","email":"aviarchi1994@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/harness-lsp_0.2.0_1776853081364_0.1957250372738757"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-22T10:18:00.927Z","0.2.0":"2026-04-22T10:18:01.500Z","modified":"2026-04-22T10:18:01.756Z"},"maintainers":[{"name":"avifenesh","email":"aviarchi1994@gmail.com"}],"description":"LSP tool for AI agent harnesses — language-server-protocol operations (hover, definition, references, symbols) with .lsp.json manifest, lazy-spawn policy, and pluggable LspClient adapter","homepage":"https://github.com/avifenesh/tools/tree/main/packages/lsp#readme","keywords":["ai","agent","llm","tool-use","lsp","language-server","code-navigation","bedrock","openai"],"repository":{"type":"git","url":"git+https://github.com/avifenesh/tools.git","directory":"packages/lsp"},"author":{"name":"Avi Fenesh"},"bugs":{"url":"https://github.com/avifenesh/tools/issues"},"license":"MIT","readme":"# @agent-sh/harness-lsp\n\nLanguage-server operations (hover, definition, references, symbols, implementation) with 1-indexed positions and `server_starting` retry hints.\n\nPart of the [`@agent-sh/harness-*`](https://github.com/avifenesh/tools) monorepo — see the top-level README for architectural context and the full tool surface.\n\n## Install\n\n```sh\nnpm install @agent-sh/harness-lsp\n```\n\nRequires Node ≥ 20.\n\n## Usage\n\n```ts\nimport { lsp, createSpawnLspClient } from \"@agent-sh/harness-lsp\";\n\nconst session = {\n  cwd: process.cwd(),\n  permissions: { roots: [process.cwd()], sensitivePatterns: [], unsafeAllowLspWithoutHook: true },\n  client: createSpawnLspClient(),\n  manifest: { servers: { typescript: { language: \"typescript\", extensions: [\".ts\"], command: [\"typescript-language-server\", \"--stdio\"] } } },\n};\n\nconst r = await lsp({ operation: \"definition\", path: \"src/a.ts\", line: 5, character: 17 }, session);\n```\n\n## Contract\n\nThe full contract — input shape, output discriminated-union, error codes, permission model, and acceptance tests — lives in [`agent-knowledge/design/lsp.md`](https://github.com/avifenesh/tools/blob/main/agent-knowledge/design/lsp.md). Changes to this package must stay in sync with that spec.\n\n## License\n\nMIT © Avi Fenesh\n","readmeFilename":"README.md","_rev":"1-d279593e7b557ac055411fc1cfa70b82"}