{"_id":"@annabest/ticket-ai","_rev":"2-804a6815b567925fa9ecacb2a4ef68bd","name":"@annabest/ticket-ai","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@annabest/ticket-ai","version":"0.1.0","keywords":["codex","openai","sub2api","config","cli"],"license":"MIT","_id":"@annabest/ticket-ai@0.1.0","maintainers":[{"name":"annabest","email":"anaduf2bi132@outlook.com"}],"bin":{"codex-config":"bin/codex-config.js"},"dist":{"shasum":"f54dba7dd492e5518fbc29fb9010d70d29058838","tarball":"https://registry.npmjs.org/@annabest/ticket-ai/-/ticket-ai-0.1.0.tgz","fileCount":3,"integrity":"sha512-cALkjSBibanj0iTi/jlH1zx6HLngiSSs4woPqgfQLqeO6X8VCwIPjmGuFQV9fyJYqa4iUR6yJOKoj4ySh7752g==","signatures":[{"sig":"MEQCIDLOxPu7IOlJuiUAE+11aqvdKunydd82MBvNGXaL3QAWAiBwU4Gac2MHxogxFcY4tQ2m8W+SHJndbFQUFgOqcNeoaA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5547},"engines":{"node":">=18"},"_npmUser":{"name":"annabest","email":"anaduf2bi132@outlook.com"},"_npmVersion":"10.9.4","description":"Bootstrap Codex config for a Sub2API OpenAI-compatible endpoint.","directories":{},"_nodeVersion":"22.22.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ticket-ai_0.1.0_1773342958012_0.02790987290278535","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@annabest/ticket-ai","version":"0.1.1","description":"Bootstrap Codex config for a Sub2API OpenAI-compatible endpoint.","license":"MIT","bin":{"codex-config":"bin/codex-config.js"},"publishConfig":{"access":"public"},"keywords":["codex","openai","sub2api","config","cli"],"engines":{"node":">=18"},"_id":"@annabest/ticket-ai@0.1.1","_nodeVersion":"22.22.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-x1IN3NXXcc+IDuWUqU+MEmcJT7XBmkCuCqXDKoBW4tRf7k4BOl/FO+NetEwRygvE9s6lEZShw89QcC5JonIdZQ==","shasum":"6c12904fe4cf00007c27c2043706d30e00214101","tarball":"https://registry.npmjs.org/@annabest/ticket-ai/-/ticket-ai-0.1.1.tgz","fileCount":3,"unpackedSize":5899,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDW36+hy5E2bLTqhMRul2gu26mfNBtryTFCX4DVWFPGmwIhAOXwZfftw4SoezGTHMPyAFNpeNDMawrik7b4DGsf1kxX"}]},"_npmUser":{"name":"annabest","email":"anaduf2bi132@outlook.com"},"directories":{},"maintainers":[{"name":"annabest","email":"anaduf2bi132@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ticket-ai_0.1.1_1773343769235_0.668494797036395"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-12T19:15:57.917Z","modified":"2026-03-12T19:29:29.531Z","0.1.0":"2026-03-12T19:15:58.142Z","0.1.1":"2026-03-12T19:29:29.374Z"},"license":"MIT","keywords":["codex","openai","sub2api","config","cli"],"description":"Bootstrap Codex config for a Sub2API OpenAI-compatible endpoint.","maintainers":[{"name":"annabest","email":"anaduf2bi132@outlook.com"}],"readme":"# @annabest/ticket-ai\n\nCLI for bootstrapping Codex on a Linux server against a Ticket AI OpenAI-compatible endpoint.\n\n## What it does\n\nRunning `codex-config` creates:\n\n- `~/.codex/config.toml`\n- `~/.codex/auth.json`\n\nThe generated `config.toml` uses:\n\n- provider: `OpenAI`\n- model: `gpt-5.4`\n- base URL: `http://151.242.85.111:8080`\n- wire API: `responses`\n\nThe command prompts the user for an API key, then writes:\n\n```json\n{\n  \"OPENAI_API_KEY\": \"sk-xxxx\"\n}\n```\n\n## Remote server usage\n\nAfter this package is published to npm, users only need:\n\n```bash\nsudo npm install -g @annabest/ticket-ai\ncodex-config\n```\n\nThen they paste their key once.\n\n## Local test before publish\n\n```bash\nnpm pack\nnpm install -g ./annabest-ticket-ai-0.1.1.tgz\ncodex-config\n```\n\n## Non-interactive usage\n\n```bash\ncodex-config --api-key sk-xxxx\n```\n\nOr:\n\n```bash\nOPENAI_API_KEY=sk-xxxx codex-config\n```\n\n## Publish\n\n```bash\nnpm login\nnpm publish --access=public\n```\n\nIf the scoped package name is unavailable, change the scope or package name in `package.json` and publish again.\n","readmeFilename":"README.md"}