arga-cli 0.1.4__tar.gz → 0.1.6__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.
Files changed (29) hide show
  1. {arga_cli-0.1.4 → arga_cli-0.1.6}/PKG-INFO +51 -10
  2. {arga_cli-0.1.4 → arga_cli-0.1.6}/README.md +48 -9
  3. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli/main.py +298 -80
  4. arga_cli-0.1.6/arga_cli/wizard/__init__.py +90 -0
  5. arga_cli-0.1.6/arga_cli/wizard/constants.py +334 -0
  6. arga_cli-0.1.6/arga_cli/wizard/env.py +292 -0
  7. arga_cli-0.1.6/arga_cli/wizard/output.py +48 -0
  8. arga_cli-0.1.6/arga_cli/wizard/prompts.py +140 -0
  9. arga_cli-0.1.6/arga_cli/wizard/provision.py +162 -0
  10. arga_cli-0.1.6/arga_cli/wizard/session.py +28 -0
  11. arga_cli-0.1.6/arga_cli/wizard/summary.py +60 -0
  12. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli.egg-info/PKG-INFO +51 -10
  13. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli.egg-info/SOURCES.txt +8 -0
  14. arga_cli-0.1.6/arga_cli.egg-info/requires.txt +3 -0
  15. {arga_cli-0.1.4 → arga_cli-0.1.6}/pyproject.toml +3 -1
  16. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_scan.py +1 -1
  17. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_validate_pr.py +1 -27
  18. arga_cli-0.1.4/arga_cli.egg-info/requires.txt +0 -1
  19. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli/__init__.py +0 -0
  20. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli/mcp.py +0 -0
  21. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli.egg-info/dependency_links.txt +0 -0
  22. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli.egg-info/entry_points.txt +0 -0
  23. {arga_cli-0.1.4 → arga_cli-0.1.6}/arga_cli.egg-info/top_level.txt +0 -0
  24. {arga_cli-0.1.4 → arga_cli-0.1.6}/setup.cfg +0 -0
  25. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_git.py +0 -0
  26. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_mcp.py +0 -0
  27. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_runs.py +0 -0
  28. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_test_url.py +0 -0
  29. {arga_cli-0.1.4 → arga_cli-0.1.6}/tests/test_cli_validate_config.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arga-cli
3
- Version: 0.1.4
3
+ Version: 0.1.6
4
4
  Summary: Command-line interface for Arga authentication, MCP installation, and browser validation
5
5
  Author: Arga Labs
6
6
  Project-URL: Homepage, https://github.com/ArgaLabs/arga-cli
@@ -17,6 +17,8 @@ Classifier: Topic :: Software Development
17
17
  Requires-Python: >=3.12
18
18
  Description-Content-Type: text/markdown
19
19
  Requires-Dist: httpx>=0.27.0
20
+ Requires-Dist: questionary>=2.0.0
21
+ Requires-Dist: rich>=13.0.0
20
22
 
21
23
  # Arga CLI
22
24
 
@@ -87,6 +89,14 @@ Start a pull request validation run:
87
89
  arga validate pr --repo arga-labs/validation-server --pr 182
88
90
  ```
89
91
 
92
+ Any of these commands accept `--json` for machine-parseable output:
93
+
94
+ ```bash
95
+ arga test url --url https://demo-app.com --prompt "test login" --json
96
+ arga runs list --json
97
+ arga runs status <run_id> --json
98
+ ```
99
+
90
100
  Create a commit that skips Arga validation:
91
101
 
92
102
  ```bash
@@ -119,12 +129,6 @@ arga runs logs <run_id>
119
129
  arga runs cancel <run_id>
120
130
  ```
121
131
 
122
- `arga validate url` is also available and currently behaves the same as `arga test url`:
123
-
124
- ```bash
125
- arga validate url --url https://demo-app.com --prompt "test checkout"
126
- ```
127
-
128
132
  ## Command Reference
129
133
 
130
134
  ### Authentication
@@ -143,7 +147,6 @@ arga logout
143
147
 
144
148
  ```bash
145
149
  arga test url --url https://demo-app.com --prompt "test login flow"
146
- arga validate url --url https://demo-app.com --prompt "test checkout"
147
150
  arga validate pr --repo arga-labs/validation-server --pr 182
148
151
  arga validate install arga-labs/validation-server
149
152
  arga validate config arga-labs/validation-server
