@seclai/cli 1.4.0 → 1.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.
- package/CHANGELOG.md +161 -0
- package/README.md +150 -5
- package/dist/cli.js +988 -308
- package/dist/cli.js.map +1 -1
- package/package.json +5 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [1.5.0] - 2026-07-31
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Require `--step-type` on `agents ai history`. The API marks the parameter required and the command had no way to supply it, so every call answered 422 — the command could not succeed before and the requirement breaks nothing. `--step-id`, `--limit` and `--offset` are now accepted as well
|
|
8
|
+
- Deprecate `agents runs delete`. It never deleted anything — the endpoint it calls is the cancel endpoint, and the API has no delete-a-run operation — so it now warns on stderr and cancels. stdout stays `{"ok": true}`; use `agents runs cancel`, which prints the cancelled run
|
|
9
|
+
- Warn on an empty `--api-version` and ignore it as before. Unlike the four above it costs only the version header, so it keeps working; a future release will reject it
|
|
10
|
+
- Warn on a `--severity` passed to `alerts list` and stop sending it. `GET /alerts` declares no such filter, so it never filtered, and sending it becomes a 422 once `--api-version` is `2026-07-27` or later. The flag still parses and a future release will remove it
|
|
11
|
+
- Reject a non-numeric `--page`, `--limit` or `--offset` at parse time instead of sending `NaN` and reporting the server's 422
|
|
12
|
+
- Require `@seclai/sdk` 1.5.0
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- Add an `--api-version <date>` global option, sent as the `Seclai-Version` header, opting into dated API changes released on or before that date. Omitted by default, so upgrading the CLI alone never changes a command's output. `SECLAI_API_VERSION` sets it for a shell, and `--allow-unknown-api-version` permits a date this release was not built against
|
|
17
|
+
- Add `api-version get`, `api-version set <date>` and `api-version clear` to read the version a request resolves to and to pin or clear the account's version. `set` rejects anything that is not a `YYYY-MM-DD` date, since the pin applies to every client on the account and nothing re-checks it afterwards
|
|
18
|
+
- Add the `email` command group covering agent email: `domains` (list, add, remove, verify, set-primary, use-shared, test-email, dmarc), `blocked` (list, add, remove, auto-block-mode), `inbound` (status, rejections, cancel-queued, resume) and `optouts` (list, remove)
|
|
19
|
+
- Add `agents disable` and `agents enable` to pause and resume an agent across every trigger path, and `agents callers` to list the live agents that call it via a `call_agent` step
|
|
20
|
+
- Add `agents triggers email-config` to set the alias, sender allowlist and inbound-handling flags on an `EMAIL_RECEIVED` trigger
|
|
21
|
+
- Add `me`, reporting the authenticated user's account ID and organization memberships
|
|
22
|
+
- Add `docs search` for keyword or semantic search over the Seclai documentation. `--mode` accepts `keyword` or `semantic` and rejects anything else at parse time
|
|
23
|
+
- Add `models tiers`, mapping each media-generation modality and tier to its model and cost
|
|
24
|
+
- Add `--supports-input-media` and `--supports-output-media` filters to `models list`
|
|
25
|
+
- Add `--paged` to `evals criteria list`, wrapping the results in `{data: [...]}` instead of a bare array so `.data` reads the same whatever `--api-version` is in effect. The `pagination` block appears only once the API sends one, from `2026-07-27`
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
|
|
29
|
+
- Reject an empty `--api-key`, `--profile`, `--account-id` or `--config-dir` instead of acting as an identity the caller never named. A shell expanding an unset variable passes `""`, which the SDK's credential chain discards, so each silently resolved elsewhere: `--api-key` to `SECLAI_API_KEY` and then a cached SSO session, `--config-dir` to another account's cached tokens, `--account-id` to the default org, `--profile` to the built-in SSO defaults. The command then exited 0, having read or written somewhere other than where it was pointed. Guard the flag rather than the value — `seclai ${KEY:+--api-key "$KEY"} …`
|
|
30
|
+
- Ship current skill content from `skills install`. The files it writes are string constants compiled into the CLI, regenerated by a script that nothing ran, so since March it had been installing a skill that documented a since-removed flag and none of the commands added after 1.1.0
|
|
31
|
+
- Split the installed skill into a short index plus per-domain references, so an agent loads a command map rather than every command. `skills install` now writes 12 files instead of 4, and the set is discovered from disk rather than hard-coded
|
|
32
|
+
- Complete the `auth` and `configure` groups and their subcommands, and `models list` / `models get`, in bash, zsh and fish. All were reachable but absent from the generated completion scripts — including `configure sso`, the first command a new user runs
|
|
33
|
+
- Offer `--profile`, `--account-id` and `--config-dir` in the zsh and fish completions. They have been accepted as global options since 1.2.0 but were never suggested
|
|
34
|
+
|
|
35
|
+
## [1.4.0] - 2026-06-05
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
|
|
39
|
+
- Add `agents attachment-references` to read an agent's static attachment-reference contract before staging uploads ([#9](https://github.com/seclai/seclai-cli/pull/9))
|
|
40
|
+
- Add `agents runs download-attachment` for a file emitted by a run step, writing to `--output` or streaming raw bytes to stdout ([#9](https://github.com/seclai/seclai-cli/pull/9))
|
|
41
|
+
- Add `models experiments delete` to soft-delete a model playground experiment ([#9](https://github.com/seclai/seclai-cli/pull/9))
|
|
42
|
+
|
|
43
|
+
## [1.3.0] - 2026-05-22
|
|
44
|
+
|
|
45
|
+
### Added
|
|
46
|
+
|
|
47
|
+
- Add `agents preview-import` to validate an agent definition without creating anything, reporting step, schedule, alert, criteria and policy counts plus any unresolved entity refs ([#8](https://github.com/seclai/seclai-cli/pull/8))
|
|
48
|
+
|
|
49
|
+
## [1.2.2] - 2026-04-24
|
|
50
|
+
|
|
51
|
+
### Added
|
|
52
|
+
|
|
53
|
+
- Add `models list` and `models get` for the model catalog ([#7](https://github.com/seclai/seclai-cli/pull/7))
|
|
54
|
+
- Add model playground commands `models experiments list`, `create`, `get` and `cancel` ([#7](https://github.com/seclai/seclai-cli/pull/7))
|
|
55
|
+
|
|
56
|
+
## [1.2.1] - 2026-04-02
|
|
57
|
+
|
|
58
|
+
### Added
|
|
59
|
+
|
|
60
|
+
- Add `agents export`, returning a portable JSON snapshot of an agent definition ([#6](https://github.com/seclai/seclai-cli/pull/6))
|
|
61
|
+
|
|
62
|
+
## [1.2.0] - 2026-03-27
|
|
63
|
+
|
|
64
|
+
### Added
|
|
65
|
+
|
|
66
|
+
- Add `auth login`, `logout`, `status` and `refresh` for browser-based OAuth2/PKCE SSO, with tokens cached locally and refreshed automatically. `login` takes `--no-browser` and `--port` ([#5](https://github.com/seclai/seclai-cli/pull/5))
|
|
67
|
+
- Add `configure sso` and `configure list` to create and inspect `~/.seclai/config` profiles ([#5](https://github.com/seclai/seclai-cli/pull/5))
|
|
68
|
+
- Add `--profile` and `--config-dir` global options, selecting the SSO profile and config directory ([#5](https://github.com/seclai/seclai-cli/pull/5))
|
|
69
|
+
|
|
70
|
+
## [1.1.1] - 2026-03-24
|
|
71
|
+
|
|
72
|
+
### Added
|
|
73
|
+
|
|
74
|
+
- Add `mcp configure` to write Seclai MCP server config into AI coding tool config files, and `mcp show` to print the snippet for manual setup ([#4](https://github.com/seclai/seclai-cli/pull/4))
|
|
75
|
+
|
|
76
|
+
## [1.1.0] - 2026-03-24
|
|
77
|
+
|
|
78
|
+
### Added
|
|
79
|
+
|
|
80
|
+
- Expand coverage from agents, sources and contents to knowledge bases, memory banks, source exports, embedding migrations, solutions, governance, evaluations, alerts, model alerts and the AI assistants ([#3](https://github.com/seclai/seclai-cli/pull/3))
|
|
81
|
+
- Add `agents run --events` to stream every SSE event as newline-delimited JSON, with `--event-filter` and `--output full|data|status`, and `--poll` to submit and poll until completion ([#3](https://github.com/seclai/seclai-cli/pull/3))
|
|
82
|
+
- Add `search` across all resource types in an account ([#3](https://github.com/seclai/seclai-cli/pull/3))
|
|
83
|
+
- Add `skills install` to install Seclai CLI skill files into AI coding tool directories ([#3](https://github.com/seclai/seclai-cli/pull/3))
|
|
84
|
+
- Add `completion bash|zsh|fish` to generate shell completion scripts ([#3](https://github.com/seclai/seclai-cli/pull/3))
|
|
85
|
+
|
|
86
|
+
## [1.0.6] - 2026-01-30
|
|
87
|
+
|
|
88
|
+
### Added
|
|
89
|
+
|
|
90
|
+
- Add `contents upload` to replace existing content with a file upload, taking `--title` and `--mime-type`
|
|
91
|
+
- Add `--metadata` and `--metadata-file` to the upload commands
|
|
92
|
+
|
|
93
|
+
### Removed
|
|
94
|
+
|
|
95
|
+
- **Breaking:** Remove the `<agentId>` argument from the run-scoped commands. The API stopped requiring it in 1.0.4, where it was retained and ignored; pass the run ID alone
|
|
96
|
+
|
|
97
|
+
## [1.0.5] - 2026-01-30
|
|
98
|
+
|
|
99
|
+
_Documentation only. Every command and option gained help text; there are no functional changes._
|
|
100
|
+
|
|
101
|
+
## [1.0.4] - 2026-01-27
|
|
102
|
+
|
|
103
|
+
### Added
|
|
104
|
+
|
|
105
|
+
- Accept a run ID alone in `agents runs get` and `agents runs cancel`. The agent ID argument is still accepted, and is removed in 1.0.6
|
|
106
|
+
|
|
107
|
+
## [1.0.3] - 2026-01-20
|
|
108
|
+
|
|
109
|
+
### Added
|
|
110
|
+
|
|
111
|
+
- Accept `source` as an alias for the `sources` command
|
|
112
|
+
|
|
113
|
+
### Fixed
|
|
114
|
+
|
|
115
|
+
- Send requests to `https://api.seclai.com` by default rather than relying on the SDK's default, and honour `SECLAI_API_URL` when set
|
|
116
|
+
- Resolve the entrypoint through symlinks, so a globally installed `seclai` runs instead of exiting silently
|
|
117
|
+
- Report SDK errors with status, URL and response body instead of a bare message
|
|
118
|
+
|
|
119
|
+
## [1.0.2] - 2026-01-13
|
|
120
|
+
|
|
121
|
+
### Changed
|
|
122
|
+
|
|
123
|
+
- Require `@seclai/sdk` 1.0.3
|
|
124
|
+
|
|
125
|
+
## [1.0.1] - 2026-01-13
|
|
126
|
+
|
|
127
|
+
### Added
|
|
128
|
+
|
|
129
|
+
- Add `agents run --stream` to wait for a streaming run to complete and print the final result
|
|
130
|
+
|
|
131
|
+
## [1.0.0] - 2026-01-12
|
|
132
|
+
|
|
133
|
+
_Stable release. No functional changes since 0.0.2._
|
|
134
|
+
|
|
135
|
+
## [0.0.2] - 2026-01-12
|
|
136
|
+
|
|
137
|
+
### Fixed
|
|
138
|
+
|
|
139
|
+
- Report the published version in the generated documentation instead of `0.0.0`
|
|
140
|
+
|
|
141
|
+
## [0.0.1] - 2026-01-12
|
|
142
|
+
|
|
143
|
+
_Initial release._
|
|
144
|
+
|
|
145
|
+
[1.5.0]: https://github.com/seclai/seclai-cli/releases/tag/1.5.0
|
|
146
|
+
[1.4.0]: https://github.com/seclai/seclai-cli/releases/tag/1.4.0
|
|
147
|
+
[1.3.0]: https://github.com/seclai/seclai-cli/releases/tag/1.3.0
|
|
148
|
+
[1.2.2]: https://github.com/seclai/seclai-cli/releases/tag/1.2.2
|
|
149
|
+
[1.2.1]: https://github.com/seclai/seclai-cli/releases/tag/1.2.1
|
|
150
|
+
[1.2.0]: https://github.com/seclai/seclai-cli/releases/tag/1.2.0
|
|
151
|
+
[1.1.1]: https://github.com/seclai/seclai-cli/releases/tag/1.1.1
|
|
152
|
+
[1.1.0]: https://github.com/seclai/seclai-cli/releases/tag/1.1.0
|
|
153
|
+
[1.0.6]: https://github.com/seclai/seclai-cli/releases/tag/1.0.6
|
|
154
|
+
[1.0.5]: https://github.com/seclai/seclai-cli/releases/tag/1.0.5
|
|
155
|
+
[1.0.4]: https://github.com/seclai/seclai-cli/releases/tag/1.0.4
|
|
156
|
+
[1.0.3]: https://github.com/seclai/seclai-cli/releases/tag/1.0.3
|
|
157
|
+
[1.0.2]: https://github.com/seclai/seclai-cli/releases/tag/1.0.2
|
|
158
|
+
[1.0.1]: https://github.com/seclai/seclai-cli/releases/tag/1.0.1
|
|
159
|
+
[1.0.0]: https://github.com/seclai/seclai-cli/releases/tag/1.0.0
|
|
160
|
+
[0.0.2]: https://github.com/seclai/seclai-cli/releases/tag/0.0.2
|
|
161
|
+
[0.0.1]: https://github.com/seclai/seclai-cli/releases/tag/0.0.1
|
package/README.md
CHANGED
|
@@ -42,7 +42,7 @@ npx add-mcp https://api.seclai.com/mcp --header "X-API-Key: $SECLAI_API_KEY" --n
|
|
|
42
42
|
|
|
43
43
|
## Documentation
|
|
44
44
|
|
|
45
|
-
Command reference (latest): https://seclai.github.io/seclai-cli/1.
|
|
45
|
+
Command reference (latest): https://seclai.github.io/seclai-cli/1.5.0/
|
|
46
46
|
|
|
47
47
|
## Authentication
|
|
48
48
|
|
|
@@ -86,6 +86,16 @@ or set environment variables:
|
|
|
86
86
|
| `SECLAI_SSO_CLIENT_ID` | Cognito app client ID | `4bgf8v9qmc5puivbaqon9n5lmr` |
|
|
87
87
|
| `SECLAI_SSO_REGION` | AWS region | `us-west-2` |
|
|
88
88
|
|
|
89
|
+
Set profiles up interactively, and list the ones you have:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# Prompts for domain, client ID, region, and account ID
|
|
93
|
+
seclai configure sso [--profile-name <name>]
|
|
94
|
+
|
|
95
|
+
# Show every configured profile
|
|
96
|
+
seclai configure list
|
|
97
|
+
```
|
|
98
|
+
|
|
89
99
|
Use a named profile with `--profile`:
|
|
90
100
|
|
|
91
101
|
```bash
|
|
@@ -102,6 +112,7 @@ Tokens are cached in `~/.seclai/sso/cache/` and auto-refreshed when expired.
|
|
|
102
112
|
| `SECLAI_API_URL` | Override API base URL (default: `https://api.seclai.com`) |
|
|
103
113
|
| `SECLAI_PROFILE` | Default SSO profile name (default: `default`) |
|
|
104
114
|
| `SECLAI_CONFIG_DIR` | Config directory path (default: `~/.seclai`) |
|
|
115
|
+
| `SECLAI_API_VERSION` | Dated API version (alternative to `--api-version`) |
|
|
105
116
|
| `SECLAI_SSO_DOMAIN` | Override SSO domain (default: `auth.seclai.com`) |
|
|
106
117
|
| `SECLAI_SSO_CLIENT_ID` | Override SSO client ID (default: `4bgf8v9qmc5puivbaqon9n5lmr`) |
|
|
107
118
|
| `SECLAI_SSO_REGION` | Override SSO region (default: `us-west-2`) |
|
|
@@ -114,11 +125,54 @@ Tokens are cached in `~/.seclai/sso/cache/` and auto-refreshed when expired.
|
|
|
114
125
|
| `--profile <name>` | SSO profile name |
|
|
115
126
|
| `--account-id <id>` | Account ID (`X-Account-Id` header) |
|
|
116
127
|
| `--config-dir <path>` | Config directory path |
|
|
128
|
+
| `--api-version <date>` | Opt into dated API changes released on or before this `YYYY-MM-DD` |
|
|
129
|
+
| `--allow-unknown-api-version` | Send an `--api-version` this CLI was not built against |
|
|
117
130
|
| `--compact` | Output compact (single-line) JSON |
|
|
118
131
|
| `-V, --version` | Print version |
|
|
119
132
|
|
|
120
133
|
---
|
|
121
134
|
|
|
135
|
+
## API Versions
|
|
136
|
+
|
|
137
|
+
The API is versioned by date. Responses can change shape between versions — a
|
|
138
|
+
bare array becoming a `{data, pagination}` envelope, for instance — so the CLI
|
|
139
|
+
sends **no version header by default**. Upgrading the CLI on its own never
|
|
140
|
+
changes what a command prints.
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
# See which version a request resolves to
|
|
144
|
+
seclai api-version get
|
|
145
|
+
|
|
146
|
+
# Opt one invocation into the changes released up to a date
|
|
147
|
+
seclai --api-version 2026-07-27 alerts list
|
|
148
|
+
|
|
149
|
+
# Or for every client on the account, not just this CLI
|
|
150
|
+
seclai api-version set 2026-07-27
|
|
151
|
+
seclai api-version clear # revert to the default
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
An `--api-version` this CLI was not built against is rejected, because a newer
|
|
155
|
+
version can reshape a response the CLI would then misread. Pass
|
|
156
|
+
`--allow-unknown-api-version` to send it anyway. `api-version set` takes a
|
|
157
|
+
`YYYY-MM-DD` date and rejects anything else, because the pin applies to every
|
|
158
|
+
client on the account and nothing re-checks it afterwards.
|
|
159
|
+
|
|
160
|
+
`--api-key`, `--profile`, `--account-id` and `--config-dir` reject an empty
|
|
161
|
+
value. A shell expanding an unset variable passes `""`, which the SDK discards,
|
|
162
|
+
so `--api-key "$KEY"` with `KEY` unset would fall back to `SECLAI_API_KEY` or a
|
|
163
|
+
cached SSO session and run as a different identity — and `--account-id ""` would
|
|
164
|
+
act on the default org rather than the one you named. Guard the flag instead of
|
|
165
|
+
the value:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
seclai ${KEY:+--api-key "$KEY"} agents list
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
An empty `--api-version` is still accepted, with a warning: it costs only the
|
|
172
|
+
version header. A future release will reject that too.
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
122
176
|
## Commands
|
|
123
177
|
|
|
124
178
|
### Agents
|
|
@@ -129,6 +183,20 @@ seclai agents create --json '{"name":"My Agent"}'
|
|
|
129
183
|
seclai agents get <agentId>
|
|
130
184
|
seclai agents update <agentId> --json '{"name":"Renamed"}'
|
|
131
185
|
seclai agents delete <agentId>
|
|
186
|
+
|
|
187
|
+
# Pause an agent across every trigger path, then resume it
|
|
188
|
+
seclai agents disable <agentId>
|
|
189
|
+
seclai agents enable <agentId>
|
|
190
|
+
|
|
191
|
+
# Which live agents call this one via a call_agent step?
|
|
192
|
+
seclai agents callers <agentId>
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
#### Triggers
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
# Alias, sender allowlist, and inbound-handling flags for an EMAIL_RECEIVED trigger
|
|
199
|
+
seclai agents triggers email-config <agentId> <triggerId> --json '{"alias":"support"}'
|
|
132
200
|
```
|
|
133
201
|
|
|
134
202
|
#### Running Agents
|
|
@@ -158,8 +226,8 @@ seclai agents run <agentId> --json '{"input":"Hi"}' --poll --poll-interval-ms 20
|
|
|
158
226
|
```bash
|
|
159
227
|
seclai agents runs list <agentId> [--page N] [--limit N]
|
|
160
228
|
seclai agents runs get <runId> [--include-step-outputs]
|
|
161
|
-
seclai agents runs delete <runId>
|
|
162
229
|
seclai agents runs cancel <runId>
|
|
230
|
+
seclai agents runs delete <runId> # deprecated alias for `runs cancel`
|
|
163
231
|
seclai agents runs search [--page N] [--limit N] [--json '...']
|
|
164
232
|
seclai agents runs eval-results <agentId> <runId> [--page N] [--limit N]
|
|
165
233
|
# Download a file attachment emitted by a run step. attachmentId is the
|
|
@@ -204,7 +272,8 @@ seclai agents input-status <agentId> <uploadId>
|
|
|
204
272
|
```bash
|
|
205
273
|
seclai agents ai gen-steps <agentId> --user-input "Build a QA chatbot"
|
|
206
274
|
seclai agents ai step-config <agentId> --user-input "Configure the search step"
|
|
207
|
-
|
|
275
|
+
# --step-type is required: the API rejects the request without it.
|
|
276
|
+
seclai agents ai history <agentId> --step-type llm [--step-id <id>] [--limit N] [--offset N]
|
|
208
277
|
seclai agents ai mark <agentId> <conversationId> --json '{"accepted":true}'
|
|
209
278
|
```
|
|
210
279
|
|
|
@@ -303,7 +372,7 @@ seclai memory ai accept <conversationId> --json '{"accepted":true}'
|
|
|
303
372
|
#### Criteria
|
|
304
373
|
|
|
305
374
|
```bash
|
|
306
|
-
seclai evals criteria list <agentId> [--page N] [--limit N]
|
|
375
|
+
seclai evals criteria list <agentId> [--page N] [--limit N] [--paged]
|
|
307
376
|
seclai evals criteria create <agentId> --json '{"name":"Quality"}'
|
|
308
377
|
seclai evals criteria get <criteriaId>
|
|
309
378
|
seclai evals criteria update <criteriaId> --json '{"name":"Renamed"}'
|
|
@@ -311,6 +380,12 @@ seclai evals criteria delete <criteriaId>
|
|
|
311
380
|
seclai evals criteria summary <criteriaId>
|
|
312
381
|
```
|
|
313
382
|
|
|
383
|
+
`--paged` wraps the results in `{"data": [...]}` instead of returning a bare
|
|
384
|
+
array, so `.data` is a stable path to read whatever `--api-version` is in
|
|
385
|
+
effect. Nothing is invented: the `pagination` block appears only once the API
|
|
386
|
+
sends one, from `--api-version 2026-07-27`. Migrate scripts to `.data` first,
|
|
387
|
+
then opt in to get `.pagination`.
|
|
388
|
+
|
|
314
389
|
#### Results
|
|
315
390
|
|
|
316
391
|
```bash
|
|
@@ -375,7 +450,7 @@ seclai governance ai decline <conversationId>
|
|
|
375
450
|
### Alerts
|
|
376
451
|
|
|
377
452
|
```bash
|
|
378
|
-
seclai alerts list [--page N] [--limit N] [--status open]
|
|
453
|
+
seclai alerts list [--page N] [--limit N] [--status open]
|
|
379
454
|
seclai alerts get <alertId>
|
|
380
455
|
seclai alerts status <alertId> --json '{"status":"resolved"}'
|
|
381
456
|
seclai alerts comment <alertId> --json '{"comment":"Investigating"}'
|
|
@@ -383,6 +458,10 @@ seclai alerts subscribe <alertId>
|
|
|
383
458
|
seclai alerts unsubscribe <alertId>
|
|
384
459
|
```
|
|
385
460
|
|
|
461
|
+
`--severity` is accepted for compatibility but ignored with a warning, and will
|
|
462
|
+
be removed. `GET /alerts` declares no severity filter, so it never filtered.
|
|
463
|
+
Filter client-side: `seclai alerts list | jq '[.data[] | select(.severity == "high")]'`.
|
|
464
|
+
|
|
386
465
|
#### Alert Configurations
|
|
387
466
|
|
|
388
467
|
```bash
|
|
@@ -402,6 +481,15 @@ seclai alerts prefs update <organizationId> <alertType> --json '{"enabled":true}
|
|
|
402
481
|
|
|
403
482
|
### Models
|
|
404
483
|
|
|
484
|
+
```bash
|
|
485
|
+
seclai models list [--provider <name>] [--supports-tool-use] [--supports-thinking]
|
|
486
|
+
seclai models list --supports-input-media image --supports-output-media video
|
|
487
|
+
seclai models get <modelId>
|
|
488
|
+
|
|
489
|
+
# Each media-generation modality and tier, with its model and cost
|
|
490
|
+
seclai models tiers
|
|
491
|
+
```
|
|
492
|
+
|
|
405
493
|
#### Model Alerts
|
|
406
494
|
|
|
407
495
|
```bash
|
|
@@ -431,6 +519,63 @@ seclai models experiments delete <experimentId> # soft-delete, preserves audit
|
|
|
431
519
|
|
|
432
520
|
```bash
|
|
433
521
|
seclai search --query "deployment guide" [--limit N] [--entity-type agent|source|kb]
|
|
522
|
+
|
|
523
|
+
# Search the Seclai documentation
|
|
524
|
+
seclai docs search --query "memory banks" [--mode keyword|semantic] [--limit N]
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
### Account
|
|
528
|
+
|
|
529
|
+
```bash
|
|
530
|
+
# The authenticated user's account ID and organization memberships
|
|
531
|
+
seclai me
|
|
532
|
+
```
|
|
533
|
+
|
|
534
|
+
### Email
|
|
535
|
+
|
|
536
|
+
Agent email: the domains agents send from, the inbound blocklist, inbound
|
|
537
|
+
health, and recipient opt-outs.
|
|
538
|
+
|
|
539
|
+
#### Domains
|
|
540
|
+
|
|
541
|
+
```bash
|
|
542
|
+
seclai email domains list
|
|
543
|
+
seclai email domains add --kind custom --value mail.example.com [--delegated]
|
|
544
|
+
seclai email domains verify <domainId> # check DNS now
|
|
545
|
+
seclai email domains set-primary <domainId>
|
|
546
|
+
seclai email domains test-email <domainId> # send a test to the account owner
|
|
547
|
+
seclai email domains dmarc <domainId> [--days N] [--top-sources N]
|
|
548
|
+
seclai email domains remove <domainId>
|
|
549
|
+
seclai email domains use-shared # revert to agent.seclai.com
|
|
550
|
+
```
|
|
551
|
+
|
|
552
|
+
`add` returns the DNS records to publish. Use `--delegated` when the domain's
|
|
553
|
+
DNS is delegated to Seclai, so those records are published for you.
|
|
554
|
+
|
|
555
|
+
#### Blocked Senders
|
|
556
|
+
|
|
557
|
+
```bash
|
|
558
|
+
seclai email blocked list [--limit N] [--offset N]
|
|
559
|
+
seclai email blocked add --sender-email spam@example.com [--note "phishing"]
|
|
560
|
+
seclai email blocked add --sender-email example.com --match-type domain
|
|
561
|
+
seclai email blocked remove <blockedId>
|
|
562
|
+
seclai email blocked auto-block-mode disabled|input|input_and_output
|
|
563
|
+
```
|
|
564
|
+
|
|
565
|
+
#### Inbound Health
|
|
566
|
+
|
|
567
|
+
```bash
|
|
568
|
+
seclai email inbound status # quota, pause state, queued runs
|
|
569
|
+
seclai email inbound rejections [--agent-id <id>] [--limit N]
|
|
570
|
+
seclai email inbound cancel-queued # fail all over-quota parked runs
|
|
571
|
+
seclai email inbound resume # lift the account-wide pause
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
#### Opt-outs
|
|
575
|
+
|
|
576
|
+
```bash
|
|
577
|
+
seclai email optouts list [--agent-id <id>] [--limit N] [--offset N]
|
|
578
|
+
seclai email optouts remove <optoutId>
|
|
434
579
|
```
|
|
435
580
|
|
|
436
581
|
### AI Assistant
|