moa-cli 0.3.2__tar.gz → 0.3.4__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: moa-cli
3
- Version: 0.3.2
3
+ Version: 0.3.4
4
4
  Summary: Ask one question to multiple local AI coding CLIs in parallel and collect their answers.
5
5
  Keywords: llm,agents,cli,claude,codex,agy,opencode,peer-review
6
6
  Author: Paul-Louis Pröve
@@ -50,7 +50,7 @@ A single model gives you one perspective. Asking three frontier models the same
50
50
 
51
51
  ```text
52
52
  $ moa ask "Is Postgres or SQLite better for a desktop app?"
53
- Asking claude, codex, agy (timeout 600s, read-only)
53
+ Asking claude, codex, agy (timeout 900s, read-only)
54
54
 
55
55
  ──────────────── claude (opus) · OK · 3.2s ────────────────
56
56
 
@@ -103,11 +103,16 @@ is enforced by spawning each CLI with its own read-only flags:
103
103
 
104
104
  | Provider | Read-only (default) | Reads files | Web research |
105
105
  | ---------- | -------------------------- | ----------- | ------------------------- |
106
- | `claude` | `--permission-mode plan` | yes | yes |
106
+ | `claude` | `--permission-mode default` | yes | yes |
107
107
  | `codex` | `-s read-only` | yes | **no** (sandbox blocks network) |
108
108
  | `opencode` | `--agent plan` | yes | yes |
109
109
  | `agy` | `--sandbox` (partial: shell only - can still edit files) | yes | yes |
110
110
 
111
+ `claude`'s `--permission-mode default` is read-only in moa's non-interactive use: it reads
112
+ files and researches online with the full toolset, but any write or edit needs an interactive
113
+ approval that never comes under `-p`, so all mutations are denied. (`plan` mode is **not**
114
+ usable headless - it emits a plan and waits for approval instead of answering.)
115
+
111
116
  `codex`'s read-only mode is a kernel sandbox that also blocks network, so codex does no
112
117
  web research in the default mode (it still reads local files). `agy` has **no true
113
118
  read-only mode**: its `--sandbox` flag restricts agy's terminal/shell but does **not** stop
@@ -275,12 +280,15 @@ Invocations below show the default (read-only) flags; `--yolo` swaps in each too
275
280
 
276
281
  | Provider | CLI | Invocation (read-only default) |
277
282
  | ----------- | ---------- | ------------------------------------------------------------------- |
278
- | `claude` | `claude` | `claude --model opus --permission-mode plan -p PROMPT` |
283
+ | `claude` | `claude` | `claude --model opus --permission-mode default -p PROMPT` |
279
284
  | `codex` | `codex` | `codex exec -m gpt-5.5 --skip-git-repo-check -s read-only PROMPT` |
280
285
  | `agy` | `agy` | `agy --sandbox --model "Gemini 3.1 Pro (High)" -p PROMPT` (partial: shell only - can still edit files) |
281
286
  | `opencode` | `opencode` | `opencode run --agent plan PROMPT` |
282
287
 
283
- Adding a new agent is a single entry in the `PROVIDERS` table in `src/moa_cli/cli.py` (executable, default model, command builder, permission flags); it then participates in detection, `-n` selection, and `distill` automatically.
288
+ Adding a new agent is a single entry in the `PROVIDERS` table in
289
+ `src/moa_cli/providers.py` (executable, default model, command builder,
290
+ permission flags); it then participates in detection, `-n` selection, and
291
+ `distill` automatically.
284
292
 
285
293
  ## Agent skill
286
294
 
@@ -39,7 +39,7 @@ A single model gives you one perspective. Asking three frontier models the same
39
39
 
40
40
  ```text
41
41
  $ moa ask "Is Postgres or SQLite better for a desktop app?"
42
- Asking claude, codex, agy (timeout 600s, read-only)
42
+ Asking claude, codex, agy (timeout 900s, read-only)
43
43
 
44
44
  ──────────────── claude (opus) · OK · 3.2s ────────────────
45
45
 
@@ -92,11 +92,16 @@ is enforced by spawning each CLI with its own read-only flags:
92
92
 
93
93
  | Provider | Read-only (default) | Reads files | Web research |
94
94
  | ---------- | -------------------------- | ----------- | ------------------------- |
95
- | `claude` | `--permission-mode plan` | yes | yes |
95
+ | `claude` | `--permission-mode default` | yes | yes |
96
96
  | `codex` | `-s read-only` | yes | **no** (sandbox blocks network) |
97
97
  | `opencode` | `--agent plan` | yes | yes |
98
98
  | `agy` | `--sandbox` (partial: shell only - can still edit files) | yes | yes |
99
99
 
100
+ `claude`'s `--permission-mode default` is read-only in moa's non-interactive use: it reads
101
+ files and researches online with the full toolset, but any write or edit needs an interactive
102
+ approval that never comes under `-p`, so all mutations are denied. (`plan` mode is **not**
103
+ usable headless - it emits a plan and waits for approval instead of answering.)
104
+
100
105
  `codex`'s read-only mode is a kernel sandbox that also blocks network, so codex does no
101
106
  web research in the default mode (it still reads local files). `agy` has **no true
102
107
  read-only mode**: its `--sandbox` flag restricts agy's terminal/shell but does **not** stop
@@ -264,12 +269,15 @@ Invocations below show the default (read-only) flags; `--yolo` swaps in each too
264
269
 
265
270
  | Provider | CLI | Invocation (read-only default) |
266
271
  | ----------- | ---------- | ------------------------------------------------------------------- |
267
- | `claude` | `claude` | `claude --model opus --permission-mode plan -p PROMPT` |
272
+ | `claude` | `claude` | `claude --model opus --permission-mode default -p PROMPT` |
268
273
  | `codex` | `codex` | `codex exec -m gpt-5.5 --skip-git-repo-check -s read-only PROMPT` |
269
274
  | `agy` | `agy` | `agy --sandbox --model "Gemini 3.1 Pro (High)" -p PROMPT` (partial: shell only - can still edit files) |
270
275
  | `opencode` | `opencode` | `opencode run --agent plan PROMPT` |
271
276
 
272
- Adding a new agent is a single entry in the `PROVIDERS` table in `src/moa_cli/cli.py` (executable, default model, command builder, permission flags); it then participates in detection, `-n` selection, and `distill` automatically.
277
+ Adding a new agent is a single entry in the `PROVIDERS` table in
278
+ `src/moa_cli/providers.py` (executable, default model, command builder,
279
+ permission flags); it then participates in detection, `-n` selection, and
280
+ `distill` automatically.
273
281
 
274
282
  ## Agent skill
275
283
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "moa-cli"
3
- version = "0.3.2"
3
+ version = "0.3.4"
4
4
  description = "Ask one question to multiple local AI coding CLIs in parallel and collect their answers."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -1,3 +1,3 @@
1
1
  """MOA CLI package."""
2
2
 
3
- __version__ = "0.3.2"
3
+ __version__ = "0.3.4"