@@ -151,8 +154,9 @@ arga validate config set arga-labs/validation-server --trigger branch --branch m
151
154
  ```
152
155
 
153
156
  - `arga test url` starts a one-off validation against a deployed URL.
154
- - `arga validate url` is an equivalent URL-validation entry point under the `validate` namespace.
155
157
  - `arga validate pr` starts GitHub-backed PR validation for a repository and pull request number.
158
+
159
+ Both accept `--json` to output `{"run_id": "...", "status": "..."}` instead of human-readable text.
156
160
  - `arga validate install <repo>` installs the GitHub webhook for automatic validation on a repository.
157
161
  - `arga validate config <repo>` shows the current automatic validation settings, including install state, trigger mode, selected branch, and PR comment behavior.
158
162
  - `arga validate config set <repo>` updates the automatic validation settings. Any omitted options keep their current value.
@@ -201,6 +205,8 @@ arga runs cancel <run_id>
201
205
  - Add `--errors-only` to keep only failed worker logs plus warning/error runtime entries.
202
206
  - `arga runs cancel <run_id>` cancels the run through the validation API.
203
207
 
208
+ Both `runs list` and `runs status` accept `--json` for structured output.
209
+
204
210
  ### Git Wrappers
205
211
 
206
212
  ```bash
@@ -260,6 +266,42 @@ If you need to add the server manually, the generated config looks like:
260
266
  }
