{"_id":"codex-slot","_rev":"42-25a5050aceca14ead9e17f0250282a52","name":"codex-slot","dist-tags":{"latest":"0.1.48"},"versions":{"0.1.0":{"name":"codex-slot","version":"0.1.0","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.0","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/cslot#readme","bugs":{"url":"https://github.com/openxiaobu/cslot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"5fd716fba6cfc16e65e9f40efc18d6342f6c1452","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.0.tgz","fileCount":14,"integrity":"sha512-SES1dv5vpw2UZtvjcPPagm3RqYZhSKyPBJpOugHWrCHEJMIaTd/wox/xICquSkZ6kAN5eAyq87j7p8owU+QAog==","signatures":[{"sig":"MEUCIEfAAkS8mtD86hnsgI4XqVthwUz+zFccHLE7AuwAHmq0AiEA+ydOZIi4D4ISIGjrPolDouuPfO9OtPBFP3w1TSk8apw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86399},"main":"dist/cli.js","type":"commonjs","gitHead":"be1236dd578fc7018768296a29402c8427909ab4","scripts":{"dev":"tsx src/cli.ts","build":"tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/cslot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.0_1773332653335_0.9336090480701182","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"codex-slot","version":"0.1.1","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.1","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"9590695cdb63d7e7600638799d8d754b47d1ba14","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.1.tgz","fileCount":14,"integrity":"sha512-mIAZq+Okhea9ADLKoUufbJy9TLhFJnq71vzARNCdbcAUXZPe7+/LfQxaYZc53wHJm4Oq1SKf7udgF+IBUCHEnw==","signatures":[{"sig":"MEQCIGQXQSwStFepriKj730pXoESFhwkNVh62LDwm9YEPkZAAiBv1ZZ8kHTRI5Ph7GK3MczfUcFgxbFzeffrmsNUDgyt+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87560},"main":"dist/cli.js","type":"commonjs","gitHead":"be1236dd578fc7018768296a29402c8427909ab4","scripts":{"dev":"tsx src/cli.ts","build":"tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.1_1773333613038_0.22522331805271234","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"codex-slot","version":"0.1.2","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.2","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"b0cf3c013b69ce8a5b32465f6f72e6ef252c03c7","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.2.tgz","fileCount":25,"integrity":"sha512-RjlHE6TtAMQtQgHxIDvApOEmwO+W9WB5ZbO+ImeyBxLbikSs2jlQsQF9apsfqsZ1fFAt0qrD2djs/kxesJtXhw==","signatures":[{"sig":"MEUCIQD5BaVercy8weU6ojYr3rhAdmPMz131L2uICBR5rA6qTQIgdGafwUn3kghbhEuSE8gv4ziTwOEbIdnTX5FMtMNVjzE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120372},"main":"dist/cli.js","type":"commonjs","gitHead":"802c8ed85bad4468470f8f49da5d91c850aeaecf","scripts":{"dev":"tsx src/cli.ts","build":"tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.2_1773380235893_0.7468316749608348","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"codex-slot","version":"0.1.3","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.3","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"818b02597408076d039be14d4b95957e6e21c528","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.3.tgz","fileCount":23,"integrity":"sha512-ED7VjRToEOS2qsDxRmFGARj19S3Ol/xovVj61hYJ/sfrJpnm3+co9AvPlUwCVgUcQyRLUomOMift7S7rDW/tPw==","signatures":[{"sig":"MEYCIQD7Asw8f4vU2tfHN/xq8RohVhLUbJKjoiIOlIP+kQ62owIhAOMsRHusgj1y4bLAtcuP3kBocP7ORKxjZxDNxIeqM5QK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":115671},"main":"dist/cli.js","type":"commonjs","gitHead":"f9828577c47f9255ac05207783075d6efa0f74b5","scripts":{"dev":"tsx src/cli.ts","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.3_1773380304539_0.8728124545644003","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"codex-slot","version":"0.1.4","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.4","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"b04251374a7e3cfed4c441f24026b9899cd388ab","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.4.tgz","fileCount":23,"integrity":"sha512-qLoPCTxJLgkFzEegNqKMlHrphqyehG99HH6SQu+f3vrQTbYXEDOySkc5MVgY8f3aqbfGBzuegxFNgFbc5g642g==","signatures":[{"sig":"MEUCIAIJP6mOHawTrWJvwrHbkykylI8IJPMn87/ZNC2JEnemAiEAo8T9poNsx+uzcf4kkh+2qP4YOdXwyzRGnG0dq8txa9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120617},"main":"dist/cli.js","type":"commonjs","gitHead":"91e8782fe42d1a37664dbf6171508951970ee6b4","scripts":{"dev":"tsx src/cli.ts","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.4_1773382026737_0.5923014823977262","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"codex-slot","version":"0.1.5","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.5","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"db292a406604b7b451017e4e08edd4c1174aa7fa","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.5.tgz","fileCount":23,"integrity":"sha512-JY+8nHZkF71zo/KoRijGwaOqKKsKqgDsC+qnHUtOal6DXOCY99TNteiqVgyf4KWTbMKHDhpH/qKEbXO5EKLieg==","signatures":[{"sig":"MEUCIQDSFqKI7H0f5Ncg11QZcxBBtDKRRHXELtqJ3eMv4CMA/AIgXrVw/yywYHFw6lPOOJhlw9XIHHXAc9rfX3gqhcpQujo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120570},"main":"dist/cli.js","type":"commonjs","gitHead":"325350978c0c294bbbec44b771048f887d4e8a81","scripts":{"dev":"tsx src/cli.ts","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.5_1773383462731_0.5907487197402108","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"codex-slot","version":"0.1.6","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.6","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"9d1b0473dd8f3baecf3d29e358f5f8330600c0e5","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.6.tgz","fileCount":23,"integrity":"sha512-ShlNMKtAngDjMr4fsDlXLBWESjBOzsuKO01PDoJPo7kU6VPFWtrcJ4vhXuLNUKW6wUWYZqVIS2o0CL//5tl68A==","signatures":[{"sig":"MEYCIQDoISmEOkkyBkZSHsSr0iVWnRnyzVMdNlawVP46QpPL5AIhALdyjBo4wi2Ie1dIGVhdPd6eWtDPQQi4FL7vVqOPF8Wy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123732},"main":"dist/cli.js","type":"commonjs","gitHead":"77c0066009cfe9a65f3aa8b8b1b686d548eccfc1","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.6_1773384606430_0.7146178070404103","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"codex-slot","version":"0.1.7","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.7","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"a35a492871e4ff64985aaafc6bd02c20a3420400","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.7.tgz","fileCount":23,"integrity":"sha512-CsyXRZKyiym0mxYa3oLR60ckBIDN+8alPDUrLBx3e1Z6enCTj0Pygy0lz7FEo57/0V3ywnE8ght1ErtBl6Vlww==","signatures":[{"sig":"MEUCIQCcSRYL/VB7IkfovebuuvkTBiuuCT0PVITUW3HGPEBYIgIgEuWqRV7dmJxXyHvc/LQ9v2jHTzFOdzDco+GEuqvZAqU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123732},"main":"dist/cli.js","type":"commonjs","gitHead":"b4408997a7fd95bca50aa1fecc244664e3b53409","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.7_1773385970044_0.8228375289204373","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"codex-slot","version":"0.1.8","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.8","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"a84a11a170308f7550e4cc06100910d506737769","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.8.tgz","fileCount":23,"integrity":"sha512-yCZ1KjfzFxZLtDIXVd3E4M+90BVgNtoqwAYhgu8eCiwR32l7EkXpmsi79jU7b4fR3nrEEaSyOJUMJPfywis7/A==","signatures":[{"sig":"MEUCIQCdwx5KsBzz5HhZKY6WUPYTt+Z/ZveplWmu6xt5+d1XtAIgT+AIf56WVMmcGo82wmskvhKZ6AE4+7pc4aOmyKkLOkU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123704},"main":"dist/cli.js","type":"commonjs","gitHead":"cf50be6541f4bc302906457d84db94d5afec4bcc","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.8_1773387165106_0.7343805452368042","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"codex-slot","version":"0.1.16","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.16","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"f5a86ca1233d315226f2e28d86e824a393daf159","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.16.tgz","fileCount":23,"integrity":"sha512-+i6EEHvt72dKr8x529vpwNh2aQ3z/xNcw6fTlaEujCf+co1jSHIjdDeliwebZeR+3hCRWUcWeu30TTYW+oaSZg==","signatures":[{"sig":"MEUCIQD+ey+sltTNChJDwmveyRczoJE8vqXDgszZuklGbrXcLAIgIyGqVd/Eb/S3n6oThGcqDAKx3C5wEegj1ExpXDlqOqQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143972},"main":"dist/cli.js","type":"commonjs","gitHead":"08e215a3f25cd0a0f3cac8f61e8726f6045a9825","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.16_1773989259507_0.12521209058482197","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"codex-slot","version":"0.1.17","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.17","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"bb4b84a08dff608a9708eb9087aab8c91e431ac0","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.17.tgz","fileCount":24,"integrity":"sha512-qPHkGr5o2AEFTgs0+SK6Q0Ehhv4OoPN7pef0whw5dJwJpOy67AMD7j6esjAqt1U9fpYGdGb1p108J36FjY+IAA==","signatures":[{"sig":"MEQCIFr6d653D40E8sD7vz9yWHaOd7BZwzWJnKXJIVprvVo1AiB13NXGqdvhfGH1nsUo4nxRTGrMpXfzsP9B3dqGdRCM8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":154780},"main":"dist/cli.js","type":"commonjs","gitHead":"35ccec6bc410b4734ce2f53197529665661b586e","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.17_1773991631452_0.6268338520183623","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"codex-slot","version":"0.1.18","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.18","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"01b57fab2b75091052c6afb3344c1106e52e764a","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.18.tgz","fileCount":24,"integrity":"sha512-aw+qkcM/okIFsChBxn45gjpYUjDglufDkrndOWSVfOd/qxVPWLpDfzY3wdUSoP0iaPetg8QFKuXCN51Hn0krFw==","signatures":[{"sig":"MEQCIBHIWeF4jtIjbweZFbOYXSP4GysJkc8YKBFQZ1i5LD4/AiAF+mrLXGsboQwdNFbdJ9kc8YCBZ7VFiMt6+rm8SBwvJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156256},"main":"dist/cli.js","type":"commonjs","gitHead":"330ae314653ead60e36eb2b54ca6e91e5ae9f28c","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.18_1774254368682_0.7902703743806481","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"codex-slot","version":"0.1.19","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.19","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"6a78f918aa6744c0e32a10c3ffc5bb52b9b9bc0d","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.19.tgz","fileCount":24,"integrity":"sha512-YbSzPLGpQq/L5hSaAC4k1Zp+hNUHBF7C7d0mHasTQ2YHVKZ7NY5IOncz8vXRr8Tqnt47CG3zEo2uI8GPD5mN6Q==","signatures":[{"sig":"MEYCIQDKCMuH0KFI4KpaKLcBv6YjHvn8Xk7amB7fBg6KdX1WMQIhALMZEEgb725e/gaLCSL1BNteVNATYvYRZWJsvWjQsylb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":164175},"main":"dist/cli.js","type":"commonjs","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && chmod +x dist/cli.js dist/serve.js","check":"tsc --noEmit -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.19_1777089427002_0.4041687541598207","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"codex-slot","version":"0.1.20","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.20","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"1c1f19ffc8341478533569c3637988115e9fa9d6","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.20.tgz","fileCount":29,"integrity":"sha512-2Hxw1pRZopq/TqcRCXSYvxBujdDF2JgOaW0wrf3V+fMW04yA9xnE2Tta9M+2olfAXrpMcUnTq3CsvBr7dUJ1IA==","signatures":[{"sig":"MEUCIQCTZxY79SRdf+39NdtJefHKJyZoq7ouTK6DIMwK91QPPAIgYEriabnFMoe7rGbbETL8ivQyVsQ8h/SGkD6DN4Kpm70=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181514},"main":"dist/cli.js","type":"commonjs","gitHead":"6d1fb6d63e21a99ed33702441ea692ce11c18f5a","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.20_1777101588970_0.08801598877678374","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"codex-slot","version":"0.1.21","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.21","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"47ccce7c3926613c9bfeb0a0341354a1af7ad756","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.21.tgz","fileCount":29,"integrity":"sha512-/HMj8lPSuq93CAY5lo8cFyV7caP0BExe3oAgy1HOmRPw0KfHwERQ+yCrA4xTp+ET/Y+se3ptweqvF91WiUqoJQ==","signatures":[{"sig":"MEUCICF1/DNPJYWiaIV1A94vpGgKZ3rw+cUtvgN9oRUKCohmAiEA7bZ6aRFCwkOh9JQskZ+rRRGJVfxEC9c2eNW2zYWa/9s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":192180},"main":"dist/cli.js","type":"commonjs","gitHead":"0f7daabd67f6422e9cb8cbccef1e58dafc258eb8","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.21_1777523748167_0.7536056452606068","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"codex-slot","version":"0.1.22","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.22","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"48d4060e8f1d6ba6cb92dc8ec7d0ce2310949953","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.22.tgz","fileCount":29,"integrity":"sha512-Qgy1lbnTS+GUcr1MmevehJSwkVbz3g1HVKJNk7GJzNnZx9uO/32kLzufd1W/EuoPBFzNVOOmrJ1Pthr4anB6mQ==","signatures":[{"sig":"MEYCIQDZYpH0OQKMs5lb+++0oa8apGv2MDVHaBa3g7LiBnMsnAIhANHFYwIcEaFTyggn/EezTZHK4ZjsyB0du7g2OIhq/lRf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193018},"main":"dist/cli.js","type":"commonjs","gitHead":"f3e49cc8245b63cee2aef7a05b3800826c255365","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.22_1777530007946_0.6109862857409729","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"codex-slot","version":"0.1.23","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.23","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"bf0afefba3e6c4076ee9f25d5ad899e7930fa083","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.23.tgz","fileCount":30,"integrity":"sha512-f3t1SYG0YWf5RUINROBNyz8iZ8738uCWVPSY81VMvKzDZ4iPLUJByMdmeN0d4tJFpZDNTeQTL4VWCN+Jrih2RQ==","signatures":[{"sig":"MEUCIBKsnNV4QMsbtYcS36SgYlVusanqPkq8kLM9Vq+Hta2eAiEA+DYNa0XXSQfxy3Vn7+HJ8LI74Y3WFliq4jbWydUCN/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206947},"main":"dist/cli.js","type":"commonjs","gitHead":"60e83126b3a027f08d322ac6396627b8aa3806b5","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.23_1778307656221_0.7625645894261868","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"codex-slot","version":"0.1.24","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.24","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"a756001cec1e8ce4780a6ca37ab60ccc402a6f07","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.24.tgz","fileCount":30,"integrity":"sha512-wvGSzS2S3Jb3nfH2FMXN+AcB7s+walK1g4x4cE1L44KsFcbfcqiMI4E+IU8PRJWDDCnbbEmcgnq9H0P2bt1euw==","signatures":[{"sig":"MEUCIAaIm2TYN3++XnrEKeZgZxGSweAzEgp6jx552ul6052qAiEArZ5rrA47Z1RLcUfsFk5ypcSl7/rEMBpNSMFXcfr9KyU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207231},"main":"dist/cli.js","type":"commonjs","gitHead":"c096a4977b8ae11f51825f6fac0ee56f9fed821c","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.24_1778324016026_0.33417340753279645","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"codex-slot","version":"0.1.25","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.25","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"9d6c252901ecc38aee28ac4cc4d0b011884ceac1","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.25.tgz","fileCount":30,"integrity":"sha512-5BmRRx2ybmyTnQBp42Kn8ffaLYOR7dTb7LaL74ck8Jh2wNkucQMaoomqOsf5Scqkmfo0Qc09Ou1dpyPScK3x8g==","signatures":[{"sig":"MEQCIEb32KvSQpKtHdHNf9fO/QjIVSSTb6GRRD9XJB07riDGAiAIagA91kweJA4fztq4yZdmvPLfZuhW9JguF8VrmeRKZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212329},"main":"dist/cli.js","type":"commonjs","gitHead":"372afb3017957ac7cfbd9ee76dfbb60db5c3d1e6","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.25_1778805642097_0.49502449052776654","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"codex-slot","version":"0.1.26","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.26","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"54ab339a5cef6ba65f06b3b5e41a8a7abf8848e9","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.26.tgz","fileCount":30,"integrity":"sha512-nx2WYDVO5o7OJ9kHY2v7sQqnZg33DHRFfHOBXABlmdRi+XTbmiMwE7HeD012Wmv/0GVEESNYVxZGtnnNseHEcw==","signatures":[{"sig":"MEYCIQDsxj/WKLUEK/gKnFnAV9mMZNI29P45DCyrf4uDzPGNbAIhANNQTB6pKdcJoiDQ07GAy1KDyVJsfQkvegYuvJ8C14Py","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231397},"main":"dist/cli.js","type":"commonjs","gitHead":"eb76ecde9643dc477fdee144c7a0638951585c0a","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.26_1779069788307_0.8904347347521513","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"codex-slot","version":"0.1.27","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.27","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"80e2779362827dbc1cfb99738b365c3cb7a3dcf4","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.27.tgz","fileCount":30,"integrity":"sha512-Biyuo6dSxBmKMUz5PA/zYFuOb6nfT/P8u+Xy92wR8LYKTMyI89VtuzGaLK9wOmBHF8sykoob9a9wEg628eITCQ==","signatures":[{"sig":"MEUCID23pZVFZiNGdiBuA4Wl2QLT+mryzhCMbfDTxOf/u2GkAiEA3SV6K7cy8l3lCZhx6Rjj2ureaRAKi29c6DHjwoYL7bQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235221},"main":"dist/cli.js","type":"commonjs","gitHead":"4fc312debc20af856d1597a4b0521c6bfd9ac0ae","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.27_1779158227802_0.47652392071779337","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"codex-slot","version":"0.1.28","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.28","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"f04960cbc9b80f60623b2815818ea2dc26e6713d","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.28.tgz","fileCount":30,"integrity":"sha512-5Slk3JHUppPajUaEncGsRapb6nfmHZ2aYJTZovzn2WkQSxcPiemE1bmNKoLY8X3+/0og41cysM8VDf76wXktxg==","signatures":[{"sig":"MEYCIQCzCjQSjSjEqphNwUmGO6JWxWD9YUThggpIIqFNBQHYXQIhAMlQ9c0Xp6AWVp7Mq4XrSJTGCXaC3CYe8uAvCHfs9dZX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229544},"main":"dist/cli.js","type":"commonjs","gitHead":"1e643600d377d0b66a5aa24635cdeb2c481c69cc","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.28_1780707058399_0.52777931900442","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"codex-slot","version":"0.1.29","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.29","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"0a3c2a21c02cade5c6f9bb58fe7b5a2680bb20ca","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.29.tgz","fileCount":34,"integrity":"sha512-EmOvI5GHHydSeoICH8s+cyPvuAhNPs4dQI29AGcvxb8p45Q1lYinSRezRNopGdgYEkQKieoMSfEXRzrIwmpiKQ==","signatures":[{"sig":"MEUCIQD8BV+PChVpFt6UkYjoSLt1d/vytoMXirkLm3XZnruL7QIgYS8GyKRrtflMqHlu8FBLA9OrOLtN6nWXLrugGw2fGOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":265608},"main":"dist/cli.js","type":"commonjs","gitHead":"4615845e983f715d34f0a6c23702bf9a5f97ba42","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.29_1780713606352_0.937554165304642","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"codex-slot","version":"0.1.30","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.30","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"bb3d6549e0e3c4f3a4d41fb17aeab96aec4fc506","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.30.tgz","fileCount":34,"integrity":"sha512-ZScjMJF4pm+HS1fbfFav0YInTBnRLJLmBluXaCmhc+gTWqGtufkbdbJxufgxqSBGJBtxSNf9CbyMVZAEJbixWA==","signatures":[{"sig":"MEUCIQDO5pcJMI8vydmorMPGQRzQN6LzqMbKF2sVEX35bmuzEgIgcB+lZ/IlXACTlhvHS6PKqFquZY+dE5m88QLSRA9TQ0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268765},"main":"dist/cli.js","type":"commonjs","gitHead":"a091097de15281203760be743fb63745ff855750","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.30_1780726917572_0.464021635817484","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"codex-slot","version":"0.1.31","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.31","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"9fb41949bfa71511641dda5884971b02f3117958","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.31.tgz","fileCount":34,"integrity":"sha512-IYnl2SWgj2bdMxIRue5uUr0MKNGO4Fd/XQ+ddyoxMbasBGgFxJKNeRjpCXUViAjYnSPV+jMMqXO0OMG0kh8ESg==","signatures":[{"sig":"MEUCIQDc8VtHQxmdUGGz3bzB9o1ISzSnprJwadSNhd4ekuoWfwIgJ3gFbHZoFVU6jZbpeQMlJ+rft34xADwyifvy2c+iVCc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":267786},"main":"dist/cli.js","type":"commonjs","gitHead":"27bc5f70024e36b2f1e6aa2bef1e8e276d0964d8","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.31_1780727463244_0.4989447465649621","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"codex-slot","version":"0.1.32","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.32","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"6425bb88826d7d7e7335d56d8fd8c8bab393f459","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.32.tgz","fileCount":34,"integrity":"sha512-B5R6O6MHYcBNI2U5h1hCCtKOlgQ93knSSEAcmc1+Ld5gYAUP95U8E/yDBos0A1OI60uYEeHPP/a02AB+CrXdmw==","signatures":[{"sig":"MEUCIAhln1tNI3L2pXs2nAnjq/opjbXVsYIsJ25QdOwj8trIAiEA1iiOLRZwHAdnifGlRemGfRYzqr6K3GFXYJIbezsVdVw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270296},"main":"dist/cli.js","type":"commonjs","gitHead":"6c0b3fc97174be273aedbfcce72706207e427b9f","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.32_1780887599345_0.4165575378622355","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"codex-slot","version":"0.1.33","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.33","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"b44792670f426a9c94785fb42fb8fa17643f6517","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.33.tgz","fileCount":34,"integrity":"sha512-LVOwHDe7qFpfw7+hco/33hkQm8jrTnj72rxOS0ZXQ15cPCGgvhqWvSYzuViReVlGHvdyQ7L2yeP2ya8YVgVyGQ==","signatures":[{"sig":"MEYCIQDJCGRLAB5HVr3P9HF0I4wq/Vicq4DbR+H4bcyvYxTyQwIhAJi+xolUkUuLyyC8A/1/IxBz1NM4Tn2UQmmWr+zxJDaq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270797},"main":"dist/cli.js","type":"commonjs","gitHead":"86ec4bc8fa8cfd9fd141ec46c8e48584c4b988ab","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.33_1781971629372_0.6736182907432522","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"codex-slot","version":"0.1.34","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.34","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"86dab0e0313935a648a4be9feab69d0a9362400c","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.34.tgz","fileCount":34,"integrity":"sha512-oy2U3BisK57/PC0FEuaoEQaMtHRrQUX8m+geK21xvUvy73VM4PZVQ4XilT0Vj9od+s0RHhYxHbwTV21h96FG2w==","signatures":[{"sig":"MEYCIQCXJ4imBJh2WDX6BmKWyVX331Gitp2/XaHV7GrVZsABNQIhAJ7X6a6Gr6eKk+2AmE01ut/+Wwg7F/644twJE7rVcUkU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":271507},"main":"dist/cli.js","type":"commonjs","gitHead":"ecf5611acd2c7b6a71036279a9cfa6e75578730e","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.34_1781972910731_0.9928299774003477","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"codex-slot","version":"0.1.35","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.35","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"84898667983f7b6ad78405a4648d78d8c4041bdf","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.35.tgz","fileCount":35,"integrity":"sha512-bJg25mm5VBKcjDpIl5sHyutXVhm1U5jdHV8iArmrELg2TF/PQ3qRacTxahqrLpyihoEpwafjUJfFzd+HlLFg5w==","signatures":[{"sig":"MEQCIEt0N/FKFlpU6AhAj9rXG/Y8n3vdj3CBLqw1XQbreYTcAiBODAB8+92BIXW/Sj41Ej9jgP5k99dnBQrVsvMsdRb+EQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285705},"main":"dist/cli.js","type":"commonjs","gitHead":"0ee72247b0c60c175a9435476a51a9afc1098e13","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.16.0","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.35_1783225753692_0.38209279476893654","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"codex-slot","version":"0.1.36","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.36","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"171e994620331aabf3e12bb199ef33603aa631db","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.36.tgz","fileCount":35,"integrity":"sha512-Odl3Rw0f8pTU6mW1p9SKV4YF5i/8OABx5j8vE5nxW9V/avFAHSe+l0EwzcoVcERK2yA6mv328GIjqsHjkIm4TQ==","signatures":[{"sig":"MEQCIFjq6iQZfgNn8s7dfWyap7GLDSXTtXHhBrP67Y0WhGVKAiBq2DmYQLgvPpyPn5yhfa+hKsn0KzfxsB8MbjycJgJ0eg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291264},"main":"dist/cli.js","type":"commonjs","gitHead":"09400c229bef6597ad895197167976f6bc2d7fd2","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.16.0","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.36_1783239076505_0.6203029991210698","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"codex-slot","version":"0.1.37","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.37","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"f477588965cb0f5d99dc52b647813e4ee7a43195","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.37.tgz","fileCount":36,"integrity":"sha512-snEaKscuZDFXZoGFIbnR9ElkPKhOVBJcJz1eCTdmGO4i0P88qlhKmXWdxbelqj04we60ka/0JYauLWWoWKepYg==","signatures":[{"sig":"MEYCIQCUMfzyShr0ev5ZVtJ3N1i9qlt+AjelulDnDvNimFT7OQIhAPfb2IgEizcRb7tBgbL6b08x4ZAzg3agMbulSvvo3q0M","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295108},"main":"dist/cli.js","type":"commonjs","gitHead":"2cd701a0eecaa530334a50df428f4926831c89e7","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.9.0","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.37_1783241425107_0.18263284302416305","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"codex-slot","version":"0.1.38","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.38","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"14249221aa127333eb15083c66035efce8820b54","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.38.tgz","fileCount":36,"integrity":"sha512-FlzKHpNX10E6WM+LYVz53UHOFpEhm840984JoqdvWF2yzSg4gW+q18909JEH5EkbvpzeXb/nw2T1k2ajj+Y+ww==","signatures":[{"sig":"MEUCIDr5ifa/W2wKaePjv0A0Y/NgYFGDodGXjp/WEx3ar1haAiEAr6tBRdpUaCN4DdJ2JprIlyz37FVFwMEMEcaW+pX/CXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301215},"main":"dist/cli.js","type":"commonjs","gitHead":"123af71f567ccd11546697f92f71c7e0100b2f4c","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.38_1783328112684_0.44879059936242904","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"codex-slot","version":"0.1.39","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.39","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"a297b7641b86509f74fc68bc9bc42c7c1e842063","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.39.tgz","fileCount":36,"integrity":"sha512-9D982oaiHxPiwgDwirdyHVSD5TTE03T5K0dnrHyBoxvqcw8MO7IOF53d17fgtvY8DSWqMzx7JKcCuheDSi3vtw==","signatures":[{"sig":"MEUCIGFuLF4BVuaRNd/l8ZXsbjGqvfcL12X1Qp9S4M1DMAMjAiEA1hYI+C82o0HphlcM4yn8WtyUOnB+X8wg66pyv0FEiHc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":297409},"main":"dist/cli.js","type":"commonjs","gitHead":"2cd701a0eecaa530334a50df428f4926831c89e7","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"10.9.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.39_1783504066029_0.22398981561869458","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"codex-slot","version":"0.1.40","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.40","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"59d5423d8537308b663d930322c36cc90e1ddd8c","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.40.tgz","fileCount":36,"integrity":"sha512-N9ZYKvNTH1v0rhgejgXXDKMtj5VI0fzDlsfIMlsDNNOQZdzHdsDanMREKs/pBSoUNA2f3QdtVGPAWN0ejiCXjg==","signatures":[{"sig":"MEYCIQCtoUBxXHbwGqqz3nYGXBpT2lMxyyA0TtveHyJ4BJwarAIhAM/ON35gEJfm1wz0pY8qtRYLVkejxz5E9FdQRSsA7tts","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":305167},"main":"dist/cli.js","type":"commonjs","gitHead":"73e089158289b6dd0bd1e34b214dea4462900457","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"10.9.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.40_1783505847263_0.7088041065868094","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"codex-slot","version":"0.1.41","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.41","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"3f6719614c832dcf3fdf73dd54c70abda3a391e8","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.41.tgz","fileCount":36,"integrity":"sha512-yHe455RVAiR/p8uKSlZkodWpm3CuuoIm3t5lv6vs4UeByCudMkIxQJgsTswePwNfszOlxlbxX3y9oCmuOcRlbw==","signatures":[{"sig":"MEUCIAn2GlRlKc8mbVOHSba3jPiqX4XbMx7ErZ/hQzLjEkRpAiEA9k8+1MlNV88QnPd4TiF8tA5z7kcoi8i6kU7IHpWAqEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309054},"main":"dist/cli.js","type":"commonjs","gitHead":"a571d61ae4fb37929e1de6c4328d15ba927c13d5","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.16.0","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.41_1783613194699_0.1635923989310748","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"codex-slot","version":"0.1.42","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.42","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"ec669c3fe7804705c489310a18c57bcccff526c6","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.42.tgz","fileCount":36,"integrity":"sha512-/DYCovNSqzfV65OYD068aSIKJhulskCJkFM9wgRnPuGTABeLdfixz4r+bWjaY1i4KC3C4cSrv2SqTfx6TopCqw==","signatures":[{"sig":"MEQCIH2F+KfqurBySNsonuF/NVsnkGpVXLplpT5KBuwz3Rt0AiBZSw2Gf49baKZ1pRJeW48bQJanfA6QlLe95Qum14PgZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309572},"main":"dist/cli.js","type":"commonjs","gitHead":"cee5ef8cb9988747ae6ace2f618853312241c4f0","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.42_1783931123121_0.45077579280809066","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"codex-slot","version":"0.1.43","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.43","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"84204f98414f643be08918fc6455bcba90ff9002","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.43.tgz","fileCount":36,"integrity":"sha512-23EVJgSXgucLleKqalLrP1OYxdZ/K/M8uXRrI3iolbkkGcMsGhOkOKN3yf8+ooIormarRTaoMigJv8pMLC3S6g==","signatures":[{"sig":"MEUCIFX3iA+iqE1eOTar1UK1I/fOL2AR4KxhWxKi9Xxt+ajJAiEAjDsP9Yl5bSQvDQ75Vk/smfIR8jobse4XH5Sk772DIBo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":314684},"main":"dist/cli.js","type":"commonjs","gitHead":"36537bd4d822452c790f88d74b06f923eb96f231","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.43_1784281912379_0.17731316200346514","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"codex-slot","version":"0.1.44","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.44","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"03fee513e5d0caf841849a9d581fda9fab684750","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.44.tgz","fileCount":36,"integrity":"sha512-aBnapYLf7mIP+VfeMO3dq7APGfNCVQdy6m+5CWp2hw661o6BhsVTMVJD3Pv4d7ipmSbkNkR9pRaTJEANRrnhog==","signatures":[{"sig":"MEQCIGBKG6idkEXoubpTh0y28nIqF8O+pSgqfil/i/gQ0XdvAiBCA/7N8TkxwHjHjxc3H47F2oiDc55gXbJIc8p6wE/MbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":315641},"main":"dist/cli.js","type":"commonjs","gitHead":"bce152043c6ff67fe55947e2d9f3156e901fdb97","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.44_1784340092088_0.3901075583604905","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"codex-slot","version":"0.1.45","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.45","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"2768a41b47c0a0622ba2240ead4578814fcf76d8","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.45.tgz","fileCount":39,"integrity":"sha512-90Hs0LcT3cWFFuFTwdYeUtvwDbzUiYiLsIx92MI3RLTkkk0YZm3zN8MBRte2wiNFWsLCK06vulYW9OpL+Fv+Hg==","signatures":[{"sig":"MEUCIQD3A6eND66mPNiWH/tZWqIwOtoPwriZxqqBqKtjZsJJXwIgQgY5I/7PHmrFAQ3RIAZbBvX7F/XEt9uoBsMapJuGGjg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":362890},"main":"dist/cli.js","type":"commonjs","gitHead":"bfbea726a76d68bbb916f714b48ab8003748d7d5","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ws":"^8.18.3","zod":"^4.3.6","yaml":"^2.8.2","undici":"^7.22.0","fastify":"^5.8.2","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.45_1784989355841_0.6162526404208961","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"codex-slot","version":"0.1.46","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.46","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"be5e322a3a9e15f1cd19f032e7cd3c8e2c25cbbb","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.46.tgz","fileCount":41,"integrity":"sha512-L2SjtMF06xNBE+pZ0LYelB2ZTvexhMvv47xCyzhIHU+sJX2gNQ8CaHTp2sQ3iDJG4+GFsprWFbKENXR2Jcw2qg==","signatures":[{"sig":"MEQCIFbHGG6+wFZZEH6cD7JcBKbIv7ehveM69U3+dKmrLpdBAiAmFAXr6f5VJWYgf8s2Wne2qwqqhKhWHCoEpr2a8lPfrA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393057},"main":"dist/cli.js","type":"commonjs","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ws":"^8.18.3","zod":"^4.3.6","yaml":"^2.9.0","undici":"^7.29.0","fastify":"^5.10.0","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.1","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.46_1785031476140_0.7672555711498428","host":"s3://npm-registry-packages-npm-production"}},"0.1.47":{"name":"codex-slot","version":"0.1.47","keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","_id":"codex-slot@0.1.47","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"bin":{"cslot":"dist/cli.js","codex-slot":"dist/cli.js"},"dist":{"shasum":"7da467b17efa55b3fda441229c472a132426e6a1","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.47.tgz","fileCount":41,"integrity":"sha512-v9+68zAGHI5xp1L8vWr/KTfiIH/EUV6/dZOgBMVet9Trg8kpcGut5V8TbPnFNn+OEV+5OHzhHleEpV2Kkfq1vA==","signatures":[{"sig":"MEUCIESVXVW8wLbZmoi2KnLvDJlLEqRClREYlBKhGN3OZvETAiEA/iKovR1psMbz9tYc/sNjnF1pvMwYqqETqCY7o1a8oXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":394573},"main":"dist/cli.js","type":"commonjs","scripts":{"dev":"tsx src/cli.ts","test":"npm run build && node --test test/*.test.js","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","check":"tsc --noEmit -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"repository":{"url":"git+https://github.com/openxiaobu/codex-slot.git","type":"git"},"_npmVersion":"11.6.2","description":"本地 Codex 多账号切换与状态管理工具","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ws":"^8.18.3","zod":"^4.3.6","yaml":"^2.9.0","undici":"^7.29.0","fastify":"^5.10.0","commander":"^14.0.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.1","@types/ws":"^8.18.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/codex-slot_0.1.47_1785120847798_0.2755782663678352","host":"s3://npm-registry-packages-npm-production"}},"0.1.48":{"name":"codex-slot","version":"0.1.48","description":"本地 Codex 多账号切换与状态管理工具","type":"commonjs","main":"dist/cli.js","bin":{"codex-slot":"dist/cli.js","cslot":"dist/cli.js"},"scripts":{"clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","build":"npm run clean && tsc -p tsconfig.json && node -e \"const fs=require('node:fs'); for (const file of ['dist/cli.js','dist/serve.js']) { try { fs.chmodSync(file, 0o755); } catch {} }\"","prepublishOnly":"npm run build","dev":"tsx src/cli.ts","check":"tsc --noEmit -p tsconfig.json","test":"npm run build && node --test test/*.test.js"},"keywords":["codex","chatgpt","switcher","cli"],"author":{"name":"bk"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/openxiaobu/codex-slot.git"},"homepage":"https://github.com/openxiaobu/codex-slot#readme","bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"dependencies":{"commander":"^14.0.3","fastify":"^5.10.0","undici":"^7.29.0","ws":"^8.18.3","yaml":"^2.9.0","zod":"^4.3.6"},"devDependencies":{"@types/node":"^25.4.0","@types/ws":"^8.18.1","tsx":"^4.23.1","typescript":"^5.9.3"},"_id":"codex-slot@0.1.48","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-i9cQrxZdQh6PDZJk8QkwDszDDnoyd9wFXHnQbhLDSSZZ+KA6YnJzOzScCod2PamUGDR+fmXUMLzldhIZ8pd+KA==","shasum":"0f767f32c17d0e94bd6a24bf2fb24004f21f4b29","tarball":"https://registry.npmjs.org/codex-slot/-/codex-slot-0.1.48.tgz","fileCount":41,"unpackedSize":396046,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDUVoUw8eM908+DDY3rHv7c1Q1MyI7AqHwZff2CVnc/jAIgMtyq9SzhCtJcyBfdFYc33BFJGVRTeyVErmcXnm0PacA="}]},"_npmUser":{"name":"openxiaobu","email":"66482504@qq.com"},"directories":{},"maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/codex-slot_0.1.48_1785125665291_0.7663824929661436"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-12T16:24:13.334Z","modified":"2026-07-27T04:14:25.582Z","0.1.0":"2026-03-12T16:24:13.517Z","0.1.1":"2026-03-12T16:40:13.193Z","0.1.2":"2026-03-13T05:37:16.066Z","0.1.3":"2026-03-13T05:38:24.690Z","0.1.4":"2026-03-13T06:07:06.893Z","0.1.5":"2026-03-13T06:31:02.867Z","0.1.6":"2026-03-13T06:50:06.612Z","0.1.7":"2026-03-13T07:12:50.203Z","0.1.8":"2026-03-13T07:32:45.259Z","0.1.16":"2026-03-20T06:47:39.668Z","0.1.17":"2026-03-20T07:27:11.586Z","0.1.18":"2026-03-23T08:26:08.867Z","0.1.19":"2026-04-25T03:57:07.141Z","0.1.20":"2026-04-25T07:19:49.117Z","0.1.21":"2026-04-30T04:35:48.329Z","0.1.22":"2026-04-30T06:20:08.090Z","0.1.23":"2026-05-09T06:20:56.376Z","0.1.24":"2026-05-09T10:53:36.177Z","0.1.25":"2026-05-15T00:40:42.250Z","0.1.26":"2026-05-18T02:03:08.463Z","0.1.27":"2026-05-19T02:37:07.971Z","0.1.28":"2026-06-06T00:50:58.552Z","0.1.29":"2026-06-06T02:40:06.528Z","0.1.30":"2026-06-06T06:21:57.744Z","0.1.31":"2026-06-06T06:31:03.390Z","0.1.32":"2026-06-08T02:59:59.487Z","0.1.33":"2026-06-20T16:07:09.511Z","0.1.34":"2026-06-20T16:28:30.893Z","0.1.35":"2026-07-05T04:29:13.825Z","0.1.36":"2026-07-05T08:11:16.642Z","0.1.37":"2026-07-05T08:50:25.314Z","0.1.38":"2026-07-06T08:55:12.818Z","0.1.39":"2026-07-08T09:47:46.185Z","0.1.40":"2026-07-08T10:17:27.407Z","0.1.41":"2026-07-09T16:06:34.864Z","0.1.42":"2026-07-13T08:25:23.245Z","0.1.43":"2026-07-17T09:51:52.534Z","0.1.44":"2026-07-18T02:01:32.289Z","0.1.45":"2026-07-25T14:22:36.054Z","0.1.46":"2026-07-26T02:04:36.328Z","0.1.47":"2026-07-27T02:54:07.967Z","0.1.48":"2026-07-27T04:14:25.438Z"},"bugs":{"url":"https://github.com/openxiaobu/codex-slot/issues"},"author":{"name":"bk"},"license":"MIT","homepage":"https://github.com/openxiaobu/codex-slot#readme","keywords":["codex","chatgpt","switcher","cli"],"repository":{"type":"git","url":"git+https://github.com/openxiaobu/codex-slot.git"},"description":"本地 Codex 多账号切换与状态管理工具","maintainers":[{"name":"openxiaobu","email":"66482504@qq.com"}],"readme":"# codex-slot\n\n`codex-slot` is a local multi-account / multi-workspace switcher for Codex.\n\n[中文文档](./docs/zh-CN.md)\n\n## Overview\n\n- Reuse the official `~/.codex` login state\n- Manage multiple accounts or workspaces as separate slots\n- Refresh and cache the latest usage from the official usage endpoint\n- Expose a local provider endpoint for Codex\n- Support Codex App Voice through WebRTC call creation and sideband WebSocket proxying\n- Optionally pin model requests to an OpenAI-compatible relay slot\n- Proxy ChatGPT backend plugin requests through the selected cslot account\n- Apply local block rules for temporary, 5-hour, and weekly limits\n- Automatically switch `~/.codex/config.toml` to the `cslot` provider while the local proxy is running (and restore it on stop)\n\n## Installation\n\n```bash\nnpm i -g codex-slot\n```\n\nVerify:\n\n```bash\ncodex-slot --help\n```\n\nThis repository is the source repository.\nGitHub installation from the repository URL is not supported.\n\n## Quick Start\n\n1. Import your current Codex login state:\n\n```bash\ncodex-slot import current ~\n```\n\n`import` copies the official login state into `~/.cslot/homes/<name>` instead of referencing the source HOME directly.\n`current` is only an example slot name, not a built-in account or workspace.\n\n2. Check the latest usage:\n\n```bash\ncodex-slot status\n```\n\nBy default, `status` will:\n\n- Refresh usage for all managed accounts\n- Render a compact table with:\n  - Remaining 5-hour / weekly quotas\n  - Reset times\n  - A status column with local block reasons and countdowns (for example: `5h_limited(2h27m)`)\n- Enter an interactive mode where you can toggle `enabled` for accounts:\n  - Up/Down: move selection\n  - Space: toggle `[x]` enabled / `[ ]` disabled and save immediately\n  - Enter / `q`: exit the interactive mode\n\nIf you only want a non-interactive snapshot of the current state:\n\n```bash\ncodex-slot status --no-interactive\n```\n\n3. Start the local proxy:\n\n```bash\ncodex-slot start\ncodex-slot start --port 4399\ncodex-slot start --proxy-only\n```\n\n`start` will automatically write the required provider config into `~/.codex/config.toml`.\nUse `--proxy-only` for non-Codex clients: it starts the local proxy without modifying the main `~/.codex/config.toml` or login state. A later `cslot stop` also preserves those files for this run mode.\nIt prefers port `4399` by default and will switch to the next available port automatically when `4399` is busy, then sync that actual port into config.\nThe local provider does not use a separate cslot API key; cslot authenticates upstream requests with the selected Codex ChatGPT account token internally.\n\n```bash\ncodex-slot start\n```\n\n## Commands\n\n```bash\ncodex-slot add <name>\ncodex-slot del <name>\ncodex-slot rename <oldName> <newName>\ncodex-slot import <name> [HOME]\ncodex-slot status\ncodex-slot start [--port <port>] [--proxy-only]\ncodex-slot stop [--proxy-only]\ncodex-slot relay add <name> --base-url <url> --api-key <key>\ncodex-slot relay list\ncodex-slot use relay <name>\ncodex-slot use auth\ncodex-slot current\n```\n\nCommon patterns:\n\n- `cslot import work ~/workspace-home`\n- `cslot rename work work-main`\n- `cslot relay add third --base-url https://relay.example.com/v1 --api-key sk-...`\n- `cslot status`\n- `cslot use relay third`\n- `cslot use auth`\n- `cslot start`\n- `cslot start --proxy-only`\n- `cslot stop --proxy-only`\n\n## Architecture\n\nThe project is intentionally split by responsibility:\n\n- `src/cli.ts`: CLI bootstrap and command registration only\n- `src/account-commands.ts`: account import, login, remove command handlers\n- `src/account-commands.ts`: also owns slot rename command handling\n- `src/service-control.ts`: background service lifecycle management\n- `src/status-command.ts`: usage refresh output and interactive toggle UI\n- `src/codex-config.ts`: managed `~/.codex/config.toml` apply/restore logic\n- `src/backend-proxy-service.ts`: ChatGPT backend proxy for Codex plugin/runtime requests\n- `src/voice-proxy-service.ts`, `src/voice-websocket-proxy.ts`, `src/voice-call-binding-store.ts`: Codex Voice HTTP/WebSocket protocol conversion and call-level account affinity\n- `src/relay-proxy-service.ts`, `src/model-proxy-dispatcher.ts`, `src/relay-store.ts`: optional OpenAI-compatible relay slots and `/v1/*` model route dispatch\n- `src/account-store.ts`, `src/usage-sync.ts`, `src/scheduler.ts`, `src/status.ts`: core domain and runtime logic\n- `src/text.ts`: shared bilingual text and locale-independent formatting helpers\n\nThis keeps the CLI entry thin while preserving stable behavior in the lower-level modules.\n\n## How `status` Works\n\n`codex-slot status` does not render stale data from the official `registry.json` cache.\n\nInstead it:\n\n1. Reads `access_token`, `refresh_token`, and `account_id` from the official Codex login state\n2. Requests `https://chatgpt.com/backend-api/wham/usage`\n3. Stores the latest result in `~/.cslot/state.json`\n4. Renders the latest local cache\n\n## Managed Codex Config\n\n`codex-slot start` writes or updates a managed provider block like this, based on the current `~/.cslot/config.yaml`:\n\n```toml\n[model_providers.cslot]\nname = \"cslot\"\nbase_url = \"http://127.0.0.1:4399/v1\"\nwire_api = \"responses\"\nrequires_openai_auth = true\n```\n\nBehavior:\n\n- A managed marker block is inserted for `model_provider = \"cslot\"` and `[model_providers.cslot]`\n- On `cslot stop`, the original `model_provider` line and original `[model_providers.cslot]` block are restored from the saved snapshot; legacy local bearer-token fields in the cslot provider are removed\n- Other providers and settings in `config.toml` are left untouched\n- If you start with `--port`, the port is saved to `~/.cslot/config.yaml`\n- If you start with `--proxy-only`, cslot does not modify the main `~/.codex/config.toml` or login state; `stop` also skips Codex cleanup for that run\n- `cslot stop --proxy-only` forces a service-only stop and preserves the main Codex config and login state regardless of the recorded start mode\n- If you start without `--port`, `4399` is preferred first and the next free port is chosen automatically on conflict, and the actual chosen port is written back to `~/.cslot/config.yaml` and the managed provider block\n- `requires_openai_auth = true` keeps Codex App treating the local cslot provider as a ChatGPT-authenticated provider, so plugin navigation and trusted plugin runtimes are not disabled as API-key/custom-provider mode\n- `/backend-api/*` requests are forwarded to ChatGPT backend with the current selected account's upstream token; client `Authorization` headers are not forwarded upstream\n\n## Codex App Voice\n\n`codex-slot start` supports Voice started from an empty Codex App task.\n\nVoice uses two linked transports:\n\n- `POST /v1/live` creates the WebRTC call. cslot converts the public multipart request into the ChatGPT backend JSON request and preserves the upstream `Location` call id.\n- `WS /v1/live/<call_id>` proxies the Frameless sideband connection used for realtime control events.\n- Legacy `POST /v1/realtime/calls` and `WS /v1/realtime?call_id=...` shapes remain supported.\n\nThe HTTP call and sideband WebSocket are pinned to the same official account. Voice bypasses a selected relay slot because an OpenAI-compatible relay does not imply support for ChatGPT account Voice. If normal Codex scheduling has no candidate because of text quota state, Voice can still try enabled ChatGPT login accounts because Realtime availability is independent from the Codex text quota.\n\nAfter upgrading from a version without Voice support, restart the local service with `cslot stop` followed by `cslot start`.\n\n## OpenAI-compatible Relay Slots\n\nRelay slots are optional model-only exits. They do not replace the official Codex / ChatGPT login state.\nUse `codex-slot relay add` to register a relay slot, then use `codex-slot status` for daily enable/disable and model-route selection.\n\n```bash\ncodex-slot relay add third --base-url https://relay.example.com/v1 --api-key sk-...\ncodex-slot use relay third\ncodex-slot current\n```\n\nBehavior:\n\n- `/v1/*` model requests are fixed to the selected relay slot, except Voice call and sideband routes\n- Relay requests use the relay slot API key; client `Authorization` headers are not forwarded upstream\n- Relay failures are returned directly and do not fall back to official cslot accounts\n- `/backend-api/*` plugin/runtime requests still use the selected official Codex / ChatGPT login state\n- Usage refresh only applies to official accounts, not relay slots\n- In interactive `status`, press `Space` to enable/disable the selected account or relay slot, and press `m` to select the model route\n- Run `codex-slot use auth` to restore `/v1/*` model requests to the official account scheduler\n\n## Codex App Plugins\n\n`codex-slot start` also switches the main `~/.codex` login state to the selected managed account while cslot is running.\nThis keeps Codex app plugins that depend on the main ChatGPT login state working without a separate manual setup step.\n\n## Data Directory\n\n`codex-slot` uses:\n\n- `~/.cslot/config.yaml`\n- `~/.cslot/state.json`\n- `~/.cslot/cslot.pid`\n- `~/.cslot/logs/service.log`\n\n## Limit Handling\n\n- Weekly limit: blocked until the weekly reset time\n- 5-hour limit: blocked until the 5-hour reset time\n- Temporary limit: blocked for 5 minutes\n\n## Repository\n\n- GitHub: https://github.com/openxiaobu/codex-slot\n- Issues: https://github.com/openxiaobu/codex-slot/issues\n\n## Development\n\n```bash\nnpm install\nnpm run build\nnpm run check\n```\n","readmeFilename":"README.md"}