@siteoshq/cli 1.2.0 → 1.4.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.
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # SiteOS CLI
2
2
 
3
3
  `@siteoshq/cli` exposes one `siteos` binary for Auth, common Projects, Pulse, Cookie, Forms,
4
- Search, Trace and Integrations. This source prepares version 1.2.0; publishing is a separate release.
4
+ Search, Trace, SEO and Integrations. This source prepares version 1.3.0; publishing is a separate release.
5
5
  Node.js 22 or newer is required.
6
6
 
7
7
  ## Install and authenticate
@@ -69,7 +69,7 @@ siteos project environment connect forms --environment production --resource '<f
69
69
  Omit `--resource` to create a new local environment. `siteos project environment list` reports the
70
70
  common catalog and connections. Forms/Search/Trace operational `--environment` flags accept common
71
71
  slugs and resolve explicit native bindings; without the flag, commands use the selected environment.
72
- Pulse/Cookie use separate bound resources per environment. Missing bindings fail without a fallback.
72
+ Pulse/Cookie/SEO use separate bound resources per environment. Missing bindings fail without a fallback.
73
73
  Manage names and website URLs with `project update` and `project environment update <slug>`.
74
74
  Cookie/Trace published addresses remain unchanged until explicit republication.
75
75
 
@@ -136,6 +136,35 @@ snippet is unavailable until runtime publication succeeds. Integrations connecti
136
136
  Organization; provider authorization opens the shared browser flow, and notification destinations
137
137
  are connected explicitly by each service.
138
138
 
139
+ ### SEO (prepared for release)
140
+
141
+ Check `siteos seo --help` before use; install a matching release only after it is published. An
142
+ SEO-capable server returns SEO in its Project service catalog, which older strict CLI parsers may
143
+ reject. Coordinate the CLI update before that server rollout, then publish the matching plugin.
144
+
145
+ ```sh
146
+ siteos project connect seo --json
147
+ siteos seo status --environment production --json
148
+ siteos seo audit run --environment production --json
149
+ siteos seo audit list --json
150
+ siteos seo audit show '<audit-id>' --json
151
+ siteos seo pages --audit '<audit-id>' --json
152
+ siteos seo issues --audit '<audit-id>' --json
153
+ siteos seo changes --audit '<audit-id>' --state resolved --json
154
+ siteos seo recheck --audit '<audit-id>' --url https://example.com/pricing --json
155
+ ```
156
+
157
+ Setup performs no crawl. `audit run` queues a full HTML audit; `recheck` queues one previously
158
+ observed URL. Read the returned audit ID until a terminal state; a queued response is not a result.
159
+ `audit cancel '<audit-id>'` revokes further work. Pages and changes are paginated with `--page`.
160
+
161
+ `issue ignore` and `issue restore` require `--audit`, `--url`, `--rule`, `--reason` and the current
162
+ `--revision` (0 before the first decision). They use a distinct issue-write scope. Read back the
163
+ decision after success; a revision conflict requires refreshing it. Ignore never means resolved.
164
+ All SEO commands resolve the selected common Project and explicit environment binding. Current
165
+ Auth policy permits CLI service-grant issuance to Organization owners/admins. JSON uses contract
166
+ version 1 and does not include credentials. The focused plugin skill is `siteos-seo`.
167
+
139
168
  ## Local state and diagnostics
140
169
 
141
170
  ```sh
@@ -202,3 +231,39 @@ A report records the revision, runtime, observed Edge location, scenario scope a
202
231
  The check covers one route and a bounded observation window, not hidden first-party/server-side
203
232
  tracking, every delayed interaction, visual accessibility or legal compliance. Repeat after
204
233
  website/publication changes and preserve a separate GTM Tag Assistant check where applicable.
234
+
235
+ ### Forms inbox
236
+
237
+ Use `siteos forms submissions list --environment <slug> --form <form-id> --json` to search complete
238
+ history. Filters include `--query`, `--status`, `--from`, `--to`, `--limit` (1–100), and `--cursor`.
239
+ The response contains the filtered total and a continuation cursor. Full answers and the saved
240
+ version's labels are available with `siteos forms submissions read --environment <slug> --form
241
+ <form-id> --submission <id> --json`.
242
+
243
+ `siteos forms submissions status --environment <slug> --form <form-id> --submission <id> --status
244
+ read --expected-status new --json` changes status without overwriting concurrent triage. Statuses
245
+ are `new`, `read`, `archived`, and `spam`. These management commands require the matching Forms inbox
246
+ server release. They use the selected common Project/environment and a scoped Auth grant.
247
+ `forms definition check` compiles the schema locally using the same strict Ajv policy as sync.
248
+
249
+ ### Form archive and deletion
250
+
251
+ These commands require the lifecycle API on the selected server. Owner/admin rights are required
252
+ for changes; members can list and read. Read a form to obtain its current revision before changing it.
253
+
254
+ ```sh
255
+ siteos forms definition list --environment production --status all --json
256
+ siteos forms definition read --environment production --form <form-id> --json
257
+ siteos forms definition archive --environment production --form <form-id> --expected-revision <revision> --json
258
+ siteos forms definition restore --environment production --form <form-id> --expected-revision <revision> --json
259
+ siteos forms definition delete --environment production --form <form-id> --json
260
+ siteos forms definition delete --environment production --form <form-id> --apply --confirm <form-key> --expected-revision <revision> --expected-submissions <count> --json
261
+ ```
262
+
263
+ Delete without `--apply` only previews the exact Project, Environment, form and submitted-answer
264
+ count. Use the values from that reviewed preview when applying; a stale revision or count conflicts.
265
+ Archive stops new submissions and preserves history. Delete permanently removes versions and
266
+ answers from the working database, retaining only a reserved-key tombstone. That form key cannot be
267
+ reused. Shared Environment credentials remain active for other forms. Sync refuses archived/deleted
268
+ keys and never removes forms missing from a local manifest. Backups follow deployment retention;
269
+ they are not an in-app restore mechanism.