codexctl 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,57 +1,50 @@
1
- # PolyCLI
1
+ # CodexCTL
2
2
 
3
- Universal AI CLI Profile Manager - Manage multiple AI CLI accounts (Codex, Claude, Gemini, OpenAI)
3
+ Codex CLI Profile Manager - Manage multiple OpenAI Codex CLI accounts
4
4
 
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- npm install -g polycli
8
+ npm install -g codexctl
9
9
  ```
10
10
 
11
11
  Or use npx (no install):
12
12
  ```bash
13
- npx polycli --help
13
+ npx codexctl --help
14
14
  ```
15
15
 
16
16
  ## Usage
17
17
 
18
18
  ```bash
19
- # Save your current AI CLI profile
20
- poly codex save work
21
- poly claude save personal
19
+ # Save your current Codex CLI profile
20
+ cdx save work
21
+ cdx save personal
22
22
 
23
23
  # Switch between profiles
24
- poly codex load work
25
- poly claude load personal
24
+ cdx load work
25
+ cdx load personal
26
26
 
27
27
  # List all profiles
28
- poly list
28
+ cdx list
29
29
 
30
30
  # Quick-switch to previous profile
31
- poly load -
31
+ cdx load -
32
32
 
33
33
  # Auto-switch to best profile based on quota
34
- poly load auto
34
+ cdx load auto
35
35
  ```
36
36
 
37
- ## Supported AI CLIs
38
-
39
- - **Codex CLI** (`poly codex`)
40
- - **Claude Code** (`poly claude`)
41
- - **Gemini CLI** (`poly gemini`)
42
- - **OpenAI CLI** (`poly openai`)
43
-
44
37
  ## Features
45
38
 
46
39
  - 🔐 **Optional Encryption** - age-based encryption for sensitive auth data
47
40
  - 🚀 **Fast Switching** - Switch accounts in < 1 second
48
41
  - 🤖 **Auto-Switcher** - Automatically pick the best profile based on quota
49
- - 📊 **Real-Time Quota** - Live usage data from AI provider APIs
42
+ - 📊 **Real-Time Quota** - Live usage data from OpenAI API
50
43
  - 🌳 **Concurrent Usage** - Use multiple profiles simultaneously
51
44
 
52
45
  ## Documentation
53
46
 
54
- Full documentation: https://polycli.repohelper.com
47
+ Full documentation: https://codexctl.repohelper.com
55
48
 
56
49
  ## License
57
50
 
@@ -2,7 +2,7 @@
2
2
  const { spawn } = require('child_process');
3
3
  const path = require('path');
4
4
 
5
- const binaryPath = path.join(__dirname, '..', 'bin', 'poly');
5
+ const binaryPath = path.join(__dirname, '..', 'bin', 'cdx');
6
6
  const child = spawn(binaryPath, process.argv.slice(2), {
7
7
  stdio: 'inherit',
8
8
  windowsHide: true
@@ -2,7 +2,7 @@
2
2
  const { spawn } = require('child_process');
3
3
  const path = require('path');
4
4
 
5
- const binaryPath = path.join(__dirname, '..', 'bin', 'polycli');
5
+ const binaryPath = path.join(__dirname, '..', 'bin', 'codexctl');
6
6
  const child = spawn(binaryPath, process.argv.slice(2), {
7
7
  stdio: 'inherit',
8
8
  windowsHide: true
package/install.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * PolyCLI Installation Script
3
+ * CodexCTL Installation Script
4
4
  * Downloads the appropriate binary for the current platform
5
5
  */
6
6
 
@@ -11,7 +11,7 @@ const os = require('os');
11
11
  const { execSync } = require('child_process');
12
12
 
13
13
  const VERSION = require('./package.json').version;
14
- const BINARY_NAME = 'polycli';
14
+ const BINARY_NAME = 'codexctl';
15
15
 
16
16
  // Platform mappings
17
17
  const platforms = {
@@ -38,7 +38,7 @@ function getPlatform() {
38
38
 
39
39
  function getDownloadUrl(target) {
40
40
  const ext = target.includes('windows') ? 'zip' : 'tar.gz';
41
- return `https://github.com/repohelper/polycli/releases/download/v${VERSION}/polycli-${target}.${ext}`;
41
+ return `https://github.com/repohelper/codexctl/releases/download/v${VERSION}/codexctl-${target}.${ext}`;
42
42
  }
