ceetrix 1.0.18 → 1.1.0
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/dist/codex.d.ts +42 -0
- package/dist/codex.d.ts.map +1 -0
- package/dist/codex.js +152 -0
- package/dist/codex.js.map +1 -0
- package/dist/config.d.ts +19 -3
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +35 -6
- package/dist/config.js.map +1 -1
- package/dist/constants.d.ts +16 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +23 -0
- package/dist/constants.js.map +1 -1
- package/dist/debug.d.ts.map +1 -1
- package/dist/debug.js +62 -4
- package/dist/debug.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +86 -39
- package/dist/index.js.map +1 -1
- package/dist/permissions.d.ts.map +1 -1
- package/dist/permissions.js +7 -5
- package/dist/permissions.js.map +1 -1
- package/dist/prompts.d.ts +16 -0
- package/dist/prompts.d.ts.map +1 -1
- package/dist/prompts.js +42 -1
- package/dist/prompts.js.map +1 -1
- package/package.json +9 -2
package/dist/codex.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAI Codex CLI integration (Story 397)
|
|
3
|
+
*
|
|
4
|
+
* Codex uses TOML config at ~/.codex/config.toml.
|
|
5
|
+
* API keys are referenced via environment variables (env_http_headers),
|
|
6
|
+
* never stored in plaintext.
|
|
7
|
+
*
|
|
8
|
+
* Direct file write because `codex mcp add` does not support custom headers.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Check if the Codex CLI is available.
|
|
12
|
+
*
|
|
13
|
+
* @returns true if codex command is available and responds to --version
|
|
14
|
+
*/
|
|
15
|
+
export declare function isCodexAvailable(): Promise<boolean>;
|
|
16
|
+
/**
|
|
17
|
+
* Add Ceetrix MCP server configuration to Codex.
|
|
18
|
+
*
|
|
19
|
+
* Reads existing config.toml, merges ceetrix entry, writes back.
|
|
20
|
+
* Uses env_http_headers so the API key is read from an environment
|
|
21
|
+
* variable at runtime, never stored in plaintext.
|
|
22
|
+
*
|
|
23
|
+
* @param _apiKey - Not written to TOML. The env var name is written instead.
|
|
24
|
+
* @param url - The MCP server URL
|
|
25
|
+
*/
|
|
26
|
+
export declare function addConfig(_apiKey: string, url: string): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Check if Ceetrix is already configured in Codex.
|
|
29
|
+
*
|
|
30
|
+
* @returns true if ceetrix MCP server entry exists in config.toml
|
|
31
|
+
*/
|
|
32
|
+
export declare function checkExistingConfig(): Promise<boolean>;
|
|
33
|
+
/**
|
|
34
|
+
* Remove Ceetrix configuration from Codex.
|
|
35
|
+
* Preserves all other config entries.
|
|
36
|
+
*/
|
|
37
|
+
export declare function removeConfig(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Reset cached codex path (for testing).
|
|
40
|
+
*/
|
|
41
|
+
export declare function resetCache(): void;
|
|
42
|
+
//# sourceMappingURL=codex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAyFH;;;;GAIG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAKzD;AAID;;;;;;;;;GASG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B3E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ5D;AAED;;;GAGG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAYlD;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAEjC"}
|
package/dist/codex.js
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenAI Codex CLI integration (Story 397)
|
|
3
|
+
*
|
|
4
|
+
* Codex uses TOML config at ~/.codex/config.toml.
|
|
5
|
+
* API keys are referenced via environment variables (env_http_headers),
|
|
6
|
+
* never stored in plaintext.
|
|
7
|
+
*
|
|
8
|
+
* Direct file write because `codex mcp add` does not support custom headers.
|
|
9
|
+
*/
|
|
10
|
+
import { readFile, writeFile, mkdir } from 'fs/promises';
|
|
11
|
+
import { join } from 'path';
|
|
12
|
+
import { homedir } from 'os';
|
|
13
|
+
import { exec } from 'child_process';
|
|
14
|
+
import { promisify } from 'util';
|
|
15
|
+
import which from 'which';
|
|
16
|
+
import { parse, stringify } from 'smol-toml';
|
|
17
|
+
import { CODEX_CONFIG_DIR, CODEX_CONFIG_FILE, CODEX_MCP_SERVER_NAME, CODEX_API_KEY_ENV_VAR, CODEX_VERSION_MARKER, CODEX_VERSION_CHECK_TIMEOUT_MS, COMMON_CODEX_PATHS, } from './constants.js';
|
|
18
|
+
const execAsync = promisify(exec);
|
|
19
|
+
/** Full path to Codex config directory */
|
|
20
|
+
function getConfigDir() {
|
|
21
|
+
return join(homedir(), CODEX_CONFIG_DIR);
|
|
22
|
+
}
|
|
23
|
+
/** Full path to Codex config file */
|
|
24
|
+
function getConfigPath() {
|
|
25
|
+
return join(getConfigDir(), CODEX_CONFIG_FILE);
|
|
26
|
+
}
|
|
27
|
+
// --- Detection ---
|
|
28
|
+
/** Cached path to codex executable */
|
|
29
|
+
let cachedCodexPath = null;
|
|
30
|
+
/**
|
|
31
|
+
* Verify a path is actually OpenAI Codex CLI.
|
|
32
|
+
*
|
|
33
|
+
* @param path - Path to executable
|
|
34
|
+
* @returns true if responds with version output containing the Codex marker
|
|
35
|
+
*/
|
|
36
|
+
async function isCodexCli(path) {
|
|
37
|
+
try {
|
|
38
|
+
const { stdout } = await execAsync(`"${path}" --version`, {
|
|
39
|
+
timeout: CODEX_VERSION_CHECK_TIMEOUT_MS,
|
|
40
|
+
});
|
|
41
|
+
return stdout.toLowerCase().includes(CODEX_VERSION_MARKER);
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Find codex executable by checking candidates in order.
|
|
49
|
+
* Verifies each candidate is actually Codex CLI.
|
|
50
|
+
*
|
|
51
|
+
* @returns Full path to codex executable, or null if not found
|
|
52
|
+
*/
|
|
53
|
+
async function findCodexPath() {
|
|
54
|
+
const candidates = [];
|
|
55
|
+
try {
|
|
56
|
+
candidates.push(await which('codex'));
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// Not in PATH
|
|
60
|
+
}
|
|
61
|
+
candidates.push(...COMMON_CODEX_PATHS);
|
|
62
|
+
for (const path of candidates) {
|
|
63
|
+
if (await isCodexCli(path)) {
|
|
64
|
+
return path;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Check if the Codex CLI is available.
|
|
71
|
+
*
|
|
72
|
+
* @returns true if codex command is available and responds to --version
|
|
73
|
+
*/
|
|
74
|
+
export async function isCodexAvailable() {
|
|
75
|
+
if (cachedCodexPath === null) {
|
|
76
|
+
cachedCodexPath = (await findCodexPath()) ?? '';
|
|
77
|
+
}
|
|
78
|
+
return cachedCodexPath !== '';
|
|
79
|
+
}
|
|
80
|
+
// --- Config management ---
|
|
81
|
+
/**
|
|
82
|
+
* Add Ceetrix MCP server configuration to Codex.
|
|
83
|
+
*
|
|
84
|
+
* Reads existing config.toml, merges ceetrix entry, writes back.
|
|
85
|
+
* Uses env_http_headers so the API key is read from an environment
|
|
86
|
+
* variable at runtime, never stored in plaintext.
|
|
87
|
+
*
|
|
88
|
+
* @param _apiKey - Not written to TOML. The env var name is written instead.
|
|
89
|
+
* @param url - The MCP server URL
|
|
90
|
+
*/
|
|
91
|
+
export async function addConfig(_apiKey, url) {
|
|
92
|
+
const configDir = getConfigDir();
|
|
93
|
+
const configPath = getConfigPath();
|
|
94
|
+
await mkdir(configDir, { recursive: true });
|
|
95
|
+
let config = {};
|
|
96
|
+
try {
|
|
97
|
+
const existingContent = await readFile(configPath, 'utf-8');
|
|
98
|
+
if (existingContent.trim()) {
|
|
99
|
+
config = parse(existingContent);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
// File doesn't exist or is invalid, start fresh
|
|
104
|
+
}
|
|
105
|
+
if (!config.mcp_servers) {
|
|
106
|
+
config.mcp_servers = {};
|
|
107
|
+
}
|
|
108
|
+
config.mcp_servers[CODEX_MCP_SERVER_NAME] = {
|
|
109
|
+
url,
|
|
110
|
+
env_http_headers: { 'X-API-Key': CODEX_API_KEY_ENV_VAR },
|
|
111
|
+
};
|
|
112
|
+
await writeFile(configPath, stringify(config), 'utf-8');
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Check if Ceetrix is already configured in Codex.
|
|
116
|
+
*
|
|
117
|
+
* @returns true if ceetrix MCP server entry exists in config.toml
|
|
118
|
+
*/
|
|
119
|
+
export async function checkExistingConfig() {
|
|
120
|
+
try {
|
|
121
|
+
const content = await readFile(getConfigPath(), 'utf-8');
|
|
122
|
+
const config = parse(content);
|
|
123
|
+
return !!(config.mcp_servers && config.mcp_servers[CODEX_MCP_SERVER_NAME]);
|
|
124
|
+
}
|
|
125
|
+
catch {
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Remove Ceetrix configuration from Codex.
|
|
131
|
+
* Preserves all other config entries.
|
|
132
|
+
*/
|
|
133
|
+
export async function removeConfig() {
|
|
134
|
+
try {
|
|
135
|
+
const content = await readFile(getConfigPath(), 'utf-8');
|
|
136
|
+
const config = parse(content);
|
|
137
|
+
if (config.mcp_servers && config.mcp_servers[CODEX_MCP_SERVER_NAME]) {
|
|
138
|
+
delete config.mcp_servers[CODEX_MCP_SERVER_NAME];
|
|
139
|
+
await writeFile(getConfigPath(), stringify(config), 'utf-8');
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
catch {
|
|
143
|
+
// File doesn't exist or other error, nothing to remove
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Reset cached codex path (for testing).
|
|
148
|
+
*/
|
|
149
|
+
export function resetCache() {
|
|
150
|
+
cachedCodexPath = null;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=codex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,14 +1,30 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Configuration management for existing Ceetrix setup
|
|
3
|
+
*
|
|
4
|
+
* Checks and manages Ceetrix config across supported agents.
|
|
5
|
+
*/
|
|
6
|
+
import type { AgentType } from './prompts.js';
|
|
7
|
+
/** Per-agent detection and configuration status */
|
|
8
|
+
export interface AgentStatus {
|
|
9
|
+
detected: boolean;
|
|
10
|
+
configured: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get detection and configuration status for all supported agents.
|
|
14
|
+
*
|
|
15
|
+
* Runs all checks in parallel for speed.
|
|
16
|
+
*
|
|
17
|
+
* @returns Per-agent status map
|
|
3
18
|
*/
|
|
19
|
+
export declare function getAgentStatuses(): Promise<Record<AgentType, AgentStatus>>;
|
|
4
20
|
/**
|
|
5
|
-
* Check if Ceetrix is already configured in
|
|
21
|
+
* Check if Ceetrix is already configured in any supported agent.
|
|
6
22
|
*
|
|
7
|
-
* @returns true if ceetrix
|
|
23
|
+
* @returns true if ceetrix is configured in Claude Code or Codex CLI
|
|
8
24
|
*/
|
|
9
25
|
export declare function checkExistingConfig(): Promise<boolean>;
|
|
10
26
|
/**
|
|
11
|
-
* Remove existing Ceetrix configuration from
|
|
27
|
+
* Remove existing Ceetrix configuration from all supported agents.
|
|
12
28
|
*
|
|
13
29
|
* @throws Error if removal fails
|
|
14
30
|
*/
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAWhF;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAM5D;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK1D"}
|
package/dist/config.js
CHANGED
|
@@ -1,21 +1,50 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Configuration management for existing Ceetrix setup
|
|
3
|
+
*
|
|
4
|
+
* Checks and manages Ceetrix config across supported agents.
|
|
5
|
+
*/
|
|
6
|
+
import { checkClaudeCli, checkExistingConfig as checkClaudeConfig, removeConfig as removeClaudeConfig } from './claude.js';
|
|
7
|
+
import { isCodexAvailable, checkExistingConfig as checkCodexConfig, removeConfig as removeCodexConfig } from './codex.js';
|
|
8
|
+
/**
|
|
9
|
+
* Get detection and configuration status for all supported agents.
|
|
10
|
+
*
|
|
11
|
+
* Runs all checks in parallel for speed.
|
|
12
|
+
*
|
|
13
|
+
* @returns Per-agent status map
|
|
3
14
|
*/
|
|
4
|
-
|
|
15
|
+
export async function getAgentStatuses() {
|
|
16
|
+
const [claudeDetected, codexDetected, claudeConfigured, codexConfigured] = await Promise.all([
|
|
17
|
+
checkClaudeCli(),
|
|
18
|
+
isCodexAvailable(),
|
|
19
|
+
checkClaudeConfig(),
|
|
20
|
+
checkCodexConfig(),
|
|
21
|
+
]);
|
|
22
|
+
return {
|
|
23
|
+
claude: { detected: claudeDetected, configured: claudeConfigured },
|
|
24
|
+
codex: { detected: codexDetected, configured: codexConfigured },
|
|
25
|
+
};
|
|
26
|
+
}
|
|
5
27
|
/**
|
|
6
|
-
* Check if Ceetrix is already configured in
|
|
28
|
+
* Check if Ceetrix is already configured in any supported agent.
|
|
7
29
|
*
|
|
8
|
-
* @returns true if ceetrix
|
|
30
|
+
* @returns true if ceetrix is configured in Claude Code or Codex CLI
|
|
9
31
|
*/
|
|
10
32
|
export async function checkExistingConfig() {
|
|
11
|
-
|
|
33
|
+
const [claude, codex] = await Promise.all([
|
|
34
|
+
checkClaudeConfig(),
|
|
35
|
+
checkCodexConfig(),
|
|
36
|
+
]);
|
|
37
|
+
return claude || codex;
|
|
12
38
|
}
|
|
13
39
|
/**
|
|
14
|
-
* Remove existing Ceetrix configuration from
|
|
40
|
+
* Remove existing Ceetrix configuration from all supported agents.
|
|
15
41
|
*
|
|
16
42
|
* @throws Error if removal fails
|
|
17
43
|
*/
|
|
18
44
|
export async function removeExistingConfig() {
|
|
19
|
-
await
|
|
45
|
+
await Promise.all([
|
|
46
|
+
removeClaudeConfig(),
|
|
47
|
+
removeCodexConfig(),
|
|
48
|
+
]);
|
|
20
49
|
}
|
|
21
50
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,mBAAmB,IAAI,iBAAiB,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC3H,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,IAAI,gBAAgB,EAAE,YAAY,IAAI,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAS1H;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,CAAC,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3F,cAAc,EAAE;QAChB,gBAAgB,EAAE;QAClB,iBAAiB,EAAE;QACnB,gBAAgB,EAAE;KACnB,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE;QAClE,KAAK,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE;KAChE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACxC,iBAAiB,EAAE;QACnB,gBAAgB,EAAE;KACnB,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,KAAK,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,kBAAkB,EAAE;QACpB,iBAAiB,EAAE;KACpB,CAAC,CAAC;AACL,CAAC"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -36,6 +36,22 @@ export declare const DEVICE_COMPLETE_PATH = "/setup/device-complete";
|
|
|
36
36
|
export declare function getClientIdUrl(): string;
|
|
37
37
|
/** Device completion endpoint URL */
|
|
38
38
|
export declare function getDeviceCompleteUrl(): string;
|
|
39
|
+
/** Codex CLI config directory (relative to home) */
|
|
40
|
+
export declare const CODEX_CONFIG_DIR = ".codex";
|
|
41
|
+
/** Codex CLI config filename */
|
|
42
|
+
export declare const CODEX_CONFIG_FILE = "config.toml";
|
|
43
|
+
/** MCP server name in Codex TOML config */
|
|
44
|
+
export declare const CODEX_MCP_SERVER_NAME = "ceetrix";
|
|
45
|
+
/** Environment variable name for API key in Codex env_http_headers */
|
|
46
|
+
export declare const CODEX_API_KEY_ENV_VAR = "CEETRIX_API_KEY";
|
|
47
|
+
/** Expected string in Codex CLI version output (lowercase match) */
|
|
48
|
+
export declare const CODEX_VERSION_MARKER = "codex";
|
|
49
|
+
/** Timeout for Codex CLI commands in milliseconds */
|
|
50
|
+
export declare const CODEX_COMMAND_TIMEOUT_MS = 10000;
|
|
51
|
+
/** Short timeout for Codex version check */
|
|
52
|
+
export declare const CODEX_VERSION_CHECK_TIMEOUT_MS = 3000;
|
|
53
|
+
/** Common installation paths for Codex CLI (fallback when not in PATH) */
|
|
54
|
+
export declare const COMMON_CODEX_PATHS: string[];
|
|
39
55
|
/**
|
|
40
56
|
* Check if we're using a custom (non-production) API URL.
|
|
41
57
|
*
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8EAA8E;AAC9E,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,yBAAyB;AACzB,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,yDAAyD;AACzD,eAAO,MAAM,eAAe,QAAgB,CAAC;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,YAAY,QAAQ,CAAC;AAElC,4DAA4D;AAC5D,eAAO,MAAM,UAAU,UAAsC,CAAC;AAE9D,6DAA6D;AAC7D,wBAAgB,eAAe,IAAI,MAAM,CAexC;AAID,sDAAsD;AACtD,eAAO,MAAM,sBAAsB,yCAAyC,CAAC;AAE7E,2CAA2C;AAC3C,eAAO,MAAM,uBAAuB,gDAAgD,CAAC;AAErF,uEAAuE;AACvE,eAAO,MAAM,sBAAsB,iDAAiD,CAAC;AAErF,gEAAgE;AAChE,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,sFAAsF;AACtF,eAAO,MAAM,sCAAsC,IAAI,CAAC;AAExD,yGAAyG;AACzG,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,8BAA8B;AAC9B,eAAO,MAAM,cAAc,qBAAqB,CAAC;AAEjD,sCAAsC;AACtC,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAE7D,6BAA6B;AAC7B,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,qCAAqC;AACrC,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8EAA8E;AAC9E,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,yBAAyB;AACzB,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,yDAAyD;AACzD,eAAO,MAAM,eAAe,QAAgB,CAAC;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,YAAY,QAAQ,CAAC;AAElC,4DAA4D;AAC5D,eAAO,MAAM,UAAU,UAAsC,CAAC;AAE9D,6DAA6D;AAC7D,wBAAgB,eAAe,IAAI,MAAM,CAexC;AAID,sDAAsD;AACtD,eAAO,MAAM,sBAAsB,yCAAyC,CAAC;AAE7E,2CAA2C;AAC3C,eAAO,MAAM,uBAAuB,gDAAgD,CAAC;AAErF,uEAAuE;AACvE,eAAO,MAAM,sBAAsB,iDAAiD,CAAC;AAErF,gEAAgE;AAChE,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,sFAAsF;AACtF,eAAO,MAAM,sCAAsC,IAAI,CAAC;AAExD,yGAAyG;AACzG,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,8BAA8B;AAC9B,eAAO,MAAM,cAAc,qBAAqB,CAAC;AAEjD,sCAAsC;AACtC,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAE7D,6BAA6B;AAC7B,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,qCAAqC;AACrC,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAMD,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,WAAW,CAAC;AAEzC,gCAAgC;AAChC,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAE/C,2CAA2C;AAC3C,eAAO,MAAM,qBAAqB,YAAY,CAAC;AAE/C,sEAAsE;AACtE,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAE5C,qDAAqD;AACrD,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C,4CAA4C;AAC5C,eAAO,MAAM,8BAA8B,OAAO,CAAC;AAEnD,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,UAK9B,CAAC;AAOF;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAOxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAajD"}
|
package/dist/constants.js
CHANGED
|
@@ -59,6 +59,29 @@ export function getDeviceCompleteUrl() {
|
|
|
59
59
|
return `${getApiBaseUrl()}${DEVICE_COMPLETE_PATH}`;
|
|
60
60
|
}
|
|
61
61
|
// --- End Device Flow constants ---
|
|
62
|
+
// --- Codex CLI constants (Story 397) ---
|
|
63
|
+
/** Codex CLI config directory (relative to home) */
|
|
64
|
+
export const CODEX_CONFIG_DIR = '.codex';
|
|
65
|
+
/** Codex CLI config filename */
|
|
66
|
+
export const CODEX_CONFIG_FILE = 'config.toml';
|
|
67
|
+
/** MCP server name in Codex TOML config */
|
|
68
|
+
export const CODEX_MCP_SERVER_NAME = 'ceetrix';
|
|
69
|
+
/** Environment variable name for API key in Codex env_http_headers */
|
|
70
|
+
export const CODEX_API_KEY_ENV_VAR = 'CEETRIX_API_KEY';
|
|
71
|
+
/** Expected string in Codex CLI version output (lowercase match) */
|
|
72
|
+
export const CODEX_VERSION_MARKER = 'codex';
|
|
73
|
+
/** Timeout for Codex CLI commands in milliseconds */
|
|
74
|
+
export const CODEX_COMMAND_TIMEOUT_MS = 10000;
|
|
75
|
+
/** Short timeout for Codex version check */
|
|
76
|
+
export const CODEX_VERSION_CHECK_TIMEOUT_MS = 3000;
|
|
77
|
+
/** Common installation paths for Codex CLI (fallback when not in PATH) */
|
|
78
|
+
export const COMMON_CODEX_PATHS = [
|
|
79
|
+
'/opt/homebrew/bin/codex',
|
|
80
|
+
'/usr/local/bin/codex',
|
|
81
|
+
'/usr/bin/codex',
|
|
82
|
+
`${process.env.HOME}/.local/bin/codex`,
|
|
83
|
+
];
|
|
84
|
+
// --- End Codex CLI constants ---
|
|
62
85
|
/** Production API base URL (for comparison) */
|
|
63
86
|
const PRODUCTION_API_URL = 'https://api.ceetrix.com';
|
|
64
87
|
/**
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/debug.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwCH;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA0KpD"}
|
package/dist/debug.js
CHANGED
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { exec } from 'child_process';
|
|
8
8
|
import { promisify } from 'util';
|
|
9
|
+
import { readFile } from 'fs/promises';
|
|
10
|
+
import { join } from 'path';
|
|
11
|
+
import { homedir } from 'os';
|
|
9
12
|
import which from 'which';
|
|
13
|
+
import { CODEX_CONFIG_DIR, CODEX_CONFIG_FILE, CODEX_API_KEY_ENV_VAR, CODEX_VERSION_MARKER, CODEX_VERSION_CHECK_TIMEOUT_MS, COMMON_CODEX_PATHS, } from './constants.js';
|
|
10
14
|
const execAsync = promisify(exec);
|
|
11
15
|
/** Common installation paths for Claude CLI */
|
|
12
16
|
const COMMON_CLAUDE_PATHS = [
|
|
@@ -109,9 +113,63 @@ export async function printDebugInfo() {
|
|
|
109
113
|
console.log(` ${status}`);
|
|
110
114
|
}
|
|
111
115
|
console.log('');
|
|
112
|
-
//
|
|
113
|
-
console.log('
|
|
114
|
-
console.log('
|
|
116
|
+
// Codex CLI detection
|
|
117
|
+
console.log('Codex CLI Detection');
|
|
118
|
+
console.log('───────────────────');
|
|
119
|
+
async function checkCodexVersion(path) {
|
|
120
|
+
try {
|
|
121
|
+
const { stdout } = await execAsync(`"${path}" --version`, {
|
|
122
|
+
timeout: CODEX_VERSION_CHECK_TIMEOUT_MS,
|
|
123
|
+
});
|
|
124
|
+
if (stdout.toLowerCase().includes(CODEX_VERSION_MARKER)) {
|
|
125
|
+
return `✓ Codex CLI (${stdout.trim()})`;
|
|
126
|
+
}
|
|
127
|
+
return `✗ NOT Codex CLI (responds: ${stdout.trim().slice(0, 40)})`;
|
|
128
|
+
}
|
|
129
|
+
catch (e) {
|
|
130
|
+
const err = e;
|
|
131
|
+
if (err.killed)
|
|
132
|
+
return '✗ TIMEOUT';
|
|
133
|
+
return '✗ NOT FOUND or ERROR';
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
let codexWhichPath = null;
|
|
137
|
+
try {
|
|
138
|
+
codexWhichPath = await which('codex');
|
|
139
|
+
const status = await checkCodexVersion(codexWhichPath);
|
|
140
|
+
console.log(` which('codex'): ${codexWhichPath}`);
|
|
141
|
+
console.log(` ${status}`);
|
|
142
|
+
}
|
|
143
|
+
catch {
|
|
144
|
+
console.log(` which('codex'): NOT IN PATH`);
|
|
145
|
+
}
|
|
146
|
+
for (const path of COMMON_CODEX_PATHS) {
|
|
147
|
+
if (path === codexWhichPath)
|
|
148
|
+
continue;
|
|
149
|
+
const status = await checkCodexVersion(path);
|
|
150
|
+
console.log(` ${path}:`);
|
|
151
|
+
console.log(` ${status}`);
|
|
152
|
+
}
|
|
153
|
+
// Codex config file
|
|
154
|
+
const codexConfigPath = join(homedir(), CODEX_CONFIG_DIR, CODEX_CONFIG_FILE);
|
|
155
|
+
console.log(` Config file: ${codexConfigPath}`);
|
|
156
|
+
try {
|
|
157
|
+
const content = await readFile(codexConfigPath, 'utf-8');
|
|
158
|
+
if (content.includes('ceetrix')) {
|
|
159
|
+
console.log(' Ceetrix entry: CONFIGURED');
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
console.log(' Ceetrix entry: NOT CONFIGURED');
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
catch {
|
|
166
|
+
console.log(' Ceetrix entry: FILE NOT FOUND');
|
|
167
|
+
}
|
|
168
|
+
console.log(` ${CODEX_API_KEY_ENV_VAR}: ${process.env[CODEX_API_KEY_ENV_VAR] ? 'SET' : 'NOT SET'}`);
|
|
169
|
+
console.log('');
|
|
170
|
+
// Existing MCP config (Claude)
|
|
171
|
+
console.log('Ceetrix MCP Config (Claude)');
|
|
172
|
+
console.log('───────────────────────────');
|
|
115
173
|
try {
|
|
116
174
|
const { stdout } = await execAsync('claude mcp list', { timeout: DIAG_TIMEOUT_MS });
|
|
117
175
|
if (stdout.includes('ceetrix:')) {
|
|
@@ -138,7 +196,7 @@ export async function printDebugInfo() {
|
|
|
138
196
|
console.log(` USER: ${process.env.USER || 'not set'}`);
|
|
139
197
|
console.log('');
|
|
140
198
|
console.log('─────────────────────────────────────────────────────');
|
|
141
|
-
console.log('Ceetrix supports macOS and Linux
|
|
199
|
+
console.log('Ceetrix supports macOS and Linux with Claude Code and Codex CLI.');
|
|
142
200
|
console.log('');
|
|
143
201
|
console.log('If you have issues, copy the above and post to the');
|
|
144
202
|
console.log('Ceetrix Discord: https://ceetrix.com/discord');
|
package/dist/debug.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AA4CH;;GAEG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA4H1C"}
|
package/dist/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Ceetrix CLI - Set up Ceetrix backlog management for
|
|
2
|
+
* Ceetrix CLI - Set up Ceetrix backlog management for coding agents
|
|
3
3
|
*/
|
|
4
4
|
import { detectGitRemote } from './git.js';
|
|
5
|
-
import {
|
|
5
|
+
import { getAgentStatuses, removeExistingConfig } from './config.js';
|
|
6
6
|
import { startCallbackServer } from './server.js';
|
|
7
7
|
import { openBrowser, canLaunchBrowser } from './browser.js';
|
|
8
|
-
import { promptForRepo, promptExistingConfig } from './prompts.js';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
8
|
+
import { promptForRepo, promptExistingConfig, promptAgentWizard } from './prompts.js';
|
|
9
|
+
import { addConfig as addClaudeConfig, writeConfigToFile } from './claude.js';
|
|
10
|
+
import { addConfig as addCodexConfig } from './codex.js';
|
|
11
|
+
import { getSetupUrl, AUTH_TIMEOUT_MS, getMcpServerUrl, isCustomApiUrl, getAutoConfigPath, CODEX_API_KEY_ENV_VAR } from './constants.js';
|
|
11
12
|
import { printDebugInfo } from './debug.js';
|
|
12
13
|
import { enforceLatestVersion } from './version-check.js';
|
|
13
14
|
import { requestPermissionOrExit } from './permissions.js';
|
|
14
|
-
import { runInviteFlow } from './invite.js';
|
|
15
15
|
import { runDeviceFlow } from './device-flow.js';
|
|
16
16
|
/** Parse command line arguments */
|
|
17
17
|
function parseArgs() {
|
|
@@ -56,12 +56,10 @@ export async function main() {
|
|
|
56
56
|
console.log('─────────────\n');
|
|
57
57
|
// Version check - refuse to run outdated cached versions
|
|
58
58
|
await enforceLatestVersion();
|
|
59
|
-
// Invite code check - gate access before setup
|
|
60
|
-
await runInviteFlow();
|
|
61
59
|
// Platform check - macOS and Linux only
|
|
62
60
|
if (!SUPPORTED_PLATFORMS.includes(process.platform)) {
|
|
63
61
|
console.error(`✗ Unsupported platform: ${process.platform}\n`);
|
|
64
|
-
console.error('Ceetrix currently supports macOS and Linux
|
|
62
|
+
console.error('Ceetrix currently supports macOS and Linux only.');
|
|
65
63
|
console.error('Windows support coming soon.');
|
|
66
64
|
console.error('');
|
|
67
65
|
console.error('Join the Discord for updates: https://ceetrix.com/discord\n');
|
|
@@ -71,26 +69,40 @@ export async function main() {
|
|
|
71
69
|
if (!cliContext.configPath) {
|
|
72
70
|
await requestPermissionOrExit();
|
|
73
71
|
}
|
|
74
|
-
//
|
|
72
|
+
// Detect available agents and their config status (skip if using custom config)
|
|
73
|
+
let selectedAgents = ['claude'];
|
|
75
74
|
if (!cliContext.configPath) {
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
console.error('
|
|
75
|
+
const statuses = await getAgentStatuses();
|
|
76
|
+
const detected = Object.entries(statuses)
|
|
77
|
+
.filter(([, s]) => s.detected);
|
|
78
|
+
if (detected.length === 0) {
|
|
79
|
+
console.error('✗ No supported coding agent found\n');
|
|
80
|
+
console.error('Ceetrix works with:');
|
|
81
|
+
console.error(' - Claude Code (v2.0+): https://docs.anthropic.com/en/docs/claude-code');
|
|
82
|
+
console.error(' - OpenAI Codex CLI: https://github.com/openai/codex');
|
|
81
83
|
console.error('');
|
|
82
84
|
console.error('Run: npx ceetrix --debug');
|
|
83
85
|
console.error('for diagnostic info to share at: https://ceetrix.com/discord\n');
|
|
84
86
|
process.exit(1);
|
|
85
87
|
}
|
|
86
|
-
//
|
|
87
|
-
const
|
|
88
|
-
if (
|
|
88
|
+
// If all detected agents are already configured, show existing config menu
|
|
89
|
+
const allConfigured = detected.every(([, s]) => s.configured);
|
|
90
|
+
if (allConfigured) {
|
|
89
91
|
const action = await handleExistingConfig();
|
|
90
92
|
if (action === 'cancel' || action === 'done') {
|
|
91
93
|
return;
|
|
92
94
|
}
|
|
93
|
-
// For 'continue',
|
|
95
|
+
// For 'continue' (re-auth), configure all detected agents
|
|
96
|
+
selectedAgents = detected.map(([agent]) => agent);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// Show wizard for incremental agent selection
|
|
100
|
+
selectedAgents = await promptAgentWizard(statuses);
|
|
101
|
+
if (selectedAgents.length === 0) {
|
|
102
|
+
console.log('No agents selected.\n');
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
console.log('');
|
|
94
106
|
}
|
|
95
107
|
}
|
|
96
108
|
else {
|
|
@@ -131,10 +143,10 @@ export async function main() {
|
|
|
131
143
|
if (!cliContext.noBrowser) {
|
|
132
144
|
console.log('No display server detected. Using device code authentication.\n');
|
|
133
145
|
}
|
|
134
|
-
await runDeviceSetupFlow(repo, cliContext.configPath);
|
|
146
|
+
await runDeviceSetupFlow(repo, cliContext.configPath, selectedAgents);
|
|
135
147
|
}
|
|
136
148
|
else {
|
|
137
|
-
await runBrowserSetupFlow(repo, cliContext.configPath);
|
|
149
|
+
await runBrowserSetupFlow(repo, cliContext.configPath, selectedAgents);
|
|
138
150
|
}
|
|
139
151
|
}
|
|
140
152
|
/**
|
|
@@ -184,9 +196,10 @@ async function handleExistingConfig() {
|
|
|
184
196
|
* The CLI displays a code; user enters it at github.com/login/device on any device.
|
|
185
197
|
*
|
|
186
198
|
* @param repo - The repository to set up (owner/repo)
|
|
187
|
-
* @param configPath - Optional custom config file path (null = use
|
|
199
|
+
* @param configPath - Optional custom config file path (null = use agent's default config)
|
|
200
|
+
* @param agents - Which agents to configure
|
|
188
201
|
*/
|
|
189
|
-
async function runDeviceSetupFlow(repo, configPath) {
|
|
202
|
+
async function runDeviceSetupFlow(repo, configPath, agents) {
|
|
190
203
|
const result = await runDeviceFlow({ repo });
|
|
191
204
|
if (!result) {
|
|
192
205
|
// User denied, code expired, or app not installed — messages already printed
|
|
@@ -200,8 +213,8 @@ async function runDeviceSetupFlow(repo, configPath) {
|
|
|
200
213
|
else {
|
|
201
214
|
console.log('');
|
|
202
215
|
}
|
|
203
|
-
// Write config
|
|
204
|
-
await writeConfig(result.apiKey, configPath);
|
|
216
|
+
// Write config for each selected agent
|
|
217
|
+
await writeConfig(result.apiKey, configPath, agents);
|
|
205
218
|
}
|
|
206
219
|
/**
|
|
207
220
|
* Run the browser-based OAuth setup flow (existing behaviour).
|
|
@@ -210,9 +223,10 @@ async function runDeviceSetupFlow(repo, configPath) {
|
|
|
210
223
|
* Falls back to device flow if the browser fails to open.
|
|
211
224
|
*
|
|
212
225
|
* @param repo - The repository to set up (owner/repo)
|
|
213
|
-
* @param configPath - Optional custom config file path (null = use
|
|
226
|
+
* @param configPath - Optional custom config file path (null = use agent's default config)
|
|
227
|
+
* @param agents - Which agents to configure
|
|
214
228
|
*/
|
|
215
|
-
async function runBrowserSetupFlow(repo, configPath) {
|
|
229
|
+
async function runBrowserSetupFlow(repo, configPath, agents) {
|
|
216
230
|
// Start callback server
|
|
217
231
|
const { port, waitForCallback, close } = await startCallbackServer();
|
|
218
232
|
try {
|
|
@@ -225,7 +239,7 @@ async function runBrowserSetupFlow(repo, configPath) {
|
|
|
225
239
|
// Browser failed — fall back to device flow explicitly (not silently)
|
|
226
240
|
close();
|
|
227
241
|
console.log('Could not open browser. Switching to device code authentication.\n');
|
|
228
|
-
await runDeviceSetupFlow(repo, configPath);
|
|
242
|
+
await runDeviceSetupFlow(repo, configPath, agents);
|
|
229
243
|
return;
|
|
230
244
|
}
|
|
231
245
|
console.log('Opening browser for GitHub authentication...');
|
|
@@ -251,32 +265,47 @@ async function runBrowserSetupFlow(repo, configPath) {
|
|
|
251
265
|
else {
|
|
252
266
|
console.log('');
|
|
253
267
|
}
|
|
254
|
-
// Write config
|
|
255
|
-
await writeConfig(result.apiKey, configPath);
|
|
268
|
+
// Write config for each selected agent
|
|
269
|
+
await writeConfig(result.apiKey, configPath, agents);
|
|
256
270
|
}
|
|
257
271
|
finally {
|
|
258
272
|
close();
|
|
259
273
|
}
|
|
260
274
|
}
|
|
261
275
|
/**
|
|
262
|
-
* Write MCP config to
|
|
276
|
+
* Write MCP config to all selected agents or a custom file.
|
|
263
277
|
*
|
|
264
278
|
* Shared by both browser and device flow paths.
|
|
279
|
+
*
|
|
280
|
+
* @param apiKey - The API key from authentication
|
|
281
|
+
* @param configPath - Custom config file path (null = use agent's default)
|
|
282
|
+
* @param agents - Which agents to configure
|
|
265
283
|
*/
|
|
266
|
-
async function writeConfig(apiKey, configPath) {
|
|
284
|
+
async function writeConfig(apiKey, configPath, agents) {
|
|
267
285
|
if (configPath) {
|
|
268
|
-
// Write directly to custom config file (non-destructive to
|
|
286
|
+
// Write directly to custom config file (non-destructive to default configs)
|
|
269
287
|
console.log(`Writing Ceetrix config to ${configPath}...`);
|
|
270
288
|
await writeConfigToFile(apiKey, getMcpServerUrl(), configPath);
|
|
271
289
|
console.log('✓ Configuration written\n');
|
|
272
290
|
printCustomConfigNotice(configPath);
|
|
291
|
+
return;
|
|
273
292
|
}
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
293
|
+
const url = getMcpServerUrl();
|
|
294
|
+
for (const agent of agents) {
|
|
295
|
+
switch (agent) {
|
|
296
|
+
case 'claude':
|
|
297
|
+
console.log('Adding Ceetrix to Claude Code...');
|
|
298
|
+
await addClaudeConfig(apiKey);
|
|
299
|
+
console.log('✓ Configuration added\n');
|
|
300
|
+
printRestartNotice();
|
|
301
|
+
break;
|
|
302
|
+
case 'codex':
|
|
303
|
+
console.log('Adding Ceetrix to Codex CLI...');
|
|
304
|
+
await addCodexConfig(apiKey, url);
|
|
305
|
+
console.log('✓ Configuration added\n');
|
|
306
|
+
printCodexEnvNotice(apiKey);
|
|
307
|
+
break;
|
|
308
|
+
}
|
|
280
309
|
}
|
|
281
310
|
}
|
|
282
311
|
/**
|
|
@@ -320,4 +349,22 @@ function printCustomConfigNotice(configPath) {
|
|
|
320
349
|
console.log('│ Your production ~/.claude.json was NOT modified. │');
|
|
321
350
|
console.log('└─────────────────────────────────────────────────────────────────┘\n');
|
|
322
351
|
}
|
|
352
|
+
/**
|
|
353
|
+
* Print notice for Codex CLI users about setting the env var.
|
|
354
|
+
*
|
|
355
|
+
* Codex reads API keys from environment variables at runtime.
|
|
356
|
+
* The TOML config references the var name; user must set the var.
|
|
357
|
+
*
|
|
358
|
+
* @param apiKey - The actual API key to show in the export command
|
|
359
|
+
*/
|
|
360
|
+
function printCodexEnvNotice(apiKey) {
|
|
361
|
+
console.log('┌─────────────────────────────────────────────────────────────────┐');
|
|
362
|
+
console.log('│ IMPORTANT: Set your API key as an environment variable │');
|
|
363
|
+
console.log('│ │');
|
|
364
|
+
console.log('│ Add to your shell profile (~/.bashrc, ~/.zshrc, etc.): │');
|
|
365
|
+
console.log(`│ export ${CODEX_API_KEY_ENV_VAR}="${apiKey}"`);
|
|
366
|
+
console.log('│ │');
|
|
367
|
+
console.log('│ Then restart your shell and run codex. │');
|
|
368
|
+
console.log('└─────────────────────────────────────────────────────────────────┘\n');
|
|
369
|
+
}
|
|
323
370
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CA+B7D;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
|
package/dist/permissions.js
CHANGED
|
@@ -9,11 +9,13 @@ import { confirm } from '@inquirer/prompts';
|
|
|
9
9
|
let permissionGranted = false;
|
|
10
10
|
/** Commands that will be executed */
|
|
11
11
|
const COMMANDS_DESCRIPTION = `
|
|
12
|
-
• which claude
|
|
13
|
-
• claude --version (verify
|
|
14
|
-
•
|
|
15
|
-
• claude mcp
|
|
16
|
-
• claude mcp
|
|
12
|
+
• which claude / codex (find CLI locations)
|
|
13
|
+
• claude --version (verify Claude Code)
|
|
14
|
+
• codex --version (verify Codex CLI)
|
|
15
|
+
• claude mcp list (check existing Claude config)
|
|
16
|
+
• claude mcp add (add Ceetrix to Claude)
|
|
17
|
+
• claude mcp remove (if reconfiguring Claude)
|
|
18
|
+
• Read/write ~/.codex/config.toml (Codex config)
|
|
17
19
|
`;
|
|
18
20
|
/**
|
|
19
21
|
* Request upfront permission for all CLI operations.
|
package/dist/permissions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,2DAA2D;AAC3D,IAAI,iBAAiB,GAAG,KAAK,CAAC;AAE9B,qCAAqC;AACrC,MAAM,oBAAoB,GAAG
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,2DAA2D;AAC3D,IAAI,iBAAiB,GAAG,KAAK,CAAC;AAE9B,qCAAqC;AACrC,MAAM,oBAAoB,GAAG;;;;;;;;CAQ5B,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;QAC5B,OAAO,EAAE,sCAAsC;QAC/C,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,iBAAiB,GAAG,IAAI,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,iBAAiB,GAAG,KAAK,CAAC;AAC5B,CAAC"}
|
package/dist/prompts.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Interactive prompts for user input
|
|
3
3
|
*/
|
|
4
|
+
import type { AgentStatus } from './config.js';
|
|
4
5
|
/**
|
|
5
6
|
* Prompt user for repository in owner/repo format.
|
|
6
7
|
*
|
|
@@ -15,6 +16,21 @@ export type ExistingConfigAction = 'add-repo' | 'reauth' | 'remove' | 'cancel';
|
|
|
15
16
|
* @returns The selected action
|
|
16
17
|
*/
|
|
17
18
|
export declare function promptExistingConfig(): Promise<ExistingConfigAction>;
|
|
19
|
+
/** Supported agent types */
|
|
20
|
+
export type AgentType = 'claude' | 'codex';
|
|
21
|
+
/**
|
|
22
|
+
* Wizard-style prompt for incremental agent configuration.
|
|
23
|
+
*
|
|
24
|
+
* Shows all detected agents with their config status. Already-configured
|
|
25
|
+
* agents appear disabled. Unconfigured agents are pre-checked.
|
|
26
|
+
*
|
|
27
|
+
* Auto-selects when exactly one unconfigured agent is detected and no
|
|
28
|
+
* others are present (skip the prompt entirely).
|
|
29
|
+
*
|
|
30
|
+
* @param statuses - Per-agent detection and configuration status
|
|
31
|
+
* @returns Array of agent types selected for configuration (may be empty)
|
|
32
|
+
*/
|
|
33
|
+
export declare function promptAgentWizard(statuses: Record<AgentType, AgentStatus>): Promise<AgentType[]>;
|
|
18
34
|
/**
|
|
19
35
|
* Prompt user to confirm an action.
|
|
20
36
|
*
|
package/dist/prompts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAkBrD;AAED,2DAA2D;AAC3D,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/E;;;;GAIG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAW1E;AAED,4BAA4B;AAC5B,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAQ3C;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GACvC,OAAO,CAAC,SAAS,EAAE,CAAC,CA4BtB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASrE"}
|
package/dist/prompts.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Interactive prompts for user input
|
|
3
3
|
*/
|
|
4
|
-
import { input, select } from '@inquirer/prompts';
|
|
4
|
+
import { input, select, checkbox } from '@inquirer/prompts';
|
|
5
5
|
/**
|
|
6
6
|
* Prompt user for repository in owner/repo format.
|
|
7
7
|
*
|
|
@@ -43,6 +43,47 @@ export async function promptExistingConfig() {
|
|
|
43
43
|
});
|
|
44
44
|
return action;
|
|
45
45
|
}
|
|
46
|
+
/** Display labels for each agent type */
|
|
47
|
+
const AGENT_LABELS = {
|
|
48
|
+
claude: 'Claude Code',
|
|
49
|
+
codex: 'OpenAI Codex CLI',
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Wizard-style prompt for incremental agent configuration.
|
|
53
|
+
*
|
|
54
|
+
* Shows all detected agents with their config status. Already-configured
|
|
55
|
+
* agents appear disabled. Unconfigured agents are pre-checked.
|
|
56
|
+
*
|
|
57
|
+
* Auto-selects when exactly one unconfigured agent is detected and no
|
|
58
|
+
* others are present (skip the prompt entirely).
|
|
59
|
+
*
|
|
60
|
+
* @param statuses - Per-agent detection and configuration status
|
|
61
|
+
* @returns Array of agent types selected for configuration (may be empty)
|
|
62
|
+
*/
|
|
63
|
+
export async function promptAgentWizard(statuses) {
|
|
64
|
+
const detected = Object.entries(statuses)
|
|
65
|
+
.filter(([, s]) => s.detected);
|
|
66
|
+
if (detected.length === 0)
|
|
67
|
+
return [];
|
|
68
|
+
const unconfigured = detected.filter(([, s]) => !s.configured);
|
|
69
|
+
// Single unconfigured agent, no other agents detected → auto-select
|
|
70
|
+
if (unconfigured.length === detected.length && detected.length === 1) {
|
|
71
|
+
return [detected[0][0]];
|
|
72
|
+
}
|
|
73
|
+
const choices = detected.map(([agent, status]) => ({
|
|
74
|
+
name: status.configured
|
|
75
|
+
? `${AGENT_LABELS[agent]} (configured)`
|
|
76
|
+
: AGENT_LABELS[agent],
|
|
77
|
+
value: agent,
|
|
78
|
+
checked: !status.configured,
|
|
79
|
+
disabled: status.configured ? '(already configured)' : false,
|
|
80
|
+
}));
|
|
81
|
+
const selected = await checkbox({
|
|
82
|
+
message: 'Which agents should Ceetrix be configured for?',
|
|
83
|
+
choices,
|
|
84
|
+
});
|
|
85
|
+
return selected;
|
|
86
|
+
}
|
|
46
87
|
/**
|
|
47
88
|
* Prompt user to confirm an action.
|
|
48
89
|
*
|
package/dist/prompts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ceetrix",
|
|
3
|
-
"version": "1.0
|
|
4
|
-
"description": "Set up Ceetrix backlog management for Claude Code",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Set up Ceetrix backlog management for Claude Code and OpenAI Codex",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ceetrix": "./bin/ceetrix.js"
|
|
7
7
|
},
|
|
@@ -14,15 +14,20 @@
|
|
|
14
14
|
"dev": "tsc --watch",
|
|
15
15
|
"test": "vitest",
|
|
16
16
|
"test:run": "vitest run",
|
|
17
|
+
"test:mutate": "stryker run",
|
|
17
18
|
"lint": "eslint src tests",
|
|
18
19
|
"prepublishOnly": "npm run build"
|
|
19
20
|
},
|
|
20
21
|
"dependencies": {
|
|
21
22
|
"@inquirer/prompts": "^7.0.0",
|
|
22
23
|
"open": "^10.0.0",
|
|
24
|
+
"smol-toml": "^1.3.0",
|
|
23
25
|
"which": "^6.0.0"
|
|
24
26
|
},
|
|
25
27
|
"devDependencies": {
|
|
28
|
+
"@stryker-mutator/core": "^9.5.1",
|
|
29
|
+
"@stryker-mutator/typescript-checker": "^9.5.1",
|
|
30
|
+
"@stryker-mutator/vitest-runner": "^9.5.1",
|
|
26
31
|
"@types/node": "^20.0.0",
|
|
27
32
|
"@types/which": "^3.0.4",
|
|
28
33
|
"typescript": "^5.0.0",
|
|
@@ -37,6 +42,8 @@
|
|
|
37
42
|
"ceetrix",
|
|
38
43
|
"claude",
|
|
39
44
|
"claude-code",
|
|
45
|
+
"codex",
|
|
46
|
+
"openai",
|
|
40
47
|
"mcp",
|
|
41
48
|
"backlog"
|
|
42
49
|
],
|