@knowttl/checkpoint-axi 0.0.0 → 0.1.1

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 (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +164 -3
  3. package/axi-credential.schema.json +35 -0
  4. package/bin/checkpoint-axi-hook.js +9 -0
  5. package/bin/checkpoint-axi.js +8 -0
  6. package/bin/version.js +3 -0
  7. package/dist/src/catalogue.d.ts +317 -0
  8. package/dist/src/catalogue.js +103 -0
  9. package/dist/src/cli.d.ts +9 -0
  10. package/dist/src/cli.js +22 -0
  11. package/dist/src/doctor.d.ts +3 -0
  12. package/dist/src/doctor.js +37 -0
  13. package/dist/src/downloads.d.ts +3 -0
  14. package/dist/src/downloads.js +52 -0
  15. package/dist/src/exceptions.d.ts +37 -0
  16. package/dist/src/exceptions.js +81 -0
  17. package/dist/src/local-commands.d.ts +3 -0
  18. package/dist/src/local-commands.js +123 -0
  19. package/dist/src/private-file.d.ts +10 -0
  20. package/dist/src/private-file.js +65 -0
  21. package/dist/src/profiles.d.ts +122 -0
  22. package/dist/src/profiles.js +137 -0
  23. package/dist/src/reads.d.ts +3 -0
  24. package/dist/src/reads.js +169 -0
  25. package/dist/src/redact.d.ts +6 -0
  26. package/dist/src/redact.js +25 -0
  27. package/dist/src/regions.d.ts +9 -0
  28. package/dist/src/regions.js +10 -0
  29. package/dist/src/transport.d.ts +86 -0
  30. package/dist/src/transport.js +306 -0
  31. package/dist/src/write-exceptions.d.ts +4 -0
  32. package/dist/src/write-exceptions.js +97 -0
  33. package/dist/src/write-sectools.d.ts +5 -0
  34. package/dist/src/write-sectools.js +107 -0
  35. package/dist/src/writes.d.ts +30 -0
  36. package/dist/src/writes.js +295 -0
  37. package/docs/agent-guide.md +108 -0
  38. package/docs/commands.md +489 -0
  39. package/docs/configuration.md +63 -0
  40. package/docs/design.md +165 -0
  41. package/docs/downloads.md +30 -0
  42. package/docs/reads.md +84 -0
  43. package/docs/writes.md +200 -0
  44. package/inventory/capabilities.json +217 -0
  45. package/inventory/specs.json +12 -0
  46. package/package.json +48 -5
  47. package/skills/checkpoint-axi/SKILL.md +102 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 knowttl
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,4 +1,165 @@
1
- # @knowttl/checkpoint-axi
1
+ # checkpoint-axi
2
2
 
3
- Placeholder version that reserves this package name so trusted publishing can be configured.
4
- Install 0.1.0 or later from https://github.com/knowttl/checkpoint-axi.
3
+ Inspect Check Point Email Security through compact, guarded AXI commands
4
+
5
+ [![npm](https://img.shields.io/npm/v/@knowttl/checkpoint-axi)](https://www.npmjs.com/package/@knowttl/checkpoint-axi) [![License](https://img.shields.io/badge/license-MIT-blue)](LICENSE) [![Node](https://img.shields.io/node/v/@knowttl/checkpoint-axi)](package.json) [![Provenance](https://img.shields.io/badge/npm-provenance-blue)](https://www.npmjs.com/package/@knowttl/checkpoint-axi#provenance) [![AXI](https://img.shields.io/badge/AXI-agent%20experience-blue)](https://github.com/knowttl)
6
+
7
+ [Why](#why-this-exists) | [Quickstart](#quickstart) | [Agents](#use-with-your-agent) | [Coverage](#what-it-covers) | [Safety](#safety) | [Configuration](#configuration) | [Output](#output-and-exit-codes) | [Troubleshooting](#troubleshooting) | [Contributing](#contributing) | [Security](#security) | [License](#license)
8
+
9
+ ## Why this exists
10
+
11
+ Check Point Email Security (Harmony Email & Collaboration) exposes a large API with inconsistent examples and undocumented response shapes.
12
+ Agents need bounded results and explicit uncertainty to avoid guessing routes or replaying disruptive actions.
13
+ This CLI returns compact TOON, redacts secret-derived text and provides next-step hints.
14
+ Reads have request, byte and time budgets; writes require exact permission, confirmation and durable intent.
15
+ Live API contracts still require manual verification; offline fixtures do not establish live compatibility.
16
+
17
+ ## Quickstart
18
+
19
+ Requires Node.js 22.12 or later.
20
+ Install and open the local home view, which needs no credentials or network:
21
+
22
+ ```sh
23
+ npm install --global @knowttl/checkpoint-axi
24
+ checkpoint-axi
25
+ # Or without a global install:
26
+ npx -y @knowttl/checkpoint-axi
27
+ ```
28
+
29
+ A fresh home view includes `status: not configured` and `count: 0`.
30
+ For a read-only environment profile, supply `CHECKPOINT_AXI_CLIENT_SECRET` through your secret manager or private environment before running:
31
+
32
+ ```sh
33
+ export CHECKPOINT_AXI_REGION=eu
34
+ export CHECKPOINT_AXI_CLIENT_ID=synthetic-client
35
+ checkpoint-axi auth status
36
+ checkpoint-axi doctor
37
+ checkpoint-axi email search --limit 5
38
+ ```
39
+
40
+ Replace the synthetic client ID with your API client ID.
41
+ `auth status` checks credentials locally; `doctor` authenticates and reads one search page without printing email data.
42
+ Use [file profiles](docs/configuration.md) for named credentials and write/download permissions.
43
+
44
+ ## Use with your agent
45
+
46
+ `checkpoint-axi-hook` is the session entry point: configure your agent's session-start hook to run it on explicit request.
47
+ It emits local home context, grants no permissions and makes no API calls.
48
+ There is no automatic hook installer or `setup hooks` command.
49
+ To remove it, delete the hook entry you added in your agent configuration.
50
+
51
+ For on-demand discovery, install the skill:
52
+
53
+ ```sh
54
+ npx skills add knowttl/checkpoint-axi --skill checkpoint-axi
55
+ ```
56
+
57
+ The skill supplies static guidance and the full command table; it grants no credentials or write permission.
58
+ Use the hook, the skill or both; neither is required for ordinary CLI use.
59
+ Start investigations with the compact [agent guide](docs/agent-guide.md), linked from [SKILL.md](skills/checkpoint-axi/SKILL.md).
60
+ Use the [command reference](docs/commands.md) for the full catalogue.
61
+
62
+ ## What it covers
63
+
64
+ <!-- command-registry:start -->
65
+ | Group | Purpose | Access | Reference |
66
+ |---|---|---|---|
67
+ | attachment | Save hash-verified attachments or ZIPs to new private files | Read / local file write | [Guide](docs/downloads.md) |
68
+ | auth | Validate local credential readiness without API calls | Local read | [Guide](docs/configuration.md) |
69
+ | config | Show effective configuration and state paths | Local read | [Guide](docs/configuration.md) |
70
+ | doctor | Verify authentication and one bounded search | API read | [Guide](docs/reads.md#doctor-and-transport) |
71
+ | email | Search, inspect and download emails; preview or request quarantine/restore | Read / gated write / local file write | [Guide](docs/reads.md#email-reads) |
72
+ | event | Inspect events and request available name-only actions | Read / gated write | [Guide](docs/writes.md#event-actions) |
73
+ | exception | Inspect eight kinds; preview or request supported rule changes | Read / gated write | [Guide](docs/writes.md) |
74
+ | home | Show local profile context without resolving secrets | Local read | [Guide](docs/configuration.md) |
75
+ | profile | List named file profiles | Local read | [Guide](docs/configuration.md) |
76
+ | task | Inspect asynchronous action status without polling | Read | [Guide](docs/reads.md#event-and-task-reads) |
77
+ <!-- command-registry:end -->
78
+
79
+ The command catalogue generates this overview and the full references.
80
+ Run `checkpoint-axi <command> --help` for the selected command's flags.
81
+ The [coverage ledger](docs/design.md#api-coverage-ledger) records documented routes and refused operations; it never enables execution.
82
+
83
+ ## Safety
84
+
85
+ Read-only by default: file profiles must explicitly enable `writes.allowWrites` and each exact operation.
86
+ Previews also require these permissions; no wildcard or environment-only profile grants writes.
87
+ Execution requires `--execute` and the preview's exact `--confirm`, with durable redacted intent before one send.
88
+ `CHECKPOINT_AXI_READ_ONLY=1` overrides write permission; invalid values fail closed.
89
+ There is no `CHECKPOINT_AXI_ALLOW_*` environment gate.
90
+ Ambiguous outcomes are never retried; reconcile using reads before requesting another action.
91
+ Downloads separately require file-profile `downloads.allow`, a new private output file and verified SHA-256.
92
+ Secrets use environment/file SecretRefs, never inline config values or argv; tokens stay in memory.
93
+ Only seven fixed public regional gateways are allowed, with verified TLS and no redirects.
94
+ See [write gates and reconciliation](docs/writes.md), [download safety](docs/downloads.md) and [profile permissions](docs/configuration.md#write-and-download-permissions).
95
+
96
+ ## Configuration
97
+
98
+ No command writes configuration or discovers it from the current directory.
99
+ Use `checkpoint-axi config path` to print the effective paths.
100
+
101
+ | Platform | Default config | Default state directory |
102
+ |---|---|---|
103
+ | Linux/macOS | `~/.config/checkpoint-axi/config.json` | `~/.local/state/checkpoint-axi` |
104
+ | Windows | `%APPDATA%\checkpoint-axi\config.json` | `%LOCALAPPDATA%\checkpoint-axi` |
105
+
106
+ Config precedence: `--config`, `CHECKPOINT_AXI_CONFIG`, platform path.
107
+ Profile precedence: `--profile`, `CHECKPOINT_AXI_PROFILE`, complete environment profile, config default, sole file profile.
108
+ File metadata never mixes with environment-profile fields; SecretRefs may explicitly name environment variables.
109
+
110
+ | Environment variable | Purpose | Default |
111
+ |---|---|---|
112
+ | `CHECKPOINT_AXI_CONFIG` | Config file override | Platform path |
113
+ | `CHECKPOINT_AXI_PROFILE` | Named file profile | Selection order above |
114
+ | `CHECKPOINT_AXI_REGION` | Environment-profile region | Required with client ID/secret |
115
+ | `CHECKPOINT_AXI_CLIENT_ID` | Environment-profile client ID | Required with region/secret |
116
+ | `CHECKPOINT_AXI_CLIENT_SECRET` | Environment secret source | Default SecretRef; required for env profile |
117
+ | `CHECKPOINT_AXI_SAAS` | Environment-profile SaaS | `office365_emails` |
118
+ | `CHECKPOINT_AXI_SCOPE` | Environment-profile download scope | Unset |
119
+ | `CHECKPOINT_AXI_READ_ONLY` | Force read-only: `1`/`true`; `0`/`false` releases override | Unset |
120
+ | `CHECKPOINT_AXI_WRITE_LOG` | Write journal path | State directory's `writes.log`; blank uses default |
121
+ | `XDG_CONFIG_HOME` | Absolute config base on Linux/macOS | `~/.config` |
122
+ | `XDG_STATE_HOME` | Absolute state base on Linux/macOS | `~/.local/state` |
123
+ | `APPDATA` | Absolute Windows config base | `~/AppData/Roaming` |
124
+ | `LOCALAPPDATA` | Absolute Windows state base | `~/AppData/Local` |
125
+
126
+ Windows ignores XDG variables; relative base-directory overrides use platform defaults.
127
+ SecretRefs may name additional environment variables.
128
+ See [configuration](docs/configuration.md) for JSON, file protection, supported regions and scope handling, and the [credential schema](axi-credential.schema.json).
129
+
130
+ ## Output and exit codes
131
+
132
+ Output, including structured errors and next-step hints, is TOON.
133
+ Secret-derived strings are redacted before 500-character previews; `--full` restores complete strings and `--fields` selects top-level output fields where supported.
134
+ Never replay a mutation to recover truncated output.
135
+ Searches default to 50 rows over 24 hours; `--all` caps rows at 1000 within transport budgets.
136
+ Inspect `complete`, `reason` and `cursor`; see [read continuation](docs/reads.md#email-reads) for page replay limitations.
137
+ Bare `--version`, `-v` or `-V` prints the package version.
138
+
139
+ | Exit | Meaning |
140
+ |---|---|
141
+ | 0 | Success, preview or no-op |
142
+ | 1 | Configuration, authentication, transport or operation failure |
143
+ | 2 | Invalid command syntax or flags (`VALIDATION_ERROR`) |
144
+
145
+ ## Troubleshooting
146
+
147
+ | Code | Next action |
148
+ |---|---|
149
+ | `PROFILE_REQUIRED` | Configure a complete environment profile or a named file profile. |
150
+ | `CONFIG_INSECURE` | Apply the [private-file permissions](docs/configuration.md) for your platform. |
151
+ | `AUTH_SHAPE_UNVERIFIED` | Verify the undocumented token contract manually; never paste the response into chat. |
152
+ | `ENDPOINT_UNVERIFIED` | Read the [operation limitations](docs/writes.md); the CLI refuses to guess. |
153
+ | `OUTCOME_UNKNOWN` | Reconcile with read commands and the journal; never replay automatically. |
154
+
155
+ ## Contributing
156
+
157
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for offline development checks and release mechanics, and [AGENTS.md](AGENTS.md) for repository boundaries.
158
+
159
+ ## Security
160
+
161
+ Report vulnerabilities using [SECURITY.md](SECURITY.md).
162
+
163
+ ## License
164
+
165
+ [MIT](LICENSE).
@@ -0,0 +1,35 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/knowttl/checkpoint-axi/axi-credential.schema.json",
4
+ "title": "Check Point AXI credential profile",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": ["region", "clientId"],
8
+ "properties": {
9
+ "region": { "type": "string", "enum": ["us", "eu", "ca", "au", "uk", "uae", "in"] },
10
+ "clientId": { "type": "string", "minLength": 1, "pattern": "\\S" },
11
+ "clientSecret": { "$ref": "#/$defs/secretRef", "x-secret": true, "default": { "env": "CHECKPOINT_AXI_CLIENT_SECRET" } },
12
+ "saas": { "type": "string", "minLength": 1, "pattern": "\\S", "default": "office365_emails" },
13
+ "scope": { "type": "string", "minLength": 1, "pattern": "\\S" },
14
+ "downloads": {
15
+ "type": "object", "additionalProperties": false, "required": ["allow"], "default": { "allow": false },
16
+ "properties": { "allow": { "type": "boolean" } }
17
+ },
18
+ "writes": {
19
+ "type": "object", "additionalProperties": false, "required": ["allowWrites", "operations"],
20
+ "default": { "allowWrites": false, "operations": [] },
21
+ "properties": {
22
+ "allowWrites": { "type": "boolean" },
23
+ "operations": { "type": "array", "items": { "type": "string", "pattern": "^[a-z][A-Za-z0-9_.-]*$" } }
24
+ }
25
+ }
26
+ },
27
+ "$defs": {
28
+ "secretRef": {
29
+ "oneOf": [
30
+ { "type": "object", "additionalProperties": false, "required": ["env"], "properties": { "env": { "type": "string", "pattern": "^[A-Za-z_][A-Za-z0-9_]*$" } } },
31
+ { "type": "object", "additionalProperties": false, "required": ["file"], "properties": { "file": { "type": "string", "pattern": "^(?:/|[A-Za-z]:[\\\\/])" } } }
32
+ ]
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ import { tryFastPath } from "axi-sdk-js/fast-path";
3
+ import { VERSION } from "./version.js";
4
+
5
+ // Local context only. Hook installation is an explicit, later integration.
6
+ if (!tryFastPath(process.argv.slice(2), { version: VERSION })) {
7
+ const { main } = await import("../dist/src/cli.js");
8
+ await main(process.argv.length === 2 ? ["home"] : process.argv.slice(2));
9
+ }
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ import { tryFastPath } from "axi-sdk-js/fast-path";
3
+ import { VERSION } from "./version.js";
4
+
5
+ if (!tryFastPath(process.argv.slice(2), { version: VERSION })) {
6
+ const { main } = await import("../dist/src/cli.js");
7
+ await main();
8
+ }
package/bin/version.js ADDED
@@ -0,0 +1,3 @@
1
+ import { readFileSync } from "node:fs";
2
+
3
+ export const VERSION = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8")).version;
@@ -0,0 +1,317 @@
1
+ export declare const DESCRIPTION = "Inspect Check Point Email Security through compact, guarded AXI commands";
2
+ export declare const SETUP_GUIDANCE = "Run checkpoint-axi config path; configure a region, clientId and clientSecret env/file SecretRef";
3
+ export declare const catalogue: {
4
+ readonly "email download": {
5
+ readonly description: "Download an email to a new private file with profile opt-in, a 50 MiB cap and mandatory SHA-256 verification; scopes and email hash availability are unverified (guide pages 131-132)";
6
+ readonly flags: {
7
+ readonly config: string;
8
+ readonly profile: string;
9
+ readonly help: string;
10
+ readonly out: "Required absolute new output file; mode 0600, never stdout or overwrite";
11
+ readonly original: "Download original email without processing modifications; default false";
12
+ };
13
+ readonly examples: readonly ["checkpoint-axi email download <entity-id> --out /absolute/message", "checkpoint-axi email download <entity-id> --original --out /absolute/original"];
14
+ };
15
+ readonly "attachment download": {
16
+ readonly description: "Download one attachment to a new private file with profile opt-in, a 50 MiB cap and verified x-av-sha256; scope behavior is unverified (guide pages 133-135)";
17
+ readonly flags: {
18
+ readonly config: string;
19
+ readonly profile: string;
20
+ readonly help: string;
21
+ readonly out: "Required absolute new output file; mode 0600, never stdout or overwrite";
22
+ readonly scope: "Optional authorized scope query; default profile scope when configured; live behavior unverified";
23
+ };
24
+ readonly examples: readonly ["checkpoint-axi attachment download <entity-id> <attachment-id> --out /absolute/attachment", "checkpoint-axi attachment download <entity-id> <attachment-id> --scope <scope> --out /absolute/attachment"];
25
+ };
26
+ readonly "attachment download-all": {
27
+ readonly description: "Download available attachments as a ZIP to a new private file with opt-in, a 50 MiB cap and mandatory SHA-256 verification; ZIP hash availability and scopes are unverified; HTTP 200 may contain only some attachments (guide pages 135-137)";
28
+ readonly flags: {
29
+ readonly config: string;
30
+ readonly profile: string;
31
+ readonly help: string;
32
+ readonly out: "Required absolute new output file; mode 0600, never stdout or overwrite";
33
+ readonly scope: "Optional authorized scope query; default profile scope when configured; live behavior unverified";
34
+ };
35
+ readonly examples: readonly ["checkpoint-axi attachment download-all <entity-id> --out /absolute/attachments", "checkpoint-axi attachment download-all <entity-id> --scope <scope> --out /absolute/attachments"];
36
+ };
37
+ readonly "exception create": {
38
+ readonly description: "Preview or create one exception of any kind; anomaly/click-time/malware/url/dlp response identities are unverified (guide pages 61-64, 75-78, 84-85, 91-93, 102-105, 113-116, 123-126)";
39
+ readonly flags: {
40
+ readonly input: "Required absolute private JSON file containing documented requestData fields directly; fields depend on kind; update sends a replacement PUT";
41
+ readonly specific: "Malware/url/dlp only: use the documented create-specific /exceptions route; default false; included in confirmation digest";
42
+ readonly execute: string;
43
+ readonly "dry-run": string;
44
+ readonly confirm: string;
45
+ readonly config: string;
46
+ readonly profile: string;
47
+ readonly fields: string;
48
+ readonly full: string;
49
+ readonly help: string;
50
+ };
51
+ readonly examples: readonly ["checkpoint-axi exception create phishing-allow --input /absolute/rule.json", "checkpoint-axi exception create spam-allow --input /absolute/rule.json --execute --confirm 'exception.spam-allow.create sha256:<preview-digest>'"];
52
+ };
53
+ readonly "exception update": {
54
+ readonly description: "Preview or replace one exception; phishing/spam/click-time require an ID; malware/url/dlp identify it in --input without an ID; anomaly unsupported (guide pages 64-67, 78-81, 94-96, 105-107, 116-117, 126-127)";
55
+ readonly flags: {
56
+ readonly input: "Required absolute private JSON file containing documented requestData fields directly; fields depend on kind; update sends a replacement PUT";
57
+ readonly execute: string;
58
+ readonly "dry-run": string;
59
+ readonly confirm: string;
60
+ readonly config: string;
61
+ readonly profile: string;
62
+ readonly fields: string;
63
+ readonly full: string;
64
+ readonly help: string;
65
+ };
66
+ readonly examples: readonly ["checkpoint-axi exception update phishing-block <id> --input /absolute/rule.json", "checkpoint-axi exception update spam-allow <id> --input /absolute/rule.json --execute --confirm 'exception.spam-allow.update <id>'"];
67
+ };
68
+ readonly "exception remove": {
69
+ readonly description: "Preview or remove one phishing/spam/anomaly/click-time exception by ID; malware/url/dlp refuse ENDPOINT_UNVERIFIED before authentication (guide pages 67-69, 81-82, 85-87, 98-99, 108-110, 119-120, 129-131)";
70
+ readonly flags: {
71
+ execute: string;
72
+ "dry-run": string;
73
+ confirm: string;
74
+ config: string;
75
+ profile: string;
76
+ fields: string;
77
+ full: string;
78
+ help: string;
79
+ };
80
+ readonly examples: readonly ["checkpoint-axi exception remove phishing-allow <id>", "checkpoint-axi exception remove spam-allow <id> --execute --confirm 'exception.spam-allow.remove <id>'"];
81
+ };
82
+ readonly "exception remove-items": {
83
+ readonly description: "Preview or remove 1-20 click-time items by caller-supplied IDs; existence is unverified (guide pages 97-98)";
84
+ readonly flags: {
85
+ readonly ids: "Required 1-20 unique comma-separated click-time item IDs";
86
+ readonly execute: string;
87
+ readonly "dry-run": string;
88
+ readonly confirm: string;
89
+ readonly config: string;
90
+ readonly profile: string;
91
+ readonly fields: string;
92
+ readonly full: string;
93
+ readonly help: string;
94
+ };
95
+ readonly examples: readonly ["checkpoint-axi exception remove-items click-time --ids <id1>,<id2>", "checkpoint-axi exception remove-items click-time --ids <id1>,<id2> --execute --confirm 'exception.click-time.remove-items <id1>,<id2>'"];
96
+ };
97
+ readonly "exception clear": {
98
+ readonly description: "Refuse click-time/malware/url/dlp clear with ENDPOINT_UNVERIFIED until commissioning establishes counts and delete contracts (guide pages 87-88, 96-97, 107-110, 117-120, 128-131)";
99
+ readonly flags: {
100
+ execute: string;
101
+ "dry-run": string;
102
+ confirm: string;
103
+ config: string;
104
+ profile: string;
105
+ fields: string;
106
+ full: string;
107
+ help: string;
108
+ };
109
+ readonly examples: readonly ["checkpoint-axi exception clear click-time", "checkpoint-axi exception clear click-time --dry-run"];
110
+ };
111
+ readonly "event action": {
112
+ readonly description: "Preview or request a name-only event action; parameterized actions refuse ENDPOINT_UNVERIFIED pending commissioning (guide pages 35-37, 42-45)";
113
+ readonly flags: {
114
+ readonly ids: "Required comma-separated unique event IDs; maximum 20";
115
+ readonly name: "Required available action name; nonempty action parameters are unverified";
116
+ readonly execute: string;
117
+ readonly "dry-run": string;
118
+ readonly confirm: string;
119
+ readonly config: string;
120
+ readonly profile: string;
121
+ readonly fields: string;
122
+ readonly full: string;
123
+ readonly help: string;
124
+ };
125
+ readonly examples: readonly ["checkpoint-axi event action --ids <id> --name dismiss", "checkpoint-axi event action --ids <id> --name dismiss --execute --confirm 'event.action.dismiss <id>'"];
126
+ };
127
+ readonly "email quarantine": {
128
+ readonly description: "Preview or request asynchronous email quarantine through the gated write coordinator (guide pages 28-30)";
129
+ readonly flags: {
130
+ ids: string;
131
+ execute: string;
132
+ "dry-run": string;
133
+ confirm: string;
134
+ config: string;
135
+ profile: string;
136
+ fields: string;
137
+ full: string;
138
+ help: string;
139
+ };
140
+ readonly examples: readonly ["checkpoint-axi email quarantine --ids <id>", "checkpoint-axi email quarantine --ids <id> --execute --confirm 'email.quarantine <id>'"];
141
+ };
142
+ readonly "email restore": {
143
+ readonly description: "Preview or request asynchronous email restore through the gated write coordinator (guide pages 28-30)";
144
+ readonly flags: {
145
+ ids: string;
146
+ execute: string;
147
+ "dry-run": string;
148
+ confirm: string;
149
+ config: string;
150
+ profile: string;
151
+ fields: string;
152
+ full: string;
153
+ help: string;
154
+ };
155
+ readonly examples: readonly ["checkpoint-axi email restore --ids <id>", "checkpoint-axi email restore --ids <id> --execute --confirm 'email.restore <id>'"];
156
+ };
157
+ readonly "exception list": {
158
+ readonly description: "List bounded exceptions for phishing-allow, phishing-block, spam-allow, anomaly, click-time, malware, url or dlp (guide pages 49-123)";
159
+ readonly flags: {
160
+ readonly type: string;
161
+ readonly items: "Click-time item routes instead of list routes; default false";
162
+ readonly limit: string;
163
+ readonly all: "Return up to 1000 rows within transport budgets; no server continuation parameter is documented";
164
+ readonly config: string;
165
+ readonly profile: string;
166
+ readonly fields: string;
167
+ readonly full: string;
168
+ readonly help: string;
169
+ };
170
+ readonly examples: readonly ["checkpoint-axi exception list phishing-allow", "checkpoint-axi exception list malware --type hash", "checkpoint-axi exception list click-time --items --all"];
171
+ };
172
+ readonly "exception show": {
173
+ readonly description: "Show an exception by kind and ID/value; anomaly refuses ENDPOINT_UNVERIFIED pending commissioning (guide pages 52-123)";
174
+ readonly flags: {
175
+ readonly type: string;
176
+ readonly items: "Click-time item route instead of list route; default false";
177
+ readonly config: string;
178
+ readonly profile: string;
179
+ readonly fields: string;
180
+ readonly full: string;
181
+ readonly help: string;
182
+ };
183
+ readonly examples: readonly ["checkpoint-axi exception show phishing-block <id>", "checkpoint-axi exception show url <value> --type allow-url", "checkpoint-axi exception show click-time <id> --items --full"];
184
+ };
185
+ readonly "event list": {
186
+ readonly description: "List security events with bounded scroll continuation (API guide pages 37-42)";
187
+ readonly flags: {
188
+ readonly saas: "Comma-separated SaaS overrides; default selected profile saas or office365_emails";
189
+ readonly "event-types": "Comma-separated event types; default unfiltered";
190
+ readonly "event-states": "Comma-separated event states; default unfiltered";
191
+ readonly severities: "Comma-separated severities; default unfiltered";
192
+ readonly "event-ids": "Comma-separated event IDs; default unfiltered";
193
+ readonly "confidence-indicator": "Confidence indicator selector; default unfiltered";
194
+ readonly description: "Description selector; default unfiltered";
195
+ readonly "start-date": string;
196
+ readonly "end-date": string;
197
+ readonly limit: string;
198
+ readonly all: string;
199
+ readonly cursor: string;
200
+ readonly config: string;
201
+ readonly profile: string;
202
+ readonly fields: string;
203
+ readonly full: string;
204
+ readonly help: string;
205
+ };
206
+ readonly examples: readonly ["checkpoint-axi event list", "checkpoint-axi event list --all --event-types phishing", "checkpoint-axi event list --cursor <cursor>"];
207
+ };
208
+ readonly "event show": {
209
+ readonly description: "Show one event, actions taken and available actions (API guide pages 34-37)";
210
+ readonly flags: {
211
+ config: string;
212
+ profile: string;
213
+ fields: string;
214
+ full: string;
215
+ help: string;
216
+ };
217
+ readonly examples: readonly ["checkpoint-axi event show <id>", "checkpoint-axi event show <id> --full"];
218
+ };
219
+ readonly "task show": {
220
+ readonly description: "Show asynchronous task status and per-action details (API guide pages 30-33)";
221
+ readonly flags: {
222
+ config: string;
223
+ profile: string;
224
+ fields: string;
225
+ full: string;
226
+ help: string;
227
+ };
228
+ readonly examples: readonly ["checkpoint-axi task show <id>", "checkpoint-axi task show <id> --full"];
229
+ };
230
+ readonly "email search": {
231
+ readonly description: "Search emails with a bounded date window and scroll continuation (API guide pages 18-27)";
232
+ readonly flags: {
233
+ readonly filter: "JSON array of {saasAttrName, saasAttrOp, saasAttrValue} filters (guide pages 19-20)";
234
+ readonly "start-date": string;
235
+ readonly "end-date": string;
236
+ readonly limit: string;
237
+ readonly all: string;
238
+ readonly cursor: string;
239
+ readonly saas: "SaaS override; default selected profile saas or office365_emails";
240
+ readonly "saas-entity": "Optional SaaS entity type selector";
241
+ readonly config: string;
242
+ readonly profile: string;
243
+ readonly fields: string;
244
+ readonly full: string;
245
+ readonly help: string;
246
+ };
247
+ readonly examples: readonly ["checkpoint-axi email search", "checkpoint-axi email search --all --saas office365_emails", "checkpoint-axi email search --cursor <cursor>"];
248
+ };
249
+ readonly "email show": {
250
+ readonly description: "Show one email with verdicts, actions and available actions (API guide pages 10-18)";
251
+ readonly flags: {
252
+ config: string;
253
+ profile: string;
254
+ fields: string;
255
+ full: string;
256
+ help: string;
257
+ };
258
+ readonly examples: readonly ["checkpoint-axi email show <id>", "checkpoint-axi email show <id> --full"];
259
+ };
260
+ readonly doctor: {
261
+ readonly description: "Check regional API authentication and one bounded email search without printing tenant data";
262
+ readonly flags: {
263
+ readonly saas: "SaaS override; default selected profile saas or office365_emails";
264
+ readonly config: string;
265
+ readonly profile: string;
266
+ readonly fields: string;
267
+ readonly full: string;
268
+ readonly help: string;
269
+ };
270
+ readonly examples: readonly ["checkpoint-axi doctor", "checkpoint-axi doctor --profile example --saas office365_emails"];
271
+ };
272
+ readonly home: {
273
+ readonly description: "Show local profile context without resolving secrets or making API calls";
274
+ readonly flags: {
275
+ config: string;
276
+ profile: string;
277
+ fields: string;
278
+ full: string;
279
+ help: string;
280
+ };
281
+ readonly examples: readonly ["checkpoint-axi", "checkpoint-axi home --profile example"];
282
+ };
283
+ readonly "auth status": {
284
+ readonly description: "Validate the selected local profile and secret source without API calls";
285
+ readonly flags: {
286
+ config: string;
287
+ profile: string;
288
+ fields: string;
289
+ full: string;
290
+ help: string;
291
+ };
292
+ readonly examples: readonly ["checkpoint-axi auth status", "checkpoint-axi auth status --profile example"];
293
+ };
294
+ readonly "profile list": {
295
+ readonly description: "List file profiles without resolving secrets; --profile does not filter this list";
296
+ readonly flags: {
297
+ config: string;
298
+ profile: string;
299
+ fields: string;
300
+ full: string;
301
+ help: string;
302
+ };
303
+ readonly examples: readonly ["checkpoint-axi profile list", "checkpoint-axi profile list --config /example/config.json"];
304
+ };
305
+ readonly "config path": {
306
+ readonly description: "Show config and state paths without reading files; --profile does not affect paths";
307
+ readonly flags: {
308
+ config: string;
309
+ profile: string;
310
+ fields: string;
311
+ full: string;
312
+ help: string;
313
+ };
314
+ readonly examples: readonly ["checkpoint-axi config path", "checkpoint-axi config path --fields config"];
315
+ };
316
+ };
317
+ export declare function help(): Record<string, unknown>;