@moonmath-ai/zro 0.1.1 → 0.1.2

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,13 +1,13 @@
1
1
  # zro
2
2
 
3
- `zro` launches coding tools with the Zro OpenAI-compatible endpoint for that session only.
3
+ `zro` launches coding tools with the Zro OpenAI-compatible endpoint.
4
4
 
5
5
  ```bash
6
6
  npx @moonmath-ai/zro login
7
7
  npx @moonmath-ai/zro launch <tool>
8
8
  ```
9
9
 
10
- It does not edit your normal tool configs. It injects the Zro endpoint, API key, model catalog, or temporary config needed by the launched child process, then cleans up.
10
+ It does not edit your normal tool configs. It injects the Zro endpoint, API key, model catalog, temporary config, or Zro-owned app home needed by the launched child process.
11
11
 
12
12
  Defaults:
13
13
 
@@ -25,6 +25,7 @@ Store your Zro key once:
25
25
  zro login
26
26
  zro launch claude
27
27
  zro launch codex --model glm-5.2 -- --sandbox workspace-write
28
+ zro launch codex-app
28
29
  zro launch opencode --print
29
30
  ```
30
31
 
@@ -50,7 +51,7 @@ API key resolution order:
50
51
  2. `ZRO_API_KEY` environment variable
51
52
  3. Stored key from `zro login`
52
53
 
53
- If none is present, `zro` exits with a clear error. `zro login` stores the key in `~/.config/zro/credentials.json` with `0600` permissions. It only stores Zro credentials; it does not edit Claude Code, Codex CLI, OpenCode, Hermes, or OpenClaw config.
54
+ If none is present, `zro` exits with a clear error. `zro login` stores the key in `~/.config/zro/credentials.json` with `0600` permissions. It only stores Zro credentials; it does not edit Claude Code, Codex CLI, Codex App, OpenCode, Hermes, or OpenClaw config.
54
55
 
55
56
  Model selection:
56
57
 
@@ -66,6 +67,7 @@ Model selection:
66
67
  | --- | --- | --- |
67
68
  | `claude` | Claude Code | Starts `claude` with Anthropic-compatible Zro env vars and a custom model picker entry. Type `/model` and select the Zro model if needed. |
68
69
  | `codex` | Codex CLI | Starts `codex` with runtime `-c` provider overrides, `ZRO_API_KEY`, and a temporary model catalog so Zro models can appear in Codex CLI model selection. |
70
+ | `codex-app` | Codex App | Starts `codex app` with `CODEX_HOME=~/.config/zro/codex-app`, a Zro provider config, `.env`, and model catalog. Your normal `~/.codex/config.toml` is not modified. |
69
71
  | `opencode` | OpenCode | Starts `opencode` with a temporary `XDG_CONFIG_HOME` containing a merged Zro provider config. |
70
72
  | `hermes` | Hermes | Starts `hermes` with a temporary home config that registers the Zro provider and selected model. |
71
73
  | `openclaw` | OpenClaw | Starts `openclaw` with a temporary home config that registers the Zro provider and selected model. |
@@ -75,5 +77,5 @@ Model selection:
75
77
  - User config files are read when needed, but not modified.
76
78
  - `zro login` stores only the Zro API key, not tool-specific settings.
77
79
  - Temporary launch files are written with `0600` permissions.
78
- - Temporary launch files are removed after the launched process exits.
80
+ - Temporary launch files are removed after the launched process exits. Codex App uses persistent Zro-owned files under `~/.config/zro/codex-app`.
79
81
  - API keys are never printed unmasked. `--print` redacts secret environment values.
@@ -5,17 +5,20 @@ export declare const PROVIDER_ID = "zro";
5
5
  export declare const PROVIDER_NAME = "Zro";
6
6
  export interface ZroModel {
7
7
  id: string;
8
+ displayName: string;
8
9
  contextWindow: number;
9
10
  maxOutputTokens: number;
10
11
  }
11
12
  export declare const ZRO_MODELS: readonly [{
12
13
  readonly id: "minimax-m3";
14
+ readonly displayName: "MiniMax M3";
13
15
  readonly contextWindow: 1048576;
14
16
  readonly maxOutputTokens: 64000;
15
17
  }, {
16
18
  readonly id: "glm-5.2";
19
+ readonly displayName: "GLM-5.2";
17
20
  readonly contextWindow: 350000;
18
21
  readonly maxOutputTokens: 64000;
19
22
  }];
20
23
  export declare const DEFAULT_MODEL: "minimax-m3";
21
- export declare const SUPPORTED_TOOLS: readonly ["claude", "codex", "opencode", "hermes", "openclaw"];
24
+ export declare const SUPPORTED_TOOLS: readonly ["claude", "codex", "codex-app", "opencode", "hermes", "openclaw"];
package/dist/constants.js CHANGED
@@ -6,15 +6,17 @@ export const PROVIDER_NAME = "Zro";
6
6
  export const ZRO_MODELS = [
7
7
  {
8
8
  id: "minimax-m3",
9
+ displayName: "MiniMax M3",
9
10
  contextWindow: 1048576,
10
11
  maxOutputTokens: 64000
11
12
  },
12
13
  {
13
14
  id: "glm-5.2",
15
+ displayName: "GLM-5.2",
14
16
  contextWindow: 350000,
15
17
  maxOutputTokens: 64000
16
18
  }
17
19
  ];
18
20
  export const DEFAULT_MODEL = ZRO_MODELS[0].id;
19
- export const SUPPORTED_TOOLS = ["claude", "codex", "opencode", "hermes", "openclaw"];
21
+ export const SUPPORTED_TOOLS = ["claude", "codex", "codex-app", "opencode", "hermes", "openclaw"];
20
22
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,+BAA+B,CAAC;AAC7D,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,aAAa,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AACzC,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AAQnC,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;QACE,EAAE,EAAE,YAAY;QAChB,aAAa,EAAE,OAAO;QACtB,eAAe,EAAE,KAAK;KACvB;IACD;QACE,EAAE,EAAE,SAAS;QACb,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,KAAK;KACvB;CACqC,CAAC;AAEzC,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAE9C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,+BAA+B,CAAC;AAC7D,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,aAAa,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AACzC,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AASnC,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;QACE,EAAE,EAAE,YAAY;QAChB,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,OAAO;QACtB,eAAe,EAAE,KAAK;KACvB;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,KAAK;KACvB;CACqC,CAAC;AAEzC,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAE9C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC"}
package/dist/run.d.ts CHANGED
@@ -8,6 +8,7 @@ interface RunIo {
8
8
  cwd: string;
9
9
  env?: NodeJS.ProcessEnv;
10
10
  spawn?: SpawnProcess;
11
+ platform?: NodeJS.Platform;
11
12
  }
12
13
  export declare function run(argv: string[], io?: RunIo): Promise<number>;
13
14
  export {};
package/dist/run.js CHANGED
@@ -7,19 +7,21 @@ import { parseArgs, SUPPORTED_TOOLS_LIST, UsageError } from "./args.js";
7
7
  import { credentialFilePath, deleteStoredApiKey, maskKey, promptHidden, readStoredApiKey, resolveApiKey, writeStoredApiKey } from "./key.js";
8
8
  import { resolveModel } from "./models.js";
9
9
  import { claudeTool } from "./tools/claude.js";
10
- import { codexTool } from "./tools/codex.js";
10
+ import { codexAppTool, codexTool } from "./tools/codex.js";
11
11
  import { hermesTool } from "./tools/hermes.js";
12
12
  import { openClawTool } from "./tools/openclaw.js";
13
13
  import { opencodeTool } from "./tools/opencode.js";
14
14
  const tools = {
15
15
  claude: claudeTool,
16
16
  codex: codexTool,
17
+ "codex-app": codexAppTool,
17
18
  hermes: hermesTool,
18
19
  openclaw: openClawTool,
19
20
  opencode: opencodeTool
20
21
  };
21
22
  export async function run(argv, io = defaultIo()) {
22
- if (process.platform === "win32") {
23
+ const platform = io.platform ?? process.platform;
24
+ if (platform === "win32") {
23
25
  io.stderr.write("zro supports macOS and Linux. Windows is not supported; use WSL on Windows.\n");
24
26
  return 1;
25
27
  }
@@ -85,7 +87,16 @@ export async function run(argv, io = defaultIo()) {
85
87
  stdout: io.stdout,
86
88
  stderr: io.stderr
87
89
  };
88
- const plan = await tool.launch(ctx);
90
+ let plan;
91
+ try {
92
+ plan = await tool.launch(ctx);
93
+ }
94
+ catch (error) {
95
+ const message = error instanceof Error ? error.message : String(error);
96
+ io.stderr.write(`${message}\n`);
97
+ await fs.rm(tempDir, { recursive: true, force: true });
98
+ return 1;
99
+ }
89
100
  if (args.print) {
90
101
  printPlan(plan, io.stdout);
91
102
  return 0;
@@ -116,7 +127,8 @@ function printPlan(plan, stdout) {
116
127
  }
117
128
  }
118
129
  if (plan.files?.length) {
119
- stdout.write("Temp files:\n");
130
+ const hasPersistentFiles = plan.files.some((file) => file.persistent);
131
+ stdout.write(hasPersistentFiles ? "Files:\n" : "Temp files:\n");
120
132
  for (const file of plan.files) {
121
133
  stdout.write(` ${file.path}\n`);
122
134
  }
@@ -229,7 +241,8 @@ function defaultIo() {
229
241
  homeDir: os.homedir(),
230
242
  cwd: process.cwd(),
231
243
  env: process.env,
232
- spawn: nodeSpawn
244
+ spawn: nodeSpawn,
245
+ platform: process.platform
233
246
  };
234
247
  }
235
248
  //# sourceMappingURL=run.js.map
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,4 @@
1
1
  import type { ToolModule } from "../types.js";
2
2
  export declare const codexTool: ToolModule;
3
+ export declare const codexAppTool: ToolModule;
4
+ export declare function buildCodexModelCatalog(): Record<string, unknown>;
@@ -39,11 +39,48 @@ export const codexTool = {
39
39
  };
40
40
  }
41
41
  };
42
- function buildCodexModelCatalog() {
42
+ export const codexAppTool = {
43
+ id: "codex-app",
44
+ label: "Codex App",
45
+ async launch(ctx) {
46
+ const codexHome = path.join(ctx.homeDir, ".config", "zro", "codex-app");
47
+ const catalogPath = path.join(codexHome, "zro-models.json");
48
+ return {
49
+ tool: "codex-app",
50
+ label: "Codex App",
51
+ model: ctx.model,
52
+ command: "codex",
53
+ args: ["app", ...ctx.extraArgs],
54
+ env: {
55
+ CODEX_HOME: codexHome,
56
+ [ZRO_ENV_KEY]: ctx.apiKey
57
+ },
58
+ files: [
59
+ {
60
+ path: path.join(codexHome, "config.toml"),
61
+ contents: buildCodexAppConfig(ctx.model, catalogPath),
62
+ persistent: true
63
+ },
64
+ {
65
+ path: path.join(codexHome, ".env"),
66
+ contents: `${ZRO_ENV_KEY}=${dotenvValue(ctx.apiKey)}\n`,
67
+ persistent: true
68
+ },
69
+ {
70
+ path: catalogPath,
71
+ contents: jsonSerializer.stringify(buildCodexModelCatalog()),
72
+ persistent: true
73
+ }
74
+ ],
75
+ message: "Launch Codex App with Zro"
76
+ };
77
+ }
78
+ };
79
+ export function buildCodexModelCatalog() {
43
80
  return {
44
81
  models: ZRO_MODELS.map((model, index) => ({
45
82
  slug: model.id,
46
- display_name: `${PROVIDER_NAME} ${model.id}`,
83
+ display_name: model.displayName,
47
84
  description: `${PROVIDER_NAME} model via ${BASE_URL}`,
48
85
  default_reasoning_level: "none",
49
86
  supported_reasoning_levels: [],
@@ -79,4 +116,26 @@ function buildCodexModelCatalog() {
79
116
  }))
80
117
  };
81
118
  }
119
+ function buildCodexAppConfig(model, catalogPath) {
120
+ return [
121
+ `model = ${tomlString(model)}`,
122
+ `model_provider = ${tomlString(PROVIDER_ID)}`,
123
+ `model_catalog_json = ${tomlString(catalogPath)}`,
124
+ "",
125
+ `[model_providers.${PROVIDER_ID}]`,
126
+ `name = ${tomlString(PROVIDER_NAME)}`,
127
+ `base_url = ${tomlString(BASE_URL)}`,
128
+ `wire_api = "responses"`,
129
+ `env_key = ${tomlString(ZRO_ENV_KEY)}`,
130
+ ""
131
+ ].join("\n");
132
+ }
133
+ function dotenvValue(value) {
134
+ if (/^[A-Za-z0-9_./:=@+-]+$/.test(value))
135
+ return value;
136
+ return `"${value.replace(/\\/g, "\\\\").replace(/"/g, '\\"')}"`;
137
+ }
138
+ function tomlString(value) {
139
+ return JSON.stringify(value);
140
+ }
82
141
  //# sourceMappingURL=codex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/tools/codex.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,WAAW;IAClB,KAAK,CAAC,MAAM,CAAC,GAAG;QACd,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;QACvE,OAAO;YACL,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE;gBACJ,SAAS;gBACT,GAAG,CAAC,KAAK;gBACT,IAAI;gBACJ,mBAAmB,WAAW,GAAG;gBACjC,IAAI;gBACJ,uBAAuB,WAAW,GAAG;gBACrC,IAAI;gBACJ,mBAAmB,WAAW,UAAU,aAAa,GAAG;gBACxD,IAAI;gBACJ,mBAAmB,WAAW,cAAc,QAAQ,GAAG;gBACvD,IAAI;gBACJ,mBAAmB,WAAW,uBAAuB;gBACrD,IAAI;gBACJ,mBAAmB,WAAW,aAAa,WAAW,GAAG;gBACzD,GAAG,GAAG,CAAC,SAAS;aACjB;YACD,GAAG,EAAE;gBACH,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM;aAC1B;YACD,KAAK,EAAE,CAAC;oBACN,IAAI,EAAE,WAAW;oBACjB,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC,sBAAsB,EAAE,CAAC;iBAC7D,CAAC;YACF,OAAO,EAAE,2BAA2B;SACrC,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,SAAS,sBAAsB;IAC7B,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,KAAK,CAAC,EAAE;YACd,YAAY,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,EAAE,EAAE;YAC5C,WAAW,EAAE,GAAG,aAAa,cAAc,QAAQ,EAAE;YACrD,uBAAuB,EAAE,MAAM;YAC/B,0BAA0B,EAAE,EAAE;YAC9B,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,MAAM;YAClB,gBAAgB,EAAE,IAAI;YACtB,QAAQ,EAAE,GAAG,GAAG,KAAK;YACrB,sBAAsB,EAAE,EAAE;YAC1B,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,IAAI;YACtB,OAAO,EAAE,IAAI;YACb,iBAAiB,EAAE,EAAE;YACrB,cAAc,EAAE,EAAE;YAClB,4BAA4B,EAAE,KAAK;YACnC,yBAAyB,EAAE,MAAM;YACjC,iBAAiB,EAAE,KAAK;YACxB,iBAAiB,EAAE,QAAQ;YAC3B,qBAAqB,EAAE,UAAU;YACjC,oBAAoB,EAAE,gBAAgB;YACtC,iBAAiB,EAAE;gBACjB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,KAAK,CAAC,aAAa;aAC3B;YACD,4BAA4B,EAAE,IAAI;YAClC,8BAA8B,EAAE,IAAI;YACpC,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,kBAAkB,EAAE,KAAK,CAAC,aAAa;YACvC,gCAAgC,EAAE,EAAE;YACpC,4BAA4B,EAAE,EAAE;YAChC,gBAAgB,EAAE,CAAC,MAAM,CAAC;YAC1B,oBAAoB,EAAE,KAAK;YAC3B,kBAAkB,EAAE,KAAK;SAC1B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/tools/codex.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -34,6 +34,7 @@ export interface LaunchContext {
34
34
  export interface LaunchFile {
35
35
  path: string;
36
36
  contents: string;
37
+ persistent?: boolean;
37
38
  }
38
39
  export interface LaunchPlan {
39
40
  tool: ToolId;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moonmath-ai/zro",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Launch coding tools with the Zro OpenAI-compatible endpoint.",
5
5
  "type": "module",
6
6
  "bin": {