{"_id":"wip-codex-remote-control","_rev":"36-135b918db414c0acdeaa88cb38a775de","name":"wip-codex-remote-control","dist-tags":{"latest":"0.0.2-alpha.2","beta":"0.0.3-beta.1","alpha":"0.0.4-alpha.14"},"versions":{"0.0.2-alpha.2":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.2","_id":"wip-codex-remote-control@0.0.2-alpha.2","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"fae9e75b30fb5a18e2021f0fb437cfc3c1f0af9a","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.2.tgz","fileCount":51,"integrity":"sha512-uATy/SpUUYPHV+rv1ohNCQ3zVoty/tIQ3an3qcelrzmaRn5o1hafwR8/ruWasnhEGOOGuZVTvsYXgnTJQn+kWQ==","signatures":[{"sig":"MEYCIQCydYP/lmRTIA/BJWCECHZ6tY+Xq5C8lz9UFB4zjZDoZQIhAIYALBRh9Cfl8EPU58meM8MHavUk8tzPQbFHmWupsKtj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73839},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"128bc548a987692a42bafb510cf5a3ecebf9c31f","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates","build":"tsc","start":"node dist/cli.js start","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.2_1777401827732_0.659028375628995","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.3":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.3","_id":"wip-codex-remote-control@0.0.2-alpha.3","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"567842ef1b26a8eb16d5ffceb9f54a4cd620c1d0","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.3.tgz","fileCount":55,"integrity":"sha512-DDTlkW8v9/pCoGQ/KAmX8eSRhEVbfjU9cgkLH1UXefuAhJK5hjiFY1YiC5vihO3wrq9Ur9Zc+Nvm1PrcmS5KHw==","signatures":[{"sig":"MEUCIEqhExsCy/QyUkDZGLl6te3QLrdwjTAyZAymEM9Kvyi2AiEA/MT7ajrHQE1c7yxtcSLifM3PjKq0IzECkxX8SNaD2Aw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110769},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"760f471216a2ea0bb5e2436fec3f76af79d9085c","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates","build":"tsc","start":"node dist/cli.js start","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.3_1777499144362_0.1680045538464645","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.4":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.4","_id":"wip-codex-remote-control@0.0.2-alpha.4","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"f2610002f0b2b144b99fd07c196a24b00c0af1b0","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.4.tgz","fileCount":55,"integrity":"sha512-c8L6MbKTnQSaMo354qRmvN7IRvOKnS5Soi5DxUFLX7GgAptm6gFYQR65nc/IXaW2IBlU1AdyAIFsbl3rZkZDEQ==","signatures":[{"sig":"MEUCIARGqV60JTjiFBtIXdMTSXBQgqZ9SUXEUepj7Z10bZPjAiEA3w+UX5nVO38JWwpa5hFza/mxUi4ZAOCwdjDMVbVspxo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110769},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5424179debc95b484022c7d97144e74b3cbb2935","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates","build":"tsc","start":"node dist/cli.js start","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.4_1777499668892_0.20980358004012878","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.5":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.5","_id":"wip-codex-remote-control@0.0.2-alpha.5","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"29912316e70b1a4721518265176c3651812baf26","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.5.tgz","fileCount":55,"integrity":"sha512-LIpEfd878l5mAbFgFd8pHAs7pVhJwHL5fO3YxnU6/jMN9DklsYMBIW4xYCDauOPoiOuip91u6LhULrrtGnTZeQ==","signatures":[{"sig":"MEYCIQDDzxOdeOYx+B2VCDhFMKzo5EIWWj63cs2wKXCPLYCcdgIhAOzDBkuLy6UbuNlXjU4l3lDjNKpNHyL1dWgVhgNfJu49","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110769},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"828966bb2a13b84ac35314d6119d991c2d860509","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates","build":"tsc","start":"node dist/cli.js start","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.5_1777500774832_0.4252215480404422","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.6":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.6","_id":"wip-codex-remote-control@0.0.2-alpha.6","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"3631d818c552795e8576e4bfcfe06b4fcbb0c325","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.6.tgz","fileCount":55,"integrity":"sha512-S04Vc0u3hhx44RlNMcjETWYUi/dlwjZaLvPphfiP1DbTb9L94cx9uri+8XQZmLPd78ReUsdwasO2ToG9m46Uew==","signatures":[{"sig":"MEQCICNCRg7Q+6F4qOcA1vSBkShDAhqBP3SnHOI2kqDNAdRFAiBaBSCslkJE/emdi8IQTQ4rXUWZba7C8KjzLNeKa/A+Dw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132299},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"36c5bc1bb3658663d6e52b5afc94c6b56c94e00f","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.6_1777584117469_0.6566121157374285","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.7":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.7","_id":"wip-codex-remote-control@0.0.2-alpha.7","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"ed795f3dabb9241cc24081e8541ced5f5f5b965c","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.7.tgz","fileCount":59,"integrity":"sha512-yAeoEt9CORKELs6LGYuH42wUBAm1ST/zf6oW39zJ1nP7+T4jwBDr0AjLD72G5a0unjtDbZUwJDTcLRB5AEvSmw==","signatures":[{"sig":"MEYCIQDiOKmLWWZpOs7BaaSkTbZvafagAz/LQgjavFROVsKWygIhALVQJ8Uw2p/oLo9enlh8GNUp2UkOYqF4XJ1K2E0ndHGO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135985},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"16375558f1ff1fe6069876dd5cbf5762342351e7","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.7_1777934202582_0.6865311088104085","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.8":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.8","_id":"wip-codex-remote-control@0.0.2-alpha.8","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"67c27dd13595b6d600c319cfa8c6d369170b5ed0","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.8.tgz","fileCount":61,"integrity":"sha512-lKW6CQ0ST0/cq4M4scxM6pyb2lU3LmCN6VRJ3nS6yRwa6w1WhLaHglBNNTYFwVGhK93WuDf6IRIUEXoRpqW96g==","signatures":[{"sig":"MEYCIQDIhf8t5O7sapefaT75LQjJqKlbiUPlg/gee212yPgPqAIhAMhIDlzCTlrdM/45EOucZqUS8d/wrtUrmE+e4i7r2GVg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141026},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"80fbba746dec66697923a2d4517fd3acbda9735e","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.8.0","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.6.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.8_1777993130691_0.5796590239224753","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.9":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.9","_id":"wip-codex-remote-control@0.0.2-alpha.9","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"5b11c683ed505ab25d36277e3656b30360111836","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.9.tgz","fileCount":61,"integrity":"sha512-hrbeB3A13FhZRF9DfgdDifPGwF5NgdjFh+XwSFulF90sixkte2nQ35KBRv6uEXjJ56GjVWo+IRuWTszUCOIC7Q==","signatures":[{"sig":"MEUCIQDgxldWFjdsWVMjqDcj1t7WPf0OtsUerA8mOMu8FlwfJwIgbuQRs6376WT9yyFGk/CsQ+LByP+zRIyPuoa8guYvyWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140656},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"53bfa5e481c9c4ec0a715ed57f3763633306da20","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.9_1778003947189_0.46029821198317267","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.10":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.10","_id":"wip-codex-remote-control@0.0.2-alpha.10","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"e46f518256d1b12bc66f10518a8067a85e8fce1a","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.10.tgz","fileCount":61,"integrity":"sha512-0MES+FmJ0laEkGJG2f7rJZ3UTh07ttsa/ISv2kZUWPVn3EPjXeu94gcpgsSnaK21j1iu+Cazu9WLYmm4iUh4pw==","signatures":[{"sig":"MEQCIBV5yoYx7GOGCzvgmeL5rv+mbeOFbTHwBqlkYyIh8W7VAiBnL2bAdrb1evTVpJiTvFOqqQ0ENFW1hfM6O+18FwFfEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140986},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ac4ca5314fe7dcfe5b20c5af951370d13835861c","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@openai/codex-sdk":"^0.125.0","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.10_1778013398593_0.7717003496088872","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.11":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.11","_id":"wip-codex-remote-control@0.0.2-alpha.11","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"0a29f4ae362ba5b75ebfe9e40baf0fa1c434aeaa","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.11.tgz","fileCount":65,"integrity":"sha512-NMRHVpeBKiI02M31tlGn8wWpQWWEeVLpss8tgnZhmuMjqT4Xcvebopy3B6Qb1Obpe/+4nMpI9fzpGj9h779BHA==","signatures":[{"sig":"MEYCIQDkB7UcvXRfdjlbPzEOh3ayLvecn72CpdVz9I9/330dTAIhAMPqW5/zP5JlYZonQDL7CcRyVwWCeTK97SSjZkenGw3+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":171164},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f7346251e689076558dee59b92ae18e4fccc58fc","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.11_1778017145636_0.5294307957829911","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.12":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.12","_id":"wip-codex-remote-control@0.0.2-alpha.12","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"d27aa4e9143c914fdf3e05c4626b31c4a2a2bf6a","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.12.tgz","fileCount":65,"integrity":"sha512-QwhtnGVbLJQ2DrsTdPmHhmTr9OZ8ZeDZbpt2H2ueEDrZkOxOuSu5QScfXfXML+1tmtc4Bgnk9zUi/hlHl8TpQA==","signatures":[{"sig":"MEYCIQCu+OajqYCtx970CK8vYLJEZlAWY08sW8l0uYK/7VQqrgIhAJL9zap6ENob7j7byOaRYRXJME8DFL4/1923TOrUQOJX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":176371},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cfac2b742316a41ec34e3b1c1e34f6bb3b806ae5","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.12_1778025589867_0.8291351630237946","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.13":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.13","_id":"wip-codex-remote-control@0.0.2-alpha.13","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"a668a5ba665e36c9058eac21aa8fee721b6882e3","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.13.tgz","fileCount":65,"integrity":"sha512-Q1qnqSNAHZ3fF/vfqntHx2+A+jF+gRJ2GYYKa9ZmxotJUc73oceRvaOBA/M97/qdS0gXUZOD6/JNk6+CyDQBvQ==","signatures":[{"sig":"MEQCIF+RSCCM4RTHHtBZBKNmzE2YBmVnIr6dwAs7WBqNDQu1AiBCSo2u9Sjy/yWeIA9kMYbLqeBMef1DZvQZx3QgvlKy7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":180566},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"31c9daa2ecf1224c73bea756a26acf53ea3f573a","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.13_1778089872404_0.5269402672591363","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.14":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.14","_id":"wip-codex-remote-control@0.0.2-alpha.14","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"881ead3e8e34c4f07638275be82b2969480f6d98","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.14.tgz","fileCount":65,"integrity":"sha512-KL1xXoea4m5yM0iryCsIebzLeyXjCj3sqBMcudqLB9r5vHZjvHIktZWU7c8idOh+g5s//is5MIwPxjWe3TvIcA==","signatures":[{"sig":"MEUCICfi9IY+esN5E21l0vA0ZTJZw12bz00MXbgDEQIzXqinAiEAwLCpNX14n4jaUAhF4UJVH+ZvkEhSRMwszumg8gQ7sDs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":183515},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d8d535f72639bf5a5b3031a1d9936620f8623c7c","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.14_1778093468298_0.7531730092780591","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.15":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.15","_id":"wip-codex-remote-control@0.0.2-alpha.15","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"0ef0b4374d6873e6d331bedb3cecd99e9b84ae54","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.15.tgz","fileCount":65,"integrity":"sha512-SaaGLB7o32yvkZCG9kNtanmhP6l+e3JI0Gzo/4OlUuOyoANlHxsdf95eoaz6Ttjo8nGasUN1AeQb/IiQaDcZJA==","signatures":[{"sig":"MEUCIAqcGq1teKgb8DkI7gEJCl+aHFse4XyIG6YclBeos10EAiEA+hWBzryCDZT2T2ig808IDUYI6liBwcttXbQqfzrIyq4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":183883},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"72b37743b28652021bbbdb29ce919c538fe788d7","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.15_1778118236939_0.009077738173253191","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.16":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.16","_id":"wip-codex-remote-control@0.0.2-alpha.16","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"9cec46192dbf2e2933a2d3c0ed2c0ae5547ae914","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.16.tgz","fileCount":65,"integrity":"sha512-t64+m6zEh66tiUZ3tbJsJ984LebplTRmX8NnIoV6RMO1bIz2QFY/xb7OMJNc9oSY+zj5/vbIqufhGgLD7GDuZg==","signatures":[{"sig":"MEYCIQDj9gy6xpSzRiGLXTmvnDElzB55WS4eiocUr5LLi17lvQIhANLmSmX0EzLMou69WYCh4Z0zrV4Aq0FlKSPz7zrBkHA/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184969},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6d38188c61a9d3f0c173564ee99c7e1693c1f63a","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.16_1778164930576_0.9483306254752435","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.17":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.17","_id":"wip-codex-remote-control@0.0.2-alpha.17","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"f23ed3b5fbbe014a0742d88e74c92dd746905f11","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.17.tgz","fileCount":65,"integrity":"sha512-N81lREvo+VhxDhVBC+rY+sEN9/Ri+hOyOEnDzNYkZRb0OJiHHS30eps00U1wuNhfSqzrzivS0Nw/3F72CzKlXQ==","signatures":[{"sig":"MEQCIAwXxtXFSty2ABc3ZgP5Oz7h+pTpbBLRv7yq0eq+4qddAiAZd8/ePoU482SBN2rBdbc70+5BtA+yf+UPqfGc+RDWrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184969},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ac28407efb477756c5a13ae42b36d06000e31566","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.17_1778167977659_0.2423513829964199","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.18":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.18","_id":"wip-codex-remote-control@0.0.2-alpha.18","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"7f33bf8b780c8ac8df1698a504ebfdc938b39393","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.18.tgz","fileCount":65,"integrity":"sha512-oZVOFtrorxvkSRv//CTB/cC/yuHaeR/BO88ynoJIObwQsqtBXuEbvkJ0nw3bsB80yIz9BvWk7cGqA4XobcHdww==","signatures":[{"sig":"MEQCICL6IUvsQKrKEY274bpSBE3dDUmkMc6b+XcAdeElV/ANAiB/CgonM2sleT7ucTuetzjw6HGynxffsr8rRV0+NSCaMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184969},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"bb82ab4297cbf81794d875b9f26e76616f3c5a80","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.18_1778168913178_0.8516008589341342","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.19":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.19","_id":"wip-codex-remote-control@0.0.2-alpha.19","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"8592431097e26802ff6908e76bb099b5f958052f","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.19.tgz","fileCount":65,"integrity":"sha512-+9EkfV28+F69ExQS5LKzNunstmJoT8sqNRbRTp4wi1psNOFnA4whiHNRL0e1EdPGvItS+re0cHKqJWdLTenPig==","signatures":[{"sig":"MEUCIQD9Zd5/vWu5zOVj47z74T7+aX5NGTbm8wslUNXJvfLJXwIgWFQ6ghSRX4Qs3lHNRVEJF6rfn3EPvfdyZoq8QhOool0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185056},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"11bc140e61983ce67b21e950bd9591c0fa08e7b1","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.19_1778520627087_0.2571281378057353","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.20":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.20","_id":"wip-codex-remote-control@0.0.2-alpha.20","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"3d2154b3cc35952dbd07d5ab001e2c906f6c4309","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.20.tgz","fileCount":65,"integrity":"sha512-4eUVTGNGF2P14W0RAA+rIw9I2lvGDgkjdKoqdW7+bhcomx56hAVBJUuRuRZMTVFZ/pLJuT7bgulLLW8JDul80Q==","signatures":[{"sig":"MEYCIQCkCklrOOo5AOadJI88KMFU+hgh5w0+FOkrqZ4eTpYInQIhALYanb2x385a+hAMMdseDgksLvXLE2L9izkhtHQMeaXQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185783},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"05877a996a8d0b890a524fbfd86d794a98160590","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.20_1778520894559_0.1372909692349671","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.21":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.21","_id":"wip-codex-remote-control@0.0.2-alpha.21","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"8ce1a5c7fe11f6494440545ed490316d5215fb7b","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.21.tgz","fileCount":65,"integrity":"sha512-ax3XH+5HYnK/5MvnFUvBXTuCVlW1TzCiKwvjRmTv0TBUaiiXDf5yT7ah1PeLjirgyugw2G8ehrzLBoLPUrI/Iw==","signatures":[{"sig":"MEQCIAuxD/tUtuJ3jElsihPvMKEHhtD4MwoGjEajCizP45FBAiA+7+rTpbV7AQyYWf2h1wSLghqatqj9S+BuDnzmO+KSvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185783},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d23beea415c5dbbee8160b1bfb16be02a5a60d31","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.21_1778521875987_0.7448964964117999","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.22":{"name":"wip-codex-remote-control","version":"0.0.2-alpha.22","_id":"wip-codex-remote-control@0.0.2-alpha.22","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"e9fb1098e51928f8dd7c6c932b17a20be533f009","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.2-alpha.22.tgz","fileCount":65,"integrity":"sha512-CfPNMXtH2iaDIVQUmGxvbBCuF0taJIsSjAN/Km0zQIiN9KjCWdmtG+l7s3M8ql9GkLVE32W95FFDJU18opneMg==","signatures":[{"sig":"MEYCIQDHtgUvyfnWYY4JZCmPxPA2nR4I0wxKp/sG5qpaaKzLAwIhAN4Jz21BT47I3az6ihZbJutTBbyY2PTyvTiBMkgFaqvA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185783},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5cfdbdd5aaaf2402df93feb2dcdcd8b0bd3275db","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.2-alpha.22_1778533785355_0.8431567826846966","host":"s3://npm-registry-packages-npm-production"}},"0.0.3-beta.1":{"name":"wip-codex-remote-control","version":"0.0.3-beta.1","_id":"wip-codex-remote-control@0.0.3-beta.1","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"7a38c6c1383558be1e93adb0e18da0f6b236512f","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.3-beta.1.tgz","fileCount":65,"integrity":"sha512-joNr8UKJ2HsOHmR9ARJDCDN5+QQ0gO/l8L2pH5uUYwVfeRPZ5iPNP1ZAccN8Z6nFToJ9GI7Ic4An4I00P1Sj1Q==","signatures":[{"sig":"MEYCIQCg1vFLKTzS2QIJ9sukMOAkDb7ifd47kT5z57LHCYFl0gIhAMZNFZLvl5ylgMfBwfd0LzkX74yUz4xY+xJUvKPE8v9q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185781},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"c4abadb172af0235c79cfbc8fc71cf602c25b2a6","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.3-beta.1_1778534550169_0.38533949315802474","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.1":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.1","_id":"wip-codex-remote-control@0.0.4-alpha.1","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"b445d2e63f4907dc5495dd6a123afa0a411099f9","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.1.tgz","fileCount":65,"integrity":"sha512-6azOZPkZp/P/6LYEQg/7UW6Qg9iRFMKafRWw3vF9pPqqjTfLgPTgED/bopJ4QejQIrjHnk64Vs3jyWSnn+GZJg==","signatures":[{"sig":"MEYCIQDyO6zfasKkYWBYufjQxP9z6N+wiuZb1StlJDxFoXY6iQIhAIspmDdrn6bekziGGsdELNnsnPMU6EJt3auuUo2yHFzW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185970},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"949189bd8b88fe85b86f4c2ade7613d6d5fdcde3","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.1_1778534818429_0.669376549404761","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.2":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.2","_id":"wip-codex-remote-control@0.0.4-alpha.2","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"5f665986a30c5f0aecb7cd1e9ee06fcae1f69ed6","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.2.tgz","fileCount":65,"integrity":"sha512-DqWaC7fJonn094V6IYp8yrwfSiEo8AjnQzeeYkE4wG4U/nbOnF1uxoaxjszAcaA2T/TBuBgq5XvrBjsvQdM14Q==","signatures":[{"sig":"MEYCIQDJ65KmJM8x6UtrDho5fEV5OlCufG1XqpaMI26a4VJk/QIhAO80TXTIjRaktHWiHE0mGmAAQC5yHNpeCg45/eUeyjUb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189014},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d75c04d6273410a90004c8d45e3ca320c6405ad8","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.2_1778535885040_0.2619908556828898","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.3":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.3","_id":"wip-codex-remote-control@0.0.4-alpha.3","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"7528995d8bbeb11684a59c3772d32c8dee6138a2","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.3.tgz","fileCount":65,"integrity":"sha512-LDh8Zl2KCLzsdbvWQosO1rAus/Nk+2RzPkzx6p07UywK6LnAltEbY1UZoA8Y//g18Z4k/CMmfkac+WVT7BpF/A==","signatures":[{"sig":"MEUCIQDQjWt8FDhUnMkLwBh23hsAk8jv9jlct+RThhEiuZ/8iAIgNot0BgtCvvZlnLqTNX3V5fqv5yhli23puWcG2o4sqVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189937},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"02ec5952f346e1ea83a9defa9d5c9d9a80120fec","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.3_1778538776869_0.7483285083007065","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.4":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.4","_id":"wip-codex-remote-control@0.0.4-alpha.4","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"f0773e44957dc00185c1a51893c8ca5699853827","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.4.tgz","fileCount":65,"integrity":"sha512-muMux/9FeW8tYdUKqF8aVKIdmobZNYg+tzHLXCdB8nURCa5WAUOoBI/q60VLJV5XCQwV+D7rmOw2uNPeiHXhcA==","signatures":[{"sig":"MEQCIBxYdJ+7vgh0Y81Ciw6mrE2gpywI9eMC5wtrzA8KajZXAiBKCe4AexcOVAIwtCgCk1lS8WExB2/D5DMtE5jplBqibg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191009},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9872a0dccae424940b6117382e34096e5c7c468f","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.4_1778541235368_0.4072962056161764","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.5":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.5","_id":"wip-codex-remote-control@0.0.4-alpha.5","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"3a97df7e52fc5c7b3eeb5eee21c536e8006be5b6","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.5.tgz","fileCount":65,"integrity":"sha512-JcZXyqGrR5r5EpMdPF7g64KbmdtmnwXFROPG64M3nYbsd9qy3PMe+r3wx8nVWPx/D+PFgOskQ6lSRDIwEAUQLQ==","signatures":[{"sig":"MEYCIQCK0MSSOhGloUpPkvUMqfmV1v+MaedMXqX/SowtvE1wqQIhAKDr0j5+nMG9ZlYu7Vt7C5ZWSzHMDv4nOoRuj7/l/CSM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191009},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6cecd406ca4a2d214d1598cfe984dc0dc6f25316","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.5_1778541722587_0.003451696870987675","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.6":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.6","_id":"wip-codex-remote-control@0.0.4-alpha.6","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"21fad87643a744883475de37332f4af3a992e22b","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.6.tgz","fileCount":65,"integrity":"sha512-yiXSFhJ5u1LakgBq/lOoK5/2b5ZsezsGt2OJBUd2yJue422r6SOE8EzVsBDEqJsK3cDxznDD6mEbcm/xJu4FfQ==","signatures":[{"sig":"MEUCICQLi+546gApvpTXH15+22sujO1gm9qrQpzgnUxB2/C0AiEAs65wT6jRRfoGMMIbBYScDvWrzReAQCTmlREvNlSMZP4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189809},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"0804e535c142e11e7580353ad733369790a704df","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.6_1778595143640_0.6653227791559124","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.7":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.7","_id":"wip-codex-remote-control@0.0.4-alpha.7","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"8b164e2ded497c971d478b10afd5077be4e0839d","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.7.tgz","fileCount":65,"integrity":"sha512-1ALYRWHNCUkw3rXQQhjhkEywF+Z0n1m/cE3kvOdqNTYkfzv1ffyoOR3VzlnJC0twXq6YAZ1oh8UtNe1VMQfzdg==","signatures":[{"sig":"MEUCIQDb908tbZFicqYWXKp5mI+BEp3uGCGkWytc13YTwzGpJQIgSXbRHT5T79SqAgqtQdqATF9RV4Cpe+UvNdysoAm9Sh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189809},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a8c9e2058540d157e9bd87f62183c067b99e31c5","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.7_1778597651003_0.46436388744156165","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.8":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.8","_id":"wip-codex-remote-control@0.0.4-alpha.8","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"ee5b16c843b405420124345487e3975e7cb84b68","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.8.tgz","fileCount":65,"integrity":"sha512-2ndqrwCxUltPKxiWD4dSzT7GRRKuF22oYBigWaRP/kFfAbwRvY5S4+MrAi/h4eV8STp21rDf+okRzAVhYYwIjQ==","signatures":[{"sig":"MEUCIQC+W9Xr46EcE5XvDB/DsoAgtz9D39viBr0HdOVJuYeRnAIgRZNcJKov/wU8juTJCL+4s7nVtKK9WvMKmiunu0F6MCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190378},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6563cef43cadfaddc7968a9b6fee43db784720a7","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.8_1778602067620_0.8939969846236877","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.9":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.9","_id":"wip-codex-remote-control@0.0.4-alpha.9","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"dc91e513840f57e281162569f29ea5a7052ff986","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.9.tgz","fileCount":65,"integrity":"sha512-8EilcxOGytA/9/pR0SkYxozhhjuqT+48BVLP/uAzbMrkQl7ial0hnst82rySz5Ub08k6ItbbvoFEsjNQ9pjGCQ==","signatures":[{"sig":"MEUCIQDu9KarWoUIDU0Pm2ZCMssJAs37p9xk1XU+8Kfo3q8h7wIgbuEA9Z4ubUVCU9YING5kad3pURmXlrl+pb+vNkjJ2QE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190378},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6842420f02ecbf863415c7f845a0b2346d1ab290","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.9_1778603223187_0.17789297956900785","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.10":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.10","_id":"wip-codex-remote-control@0.0.4-alpha.10","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"b841a8a29feecce3d3ef790b2e48a55e6dc81d6a","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.10.tgz","fileCount":65,"integrity":"sha512-1A7wfUrCP5VTS4/s3JievBLzsH83bSVnykfW2lBg6o9BDA6s4X2inNkPTI49YBJIZJ+vAw/z66L7ubaGvXYbsQ==","signatures":[{"sig":"MEYCIQDje+am7xMkfCm6J0gaMUp3GcrzMNgbAbfaeVdo4l7JZQIhAKIF9xgSS/Cwp5iEj5r5+24squSObFbEnnSL06w661Tz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190408},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"2dd2da3eee79a0a90863aa3dd39ebf8cc7424c09","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.10_1778603795631_0.619731613610353","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.11":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.11","_id":"wip-codex-remote-control@0.0.4-alpha.11","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"abc1cb0549e47e3fe7526910fc6d99833f1654af","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.11.tgz","fileCount":65,"integrity":"sha512-hgyULgIAqtaVSUMpRrkBJEhBCrnGLO+gywpfTt+xKtKRk3q4CH/FBQiDRQEPKI3vQuPxuKsDLua/d2vg4+ZYXg==","signatures":[{"sig":"MEQCIGMQBsLcnkLvC+Dma/IPEa3UGREpTWuCpVJ9LCWGyBCXAiBhKOgnwVnlfoMyYoemyafL5muzn4SDbk2XPOFs9yivkA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190408},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d899505ceade9b10a451886bab9928cba739db7b","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.11_1778604581239_0.43971374663633833","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.12":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.12","_id":"wip-codex-remote-control@0.0.4-alpha.12","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"b839327ac93281e1effc7c0d033db6a46200007a","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.12.tgz","fileCount":65,"integrity":"sha512-Zzsmtg4nS4YDXk1v/jmJwvfHY7uTqJBFkwikLnaZFXTFCKUI/Lev7m46KHytIPqCxzgykkKapwhU0tq+ZIN9XA==","signatures":[{"sig":"MEUCIBk3b3X9ft2mdUmPKXHg+zUzzWFpvU25Hns6CgeqNxBLAiEA6yhW1i8A4sdntI/xLXroejVuocaeGf6KX6ZS2Daa878=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190443},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a9daf0692cdc07324baa2519e15fd81d9f8b5a6f","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.12_1778605248831_0.6488991635674937","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.13":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.13","_id":"wip-codex-remote-control@0.0.4-alpha.13","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"dist":{"shasum":"ff402e3c32f0266124b9429f7dd085a3eac79494","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.13.tgz","fileCount":65,"integrity":"sha512-IjJLq4jl+pOrey3qp+YE28ijICj4inVNEHiiMWt6F1q7gXFMV4XclkUtM5347/PtknvHVKiDMToive3A5WIFvQ==","signatures":[{"sig":"MEUCIQCKI5KS72OOC+MEBGmboYDQXMc0w5td7w7yoZFeUDxUeQIgPw4jNRGsdWgO0CYF31j6fY3MAq68WPCpRZx4PHlKvNk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190443},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"24d3be6fd7f544cf65f3be10a3cc026c85512798","scripts":{"dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","build":"tsc","clean":"rm -rf dist","start":"node dist/cli.js start","prepack":"npm run clean && npm run build","typecheck":"tsc --noEmit","test:gates":"npm run build && node test/gates.test.mjs","postinstall":"node scripts/register-codex-mcp.mjs","test:client":"tsx scripts/test-client.ts","prepublishOnly":"npm test","test:release-shape":"npm run build && node test/release-shape.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs"},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"_npmVersion":"11.12.1","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"ws":"^8.18.0","zod":"^3.23.8","@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.0","@types/ws":"^8.5.13","typescript":"^5.6.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.13_1778606292847_0.9449173234621668","host":"s3://npm-registry-packages-npm-production"}},"0.0.4-alpha.14":{"name":"wip-codex-remote-control","version":"0.0.4-alpha.14","description":"Drive the current OpenAI Codex session from your phone via Codex MCP and a natural-language skill trigger.","type":"module","bin":{"codex-daemon":"dist/cli.js","codex-daemon-mcp":"dist/mcp.js"},"main":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","clean":"rm -rf dist","prepack":"npm run clean && npm run build","postinstall":"node scripts/register-codex-mcp.mjs","prepublishOnly":"npm test","start":"node dist/cli.js start","dev":"tsx src/cli.ts start","mcp":"tsx src/mcp.ts","test:client":"tsx scripts/test-client.ts","test:gates":"npm run build && node test/gates.test.mjs","test:codex-postinstall":"node test/register-codex-mcp.test.mjs","test:pair-status-poll-token":"node test/pair-status-poll-token.test.mjs","test:readme-install-prompt":"node test/readme-install-prompt.test.mjs","test:release-shape":"npm run build && node test/release-shape.test.mjs","test":"npm run test:gates && npm run test:codex-postinstall && npm run test:pair-status-poll-token && npm run test:readme-install-prompt && npm run test:release-shape","typecheck":"tsc --noEmit"},"engines":{"node":">=20"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.4","ws":"^8.18.0","zod":"^3.23.8"},"devDependencies":{"@types/node":"^20.14.0","@types/ws":"^8.5.13","tsx":"^4.19.0","typescript":"^5.6.0"},"readmeFilename":"README.md","gitHead":"d75c8b46b55a0e0491dbc392d1e8c9fe001b4c0d","types":"./dist/index.d.ts","_id":"wip-codex-remote-control@0.0.4-alpha.14","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-Eh4f2Y2hienfqVo+cpLu4JlEJ3focC3oHbcEcSAmmYw2SVUWBO2O/xY/B3CScR42nMNmBNlUjaPJ9Wk1jDLRNA==","shasum":"c214fb02aa88d4283031b3a7b6a18788258393a0","tarball":"https://registry.npmjs.org/wip-codex-remote-control/-/wip-codex-remote-control-0.0.4-alpha.14.tgz","fileCount":65,"unpackedSize":190786,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD4uTUuK5rS41Gltv8UIO5fgi3d3EqItWbtaH8QjhcyBQIhANDjEcNDRjyHJPLVlc24DvfGnBlg6SOhkCpUrbA9XzFD"}]},"_npmUser":{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"},"directories":{},"maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/wip-codex-remote-control_0.0.4-alpha.14_1778627764281_0.10696807522551022"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-28T18:43:47.600Z","modified":"2026-05-12T23:16:04.572Z","0.0.2-alpha.2":"2026-04-28T18:43:47.876Z","0.0.2-alpha.3":"2026-04-29T21:45:44.570Z","0.0.2-alpha.4":"2026-04-29T21:54:29.030Z","0.0.2-alpha.5":"2026-04-29T22:12:54.987Z","0.0.2-alpha.6":"2026-04-30T21:21:57.607Z","0.0.2-alpha.7":"2026-05-04T22:36:42.731Z","0.0.2-alpha.8":"2026-05-05T14:58:50.895Z","0.0.2-alpha.9":"2026-05-05T17:59:07.330Z","0.0.2-alpha.10":"2026-05-05T20:36:38.762Z","0.0.2-alpha.11":"2026-05-05T21:39:05.810Z","0.0.2-alpha.12":"2026-05-05T23:59:50.052Z","0.0.2-alpha.13":"2026-05-06T17:51:12.618Z","0.0.2-alpha.14":"2026-05-06T18:51:08.484Z","0.0.2-alpha.15":"2026-05-07T01:43:57.095Z","0.0.2-alpha.16":"2026-05-07T14:42:10.723Z","0.0.2-alpha.17":"2026-05-07T15:32:57.812Z","0.0.2-alpha.18":"2026-05-07T15:48:33.326Z","0.0.2-alpha.19":"2026-05-11T17:30:27.247Z","0.0.2-alpha.20":"2026-05-11T17:34:54.714Z","0.0.2-alpha.21":"2026-05-11T17:51:16.135Z","0.0.2-alpha.22":"2026-05-11T21:09:45.506Z","0.0.3-beta.1":"2026-05-11T21:22:30.317Z","0.0.4-alpha.1":"2026-05-11T21:26:58.569Z","0.0.4-alpha.2":"2026-05-11T21:44:45.197Z","0.0.4-alpha.3":"2026-05-11T22:32:57.036Z","0.0.4-alpha.4":"2026-05-11T23:13:55.530Z","0.0.4-alpha.5":"2026-05-11T23:22:02.792Z","0.0.4-alpha.6":"2026-05-12T14:12:23.796Z","0.0.4-alpha.7":"2026-05-12T14:54:11.174Z","0.0.4-alpha.8":"2026-05-12T16:07:47.775Z","0.0.4-alpha.9":"2026-05-12T16:27:03.390Z","0.0.4-alpha.10":"2026-05-12T16:36:35.804Z","0.0.4-alpha.11":"2026-05-12T16:49:41.403Z","0.0.4-alpha.12":"2026-05-12T17:00:49.001Z","0.0.4-alpha.13":"2026-05-12T17:18:13.021Z","0.0.4-alpha.14":"2026-05-12T23:16:04.430Z"},"description":"Drive your local Codex session from your phone. Same UX shape as Claude Code remote control, but for OpenAI Codex.","maintainers":[{"name":"parkertoddbrooks","email":"parkertoddbrooks@me.com"}],"readme":"","readmeFilename":""}