{"_id":"@reticlehq/server","_rev":"30-554d82155fc1b528028566359a530c95","name":"@reticlehq/server","dist-tags":{"latest":"3.10.0"},"versions":{"2.0.0":{"name":"@reticlehq/server","version":"2.0.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.0.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"20e630e421b6a9a2244c13f24639052faa1c1431","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.0.0.tgz","fileCount":483,"integrity":"sha512-p7MmrExTdWOjMtBg1sMGfQPq7oANmZ5o86pAC/FmE/eFOG2BzMIymuKPD/UOkU9qZM4fEZBx/eTFm0AQ5D6LSQ==","signatures":[{"sig":"MEUCIAtmHbx0OI8UIOIrJivLRY57RMaiifB1Xw9qbXuKoZ2XAiEAg/DpG/8yWtAMDEBuxnkC4t4d0C0cGKO1gCMtkguwsTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1391812},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.0.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/4880af50ad0b6b931607febb1a300bd2/reticlehq-server-2.0.0.tgz","_integrity":"sha512-p7MmrExTdWOjMtBg1sMGfQPq7oANmZ5o86pAC/FmE/eFOG2BzMIymuKPD/UOkU9qZM4fEZBx/eTFm0AQ5D6LSQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.0.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.0.0_1783770957408_0.13944224538173788","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@reticlehq/server","version":"2.0.1","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.0.1","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"a65fbc862da28aeffa52a26eec003e389feaebbf","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.0.1.tgz","fileCount":483,"integrity":"sha512-SIohJR3k7bK6Opin90lbrlYznw2U/Y7iUucSH78F+kvxc2Pr1FTXtfaPl3T8Hap7n0Jmii9IDs6Rk/8dICgnZA==","signatures":[{"sig":"MEUCIAs22XLo914ZiSKMt7oLw46BqciQgfGaz8m9E3R8w1eZAiEAgqdU6hWqyNI0e3wy1EOdSte2zEQ6NrfjRcOSDkQLgKo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1413473},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.0.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/58a101656032b7097cbc6ea6e85382fa/reticlehq-server-2.0.1.tgz","_integrity":"sha512-SIohJR3k7bK6Opin90lbrlYznw2U/Y7iUucSH78F+kvxc2Pr1FTXtfaPl3T8Hap7n0Jmii9IDs6Rk/8dICgnZA==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.0.1","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.0.1_1784305185878_0.8546977429501974","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@reticlehq/server","version":"2.1.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.1.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"2b1d8eb98cb8ec1124002fc918e67d6a341d422d","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.1.0.tgz","fileCount":487,"integrity":"sha512-U3na0nrG8JmW0kYHKEemTAie59GIYYrJTESl8jOIIH13E6V+IArhzCOfx3SslOtoXO+sMP62i4GrQ+GRcSGvfg==","signatures":[{"sig":"MEYCIQD1ctseKziIBY6TuQrZR2r/bv/7RcADvfJXC5mGsCe7SAIhAOHBAljXE+do6/MKHY6ySYEtywkJEbJet62Z1OzdQ56Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1445994},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/51c0a88576a9978143fa5131f4927241/reticlehq-server-2.1.0.tgz","_integrity":"sha512-U3na0nrG8JmW0kYHKEemTAie59GIYYrJTESl8jOIIH13E6V+IArhzCOfx3SslOtoXO+sMP62i4GrQ+GRcSGvfg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.1.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.1.0_1784369456766_0.742655514036284","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@reticlehq/server","version":"2.2.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.2.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"edccb705274edf0e62550f091b0087c99fcd23f7","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.2.0.tgz","fileCount":664,"integrity":"sha512-7bD/OYM088+IacdWS87dW1+zTBjfzPbZSh2u1R1IdB6VLfe4g+62HSiz0Se+ecBi4Qb3wvBY2Uf6qeLwFiGCGw==","signatures":[{"sig":"MEUCIQCLQUq8QiDjxsfQMVEUcSm2pBaVuDXL5iWl0e/3lKp5cwIgbZGRVG9efpL/6+as2xOR5nSF3hvaeJkjc4tDEnMAISQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1968477},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.2.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/7a9e0f06e7d4f1d728d05d37589f3f19/reticlehq-server-2.2.0.tgz","_integrity":"sha512-7bD/OYM088+IacdWS87dW1+zTBjfzPbZSh2u1R1IdB6VLfe4g+62HSiz0Se+ecBi4Qb3wvBY2Uf6qeLwFiGCGw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.2.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.2.0_1785080997309_0.9486639732643429","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@reticlehq/server","version":"2.2.1","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.2.1","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"9939b8bca22d1e1f0ff71746ea05c88a4b25a6d6","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.2.1.tgz","fileCount":684,"integrity":"sha512-b24cAW7Uhk+Hfj3i01hAK+BpAiMyiSwK4NqI5w7SJx5o1nMw0kdaaONd8dhCh0144DOrZw8k4/8QFVoRYgo/Aw==","signatures":[{"sig":"MEUCIQDi0MFRwr4ePUYIUeUvmq2o7u35Z8ix6ribqNUmjhyUdAIgeTkabtDq38N6o6RvDHplG++aTzYacoF067kgfNS2n2s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2100420},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.2.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/cc74215c4c89620b1bfe6ab29c1289ab/reticlehq-server-2.2.1.tgz","_integrity":"sha512-b24cAW7Uhk+Hfj3i01hAK+BpAiMyiSwK4NqI5w7SJx5o1nMw0kdaaONd8dhCh0144DOrZw8k4/8QFVoRYgo/Aw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.2.1","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.2.1_1785345179318_0.4822111372064024","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@reticlehq/server","version":"2.3.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.3.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"08b3349368064f36c80307fc47bfd2db5822f2d2","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.3.0.tgz","fileCount":440,"integrity":"sha512-bEW3TrXR5l2Vg8/P2O9WiSW+zEBx7TFZ+OBdmpLwb55Ib4j3fTBEEyiQ22bArSMpOajdIB/PdmeTRmQ0SJduNQ==","signatures":[{"sig":"MEYCIQDZGGwtjGdyNkQU6AE8ze6GoYPHOangqo7UGib0AixYSgIhAMUJ3z8ODn+AI0JNtQL41CZqdghNHTk+DJU6aCDYnwqW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1675829},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.3.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/03b1d82c0e71ec443d7411de5a115ca6/reticlehq-server-2.3.0.tgz","_integrity":"sha512-bEW3TrXR5l2Vg8/P2O9WiSW+zEBx7TFZ+OBdmpLwb55Ib4j3fTBEEyiQ22bArSMpOajdIB/PdmeTRmQ0SJduNQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.3.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.3.0_1785956800370_0.5941994429048871","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@reticlehq/server","version":"2.4.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.4.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"e9a284bafef678c67a94a5c683054ef3664c5261","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.4.0.tgz","fileCount":452,"integrity":"sha512-wikl4a0INdOiNLgqbxXBzr346rCSZsaMo2fpLQJYH8lrYRZTo/KhcHwHb6T+IHa53+EW4xYf2YEs074pIpYKgA==","signatures":[{"sig":"MEQCIH0AM+4etcGFUyL1Q2GQPA1gqb0GbQyaWZ2V4ZgvPRwbAiADnZcQ+Qw2QmuOgBtAHydYuOYWnhla7il4hHrgeUoAEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1765949},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.4.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"Smart MCP proxy with auto-start daemon, auto-update, and rollback support. Agents can call reticle_version_info, reticle_apply_update, and reticle_rollback.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/0c92956ac1b2346cd7f2f3464db6dc01/reticlehq-server-2.4.0.tgz","_integrity":"sha512-wikl4a0INdOiNLgqbxXBzr346rCSZsaMo2fpLQJYH8lrYRZTo/KhcHwHb6T+IHa53+EW4xYf2YEs074pIpYKgA==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.4.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.4.0_1786091275768_0.7497365613270544","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@reticlehq/server","version":"2.5.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.5.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"2bf9fc02d8db294f94609df4332e2c73719c3db3","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.5.0.tgz","fileCount":578,"integrity":"sha512-Z2JQ4lRwuvbpYnIgZvpBZyIlpDb9r8e9IDn9zUFCgF7bIcggAryMcPFkpV70c8CmZVhWNdZkJlbQ3QFKubgTXQ==","signatures":[{"sig":"MEYCIQCKWABSajnc9W8nUBX11HklJvxRoY2nktmHZ2m/Qx1HdgIhAPxlioX6NTLAzbTEZlP2508jxfHHyRxblAbGhbVjppgy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2514037},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.5.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/217a698262d04c0db3a170ff7b7504d6/reticlehq-server-2.5.0.tgz","_integrity":"sha512-Z2JQ4lRwuvbpYnIgZvpBZyIlpDb9r8e9IDn9zUFCgF7bIcggAryMcPFkpV70c8CmZVhWNdZkJlbQ3QFKubgTXQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.5.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.5.0_1786299682293_0.7408359540666936","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@reticlehq/server","version":"2.6.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.6.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"9534300f15d07ade24c4a88a0acc5b0d6b55b553","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.6.0.tgz","fileCount":626,"integrity":"sha512-BO9UB2k5j0IyGr7K99+rlNxEpmH9sJ2TmzTLDXSf9h7Ek1WjZX0uc/s0EeDLy24pwkncF24cJXcDMEMksY07sQ==","signatures":[{"sig":"MEYCIQCwNLriye80WRyWf7KmeiHfePJEYmYdQWX/c6nlAWI5DQIhAPF+BiHNn6dBRuamnGdOlog6tTPon2EywmrXm+v+pnH2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2787442},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.6.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/6bbd78d9dfd120be8b7de83ff477d2c1/reticlehq-server-2.6.0.tgz","_integrity":"sha512-BO9UB2k5j0IyGr7K99+rlNxEpmH9sJ2TmzTLDXSf9h7Ek1WjZX0uc/s0EeDLy24pwkncF24cJXcDMEMksY07sQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.6.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.6.0_1786509131366_0.8221941409011229","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@reticlehq/server","version":"2.7.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.7.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"a9e9d3ffa902784d8994839100e292526a41d80e","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.7.0.tgz","fileCount":636,"integrity":"sha512-CRkJerB5jEvwsAO3hvv+a9n0R/pJgDqq6aIjS5pvIW/HwZ3cpH1sMrYjlWY6cLPBXGzPdH+IKonHGWh9YYNzCw==","signatures":[{"sig":"MEUCIQDFcw5JDZSWp4QWtDK8UVmwYZYgwauczC8jxcMtC4vLGwIgeH1/t1VFOYyLI/ul73jWkCxqPvZEjR6/cwajinC6yi0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2889792},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.7.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/390ca13fd4d2a69ddf1e97af160ea72e/reticlehq-server-2.7.0.tgz","_integrity":"sha512-CRkJerB5jEvwsAO3hvv+a9n0R/pJgDqq6aIjS5pvIW/HwZ3cpH1sMrYjlWY6cLPBXGzPdH+IKonHGWh9YYNzCw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.7.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.7.0_1786662250390_0.6029514010064543","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@reticlehq/server","version":"2.8.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.8.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"f88f29d2f8118052df9e75b26c2984d538a13c0e","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.8.0.tgz","fileCount":730,"integrity":"sha512-HLc/YpSV9fGkE/vFyiUFXPOpzRnmqR2XrMxKEoTyQ79wnMuYIIwciC3s13Iv+wh2s/U+vv647GpmG2Y8VCizpw==","signatures":[{"sig":"MEQCIB3Ev9m5s0jLEiCZAt6cPmKYD0z9lqG6ArzN5cbv0+pNAiBFKMDBUgmKEPd6V0ovFbMON7lhtla53Xn8iORE9yrHEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3518715},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.8.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/72132d95ee38ca2e75b9d7f606422536/reticlehq-server-2.8.0.tgz","_integrity":"sha512-HLc/YpSV9fGkE/vFyiUFXPOpzRnmqR2XrMxKEoTyQ79wnMuYIIwciC3s13Iv+wh2s/U+vv647GpmG2Y8VCizpw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.18.0","zod":"^3.24.1","@reticlehq/core":"2.8.0","@modelcontextprotocol/sdk":"^1.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.48.0"},"_npmOperationalInternal":{"tmp":"tmp/server_2.8.0_1786799242271_0.4246179026454193","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@reticlehq/server","version":"2.9.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.9.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"5918989640dbefd3a5643b0b7f3f702efccab628","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.9.0.tgz","fileCount":777,"integrity":"sha512-MEhhWT/RV5RcQKiMtuuu6a5BCZ1w+6t30nzkeWXspUcb9ggX2JOQvEFmzrg7pniE3jYd2+HIePoBnnwTMsITIg==","signatures":[{"sig":"MEUCIA5xbZic9t1npP6OjA9tEXKAnphGu3GcVoqBdP/WoE4NAiEAkosm2UUDGydh+vv8GLezBNvEIyDk0/D9qMH6VX12jE8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3943328},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.9.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/de0caa868ed6dd2db7224758b2397fe9/reticlehq-server-2.9.0.tgz","_integrity":"sha512-MEhhWT/RV5RcQKiMtuuu6a5BCZ1w+6t30nzkeWXspUcb9ggX2JOQvEFmzrg7pniE3jYd2+HIePoBnnwTMsITIg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.9.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.9.0_1787209882462_0.17741999311931678","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@reticlehq/server","version":"2.10.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.10.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"df62faf5f2d952c1d5742045da7da7620ee57e14","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.10.0.tgz","fileCount":785,"integrity":"sha512-gHbUEfEWf+mmHlGqnbQ8ZdNLVVqMXlveP0qS/IuNCaEQGm/oEvCHdzPZG187mtGb0kDv5HVd9NUG89SF8lMkNg==","signatures":[{"sig":"MEUCIQD2lsrKEGLKgw3cveDjip8F6uj5ujSZoLmJ4mOhYFFH9wIgch+Jk2NIcJI355rcM2vW0UVjc7Yr2354vcq+sP/EjRQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3989558},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.10.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/ec05f0f415039a84c71f183a462a9748/reticlehq-server-2.10.0.tgz","_integrity":"sha512-gHbUEfEWf+mmHlGqnbQ8ZdNLVVqMXlveP0qS/IuNCaEQGm/oEvCHdzPZG187mtGb0kDv5HVd9NUG89SF8lMkNg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.10.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.10.0_1787332282941_0.36527000832618195","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@reticlehq/server","version":"2.11.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.11.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"fa530bb0ae3c6354c26a315895215f8b133e9879","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.11.0.tgz","fileCount":806,"integrity":"sha512-iixBYHW5bUzjLqzmZ4cKojst7NtLdvrvL+0H2zoA1OTCYqiio1jwSvzOodbaNV5HOJ+JjASdgZf+Z3pz6jHpiQ==","signatures":[{"sig":"MEUCIQCSBncy9BUGm0fUXaNy/uNM1B52Hd2zEzy8Nb/xGIUYQAIgQviD8+kJ0r04vgGglY//+ZH4+JjZKE862x8vJUDQMbc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4078499},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.11.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/088fbded3754d4953e643397777063bb/reticlehq-server-2.11.0.tgz","_integrity":"sha512-iixBYHW5bUzjLqzmZ4cKojst7NtLdvrvL+0H2zoA1OTCYqiio1jwSvzOodbaNV5HOJ+JjASdgZf+Z3pz6jHpiQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.11.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.11.0_1787401957001_0.24572220229710462","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@reticlehq/server","version":"2.12.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.12.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"1dbd8a135f19dc4823a07bb859d3676106b5a556","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.12.0.tgz","fileCount":857,"integrity":"sha512-XX6Mm4iWMl4ohn/BYg2CylneJeQhgGO+khsXLiOxqnRlnWTAJzm5wRGpL/hDt23yjZQNMzWeKydQHHJzTG6h4Q==","signatures":[{"sig":"MEQCIFR9o0UBVDk9ALKORV8WjEuey1xJooAzNYf+yv/QoxooAiAt4qdRqppWPN2IqJsgLmHojhazqpQ969mX1F7nBQB9Gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4413740},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.12.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/ab9cddb8f70780a6a5a455bf7e074cc8/reticlehq-server-2.12.0.tgz","_integrity":"sha512-XX6Mm4iWMl4ohn/BYg2CylneJeQhgGO+khsXLiOxqnRlnWTAJzm5wRGpL/hDt23yjZQNMzWeKydQHHJzTG6h4Q==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.12.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.12.0_1787636186506_0.8823272274259963","host":"s3://npm-registry-packages-npm-production"}},"2.13.0":{"name":"@reticlehq/server","version":"2.13.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.13.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"a3d835eb975afa404d77ea197c17c7545dbbe007","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.13.0.tgz","fileCount":993,"integrity":"sha512-FXLp5qYLkCZ93g78ZNdLc878wDlfdzmuXGHjRloVcc54m1CwvgpHTeaPDebPER1MNVjm+aJxlE96+uN3vtiBgw==","signatures":[{"sig":"MEYCIQCvX3p9DFXuhzXXZbVlzsaOipUdwC7QGuNsmMGWA9LnGQIhAMLfs9pO2X3cWlI1M4VSixx7keG31b61Ql5aBKjApAGV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5181738},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.13.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/f3c6b12175ee46d2dbd64cf9ffec12e0/reticlehq-server-2.13.0.tgz","_integrity":"sha512-FXLp5qYLkCZ93g78ZNdLc878wDlfdzmuXGHjRloVcc54m1CwvgpHTeaPDebPER1MNVjm+aJxlE96+uN3vtiBgw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.13.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.13.0_1788350927386_0.10838440172360819","host":"s3://npm-registry-packages-npm-production"}},"2.13.1":{"name":"@reticlehq/server","version":"2.13.1","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.13.1","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"dist/cli.js"},"dist":{"shasum":"afbc88b43ea32c277857cc49a8726c1616c3be68","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.13.1.tgz","fileCount":993,"integrity":"sha512-2s6+ZBod9ergH4dIJ5fE+b/kQYVxdacbT7jloFL6jkZdzu4ge1qNcxwi4JQRARCXZ+7efE6ZHlsQlcvQfvnjKQ==","signatures":[{"sig":"MEQCIBfq+DQgQRPDmwUYAxKjEO7jcuk5dxTeaB6sGdbHIgzcAiBoh2hAuQYWYI7O3M+ryqOEPDlg7cptjNxQ5wYxf6jkKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5183215},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.13.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"vitest run src --passWithNoTests","typecheck":"tsc -b","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/63fcbcfbcb44d27318a294fa07c0c361/reticlehq-server-2.13.1.tgz","_integrity":"sha512-2s6+ZBod9ergH4dIJ5fE+b/kQYVxdacbT7jloFL6jkZdzu4ge1qNcxwi4JQRARCXZ+7efE6ZHlsQlcvQfvnjKQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.13.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.13.1_1788356693312_0.48216783603991153","host":"s3://npm-registry-packages-npm-production"}},"2.14.0":{"name":"@reticlehq/server","version":"2.14.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"SEE LICENSE IN LICENSE","_id":"@reticlehq/server@2.14.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"65357f0af37e612dd9f89a38c68f384237fc1e2d","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-2.14.0.tgz","fileCount":976,"integrity":"sha512-1fden3xTHAiSedEM0l+/JSGXQnU/8HbysRYDgrlTCUsnQTdNXBtInqCzFvck3e1aeTCwXTtHlGPu+0p4oXb7vg==","signatures":[{"sig":"MEYCIQCQ2q0ESTdfvN+ecnTl5jXAQJV9EVT5AASAOsbyY796kgIhALMOwlZC0XdHIsybMTucTSJkxWJLp6rVPBfFBOo+r/jU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@2.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5110269},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-2.14.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/cli.d.ts","default":"./dist/cli.js"}},"reticle":{"changelog":"An MCP server that stays up when the daemon dies, one tool surface instead of five profiles (`RETICLE_TOOL_PROFILE` retired for `RETICLE_ADVERTISE_ALL_TOOLS`), and tools that refuse instead of answering wrongly.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b","test:unit":"node ../../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/0c908fd4539201322dba060c7f71cb5a/reticlehq-server-2.14.0.tgz","_integrity":"sha512-1fden3xTHAiSedEM0l+/JSGXQnU/8HbysRYDgrlTCUsnQTdNXBtInqCzFvck3e1aeTCwXTtHlGPu+0p4oXb7vg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"packages/server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"2.14.0","@reticlehq/init":"2.14.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"_npmOperationalInternal":{"tmp":"tmp/server_2.14.0_1789111431971_0.45956477405594054","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@reticlehq/server","version":"3.1.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.1.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"2c20514890f1e9d59eb1888aae7360c049312e3c","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.1.0.tgz","fileCount":1011,"integrity":"sha512-xWmrrXiZt5pD8qOlWshg7mep40y6Z2VJMHG2qCmdHfLCejdtZHtLrBAMzr0Ck1C3KZwI6TdyQoabTD6uRcfNmg==","signatures":[{"sig":"MEUCIQDsi9JImVY7y6HWtOpV7/Tl3n4n16F9gu3iDlf4VYGlFwIgMibH4u7Q39aQTLneA7csC5GcH2FcEqG7snKGdeNLpJU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDg1ZhzW+zXJaptf/DJQzBzqF+1k60q3CP8iU/dCLkXTgIhAPx/VWRN1qKCu6KfIYEMqTO0clKFJ5ZsrW0neqTB1Cil","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5140481},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Reticle writes and tightens your regression flows for you: every drive is recorded automatically and replays with no model in the loop. The agent now sees nine tools instead of seventeen, `init` stops at a connected app and proving a flow is a separate first run, and Windows is supported. Upgrading from 2.x: see MIGRATION.md.","breakingChanges":["The default MCP surface is the merged nine. reticle_snapshot/query/inspect/state -> reticle_look { action }, reticle_network/console -> reticle_observe { action }, reticle_sessions/feedback -> reticle_session { action }, reticle_wait_for -> reticle_assert { action: \"wait\" }, reticle_act_sequence -> reticle_act { steps }. Old names redirect when CALLED, but an allowedTools allowlist or an MCP permission rule naming one refuses first -- update those by hand.","Twelve tools are unreachable on the default surface and have NO redirect: reticle_capabilities, reticle_clock, reticle_context, reticle_flow_replay, reticle_flow_save, reticle_intent, reticle_network_mock, reticle_record, reticle_run, reticle_screenshot, reticle_storage, reticle_visual_diff. The default surface ships no reticle_run hatch. Start the daemon with RETICLE_ADVERTISE_ALL_TOOLS=1 (read once at startup) and call them by name. Saved flows still replay via reticle_verify { action: \"flows\" }.","`reticle init` no longer drives: it ends at a connected session. --flow, --no-drive and --drive-model now exit non-zero, each naming its replacement. Prove a flow with reticle_verify { action: \"explore\", persona: \"<who does what>\" }, or npx @reticlehq/server verify <url> --explore --persona \"...\". init's exit code now means \"nothing connected\" rather than \"no verdict\". --files-only is unchanged.","@reticlehq/server now requires Node >=20.11 (was >=20.0.0).","@reticlehq/server, @reticlehq/init and @reticlehq/test declare license FSL-1.1-ALv2 instead of \"SEE LICENSE IN LICENSE\". The terms are identical; add the SPDX id to a licence allowlist."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/2dfcc6d0b6398b938365260f41a51037/reticlehq-server-3.1.0.tgz","_integrity":"sha512-xWmrrXiZt5pD8qOlWshg7mep40y6Z2VJMHG2qCmdHfLCejdtZHtLrBAMzr0Ck1C3KZwI6TdyQoabTD6uRcfNmg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.1.0","@reticlehq/init":"3.1.0","@reticlehq/engine":"3.1.0","open-verification":"1.0.0","@reticlehq/browser":"3.1.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.1.0_1789714848882_0.8153204585508282","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@reticlehq/server","version":"3.2.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.2.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"c0e7e2b3715fce49c87f3cbfd80bdbee50aa06f0","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.2.0.tgz","fileCount":1057,"integrity":"sha512-9Z3UQ8WRWa5RCfTlLe5IH0UCNKHTMwWr5VSvgOaWsbVVdJx+ZBBu5YE4hEzaHKWytOw/29wosFnjW2N3MaRp8A==","signatures":[{"sig":"MEYCIQDcPNtSl1u73oVsLG99Gkh2k4j6FbZulZ1orYvFdvX1BQIhAPQ07ldy2fLE0UwaaEBNnLrX0+r89As57eBnj8/OB6qK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDszodxDOHolDhzkTVwdzGvG7MyWF6sAqqWEoA9wwKPvgIgdXF2KyOFnjDz5axgUS+1J5yh73wNDywsa6OoA37FrN0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5527657},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.2.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Reticle writes and tightens your regression flows for you: every drive is recorded automatically and replays with no model in the loop. The agent now sees nine tools instead of seventeen, `init` stops at a connected app and proving a flow is a separate first run, and Windows is supported. Upgrading from 2.x: see MIGRATION.md.","breakingChanges":["The default MCP surface is the merged nine. reticle_snapshot/query/inspect/state -> reticle_look { action }, reticle_network/console -> reticle_observe { action }, reticle_sessions/feedback -> reticle_session { action }, reticle_wait_for -> reticle_assert { action: \"wait\" }, reticle_act_sequence -> reticle_act { steps }. Old names redirect when CALLED, but an allowedTools allowlist or an MCP permission rule naming one refuses first -- update those by hand.","Twelve tools are unreachable on the default surface and have NO redirect: reticle_capabilities, reticle_clock, reticle_context, reticle_flow_replay, reticle_flow_save, reticle_intent, reticle_network_mock, reticle_record, reticle_run, reticle_screenshot, reticle_storage, reticle_visual_diff. The default surface ships no reticle_run hatch. Start the daemon with RETICLE_ADVERTISE_ALL_TOOLS=1 (read once at startup) and call them by name. Saved flows still replay via reticle_verify { action: \"flows\" }.","`reticle init` no longer drives: it ends at a connected session. --flow, --no-drive and --drive-model now exit non-zero, each naming its replacement. Prove a flow with reticle_verify { action: \"explore\", persona: \"<who does what>\" }, or npx @reticlehq/server verify <url> --explore --persona \"...\". init's exit code now means \"nothing connected\" rather than \"no verdict\". --files-only is unchanged.","@reticlehq/server now requires Node >=20.11 (was >=20.0.0).","@reticlehq/server, @reticlehq/init and @reticlehq/test declare license FSL-1.1-ALv2 instead of \"SEE LICENSE IN LICENSE\". The terms are identical; add the SPDX id to a licence allowlist."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/37c044d8292c58d6e3a6b3c135d2db23/reticlehq-server-3.2.0.tgz","_integrity":"sha512-9Z3UQ8WRWa5RCfTlLe5IH0UCNKHTMwWr5VSvgOaWsbVVdJx+ZBBu5YE4hEzaHKWytOw/29wosFnjW2N3MaRp8A==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.2.0","@reticlehq/init":"3.2.0","@reticlehq/engine":"3.2.0","open-verification":"1.0.0","@reticlehq/browser":"3.2.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.2.0_1790169504478_0.5225582417923205","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@reticlehq/server","version":"3.3.0","keywords":["mcp","ai-agents","testing","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.3.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"230d0162251de92a6ed3762d0e092ac8c15153b9","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.3.0.tgz","fileCount":1091,"integrity":"sha512-i6nFuSm1k/D2RbsCeVeuwsO8i/LH4ysrtR74e8qjxx64VwuxUUZ9uEKznjMCi5/F6/VG45JrPVLcIJWlxGbmxg==","signatures":[{"sig":"MEYCIQDn4ym3pD1BkwLqPgJCMYvd5fXcLCxrT9zBqxZoTjxW+AIhAIBhOi9LJksQTZ6S4/67u/Q9ciiS+zHBiyky/ojabEAB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDfJkBYxt/SiAlLKCx1oI+pyZCe8/eBGEvCgljEcfqwBgIhALKYgN7nN8/GX69xH/mtb++vvwk32JJCjE2i7ZhUSUJQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5716038},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.3.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Reticle writes and tightens your regression flows for you: every drive is recorded automatically and replays with no model in the loop. The agent now sees nine tools instead of seventeen, `init` stops at a connected app and proving a flow is a separate first run, and Windows is supported. Upgrading from 2.x: see MIGRATION.md.","breakingChanges":["The default MCP surface is the merged nine. reticle_snapshot/query/inspect/state -> reticle_look { action }, reticle_network/console -> reticle_observe { action }, reticle_sessions/feedback -> reticle_session { action }, reticle_wait_for -> reticle_assert { action: \"wait\" }, reticle_act_sequence -> reticle_act { steps }. Old names redirect when CALLED, but an allowedTools allowlist or an MCP permission rule naming one refuses first -- update those by hand.","Twelve tools are unreachable on the default surface and have NO redirect: reticle_capabilities, reticle_clock, reticle_context, reticle_flow_replay, reticle_flow_save, reticle_intent, reticle_network_mock, reticle_record, reticle_run, reticle_screenshot, reticle_storage, reticle_visual_diff. The default surface ships no reticle_run hatch. Start the daemon with RETICLE_ADVERTISE_ALL_TOOLS=1 (read once at startup) and call them by name. Saved flows still replay via reticle_verify { action: \"flows\" }.","`reticle init` no longer drives: it ends at a connected session. --flow, --no-drive and --drive-model now exit non-zero, each naming its replacement. Prove a flow with reticle_verify { action: \"explore\", persona: \"<who does what>\" }, or npx @reticlehq/server verify <url> --explore --persona \"...\". init's exit code now means \"nothing connected\" rather than \"no verdict\". --files-only is unchanged.","@reticlehq/server now requires Node >=20.11 (was >=20.0.0).","@reticlehq/server, @reticlehq/init and @reticlehq/test declare license FSL-1.1-ALv2 instead of \"SEE LICENSE IN LICENSE\". The terms are identical; add the SPDX id to a licence allowlist."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/f4667507c9ad217c9feb73239956d7f2/reticlehq-server-3.3.0.tgz","_integrity":"sha512-i6nFuSm1k/D2RbsCeVeuwsO8i/LH4ysrtR74e8qjxx64VwuxUUZ9uEKznjMCi5/F6/VG45JrPVLcIJWlxGbmxg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.8","description":"Reticle bridge + MCP server. Hosts the browser WS endpoint and exposes MCP tools to the coding agent.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.3.0","@reticlehq/init":"3.3.0","@reticlehq/engine":"3.3.0","open-verification":"1.0.0","@reticlehq/browser":"3.3.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.62.1"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.3.0_1790373843734_0.625153958675285","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@reticlehq/server","version":"3.4.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.4.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"c8ff9ebfa4528f671eec962d3e3c5bea2bc76362","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.4.0.tgz","fileCount":1131,"integrity":"sha512-SH1LsBboOBiZboz67XFASChkCW0o/Utn1hwlEngwBOQUYjxMOa6g68cnZrQW8i9aAXxrK5wSvL3YCvUHInhANQ==","signatures":[{"sig":"MEUCIA1Hzybla+HIniqsVGNoJyKg4kjsryODXO3aAQK+Y3P0AiEAg0UeabEfpLP6ljfuQRqo0Wb+0Fuhe2Iza4iTpudPx8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDj/lxc8F2jFwTLU4nWQqnkEY26uDuUnUYXjUoOCxHeHwIhAK2VoV/HQMbhMW0wCu3dObRoqpqKkQROJACrsyzGFbqU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6052774},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.4.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Reticle writes and tightens your regression flows for you: every drive is recorded automatically and replays with no model in the loop. The agent now sees nine tools instead of seventeen, `init` stops at a connected app and proving a flow is a separate first run, and Windows is supported. Upgrading from 2.x: see MIGRATION.md.","breakingChanges":["The default MCP surface is the merged nine. reticle_snapshot/query/inspect/state -> reticle_look { action }, reticle_network/console -> reticle_observe { action }, reticle_sessions/feedback -> reticle_session { action }, reticle_wait_for -> reticle_assert { action: \"wait\" }, reticle_act_sequence -> reticle_act { steps }. Old names redirect when CALLED, but an allowedTools allowlist or an MCP permission rule naming one refuses first -- update those by hand.","Twelve tools are unreachable on the default surface and have NO redirect: reticle_capabilities, reticle_clock, reticle_context, reticle_flow_replay, reticle_flow_save, reticle_intent, reticle_network_mock, reticle_record, reticle_run, reticle_screenshot, reticle_storage, reticle_visual_diff. The default surface ships no reticle_run hatch. Start the daemon with RETICLE_ADVERTISE_ALL_TOOLS=1 (read once at startup) and call them by name. Saved flows still replay via reticle_verify { action: \"flows\" }.","`reticle init` no longer drives: it ends at a connected session. --flow, --no-drive and --drive-model now exit non-zero, each naming its replacement. Prove a flow with reticle_verify { action: \"explore\", persona: \"<who does what>\" }, or npx @reticlehq/server verify <url> --explore --persona \"...\". init's exit code now means \"nothing connected\" rather than \"no verdict\". --files-only is unchanged.","@reticlehq/server now requires Node >=20.11 (was >=20.0.0).","@reticlehq/server, @reticlehq/init and @reticlehq/test declare license FSL-1.1-ALv2 instead of \"SEE LICENSE IN LICENSE\". The terms are identical; add the SPDX id to a licence allowlist."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/3390814afe019e5f4f33d005b80683eb/reticlehq-server-3.4.0.tgz","_integrity":"sha512-SH1LsBboOBiZboz67XFASChkCW0o/Utn1hwlEngwBOQUYjxMOa6g68cnZrQW8i9aAXxrK5wSvL3YCvUHInhANQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.4.0","@reticlehq/init":"3.4.0","@reticlehq/engine":"3.4.0","open-verification":"1.0.0","@reticlehq/browser":"3.4.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.30.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.4.0_1790793498944_0.7844407839762708","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"@reticlehq/server","version":"3.5.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.5.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"1884c82349143a13c40bdea846da00aacd34c821","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.5.0.tgz","fileCount":1131,"integrity":"sha512-ZR9JMmZDpP7R06BXIyVftHXZhKvRnpWKAmMzCcvyKb+0F4JAchU2yeYLfrL/7c2U3gUtVJqbZ3I5tqguC/XnNA==","signatures":[{"sig":"MEQCIGi0RkEQ0prSx5zG5UYHBL9/UpUkXGbXvyvAM1EdxMTSAiATE8kiRpPSDi7YF4z0LXP14nFQWdQriP6oX6C47aqMwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICLA/NfuWgD5m8N7ucEC6n5n2T4PsJ2MOuGyDzGnlJAjAiEAwLhuuBFZsItGbuB96JtJ+fSdw42KpsM+OPEGhxsjaLU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6076040},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.5.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Reticle writes and tightens your regression flows for you: every drive is recorded automatically and replays with no model in the loop. The agent now sees nine tools instead of seventeen, `init` stops at a connected app and proving a flow is a separate first run, and Windows is supported. Upgrading from 2.x: see MIGRATION.md.","breakingChanges":["The default MCP surface is the merged nine. reticle_snapshot/query/inspect/state -> reticle_look { action }, reticle_network/console -> reticle_observe { action }, reticle_sessions/feedback -> reticle_session { action }, reticle_wait_for -> reticle_assert { action: \"wait\" }, reticle_act_sequence -> reticle_act { steps }. Old names redirect when CALLED, but an allowedTools allowlist or an MCP permission rule naming one refuses first -- update those by hand.","Twelve tools are unreachable on the default surface and have NO redirect: reticle_capabilities, reticle_clock, reticle_context, reticle_flow_replay, reticle_flow_save, reticle_intent, reticle_network_mock, reticle_record, reticle_run, reticle_screenshot, reticle_storage, reticle_visual_diff. The default surface ships no reticle_run hatch. Start the daemon with RETICLE_ADVERTISE_ALL_TOOLS=1 (read once at startup) and call them by name. Saved flows still replay via reticle_verify { action: \"flows\" }.","`reticle init` no longer drives: it ends at a connected session. --flow, --no-drive and --drive-model now exit non-zero, each naming its replacement. Prove a flow with reticle_verify { action: \"explore\", persona: \"<who does what>\" }, or npx @reticlehq/server verify <url> --explore --persona \"...\". init's exit code now means \"nothing connected\" rather than \"no verdict\". --files-only is unchanged.","@reticlehq/server now requires Node >=20.11 (was >=20.0.0).","@reticlehq/server, @reticlehq/init and @reticlehq/test declare license FSL-1.1-ALv2 instead of \"SEE LICENSE IN LICENSE\". The terms are identical; add the SPDX id to a licence allowlist."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/8a35353bb0319edbeefe90aaa11a0da8/reticlehq-server-3.5.0.tgz","_integrity":"sha512-ZR9JMmZDpP7R06BXIyVftHXZhKvRnpWKAmMzCcvyKb+0F4JAchU2yeYLfrL/7c2U3gUtVJqbZ3I5tqguC/XnNA==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.5.0","@reticlehq/init":"3.5.0","@reticlehq/engine":"3.5.0","open-verification":"1.0.0","@reticlehq/browser":"3.5.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.30.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.5.0_1790887280997_0.24686348327898844","host":"s3://npm-registry-packages-npm-production"}},"3.6.0":{"name":"@reticlehq/server","version":"3.6.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.6.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"e2be3a22e8b6c275162d170ee47e8cf2a09c6d64","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.6.0.tgz","fileCount":1182,"integrity":"sha512-ECsJ3O8BK/EIVGZ7qmo1dbjkvKNoBblK5zzCLwJGyqahOxllg/APhdy+P6Ye4QE3Xgms+OCunLe9HpFSRCTaiQ==","signatures":[{"sig":"MEYCIQCZQmcFY88AnTIZO3S6D0S5+FOZxEPXpHkzyTFiCVyU+AIhAMYzk5Fo94i3FaiFJGPjg6MOJrQZBl9JgVkK3AY0XMPT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFmq6JkG4BY6Z0MPWqOaT7mYb2bBFCkqGJ1x5fEDeejIAiEA7QingQ2IKKfQRcvAtk0KxloSeF9nLkEXVaVIW9+ygRo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6413105},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.6.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"reticle":{"changelog":"Drive your localhost app from the Reticle platform's chat: the daemon of a linked project drives it on your machine, the chat shows it live and keeps it as a check with a replay. The Harness now runs only on the platform, on every plan, and plans, replays and learns each app. A page on SDK 3.1-3.4 is no longer version-skewed, a pressed key sends its keyCode, and a screenshot never carries another tab's pixels. Upgrading from 3.5: see MIGRATION.md.","breakingChanges":["reticle_verify { action: \"explore\" } and reticle verify --explore no longer drive on a model key of your own. The Harness decides on the Reticle platform and needs a linked project (npx @reticlehq/server connect); every plan includes Harness credits. ANTHROPIC_API_KEY, OPENAI_API_KEY and JEV_API_KEY are no longer read for driving, RETICLE_HARNESS_DRIVER and RETICLE_HARNESS_MODEL are ignored, and the explore tool's `driver` argument is removed. A secret field's value comes from RETICLE_SECRET_<FIELD> on your machine."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/aa0324c343ba46af0ff7b288b8d4eb93/reticlehq-server-3.6.0.tgz","_integrity":"sha512-ECsJ3O8BK/EIVGZ7qmo1dbjkvKNoBblK5zzCLwJGyqahOxllg/APhdy+P6Ye4QE3Xgms+OCunLe9HpFSRCTaiQ==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.6.0","@reticlehq/init":"3.6.0","@reticlehq/engine":"3.6.0","open-verification":"1.0.0","@reticlehq/browser":"3.6.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.6.0_1791393617567_0.4842607950197586","host":"s3://npm-registry-packages-npm-production"}},"3.7.0":{"name":"@reticlehq/server","version":"3.7.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.7.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"69b206919bc3907fe8b8b51e6e7d33a969b7785a","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.7.0.tgz","fileCount":1292,"integrity":"sha512-O83tj7KBz6IxzDgXS05/ULO5x46D6MQDJTKewI0c8oam4lyhCBEzXn81iTmU4+s4E4/onufWOnYSwOgzuh/HoA==","signatures":[{"sig":"MEUCICij/lQ/kuyuIisrYg9fceds50W77WM93TtOZiZ0RdjSAiEAt8r1zipr6jQGrhkFAUAWBAvqTkMzzHA81n3hNojEBA8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGK6mNw+gJ5XEy0jzoKi0Wb/xd/sNmPEntORS89wCeEjAiEAg1gAx7tI5KM8sjkBpXy3rqbe8ZybfxhFEvzdveHe1Go=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7269116},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.7.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"Drive your localhost app from the Reticle platform's chat: the daemon of a linked project drives it on your machine, the chat shows it live and keeps it as a check with a replay. The Harness now runs only on the platform, on every plan, and plans, replays and learns each app. A page on SDK 3.1-3.4 is no longer version-skewed, a pressed key sends its keyCode, and a screenshot never carries another tab's pixels. Upgrading from 3.5: see MIGRATION.md.","breakingChanges":["reticle_verify { action: \"explore\" } and reticle verify --explore no longer drive on a model key of your own. The Harness decides on the Reticle platform and needs a linked project (npx @reticlehq/server connect); every plan includes Harness credits. ANTHROPIC_API_KEY, OPENAI_API_KEY and JEV_API_KEY are no longer read for driving, RETICLE_HARNESS_DRIVER and RETICLE_HARNESS_MODEL are ignored, and the explore tool's `driver` argument is removed. A secret field's value comes from RETICLE_SECRET_<FIELD> on your machine."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/fedd9eba3ad1a67b193c9995c08e0dd7/reticlehq-server-3.7.0.tgz","_integrity":"sha512-O83tj7KBz6IxzDgXS05/ULO5x46D6MQDJTKewI0c8oam4lyhCBEzXn81iTmU4+s4E4/onufWOnYSwOgzuh/HoA==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.7.0","@reticlehq/init":"3.7.0","@reticlehq/engine":"3.7.0","open-verification":"1.0.0","@reticlehq/browser":"3.7.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.7.0_1791897307207_0.30564115513675083","host":"s3://npm-registry-packages-npm-production"}},"3.8.0":{"name":"@reticlehq/server","version":"3.8.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.8.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"d302d26cab233c6f11b3ac15b5123a8c2066dbe2","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.8.0.tgz","fileCount":1360,"integrity":"sha512-CAHCbVzC9j8bqKZfvVXDDSUO9ct91mDJfxqRZreZBCOzjzn8O6qG4K57dd5riewnruvd3yM6sT6wW+yiAAEKAg==","signatures":[{"sig":"MEYCIQClyRztaW7n97npTPVqR/KqpHxrzgFa4SBSVbRU7KWNLgIhALplRjML/ecKcB39xn/HmqC2kqNXSR+1zOC+7NZNe1r0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCID1Q4O/73BxXFcXYpYIVzEYmRPVmYJeQhbm3kA1ZWmuvAiAKFgovn+FRPuwf9hgi6x4ioJMfndyVLDtskMenIJw0BQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7851480},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.8.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"Reticle works in git worktrees: each agent reaches only the tabs its own worktree serves, and each run names its branch. reticle init now installs a prompt hook for the agents it finds: each prompt is kept, redacted, in .reticle/, and a linked project sends it with its runs unless \"shareRequests\": false. Background sync sends a linked project while you are signed in, or with RETICLE_API_KEY in CI. See MIGRATION.md (3.7 to 3.8).","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/ff497bb4e3eac0709e75cd68ef2182eb/reticlehq-server-3.8.0.tgz","_integrity":"sha512-CAHCbVzC9j8bqKZfvVXDDSUO9ct91mDJfxqRZreZBCOzjzn8O6qG4K57dd5riewnruvd3yM6sT6wW+yiAAEKAg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^3.24.1","@reticlehq/core":"3.8.0","@reticlehq/init":"3.8.0","@reticlehq/engine":"3.8.0","open-verification":"1.0.0","@reticlehq/browser":"3.8.0","zod-to-json-schema":"^3.24.0","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^8.0.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.8.0_1792949932713_0.29897384271279703","host":"s3://npm-registry-packages-npm-production"}},"3.8.1":{"name":"@reticlehq/server","version":"3.8.1","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.8.1","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"b152fafa5551ec93caed999208b5de2b3857d345","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.8.1.tgz","fileCount":1374,"integrity":"sha512-Kuk0GleX+eXUY6evMrAEQ9zuUB2z+80GgQhF4vFklTKiRjFZ7te81aQ1R7G5Rkpv2nt2jFM6Gewi50huuHfBIw==","signatures":[{"sig":"MEUCIQDunrE5ZXo7OYrsTzdYpuWp19WT/RPN6uwCrM7FQjABLwIgRBrFJ59KWDSARK0vsdmsEeVps94cWHGnQHxRvkk8fas=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCYxmBRC3WLPZ5xVXlMWRmv2OXyfq6tLW6DZkl/mpJ2kgIgDO9bJMmxZMsFdYAcaxM3ElcQpt9UMRNS1B8URrVfxIw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7876115},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.8.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"On Windows, the daemon now keeps running when the agent process that started it ends. A collapsed Next.js \"1 Issue\" badge no longer turns every check into unknown. Reticle moves to zod 4 for a high-severity memory advisory. reticle_lease can omit url and lease the project's own dev server. reticle doctor checks that the daemon answers, and streamed SSE response bodies can be captured. Replay waits for a start page that is still loading, a re-acquired lease moves to the page asked for, and a guarded app driven by fast clicks is no longer accused of applying a stale response. Update the SDK in your app as well as the CLI.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/01bedb10bd3ad4d3d05dac051532b463/reticlehq-server-3.8.1.tgz","_integrity":"sha512-Kuk0GleX+eXUY6evMrAEQ9zuUB2z+80GgQhF4vFklTKiRjFZ7te81aQ1R7G5Rkpv2nt2jFM6Gewi50huuHfBIw==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^4.6.6","@reticlehq/core":"3.8.1","@reticlehq/init":"3.8.1","@reticlehq/engine":"3.8.1","open-verification":"1.0.0","@reticlehq/browser":"3.8.1","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^8.0.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.8.1_1793042472898_0.3942810299167716","host":"s3://npm-registry-packages-npm-production"}},"3.8.2":{"name":"@reticlehq/server","version":"3.8.2","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"FSL-1.1-ALv2","_id":"@reticlehq/server@3.8.2","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"a29f829a12f4435ae3be3055aaa6b9e2addc88b5","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.8.2.tgz","fileCount":1378,"integrity":"sha512-dlCBCaoQGq8dtfg03dbt5wEAn2iRwTH27DSusx0Rekqz/ZtGX0M3zXCyhZRcdG1dveQBcMCNmaR/O8sprUHQsg==","signatures":[{"sig":"MEQCIBYWEjQmPgxckORJg3vCLjpaLvVkLziGuSwb68X332qLAiBJZYxsCIA4eU/4HcbqkxITZp/MrfflnLoYIhoJoWVlsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCXLn/s5KBIyWmxbjb0Obq0PG8ua9Jq6KNvuOL8COeOeAIgDaeBYTwmnCS0STsE8PYCr9sHKjCfTIYr1KjurmoBTXU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7880735},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.8.2.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"3.8.1 could not record a verdict: every run it built or read failed with an Invalid element at key subject error. 3.8.2 fixes it. Update the CLI and the SDK in your app.","breakingChanges":[]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/b93e2f681146120d5efbe6df14d82628/reticlehq-server-3.8.2.tgz","_integrity":"sha512-dlCBCaoQGq8dtfg03dbt5wEAn2iRwTH27DSusx0Rekqz/ZtGX0M3zXCyhZRcdG1dveQBcMCNmaR/O8sprUHQsg==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.3","dependencies":{"ws":"^8.21.3","zod":"^4.6.6","@reticlehq/core":"3.8.2","@reticlehq/init":"3.8.2","@reticlehq/engine":"3.8.2","open-verification":"1.1.0","@reticlehq/browser":"3.8.2","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^8.0.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.8.2_1793074528317_0.05962558658800288","host":"s3://npm-registry-packages-npm-production"}},"3.9.0":{"name":"@reticlehq/server","version":"3.9.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"Apache-2.0","_id":"@reticlehq/server@3.9.0","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"homepage":"https://github.com/reticlehq/reticle#readme","bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"bin":{"reticle":"bin/reticle.js"},"dist":{"shasum":"50452d5e00971a8c8bf418d0cfd0b5a17c9c3b03","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.9.0.tgz","fileCount":1418,"integrity":"sha512-5X/Jv1fK/6McPC+6glbITEgijAa6MAbA14cFXfmrKKOPJw/IIPAyhP9FIzD5fTD7NheilDU0bjRo0cWzdS3N1Q==","signatures":[{"sig":"MEUCIQDpz7RkzlapyxVkaAmoYRn8Ih7mf1SUlahZ4dPpLJ5tEgIgC9BtdV+15D5A71q202G393rtRhcZudQNm/zcXnJth+U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIB/pvYQ9kbPL6KkQ2E60BncpYjKLD9A+snt0eTAwqfz7AiEA0isNZ1Qcs3ExVvtUpRM4UrOGa1VFh65keH3+SlQ0MHg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8115092},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.9.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"3.9.0 gets more installs to a first verdict. The one-line installer and reticle init now check your app and wait for your agent to connect. A lease reads a deployed preview with no SDK installed. Several false verdicts are fixed: a click that hit Reticle's own panel, a recorded flow that lost its assertion, and an iframe that took over a page's session. Every package is now Apache-2.0. Update the CLI and the SDK in your app.","breakingChanges":["A headless page now opens at 1440x900, not 1280x720. Record your headless screenshot baselines again, or they report dimension-mismatch.","The JSON line of `reticle license` no longer has the `gated` and `coversNothingHere` fields."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_resolved":"/tmp/e5a3641071d82837a2cc0206d6bbd7bc/reticlehq-server-3.9.0.tgz","_integrity":"sha512-5X/Jv1fK/6McPC+6glbITEgijAa6MAbA14cFXfmrKKOPJw/IIPAyhP9FIzD5fTD7NheilDU0bjRo0cWzdS3N1Q==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"_nodeVersion":"22.23.4","dependencies":{"ws":"^8.21.3","zod":"^4.6.6","@reticlehq/core":"3.9.0","@reticlehq/init":"3.9.0","@reticlehq/engine":"3.9.0","open-verification":"1.1.0","@reticlehq/browser":"3.9.0","@modelcontextprotocol/sdk":"^1.31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.5.13","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^8.0.0","playwright":"^1.63.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/server_3.9.0_1793268965571_0.28903294472559615","host":"s3://npm-registry-packages-npm-production"}},"3.10.0":{"_id":"@reticlehq/server@3.10.0","bin":{"reticle":"bin/reticle.js"},"bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"dist":{"shasum":"04351e18a0cff9cae6956f808e2536a19c309084","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.10.0.tgz","fileCount":1508,"integrity":"sha512-Tr88fODVw0TmSmUfmaotaUw2Sv6W68yRU0FGjFVDdW32CuDpAg6QgfW1+4DWdmLzdl3D4Dq2608ZJvWhqfJ/3A==","signatures":[{"sig":"MEQCIGQEewf6LvDOtM3WIOdATtlB1cdKrpc4tNIDQLXf7XBsAiB1+TgBc93icWHYNBqgx34l/kEMkfwDPffcmpxwgG05qA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCD3D7erKNs+jZWhP6wtzuCkyw1YeSJci95NyaMGIDpkAIge7jow5JiUHh1g1sbGvIdwa+HWm1VJB/8q1k4XZBhLxA="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8737057},"main":"./dist/index.js","name":"@reticlehq/server","type":"module","_from":"file:reticlehq-server-3.10.0.tgz","types":"./dist/index.d.ts","author":{"name":"Reticle contributors"},"engines":{"node":">=20.11"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./cli":{"types":"./dist/command/cli.d.ts","default":"./dist/command/cli.js"}},"license":"Apache-2.0","mcpName":"io.github.reticlehq/reticle","reticle":{"changelog":"3.10.0 checks every change against what worked before. reticle compare and verify --against list what users would see change between two builds, and reticle grade grades a finished run from the app's stored data. Several false verdicts are fixed, most of them text checks that answered no for text that was on the page. An agent in a Claude Code worktree now reaches its own tab. Update the CLI and the SDK in your app.","breakingChanges":["The commands kill, login, link, project, whoami, push, regression, share, issues and memory are removed. Each prints the command that replaces it and exits 1. See MIGRATION.md.","The MCP tools reticle_explore and reticle_replay left the tool surface. Use reticle_look { action: \"page\", mode: \"interactive\" } and reticle_record { action: \"replay\" }."]},"scripts":{"dev":"tsc -b --watch","lint":"eslint src","build":"tsc -b && node ../scripts/alias-dist.mjs","test:unit":"node ../scripts/guard-tests.mjs unit","typecheck":"tsc -b","test:guards":"node ../scripts/guard-tests.mjs guards","test:coverage":"vitest run src --passWithNoTests --coverage.enabled --coverage.provider=v8 --coverage.reporter=text-summary --coverage.include='src/**/*.ts' --coverage.exclude='src/**/*.test.ts'"},"version":"3.10.0","_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"homepage":"https://github.com/reticlehq/reticle#readme","keywords":["mcp","ai-agents","testing","verification","cli"],"_resolved":"/tmp/228930df9bdc1bb777983c4e3ff357b2/reticlehq-server-3.10.0.tgz","_integrity":"sha512-Tr88fODVw0TmSmUfmaotaUw2Sv6W68yRU0FGjFVDdW32CuDpAg6QgfW1+4DWdmLzdl3D4Dq2608ZJvWhqfJ/3A==","repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"_npmVersion":"10.9.9","description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","directories":{},"maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"_nodeVersion":"22.23.4","dependencies":{"ws":"^8.22.1","zod":"^4.6.6","@reticlehq/core":"3.10.0","@reticlehq/init":"3.10.0","@reticlehq/engine":"3.10.0","open-verification":"1.1.0","@reticlehq/browser":"3.10.0","@modelcontextprotocol/sdk":"^1.32.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.1","@types/ws":"^8.18.2","@types/pngjs":"^6.0.5"},"peerDependencies":{"playwright":">=1.50"},"optionalDependencies":{"pngjs":"^7.0.0","pixelmatch":"^8.0.0","playwright":"^1.64.1"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/server_3.10.0_1794647788573_0.029277952448633293"}}},"time":{"created":"2026-07-11T11:55:57.126Z","modified":"2026-11-14T09:16:29.403Z","2.0.0":"2026-07-11T11:55:57.552Z","2.0.1":"2026-07-17T16:19:46.118Z","2.1.0":"2026-07-18T10:10:56.980Z","2.2.0":"2026-07-26T15:49:57.506Z","2.2.1":"2026-07-29T17:12:59.572Z","2.3.0":"2026-08-05T19:06:40.542Z","2.4.0":"2026-08-07T08:27:55.978Z","2.5.0":"2026-08-09T18:21:22.506Z","2.6.0":"2026-08-12T04:32:11.558Z","2.7.0":"2026-08-13T23:04:10.613Z","2.8.0":"2026-08-15T13:07:22.431Z","2.9.0":"2026-08-20T07:11:22.699Z","2.10.0":"2026-08-21T17:11:23.137Z","2.11.0":"2026-08-22T12:32:37.179Z","2.12.0":"2026-08-25T05:36:26.705Z","2.13.0":"2026-09-02T12:08:47.576Z","2.13.1":"2026-09-02T13:44:53.469Z","2.14.0":"2026-09-11T07:23:52.176Z","3.1.0":"2026-09-18T07:00:48.992Z","3.2.0":"2026-09-23T13:18:24.749Z","3.3.0":"2026-09-25T22:04:03.865Z","3.4.0":"2026-09-30T18:38:19.073Z","3.5.0":"2026-10-01T20:41:21.149Z","3.6.0":"2026-10-07T17:20:17.742Z","3.7.0":"2026-10-13T13:15:07.400Z","3.8.0":"2026-10-25T17:38:52.876Z","3.8.1":"2026-10-26T19:21:13.111Z","3.8.2":"2026-10-27T04:15:28.478Z","3.9.0":"2026-10-29T10:16:05.773Z","3.10.0":"2026-11-14T09:16:28.807Z"},"bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"author":{"name":"Reticle contributors"},"license":"Apache-2.0","homepage":"https://github.com/reticlehq/reticle#readme","keywords":["mcp","ai-agents","testing","verification","cli"],"repository":{"url":"git+https://github.com/reticlehq/reticle.git","type":"git","directory":"server"},"description":"Reticle CLI, bridge and MCP server: a coding agent drives your running web app from the inside and gets a verdict with evidence, for change verification, access control, accessibility, performance and SEO checks.","maintainers":[{"name":"dshekhar17","email":"imdshekhar@gmail.com"}],"readme":"# @reticlehq/server\n\nThe [Reticle](https://github.com/reticlehq/reticle) bridge + MCP server. It hosts a localhost WebSocket endpoint your app's `@reticlehq/browser` SDK connects to, and exposes MCP tools your coding agent uses to look at, act on, observe, and assert against the live app.\n\n```bash\nnpx @reticlehq/server init   # wire the project: SDK + build plugin + MCP registration\nnpx @reticlehq/server mcp    # MCP over stdio; auto-starts the bridge on ws://localhost:4400\n```\n\nThe package installs a `reticle` bin, so inside a project `reticle mcp` and `npx @reticlehq/server mcp` are the same command. `reticle` is not a package name on npm.\n\nPoint your agent at it. On Claude Code, register it at user scope:\n\n```bash\nclaude mcp add reticle -s user -- npx @reticlehq/server mcp\n```\n\nDefault tools (10):\n\n`reticle_navigate`, `reticle_look`, `reticle_act`, `reticle_act_and_wait`, `reticle_observe`, `reticle_assert`, `reticle_session`, `reticle_tools`, `reticle_run`, `reticle_verify`.\n\nOnly `reticle_act_and_wait` and `reticle_assert` return a verdict; everything else moves or reads the app.\n\nMore tools ship but are not advertised, to keep the per-turn tool payload small: screenshots and visual diff, saved flows, recording, baselines, clock control, viewport, crawl, coverage, network mocking, leases and more. Reach any of them by name with `reticle_run`, list them with `reticle_tools`, or advertise the whole surface with `RETICLE_ADVERTISE_ALL_TOOLS=1` (this roughly doubles the per-turn tool payload).\n\nSee the [main README](https://github.com/reticlehq/reticle).\n\n## License\n\n[Apache-2.0](./LICENSE).\n","readmeFilename":"README.md"}