261
267
  ```
262
268
 
269
+ ## JSON Output
270
+
271
+ Key commands support `--json` for use in CI pipelines, shell scripts, and agent automation:
272
+
273
+ ```bash
274
+ # Capture the run ID from a validation
275
+ RUN_ID=$(arga test url --url https://app.example.com --prompt "test login" --json | jq -r .run_id)
276
+
277
+ # Poll run status as JSON
278
+ arga runs status "$RUN_ID" --json | jq .status
279
+
280
+ # List runs as a JSON array
281
+ arga runs list --repo arga-labs/validation-server --json | jq '.[].run_id'
282
+
283
+ # Start PR validation and capture result
284
+ arga validate pr --repo arga-labs/validation-server --pr 182 --json
285
+ ```
286
+
287
+ Commands that support `--json`:
288
+
289
+ | Command | JSON shape |
290
+ |---|---|
291
+ | `arga test url` | `{"run_id": "...", "status": "..."}` |
292
+ | `arga validate pr` | `{"run_id": "...", "status": "..."}` |
293
+ | `arga runs status <id>` | Full run object |
294
+ | `arga runs list` | Array of run summaries |
295
+
296
+ ## Example Project
297
+
298
+ See [ArgaLabs/example-app](https://github.com/ArgaLabs/example-app) for a complete working example showing how to integrate Arga into a Next.js project with:
299
+
300
+ - GitHub Actions CI validation on every PR
301
+ - MCP config for Cursor and Claude Code
302
+ - A shell script for manual validation
303
+ - End-to-end walkthrough in the README
304
+
263
305
  ## Using A Custom API URL
264
306
 
265
307
  By default, the CLI targets `https://api.argalabs.com`.
@@ -270,7 +312,6 @@ To point it at another environment, pass `--api-url` or set `ARGA_API_URL`:
270
312
  arga login --api-url http://localhost:8000
271
313
  arga mcp install --api-url http://localhost:8000
272
314
  arga test url --api-url http://localhost:8000 --url https://demo-app.com --prompt "test checkout"
273
- arga validate url --api-url http://localhost:8000 --url https://demo-app.com --prompt "test checkout"
274
315
  arga validate pr --api-url http://localhost:8000 --repo arga-labs/validation-server --pr 182
275
316
  ```
276
317
 
@@ -67,6 +67,14 @@ Start a pull request validation run:
67
67
  arga validate pr --repo arga-labs/validation-server --pr 182
68
68
  ```
69
69
 
70
+ Any of these commands accept `--json` for machine-parseable output:
71
+
72
+ ```bash
73
+ arga test url --url https://demo-app.com --prompt "test login" --json
74
+ arga runs list --json
75
+ arga runs status <run_id> --json
76
+ ```
77
+
70
78
  Create a commit that skips Arga validation:
71
79
 
72
80
  ```bash
@@ -99,12 +107,6 @@ arga runs logs <run_id>
99
107
  arga runs cancel <run_id>
100
108
  ```
101
109
 
102
- `arga validate url` is also available and currently behaves the same as `arga test url`:
103
-
104
- ```bash
105
- arga validate url --url https://demo-app.com --prompt "test checkout"
106
- ```
107
-
108
110
  ## Command Reference
109
111
 
110
112
  ### Authentication
@@ -123,7 +125,6 @@ arga logout
123
125
 
124
126
  ```bash
125
127
  arga test url --url https://demo-app.com --prompt "test login flow"
126
- arga validate url --url https://demo-app.com --prompt "test checkout"
127
128
  arga validate pr --repo arga-labs/validation-server --pr 182
128
129
  arga validate install arga-labs/validation-server
129
130
  arga validate config arga-labs/validation-server
@@ -131,8 +132,9 @@ arga validate config set arga-labs/validation-server --trigger branch --branch m
131
132
  ```
132
133
 
133
134
  - `arga test url` starts a one-off validation against a deployed URL.
134
- - `arga validate url` is an equivalent URL-validation entry point under the `validate` namespace.
135
135
  - `arga validate pr` starts GitHub-backed PR validation for a repository and pull request number.
136
+
137
+ Both accept `--json` to output `{"run_id": "...", "status": "..."}` instead of human-readable text.
136
138
  - `arga validate install <repo>` installs the GitHub webhook for automatic validation on a repository.
137
139
  - `arga validate config <repo>` shows the current automatic validation settings, including install state, trigger mode, selected branch, and PR comment behavior.
138
140
  - `arga validate config set <repo>` updates the automatic validation settings. Any omitted options keep their current value.
@@ -181,6 +183,8 @@ arga runs cancel <run_id>
181
183
  - Add `--errors-only` to keep only failed worker logs plus warning/error runtime entries.
182
184
  - `arga runs cancel <run_id>` cancels the run through the validation API.
183
185
 
186
+ Both `runs list` and `runs status` accept `--json` for structured output.
187
+
184
188
  ### Git Wrappers
185
189
 
186
190
  ```bash
@@ -240,6 +244,42 @@ If you need to add the server manually, the generated config looks like:
240
244
  }
241
245
  ```
242
246
 
247
+ ## JSON Output
248
+
249
+ Key commands support `--json` for use in CI pipelines, shell scripts, and agent automation:
250
+
251
+ ```bash
252
+ # Capture the run ID from a validation
253
+ RUN_ID=$(arga test url --url https://app.example.com --prompt "test login" --json | jq -r .run_id)
254
+
255
+ # Poll run status as JSON
256
+ arga runs status "$RUN_ID" --json | jq .status
257
+
258
+ # List runs as a JSON array
259
+ arga runs list --repo arga-labs/validation-server --json | jq '.[].run_id'
260
+
261
+ # Start PR validation and capture result
262
+ arga validate pr --repo arga-labs/validation-server --pr 182 --json
263
+ ```
264
+
265
+ Commands that support `--json`:
266
+
267
+ | Command | JSON shape |
268
+ |---|---|
269
+ | `arga test url` | `{"run_id": "...", "status": "..."}` |
270
+ | `arga validate pr` | `{"run_id": "...", "status": "..."}` |
271
+ | `arga runs status <id>` | Full run object |
272
+ | `arga runs list` | Array of run summaries |
273
+
274
+ ## Example Project
275
+
276
+ See [ArgaLabs/example-app](https://github.com/ArgaLabs/example-app) for a complete working example showing how to integrate Arga into a Next.js project with:
277
+
278
+ - GitHub Actions CI validation on every PR
279
+ - MCP config for Cursor and Claude Code
280
+ - A shell script for manual validation
281
+ - End-to-end walkthrough in the README
282
+
243
283
  ## Using A Custom API URL
244
284
 
245
285
  By default, the CLI targets `https://api.argalabs.com`.
@@ -250,7 +290,6 @@ To point it at another environment, pass `--api-url` or set `ARGA_API_URL`:
250
290
  arga login --api-url http://localhost:8000
251
291
  arga mcp install --api-url http://localhost:8000
252
292
  arga test url --api-url http://localhost:8000 --url https://demo-app.com --prompt "test checkout"
253
- arga validate url --api-url http://localhost:8000 --url https://demo-app.com --prompt "test checkout"
254
293
  arga validate pr --api-url http://localhost:8000 --repo arga-labs/validation-server --pr 182
255
294
  ```
256
295