{"_id":"@reticlehq/server","_rev":"33-1ba9386dcdb289f23d770305378576ea","name":"@reticlehq/server","dist-tags":{"latest":"3.10.3"},"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":{"name":"@reticlehq/server","version":"3.10.0","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"Apache-2.0","_id":"@reticlehq/server@3.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":"bin/reticle.js"},"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"},{"sig":"MEUCIQCD3D7erKNs+jZWhP6wtzuCkyw1YeSJci95NyaMGIDpkAIge7jow5JiUHh1g1sbGvIdwa+HWm1VJB/8q1k4XZBhLxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"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","type":"module","_from":"file:reticlehq-server-3.10.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.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'"},"_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"_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":{},"_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":{"tmp":"tmp/server_3.10.0_1794647788573_0.029277952448633293","host":"s3://npm-registry-packages-npm-production"}},"3.10.1":{"name":"@reticlehq/server","version":"3.10.1","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"Apache-2.0","_id":"@reticlehq/server@3.10.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":"385f901e9f830de66a4c43ada55093c06765bc3d","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.10.1.tgz","fileCount":1508,"integrity":"sha512-6BxPINUemXDRnkk+6bfcjKDgfaoAHHFKy1e68CHIX0hBdZ2EZRqhToloAi7UyFI/xWtJdIZ5FIwKED0OWIEggg==","signatures":[{"sig":"MEUCIAM2V4DTpmPeDt3m0S0gPNI2EnV6TxRmROv9DzdScQumAiEA+Hfl4h1kcLH6h+JXGAf0A7oHSqGKhDNdEe9BchSKUB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCaXmWXM3AxVIt3Tb8urtaxF4NDM05D6EXgipIV6U5c4wIgS19lcRODB48ex6dk/IoQo9LDZ9LMzg5Gnr4ouc5oAQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8741634},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.10.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":"3.10.1 fixes reticle init on a busy machine. When the dev server could not start because its port was taken, or the app answered on one loopback address only, init reported a failed install although the project was wired. Now it says Reticle is wired, prints the steps to confirm the connection, and exits 0.","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/37a348fe0f95b90983bbc5b79b76c143/reticlehq-server-3.10.1.tgz","_integrity":"sha512-6BxPINUemXDRnkk+6bfcjKDgfaoAHHFKy1e68CHIX0hBdZ2EZRqhToloAi7UyFI/xWtJdIZ5FIwKED0OWIEggg==","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.22.1","zod":"^4.6.6","@reticlehq/core":"3.10.1","@reticlehq/init":"3.10.1","@reticlehq/engine":"3.10.1","open-verification":"1.1.0","@reticlehq/browser":"3.10.1","@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":{"tmp":"tmp/server_3.10.1_1794680272884_0.740430468650732","host":"s3://npm-registry-packages-npm-production"}},"3.10.2":{"name":"@reticlehq/server","version":"3.10.2","keywords":["mcp","ai-agents","testing","verification","cli"],"author":{"name":"Reticle contributors"},"license":"Apache-2.0","_id":"@reticlehq/server@3.10.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":"853b2a08abe03af867de1d5e20fe88deb823e12e","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.10.2.tgz","fileCount":1508,"integrity":"sha512-t1WPjwxKGBRBpuYLeS6l/4ysQUpB0lq31TNklwKcp/2JSfS5eg9Sp0EyO1/8skxqv3IpiIJKaIUIu07TJTaCwA==","signatures":[{"sig":"MEQCIGZ4STECEzS8WiPNd/SsJ00+3ZwQls7h+We3C432BYaSAiA+kyulWWuOoLzjhanH6ogq2x48DRy7mwS77uxR6wWugQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCuKq8SFvzf9189y5/WLDGj2/MuEVKqjR/JNzubKWBfJgIgUqSRE65pYZl5Abilnw8MOUYQmRttmaw8MAfjJv+uxng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8741518},"main":"./dist/index.js","type":"module","_from":"file:reticlehq-server-3.10.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.10.2 fixes a false verdict: a settled check never passed on a page where an attribute was written again with the same value. Such a write changes nothing, so it no longer counts as activity.","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/ff3b1420d6d83d24a1d5dc42fb82fdb5/reticlehq-server-3.10.2.tgz","_integrity":"sha512-t1WPjwxKGBRBpuYLeS6l/4ysQUpB0lq31TNklwKcp/2JSfS5eg9Sp0EyO1/8skxqv3IpiIJKaIUIu07TJTaCwA==","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.22.1","zod":"^4.6.6","@reticlehq/core":"3.10.2","@reticlehq/init":"3.10.2","@reticlehq/engine":"3.10.2","open-verification":"1.1.0","@reticlehq/browser":"3.10.2","@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":{"tmp":"tmp/server_3.10.2_1794696339601_0.34806520142987574","host":"s3://npm-registry-packages-npm-production"}},"3.10.3":{"_id":"@reticlehq/server@3.10.3","bin":{"reticle":"bin/reticle.js"},"bugs":{"url":"https://github.com/reticlehq/reticle/issues"},"dist":{"shasum":"73dcd742bc587f5e6db8d9b7ef920c4c73b376cd","tarball":"https://registry.npmjs.org/@reticlehq/server/-/server-3.10.3.tgz","fileCount":1508,"integrity":"sha512-LI/wLhqDZCiJIbMuYwPAdwLqBgmpmsZbtNcBuM8A/U0A9IoApfJFe0dn1w7xiNwIvrPwjP+Pa+cxQRlUqEtumw==","signatures":[{"sig":"MEUCIGI/8Ii97jwmuJD8PZ5GL0M7S931uNVw04GKM//1HUJlAiEAxUrtoJxRC9GinZybXYsvmSxbEv/fFJslDifRYYG6vhA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDccCHvQh0PYwWtyUoeufMYupIguTZGBiOSkyK1exR7FwIgdjtmy/4LfXtci27qDONF4KdXMsnw2+X8aIWVZXuoPFo="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@reticlehq%2fserver@3.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8751744},"main":"./dist/index.js","name":"@reticlehq/server","type":"module","_from":"file:reticlehq-server-3.10.3.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.3: every page loads 119 KB less of the SDK (no zod on the first load). In a monorepo, an agent at the repo root uses the daemon of an app in its own workspace, and init starts the root dev script when it also starts the API, with turbo passing init's environment through. A Next.js redirect is no longer reported as an uncaught error.","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'"},"version":"3.10.3","_npmUser":{"name":"dshekhar17","email":"imdshekhar@gmail.com"},"homepage":"https://github.com/reticlehq/reticle#readme","keywords":["mcp","ai-agents","testing","verification","cli"],"_resolved":"/tmp/45d35889963ebd3afa2aaef8af5b19a1/reticlehq-server-3.10.3.tgz","_integrity":"sha512-LI/wLhqDZCiJIbMuYwPAdwLqBgmpmsZbtNcBuM8A/U0A9IoApfJFe0dn1w7xiNwIvrPwjP+Pa+cxQRlUqEtumw==","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.3","@reticlehq/init":"3.10.3","@reticlehq/engine":"3.10.3","open-verification":"1.1.0","@reticlehq/browser":"3.10.3","@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.3_1794745686473_0.15196968633516839"}}},"time":{"created":"2026-07-11T11:55:57.126Z","modified":"2026-11-15T12:28:07.041Z","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","3.10.1":"2026-11-14T18:17:53.070Z","3.10.2":"2026-11-14T22:45:39.794Z","3.10.3":"2026-11-15T12:28:06.678Z"},"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"}