43
43
 
44
44
  function downloadFile(url, dest) {
@@ -78,7 +78,7 @@ async function install() {
78
78
 
79
79
  // Skip if binaries already exist (development or manual install)
80
80
  if (fs.existsSync(path.join(binDir, BINARY_NAME))) {
81
- console.log('PolyCLI binaries already exist, skipping download');
81
+ console.log('CodexCTL binaries already exist, skipping download');
82
82
  return;
83
83
  }
84
84
 
@@ -90,9 +90,9 @@ async function install() {
90
90
  const target = getPlatform();
91
91
  const url = getDownloadUrl(target);
92
92
  const ext = target.includes('windows') ? 'zip' : 'tar.gz';
93
- const archivePath = path.join(binDir, `polycli-${target}.${ext}`);
93
+ const archivePath = path.join(binDir, `codexctl-${target}.${ext}`);
94
94
 
95
- console.log(`Downloading PolyCLI v${VERSION} for ${target}...`);
95
+ console.log(`Downloading CodexCTL v${VERSION} for ${target}...`);
96
96
  console.log(`URL: ${url}`);
97
97
 
98
98
  try {
@@ -105,14 +105,14 @@ async function install() {
105
105
  // Make binaries executable on Unix
106
106
  if (os.platform() !== 'win32') {
107
107
  execSync(`chmod +x "${path.join(binDir, BINARY_NAME)}"`);
108
- execSync(`chmod +x "${path.join(binDir, 'poly')}"`);
108
+ execSync(`chmod +x "${path.join(binDir, 'cdx')}"`);
109
109
  }
110
110
 
111
- console.log('PolyCLI installed successfully!');
112
- console.log('Run: poly --help');
111
+ console.log('CodexCTL installed successfully!');
112
+ console.log('Run: cdx --help');
113
113
  } catch (error) {
114
114
  console.error('Installation failed:', error.message);
115
- console.error('You can manually download from: https://github.com/repohelper/polycli/releases');
115
+ console.error('You can manually download from: https://github.com/repohelper/codexctl/releases');
116
116
  process.exit(1);
117
117
  }
118
118
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "codexctl",
3
- "version": "0.1.1",
4
- "description": "Universal AI CLI Profile Manager - Manage multiple AI CLI accounts (Codex, Claude, Gemini)",
3
+ "version": "0.1.3",
4
+ "description": "Codex CLI Profile Manager - Manage multiple OpenAI Codex CLI accounts",
5
5
  "main": "index.js",
6
6
  "bin": {
7
7
  "codexctl": "./bin/codexctl",
@@ -13,7 +13,7 @@
13
13
  },
14
14
  "repository": {
15
15
  "type": "git",
16
- "url": "git+https://github.com/repohelper/aix.git"
16
+ "url": "git+https://github.com/repohelper/codexctl.git"
17
17
  },
18
18
  "keywords": [
19
19
  "ai",
@@ -29,9 +29,9 @@
29
29
  "author": "Bhanu Korthiwada",
30
30
  "license": "MIT",
31
31
  "bugs": {
32
- "url": "https://github.com/repohelper/polycli/issues"
32
+ "url": "https://github.com/repohelper/codexctl/issues"
33
33
  },
34
- "homepage": "https://polycli.repohelper.com",
34
+ "homepage": "https://codexctl.repohelper.com",
35
35
  "engines": {
36
36
  "node": ">=16"
37
37
  },