You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: align reachability reference with v2.4.2 implementation
Bring docs/cli-reference.md in line with the v2.4.2 reachability flag
alignment (#226): canonical --reach-analysis-timeout / --reach-analysis-memory-limit
names (old names noted as hidden aliases), correct coana-derived defaults
(8 GB memory, 10-min timeout, concurrency 1), accurate --reach-min-severity
values (info/low/moderate/high/critical), the uv + Enterprise-plan
requirements, the new 2.4.x reachability flags, and clearer --only-facts-file
wording. Documentation-only; the patch bump to 2.4.3 + uv.lock refresh are
mandated by the repo's sync-version pre-commit hook.
|`--reach`| False | False | Enable reachability analysis to identify which vulnerable functions are actually called by your code |
241
-
|`--reach-version`| False | latest | Version of @coana-tech/cli to use for analysis |
242
-
|`--reach-timeout`| False | 1200 | Timeout in seconds for the reachability analysis (default: 1200 seconds / 20 minutes) |
243
-
|`--reach-memory-limit`| False | 4096 | Memory limit in MB for the reachability analysis (default: 4096 MB / 4 GB) |
244
-
|`--reach-concurrency`| False || Control parallel analysis execution (must be >= 1) |
245
-
|`--reach-additional-params`| False || Pass custom parameters to the coana CLI tool |
246
-
|`--reach-ecosystems`| False || Comma-separated list of ecosystems to analyze (e.g., "npm,pypi"). If not specified, all supported ecosystems are analyzed |
247
-
|`--reach-exclude-paths`| False || Comma-separated list of file paths or patterns to exclude from reachability analysis |
|`--reach-output-file`| False | .socket.facts.json | Path where reachability analysis results should be saved |
252
-
|`--only-facts-file`| False | False | Submit only the .socket.facts.json file to an existing scan (requires --reach and a prior scan) |
241
+
|`--reach`| False | False | Enable reachability analysis to identify which vulnerable functions are actually called by your code. Creates a tier-1 full-application reachability scan (`scan_type=socket_tier1`). |
242
+
|`--reach-version`| False | latest | Version of @coana-tech/cli to use for analysis |
243
+
|`--reach-analysis-timeout`| False |*coana default (10 min)*| Timeout in seconds for the reachability analysis. When unset, the coana CLI's own default applies. Alias: `--reach-timeout` (hidden). |
244
+
| `--reach-analysis-memory-limit` | False | *coana default (8192 MB / 8 GB)* | Memory limit in MB for the reachability analysis. When unset, the coana CLI's own default applies. Alias: `--reach-memory-limit` (hidden). |
245
+
|`--reach-concurrency`| False |*coana default (1)*| Number of analyses to run in parallel (must be >= 1). Useful for monorepos/workspaces. |
246
+
|`--reach-additional-params`| False || Pass custom parameters straight through to the coana CLI tool |
247
+
|`--reach-ecosystems`| False |*all*| Comma-separated list of ecosystems to analyze (e.g., "npm,pypi"). If not specified, all supported ecosystems are analyzed |
248
+
|`--reach-exclude-paths`| False || Comma-separated list of file paths or patterns to exclude from reachability analysis |
|`--reach-output-file`| False | .socket.facts.json | Path where reachability analysis results should be saved |
256
+
|`--reach-use-only-pregenerated-sboms`| False | False | Build the scan only from pre-generated CycloneDX (CDX) and SPDX files in your project (requires --reach) |
257
+
|`--reach-debug`| False | False | Enable coana debug output (passes `--debug` to the coana CLI), independent of the global `--enable-debug`|
258
+
|`--reach-disable-external-tool-checks`| False | False | Disable coana's external tool availability checks (passes `--disable-external-tool-checks` to the coana CLI) |
259
+
| `--only-facts-file` | False | False | Submit only the .socket.facts.json file when creating the full scan (requires --reach) |
253
260
254
261
**Reachability Analysis Requirements:**
255
-
- `npm` - Required to install and run @coana-tech/cli
256
-
- `npx` - Required to execute @coana-tech/cli
262
+
263
+
The Python CLI verifies the following **up front** (before invoking the analysis engine) and exits with code **3** if any are unmet:
264
+
- `npm` - Required to install and run `@coana-tech/cli` (the analysis engine)
265
+
- `npx` - Required to execute `@coana-tech/cli`
266
+
- `uv` - Required by the analysis engine
267
+
- An **Enterprise** Socket organization plan (any `enterprise*` plan, including Enterprise trials)
268
+
269
+
Separately, the analysis engine (coana) needs the **per-ecosystem build toolchain** for whatever languages your project uses — e.g. a compatible Python interpreter (3.11+, or PyPy) for Python, a JDK for Java/Kotlin/Scala, .NET 6+ for C#, the matching Go toolchain for Go, etc. These are validated by the engine **at analysis time** (the CLI does not pre-check them) and that validation can be skipped with `--reach-disable-external-tool-checks`.
257
270
258
271
## Config file support
259
272
@@ -299,7 +312,7 @@ Sample config files:
299
312
300
313
For CI-specific examples and guidance, see [`ci-cd.md`](ci-cd.md).
301
314
302
-
The CLI will automatically install `@coana-tech/cli`if not present. Use `--reach` to enable reachability analysis during a full scan, or use`--only-facts-file` with `--reach` to submit reachability results to an existing scan.
315
+
The CLI will automatically install `@coana-tech/cli` if not present. Use `--reach` to enable reachability analysis during a full scan, or add `--only-facts-file` (with `--reach`) to submit only the reachability facts file (`.socket.facts.json`) when creating the full scan.
0 commit comments