@knowttl/artium-axi 0.0.17 → 0.0.19
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 +1 -0
- package/bin/artium-axi.mjs +104 -55
- package/package.json +1 -1
- package/skill/artium-axi/SKILL.md +2 -0
package/README.md
CHANGED
|
@@ -155,6 +155,7 @@ Use `--host codex`, `--host opencode` or `--host pi` without `--hook` for those
|
|
|
155
155
|
Only Claude Code supports the optional `SessionStart` hook, which injects the `tools` discovery output.
|
|
156
156
|
Setup preserves unrelated settings and refuses edited/unmanaged skills unless `--force` is explicit.
|
|
157
157
|
Re-run setup after moving the executable or changing grants; skills for removed grants are retained and reported.
|
|
158
|
+
On Windows, installed skills include labelled PowerShell and Git Bash invocations; use the command for your shell.
|
|
158
159
|
See [installation paths and manual removal](docs/client-reference.md#agent-installation) before uninstalling.
|
|
159
160
|
Artium's authenticated setup fetches managed skills; a standalone skill installer does not configure this server account.
|
|
160
161
|
|
package/bin/artium-axi.mjs
CHANGED
|
@@ -20748,7 +20748,7 @@ import { resolve } from "node:path";
|
|
|
20748
20748
|
// package.json
|
|
20749
20749
|
var package_default = {
|
|
20750
20750
|
name: "artium-axi",
|
|
20751
|
-
version: "0.0.
|
|
20751
|
+
version: "0.0.19",
|
|
20752
20752
|
private: true,
|
|
20753
20753
|
license: "MIT",
|
|
20754
20754
|
type: "module",
|
|
@@ -21236,13 +21236,13 @@ var falcon_axi_default = {
|
|
|
21236
21236
|
generatedBy: "scripts/falcon-inventory.mjs",
|
|
21237
21237
|
tool: "falcon-axi",
|
|
21238
21238
|
repository: "https://github.com/knowttl/falcon-axi.git",
|
|
21239
|
-
tag: "v0.7.
|
|
21240
|
-
commit: "
|
|
21241
|
-
version: "0.7.
|
|
21239
|
+
tag: "v0.7.4",
|
|
21240
|
+
commit: "bca4a08c71beb415e3fabb37443aea8ad61bc08c",
|
|
21241
|
+
version: "0.7.4",
|
|
21242
21242
|
distribution: {
|
|
21243
|
-
filename: "falcon_axi-0.7.
|
|
21244
|
-
sha256: "
|
|
21245
|
-
provenance: "https://pypi.org/integrity/falcon-axi/0.7.
|
|
21243
|
+
filename: "falcon_axi-0.7.4-py3-none-any.whl",
|
|
21244
|
+
sha256: "bce4cfb033fd6537eb8a518fe3286799884f6b7a5ef95faffc347ac6c336d28e",
|
|
21245
|
+
provenance: "https://pypi.org/integrity/falcon-axi/0.7.4/falcon_axi-0.7.4-py3-none-any.whl/provenance"
|
|
21246
21246
|
},
|
|
21247
21247
|
parser: {
|
|
21248
21248
|
path: "falcon_axi/cli.py",
|
|
@@ -21521,7 +21521,9 @@ var falcon_axi_default = {
|
|
|
21521
21521
|
profile: "value",
|
|
21522
21522
|
filter: "value",
|
|
21523
21523
|
limit: "value",
|
|
21524
|
-
cursor: "value"
|
|
21524
|
+
cursor: "value",
|
|
21525
|
+
fields: "value",
|
|
21526
|
+
full: "boolean"
|
|
21525
21527
|
},
|
|
21526
21528
|
input: "No file or raw URL input; cursors and queries remain native values"
|
|
21527
21529
|
},
|
|
@@ -25025,10 +25027,10 @@ var vectra_axi_default = {
|
|
|
25025
25027
|
var az_axi_default = {
|
|
25026
25028
|
generatedBy: "scripts/upstream-inventory.mjs",
|
|
25027
25029
|
tool: "az-axi",
|
|
25028
|
-
version: "0.1.
|
|
25029
|
-
integrity: "sha512-
|
|
25030
|
+
version: "0.1.12",
|
|
25031
|
+
integrity: "sha512-xPhoFLQ8XWjWqLR2e80apWA1pkCqQcFZ5r5V7XW+uj0zXKaO9RHfjG7gsxkrMa44jWqWLiU8ssZxWZPl6uj8KQ==",
|
|
25030
25032
|
parserEvidence: "Installed pinned catalogue exports, provisional until adapter acceptance",
|
|
25031
|
-
packageManifestSha256: "
|
|
25033
|
+
packageManifestSha256: "2d829dc31fd552a154b439ad40c39ff8fd53b35527d8134a0dd18f4ffab09334",
|
|
25032
25034
|
environment: [
|
|
25033
25035
|
{
|
|
25034
25036
|
name: "AZ_AXI_CONFIG",
|
|
@@ -25287,7 +25289,7 @@ var az_axi_default = {
|
|
|
25287
25289
|
tokenResourceSources: [
|
|
25288
25290
|
{
|
|
25289
25291
|
path: "dist/lib/registry.js",
|
|
25290
|
-
sha256: "
|
|
25292
|
+
sha256: "67a29a57b906ee0a17dc0bf917123308ee2d160ef43106f5d15bf73f8cb874d3"
|
|
25291
25293
|
},
|
|
25292
25294
|
{
|
|
25293
25295
|
path: "dist/lib/client.js",
|
|
@@ -25315,11 +25317,11 @@ var az_axi_default = {
|
|
|
25315
25317
|
},
|
|
25316
25318
|
{
|
|
25317
25319
|
path: "dist/commands/logs.js",
|
|
25318
|
-
sha256: "
|
|
25320
|
+
sha256: "f3c0112c4be7a8996163d323bd9945950ab1a212eae2cc42af044388adc77199"
|
|
25319
25321
|
},
|
|
25320
25322
|
{
|
|
25321
25323
|
path: "dist/commands/doctor.js",
|
|
25322
|
-
sha256: "
|
|
25324
|
+
sha256: "02f26a4af30ed142b4187394c356e2204ad80f03fee52f65c2daf5c312150b06"
|
|
25323
25325
|
},
|
|
25324
25326
|
{
|
|
25325
25327
|
path: "dist/commands/api.js",
|
|
@@ -40052,13 +40054,13 @@ var awx_axi_default = {
|
|
|
40052
40054
|
var tenable_axi_default = {
|
|
40053
40055
|
generatedBy: "scripts/tenable-inventory.mjs",
|
|
40054
40056
|
tool: "tenable-axi",
|
|
40055
|
-
version: "0.1.
|
|
40056
|
-
integrity: "sha512-
|
|
40057
|
+
version: "0.1.3",
|
|
40058
|
+
integrity: "sha512-1Ji117XJv7tssAgqq0vQyQP6m3llQdqOoM6TG7tmMrma9iH9tqq+eESkXGnmHqUuJFjlS8TyyctViWk+zpTTjA==",
|
|
40057
40059
|
parserEvidence: "Published command catalogue, mutation registry and reviewed native parsers and transport gates",
|
|
40058
40060
|
sources: [
|
|
40059
40061
|
{
|
|
40060
40062
|
path: "dist/src/attack-catalogue.js",
|
|
40061
|
-
sha256: "
|
|
40063
|
+
sha256: "8e691131c15c0a25703a2f3c53f9e6f081b13d83e41b132df47f0196b9f3a192"
|
|
40062
40064
|
},
|
|
40063
40065
|
{
|
|
40064
40066
|
path: "dist/src/attack-export-catalogue.js",
|
|
@@ -40070,11 +40072,11 @@ var tenable_axi_default = {
|
|
|
40070
40072
|
},
|
|
40071
40073
|
{
|
|
40072
40074
|
path: "dist/src/attack.js",
|
|
40073
|
-
sha256: "
|
|
40075
|
+
sha256: "9e37ff7bb1371f3b16b36fe18ecc0286f6f89956d96d3b243c7c37538a9504be"
|
|
40074
40076
|
},
|
|
40075
40077
|
{
|
|
40076
40078
|
path: "dist/src/catalogue.js",
|
|
40077
|
-
sha256: "
|
|
40079
|
+
sha256: "44e7f1adc29b56741b71af0fb1b95239f4fa7c0293f137b8fb9e5e03befcbd72"
|
|
40078
40080
|
},
|
|
40079
40081
|
{
|
|
40080
40082
|
path: "dist/src/cli.js",
|
|
@@ -40090,7 +40092,7 @@ var tenable_axi_default = {
|
|
|
40090
40092
|
},
|
|
40091
40093
|
{
|
|
40092
40094
|
path: "dist/src/exposure.js",
|
|
40093
|
-
sha256: "
|
|
40095
|
+
sha256: "db005db00fbf1dba311bad8e78a872836994909a9ce46b9bd8d498d72cfc7d2d"
|
|
40094
40096
|
},
|
|
40095
40097
|
{
|
|
40096
40098
|
path: "dist/src/hook-install.js",
|
|
@@ -40098,7 +40100,7 @@ var tenable_axi_default = {
|
|
|
40098
40100
|
},
|
|
40099
40101
|
{
|
|
40100
40102
|
path: "dist/src/inventory-catalogue.js",
|
|
40101
|
-
sha256: "
|
|
40103
|
+
sha256: "9000156bdbc7e9e8a461f89a602f6fa1e9d7217eabe30a67195be79442f8afe6"
|
|
40102
40104
|
},
|
|
40103
40105
|
{
|
|
40104
40106
|
path: "dist/src/inventory-export-catalogue.js",
|
|
@@ -40110,7 +40112,7 @@ var tenable_axi_default = {
|
|
|
40110
40112
|
},
|
|
40111
40113
|
{
|
|
40112
40114
|
path: "dist/src/inventory.js",
|
|
40113
|
-
sha256: "
|
|
40115
|
+
sha256: "700efba15d086ba88be5444d66f131c9d7482e198dfd050eefc7ecd4f1b96bfe"
|
|
40114
40116
|
},
|
|
40115
40117
|
{
|
|
40116
40118
|
path: "dist/src/inventory/schema.js",
|
|
@@ -40252,7 +40254,7 @@ var tenable_axi_default = {
|
|
|
40252
40254
|
}
|
|
40253
40255
|
}
|
|
40254
40256
|
},
|
|
40255
|
-
skillSha256: "
|
|
40257
|
+
skillSha256: "788b612b4b89f6e390e42ca1619da3a7c146599284ff8ebd69c9e5e42aae5ae0",
|
|
40256
40258
|
nativeWriteSettings: {
|
|
40257
40259
|
supportedOperations: [
|
|
40258
40260
|
"apa-export-attack-path",
|
|
@@ -40342,7 +40344,7 @@ var tenable_axi_default = {
|
|
|
40342
40344
|
config: "Config path; default credential precedence",
|
|
40343
40345
|
profile: "Profile name; default credential precedence",
|
|
40344
40346
|
fields: "Comma-separated display or wire properties; display names: id, name, class, exposureScore; default compact view",
|
|
40345
|
-
full: "Show
|
|
40347
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40346
40348
|
help: "Show help",
|
|
40347
40349
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40348
40350
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -40350,7 +40352,7 @@ var tenable_axi_default = {
|
|
|
40350
40352
|
query: "Simple query text",
|
|
40351
40353
|
filter: 'Repeatable: <property> <operator> <JSON string array>, e.g. asset_class = ["DEVICE"]',
|
|
40352
40354
|
"filter-file": "JSON flat array of {property, operator, value: string[]}; '-' reads stdin; excludes --filter",
|
|
40353
|
-
sort: "
|
|
40355
|
+
sort: "Sortable display or wire property:asc|desc; unknown names report valid choices",
|
|
40354
40356
|
"extra-properties": "Comma-separated extra wire properties",
|
|
40355
40357
|
offset: "Starting record; default 0; excludes --cursor",
|
|
40356
40358
|
class: "Server-side asset class filter"
|
|
@@ -40363,7 +40365,7 @@ var tenable_axi_default = {
|
|
|
40363
40365
|
config: "Config path; default credential precedence",
|
|
40364
40366
|
profile: "Profile name; default credential precedence",
|
|
40365
40367
|
fields: "Comma-separated output fields; accepted: key, readable_name, operators, sortable, filterable, control, description; default compact view",
|
|
40366
|
-
full: "Show
|
|
40368
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40367
40369
|
help: "Show help",
|
|
40368
40370
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40369
40371
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -40377,8 +40379,8 @@ var tenable_axi_default = {
|
|
|
40377
40379
|
flags: {
|
|
40378
40380
|
config: "Config path; default credential precedence",
|
|
40379
40381
|
profile: "Profile name; default credential precedence",
|
|
40380
|
-
fields: "Comma-separated display or wire properties; display names: id, name, class, exposureScore; default compact view",
|
|
40381
|
-
full: "Show
|
|
40382
|
+
fields: "Comma-separated display or wire properties; display names: id, name, class, exposureScore, fqdns, last_observed_at; default compact view",
|
|
40383
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40382
40384
|
help: "Show help",
|
|
40383
40385
|
id: "Required exact inventory ID",
|
|
40384
40386
|
"extra-properties": "Comma-separated extra wire properties"
|
|
@@ -40770,8 +40772,8 @@ var tenable_axi_default = {
|
|
|
40770
40772
|
flags: {
|
|
40771
40773
|
config: "Config path; default credential precedence",
|
|
40772
40774
|
profile: "Profile name; default credential precedence",
|
|
40773
|
-
fields: "Comma-separated display or wire properties; display names: id, name, severity, state; default compact view",
|
|
40774
|
-
full: "Show
|
|
40775
|
+
fields: "Comma-separated display or wire properties; display names: id, name, severity, state, sensor_type; default compact view",
|
|
40776
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40775
40777
|
help: "Show help",
|
|
40776
40778
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40777
40779
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -40779,7 +40781,7 @@ var tenable_axi_default = {
|
|
|
40779
40781
|
query: "Simple query text",
|
|
40780
40782
|
filter: 'Repeatable: <property> <operator> <JSON string array>, e.g. severity = ["HIGH"]',
|
|
40781
40783
|
"filter-file": "JSON flat array of {property, operator, value: string[]}; '-' reads stdin; excludes --filter",
|
|
40782
|
-
sort: "
|
|
40784
|
+
sort: "Sortable display or wire property:asc|desc; unknown names report valid choices",
|
|
40783
40785
|
"extra-properties": "Comma-separated extra wire properties",
|
|
40784
40786
|
offset: "Starting record; default 0; excludes --cursor"
|
|
40785
40787
|
}
|
|
@@ -40791,7 +40793,7 @@ var tenable_axi_default = {
|
|
|
40791
40793
|
config: "Config path; default credential precedence",
|
|
40792
40794
|
profile: "Profile name; default credential precedence",
|
|
40793
40795
|
fields: "Comma-separated output fields; accepted: key, readable_name, operators, sortable, filterable, control, description; default compact view",
|
|
40794
|
-
full: "Show
|
|
40796
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40795
40797
|
help: "Show help",
|
|
40796
40798
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40797
40799
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -40804,13 +40806,22 @@ var tenable_axi_default = {
|
|
|
40804
40806
|
flags: {
|
|
40805
40807
|
config: "Config path; default credential precedence",
|
|
40806
40808
|
profile: "Profile name; default credential precedence",
|
|
40807
|
-
fields: "Comma-separated display or wire properties; display names: id, name, severity, state; default compact view",
|
|
40808
|
-
full: "Show
|
|
40809
|
+
fields: "Comma-separated display or wire properties; display names: id, name, severity, state, sensor_type, asset_id, cves; default compact view",
|
|
40810
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40809
40811
|
help: "Show help",
|
|
40810
40812
|
id: "Required exact inventory ID",
|
|
40811
40813
|
"extra-properties": "Comma-separated extra wire properties"
|
|
40812
40814
|
}
|
|
40813
40815
|
},
|
|
40816
|
+
{
|
|
40817
|
+
command: "finding summary",
|
|
40818
|
+
effect: "read",
|
|
40819
|
+
flags: {
|
|
40820
|
+
config: "Config path; default credential precedence",
|
|
40821
|
+
profile: "Profile name; default credential precedence",
|
|
40822
|
+
help: "Show help"
|
|
40823
|
+
}
|
|
40824
|
+
},
|
|
40814
40825
|
{
|
|
40815
40826
|
command: "home",
|
|
40816
40827
|
effect: "read",
|
|
@@ -40931,7 +40942,7 @@ var tenable_axi_default = {
|
|
|
40931
40942
|
config: "Config path; default credential precedence",
|
|
40932
40943
|
profile: "Profile name; default credential precedence",
|
|
40933
40944
|
fields: "Comma-separated display or wire properties; display names: name, version, publisher; default compact view",
|
|
40934
|
-
full: "Show
|
|
40945
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40935
40946
|
help: "Show help",
|
|
40936
40947
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40937
40948
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -40939,7 +40950,7 @@ var tenable_axi_default = {
|
|
|
40939
40950
|
query: "Simple query text",
|
|
40940
40951
|
filter: 'Repeatable: <property> <operator> <JSON string array>, e.g. application = ["example-app"]',
|
|
40941
40952
|
"filter-file": "JSON flat array of {property, operator, value: string[]}; '-' reads stdin; excludes --filter",
|
|
40942
|
-
sort: "
|
|
40953
|
+
sort: "Sortable display or wire property:asc|desc; unknown names report valid choices",
|
|
40943
40954
|
"extra-properties": "Comma-separated extra wire properties",
|
|
40944
40955
|
offset: "Starting record; default 0; excludes --cursor"
|
|
40945
40956
|
}
|
|
@@ -40951,7 +40962,7 @@ var tenable_axi_default = {
|
|
|
40951
40962
|
config: "Config path; default credential precedence",
|
|
40952
40963
|
profile: "Profile name; default credential precedence",
|
|
40953
40964
|
fields: "Comma-separated output fields; accepted: key, readable_name, operators, sortable, filterable, control, description; default compact view",
|
|
40954
|
-
full: "Show
|
|
40965
|
+
full: "Show untruncated text; does not add fields or rows; default false",
|
|
40955
40966
|
help: "Show help",
|
|
40956
40967
|
limit: "Maximum emitted rows, 1-10000; default 100",
|
|
40957
40968
|
all: "Read up to 10000 rows within invocation budgets; excludes --limit",
|
|
@@ -41254,13 +41265,13 @@ var tenable_axi_default = {
|
|
|
41254
41265
|
var hybrid_axi_default = {
|
|
41255
41266
|
generatedBy: "scripts/hybrid-inventory.mjs",
|
|
41256
41267
|
tool: "hybrid-axi",
|
|
41257
|
-
version: "0.1.
|
|
41258
|
-
integrity: "sha512-
|
|
41268
|
+
version: "0.1.2",
|
|
41269
|
+
integrity: "sha512-rveeeytckjW+8lFwKQppSEAncC3yk8KpGqI7Qh3ziJvQtf4ycUrOw+6Tzp9a69gcTamGiYf805OC0+rhIhh6ag==",
|
|
41259
41270
|
parserEvidence: "Published command catalogue, mutation registry and reviewed native parsers and transport gates",
|
|
41260
41271
|
sources: [
|
|
41261
41272
|
{
|
|
41262
41273
|
path: "dist/src/catalogue.js",
|
|
41263
|
-
sha256: "
|
|
41274
|
+
sha256: "cf353500382a0c33a6fa2c1735543ae43ecc10eb53c68e727a8940f7f881b380"
|
|
41264
41275
|
},
|
|
41265
41276
|
{
|
|
41266
41277
|
path: "dist/src/cli.js",
|
|
@@ -41300,7 +41311,7 @@ var hybrid_axi_default = {
|
|
|
41300
41311
|
},
|
|
41301
41312
|
{
|
|
41302
41313
|
path: "dist/src/report-catalogue.js",
|
|
41303
|
-
sha256: "
|
|
41314
|
+
sha256: "3c3346176cf5aabaf177c40a03efd1c67683640a95c8899f71cab1ec4bd95195"
|
|
41304
41315
|
},
|
|
41305
41316
|
{
|
|
41306
41317
|
path: "dist/src/report-file.js",
|
|
@@ -41308,11 +41319,11 @@ var hybrid_axi_default = {
|
|
|
41308
41319
|
},
|
|
41309
41320
|
{
|
|
41310
41321
|
path: "dist/src/reports.js",
|
|
41311
|
-
sha256: "
|
|
41322
|
+
sha256: "167fa9b8a542b149b8056dbb5f27bbe70c0ed4385662fc6ae9698c40e421a8d7"
|
|
41312
41323
|
},
|
|
41313
41324
|
{
|
|
41314
41325
|
path: "dist/src/search-catalogue.js",
|
|
41315
|
-
sha256: "
|
|
41326
|
+
sha256: "42fa4e7e979914c67f99fd9b083f18030ed58c01dc6cbaddea3a03553ac2a353"
|
|
41316
41327
|
},
|
|
41317
41328
|
{
|
|
41318
41329
|
path: "dist/src/search-contracts.js",
|
|
@@ -41320,11 +41331,11 @@ var hybrid_axi_default = {
|
|
|
41320
41331
|
},
|
|
41321
41332
|
{
|
|
41322
41333
|
path: "dist/src/search.js",
|
|
41323
|
-
sha256: "
|
|
41334
|
+
sha256: "cf6192817869625e1d70030c2df748535c39d48632d8e5604cd020003807ef37"
|
|
41324
41335
|
},
|
|
41325
41336
|
{
|
|
41326
41337
|
path: "dist/src/session.js",
|
|
41327
|
-
sha256: "
|
|
41338
|
+
sha256: "c55dce9aea70c4f213a040968783bb81296127395367136593985bfe99b4788c"
|
|
41328
41339
|
},
|
|
41329
41340
|
{
|
|
41330
41341
|
path: "dist/src/setup.js",
|
|
@@ -41435,7 +41446,7 @@ var hybrid_axi_default = {
|
|
|
41435
41446
|
}
|
|
41436
41447
|
}
|
|
41437
41448
|
},
|
|
41438
|
-
skillSha256: "
|
|
41449
|
+
skillSha256: "0dc43810bcc0774457a33dba2454849e2c8588f0607bd770b30fefe09cd0d26c",
|
|
41439
41450
|
nativeWriteSettings: {
|
|
41440
41451
|
supportedOperations: [
|
|
41441
41452
|
"convertQuickScan",
|
|
@@ -44214,7 +44225,7 @@ import { homedir as homedir2 } from "node:os";
|
|
|
44214
44225
|
import { dirname as dirname2, join as join2, resolve as resolve2 } from "node:path";
|
|
44215
44226
|
|
|
44216
44227
|
// skill/artium-axi/SKILL.md
|
|
44217
|
-
var SKILL_default = "---\nname: artium-axi\ndescription: Discover and run managed commands through Artium, using the signed-in account and its granted tools.\n---\n\nUse artium-axi tools first for requests involving data from Artium-managed tools.\nRun `artium-axi tools` to discover the tools available to this account before choosing a tool.\nRun `artium-axi tools show <tool>` for its commands and a vetted example, then run `artium-axi <tool> <args>`.\nFollow the returned next commands; they already include the Artium prefix.\nKeep upstream arguments intact and use the managed credentials rather than configuring an upstream CLI directly.\n\nIf artium-axi is absent from PATH, use the installed command below in place of `artium-axi` in every example:\n\n<!-- artium-axi executable -->\nThe setup command records the standalone bundle's Node invocation here.\n<!-- /artium-axi executable -->\n\nIf sign-in is required, ask the user to follow `artium-axi login --help` for their SSO or local account.\nNever request or print tokens or put passwords in arguments.\nAn empty tool list means no enabled runtime tool is available through the account's roles; ask an administrator to check grants and enabled tools.\nUse `artium-axi doctor` for connection or cached health diagnostics.\nDo not retry an uncertain command outcome, especially a write.\n";
|
|
44228
|
+
var SKILL_default = "---\nname: artium-axi\ndescription: Discover and run managed commands through Artium, using the signed-in account and its granted tools.\n---\n\nUse artium-axi tools first for requests involving data from Artium-managed tools.\nRun `artium-axi tools` to discover the tools available to this account before choosing a tool.\nRun `artium-axi tools show <tool>` for its commands and a vetted example, then run `artium-axi <tool> <args>`.\nFollow the returned next commands; they already include the Artium prefix.\nKeep upstream arguments intact and use the managed credentials rather than configuring an upstream CLI directly.\nSee [client input handling](https://github.com/knowttl/artium-axi/blob/main/docs/client-reference.md#command-surface-and-subcommands) for Azure stdin selection and Tenable local uploads or explicit stdin.\n\nIf artium-axi is absent from PATH, use the installed command below in place of `artium-axi` in every example:\nOn Windows, choose the labelled PowerShell or Git Bash command for your shell.\n\n<!-- artium-axi executable -->\nThe setup command records the standalone bundle's Node invocation here.\n<!-- /artium-axi executable -->\n\nIf sign-in is required, ask the user to follow `artium-axi login --help` for their SSO or local account.\nNever request or print tokens or put passwords in arguments.\nAn empty tool list means no enabled runtime tool is available through the account's roles; ask an administrator to check grants and enabled tools.\nUse `artium-axi doctor` for connection or cached health diagnostics.\nDo not retry an uncertain command outcome, especially a write.\n";
|
|
44218
44229
|
|
|
44219
44230
|
// src/cli/setup.ts
|
|
44220
44231
|
var hosts = {
|
|
@@ -44311,12 +44322,23 @@ async function setup(args) {
|
|
|
44311
44322
|
throw new ArtiumError("INVALID_INPUT", `Hook installation is unsupported for ${host}: this installer has no verified ${host} hook implementation. No files were written.`, `Install the skill with artium-axi setup --host ${host} without --hook; Claude Code supports --hook.`);
|
|
44312
44323
|
}
|
|
44313
44324
|
const executable = resolve2(process.argv[1]);
|
|
44314
|
-
const
|
|
44315
|
-
const
|
|
44325
|
+
const gitBashQuote = (path) => `"${path.replaceAll("\\", "/").replaceAll(/["$`]/g, "\\$&")}"`;
|
|
44326
|
+
const invocation = process.platform === "win32" ? `PowerShell:
|
|
44327
|
+
|
|
44328
|
+
\`\`\`powershell
|
|
44329
|
+
& '${process.execPath.replaceAll("'", "''")}' '${executable.replaceAll("'", "''")}'
|
|
44330
|
+
\`\`\`
|
|
44331
|
+
|
|
44332
|
+
Git Bash:
|
|
44316
44333
|
|
|
44317
44334
|
\`\`\`sh
|
|
44335
|
+
${gitBashQuote(process.execPath)} ${gitBashQuote(executable)}
|
|
44336
|
+
\`\`\`` : `\`\`\`sh
|
|
44337
|
+
${quote(process.execPath)} ${quote(executable)}
|
|
44338
|
+
\`\`\``;
|
|
44339
|
+
const executableBlock = `<!-- artium-axi executable -->
|
|
44340
|
+
|
|
44318
44341
|
${invocation}
|
|
44319
|
-
\`\`\`
|
|
44320
44342
|
|
|
44321
44343
|
<!-- /artium-axi executable -->`;
|
|
44322
44344
|
const content = SKILL_default.replace(/<!-- artium-axi executable -->[\s\S]*?<!-- \/artium-axi executable -->/, () => executableBlock);
|
|
@@ -44380,15 +44402,15 @@ async function toolInput(tool, original) {
|
|
|
44380
44402
|
const input2 = {};
|
|
44381
44403
|
let totalFileBytes = 0;
|
|
44382
44404
|
const hunting = tool === "mg-axi" && args.slice(0, 3).join(" ") === "security hunting query";
|
|
44383
|
-
if ((tool === "az-axi" || tool === "hybrid-axi" || hunting) && !args.some((arg) => ["--help", "-h", "--version", "-v", "-V"].includes(arg))) {
|
|
44384
|
-
const fileFlags = hunting ? ["file"] : tool === "hybrid-axi" ? hybrid_axi_default.adapterBoundary.inputFileFlags : az_axi_default.adapterBoundary.inputFileFlags;
|
|
44405
|
+
if ((tool === "az-axi" || tool === "hybrid-axi" || tool === "tenable-axi" || hunting) && !args.some((arg) => ["--help", "-h", "--version", "-v", "-V"].includes(arg))) {
|
|
44406
|
+
const fileFlags = hunting ? ["file"] : tool === "tenable-axi" ? tenable_axi_default.adapterBoundary.inputFileFlags : tool === "hybrid-axi" ? hybrid_axi_default.adapterBoundary.inputFileFlags : az_axi_default.adapterBoundary.inputFileFlags;
|
|
44385
44407
|
for (let index = 0; index < args.length; index++) {
|
|
44386
44408
|
if (args[index] === "--") break;
|
|
44387
44409
|
const [flag] = args[index].split("=");
|
|
44388
44410
|
if (!fileFlags.some((name2) => flag === `--${name2}`)) continue;
|
|
44389
44411
|
const equals = args[index].indexOf("=");
|
|
44390
44412
|
const path = equals < 0 ? args[++index] : args[index].slice(equals + 1);
|
|
44391
|
-
if (path === "-" && tool === "hybrid-axi" && flag === "--body-file") {
|
|
44413
|
+
if (path === "-" && (tool === "tenable-axi" || tool === "hybrid-axi" && flag === "--body-file")) {
|
|
44392
44414
|
input2.stdin = (await readBounded(process.stdin, inputLimits.stdinBytes)).toString("utf8");
|
|
44393
44415
|
continue;
|
|
44394
44416
|
}
|
|
@@ -44412,8 +44434,35 @@ async function toolInput(tool, original) {
|
|
|
44412
44434
|
leading++;
|
|
44413
44435
|
if (!token.includes("=") && (name !== "full" || ["true", "false"].includes(args[leading]))) leading++;
|
|
44414
44436
|
}
|
|
44415
|
-
const
|
|
44416
|
-
|
|
44437
|
+
const route = az_axi_default.commands.find((route2) => ["rg query", "logs query", "api"].includes(route2.handlerCommand) && route2.command.split(" ").every((word, index) => args[leading + index] === word));
|
|
44438
|
+
let positional = false;
|
|
44439
|
+
if (route) {
|
|
44440
|
+
for (let index = leading + route.command.split(" ").length; index < args.length; index++) {
|
|
44441
|
+
const token = args[index];
|
|
44442
|
+
if (token === "--") {
|
|
44443
|
+
positional = index + 1 < args.length;
|
|
44444
|
+
break;
|
|
44445
|
+
}
|
|
44446
|
+
if (!token.startsWith("-") || token === "-") {
|
|
44447
|
+
positional = true;
|
|
44448
|
+
break;
|
|
44449
|
+
}
|
|
44450
|
+
const raw = token.slice(token.startsWith("--") ? 2 : 1).split("=")[0];
|
|
44451
|
+
const expanded = token.startsWith("--") ? raw : route.shortFlags[raw] ?? raw;
|
|
44452
|
+
const name = route.flagAliases[expanded] ?? expanded;
|
|
44453
|
+
const kind = route.flags[name];
|
|
44454
|
+
if (token.includes("=") || !kind) continue;
|
|
44455
|
+
if (kind === "boolean") {
|
|
44456
|
+
if (["true", "false"].includes(args[index + 1])) index++;
|
|
44457
|
+
} else {
|
|
44458
|
+
while (args[index + 1] !== void 0 && (!args[index + 1].startsWith("-") || /^-\d/.test(args[index + 1]) || az_axi_default.adapterBoundary.inputFileFlags.includes(name) && input2.files?.some((file2) => file2.name === args[index + 1]))) {
|
|
44459
|
+
index++;
|
|
44460
|
+
if (!["list", "literal-list"].includes(kind) || route.positionalInput) break;
|
|
44461
|
+
}
|
|
44462
|
+
}
|
|
44463
|
+
}
|
|
44464
|
+
}
|
|
44465
|
+
if (tool === "az-axi" && route && !input2.files?.length && !positional && !process.stdin.isTTY) {
|
|
44417
44466
|
const stdin = await readBounded(process.stdin, inputLimits.stdinBytes);
|
|
44418
44467
|
if (stdin.length) input2.stdin = stdin.toString("utf8");
|
|
44419
44468
|
}
|
package/package.json
CHANGED
|
@@ -8,8 +8,10 @@ Run `artium-axi tools` to discover the tools available to this account before ch
|
|
|
8
8
|
Run `artium-axi tools show <tool>` for its commands and a vetted example, then run `artium-axi <tool> <args>`.
|
|
9
9
|
Follow the returned next commands; they already include the Artium prefix.
|
|
10
10
|
Keep upstream arguments intact and use the managed credentials rather than configuring an upstream CLI directly.
|
|
11
|
+
See [client input handling](https://github.com/knowttl/artium-axi/blob/main/docs/client-reference.md#command-surface-and-subcommands) for Azure stdin selection and Tenable local uploads or explicit stdin.
|
|
11
12
|
|
|
12
13
|
If artium-axi is absent from PATH, use the installed command below in place of `artium-axi` in every example:
|
|
14
|
+
On Windows, choose the labelled PowerShell or Git Bash command for your shell.
|
|
13
15
|
|
|
14
16
|
<!-- artium-axi executable -->
|
|
15
17
|
The setup command records the standalone bundle's Node invocation here.
|