srvgov-cli 0.4.0 → 0.5.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.
Files changed (2) hide show
  1. package/README.md +19 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -85,6 +85,7 @@ The observation commands turn common read-only SSH output into stable JSON:
85
85
  ```bash
86
86
  srvgov status -o json
87
87
  srvgov ports -o json
88
+ srvgov status --targets web-a,web-b --concurrency 5 -o json
88
89
  srvgov logs --unit nginx --since "30 minutes ago" --priority warning --lines 100 -o json
89
90
  srvgov logs --file /var/log/nginx/error.log --grep "upstream" --lines 100 -o json
90
91
  ```
@@ -96,6 +97,24 @@ operators. `ports` falls back from `ss` to `netstat`. Unit logs fall back from
96
97
  adds `sudo`; unavailable PID/process fields remain empty. Log text, process
97
98
  names, generated command text, caller output, and audit records are redacted.
98
99
 
100
+ ### Read-only fleet fanout
101
+
102
+ `status`, `ports`, and `exec` accept comma-separated context names:
103
+
104
+ ```bash
105
+ srvgov status --targets web-a,web-b,web-c --concurrency 5 -o json
106
+ srvgov ports --targets web-a,web-b,web-c -o json
107
+ srvgov exec --targets web-a,web-b,web-c "uptime" -o json
108
+ ```
109
+
110
+ Fanout is deliberately R0-only in v1. Before any SSH connection, srvgov
111
+ classifies the command and computes effective risk for every target. If any
112
+ target is above R0, the entire fanout is rejected; there is no multi-target
113
+ ticket or allow flow. Targets are deduplicated and sorted, each target is
114
+ audited independently, and one failed host does not stop the others. Any
115
+ per-target failure returns exit code 7 after emitting the complete result.
116
+ `--targets` and `--context` are mutually exclusive.
117
+
99
118
  ## Service Control
100
119
 
101
120
  `svc` exposes only a fixed service-operation whitelist. Unit names are treated
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "srvgov-cli",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Governed remote server command execution CLI for AI agents",
5
5
  "bin": {
6
6
  "srvgov": "bin/srvgov-cli.js",