@enjoys/context-engine 1.0.0 → 1.0.2

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 (112) hide show
  1. package/data/commands/adb.json +322 -0
  2. package/data/commands/alembic.json +301 -0
  3. package/data/commands/artisan.json +277 -0
  4. package/data/commands/atlas.json +426 -0
  5. package/data/commands/auth0.json +648 -0
  6. package/data/commands/bat.json +84 -0
  7. package/data/commands/btop.json +59 -0
  8. package/data/commands/bundle.json +321 -0
  9. package/data/commands/composer.json +507 -0
  10. package/data/commands/dart.json +216 -0
  11. package/data/commands/dbmate.json +257 -0
  12. package/data/commands/docker-compose.json +384 -0
  13. package/data/commands/drizzle-kit.json +217 -0
  14. package/data/commands/expo.json +65 -0
  15. package/data/commands/fastlane.json +243 -0
  16. package/data/commands/fd.json +86 -0
  17. package/data/commands/flutter.json +298 -0
  18. package/data/commands/flyway.json +261 -0
  19. package/data/commands/fzf.json +103 -0
  20. package/data/commands/gem.json +267 -0
  21. package/data/commands/htop.json +56 -0
  22. package/data/commands/jq.json +100 -0
  23. package/data/commands/k9s.json +62 -0
  24. package/data/commands/linux.json +3007 -0
  25. package/data/commands/liquibase.json +399 -0
  26. package/data/commands/manifest.json +619 -0
  27. package/data/commands/minikube.json +60 -0
  28. package/data/commands/ng.json +64 -0
  29. package/data/commands/nuxt.json +60 -0
  30. package/data/commands/nvim.json +91 -0
  31. package/data/commands/php.json +157 -0
  32. package/data/commands/pm2.json +259 -0
  33. package/data/commands/pod.json +175 -0
  34. package/data/commands/prisma.json +257 -0
  35. package/data/commands/rails.json +372 -0
  36. package/data/commands/rake.json +360 -0
  37. package/data/commands/react-native.json +57 -0
  38. package/data/commands/rg.json +103 -0
  39. package/data/commands/rspec.json +257 -0
  40. package/data/commands/ruby.json +108 -0
  41. package/data/commands/screen.json +101 -0
  42. package/data/commands/sequelize.json +342 -0
  43. package/data/commands/snyk.json +442 -0
  44. package/data/commands/sonar-scanner.json +219 -0
  45. package/data/commands/stripe.json +314 -0
  46. package/data/commands/symfony.json +449 -0
  47. package/data/commands/tmux.json +197 -0
  48. package/data/commands/top.json +61 -0
  49. package/data/commands/trivy.json +367 -0
  50. package/data/commands/twilio.json +382 -0
  51. package/data/commands/typeorm.json +262 -0
  52. package/data/commands/vim.json +85 -0
  53. package/data/commands/vue.json +60 -0
  54. package/data/commands/wp.json +857 -0
  55. package/data/commands/xcodebuild.json +141 -0
  56. package/data/commands/yq.json +57 -0
  57. package/data/completion/bash.json +1184 -0
  58. package/data/completion/c.json +1067 -0
  59. package/data/completion/cpp.json +824 -0
  60. package/data/completion/csharp.json +860 -0
  61. package/data/completion/dockerfile.json +536 -0
  62. package/data/completion/go.json +1346 -0
  63. package/data/completion/html.json +806 -0
  64. package/data/completion/java.json +1112 -0
  65. package/data/completion/javascript.json +914 -0
  66. package/data/completion/lua.json +968 -0
  67. package/data/completion/php.json +1535 -0
  68. package/data/completion/python.json +1427 -0
  69. package/data/completion/ruby.json +1531 -0
  70. package/data/completion/rust.json +698 -0
  71. package/data/completion/sql.json +887 -0
  72. package/data/completion/toml.json +428 -0
  73. package/data/completion/typescript.json +338 -0
  74. package/data/completion/yaml.json +563 -0
  75. package/data/defination/bash.json +565 -0
  76. package/data/defination/c.json +865 -0
  77. package/data/defination/cpp.json +348 -0
  78. package/data/defination/csharp.json +144 -0
  79. package/data/defination/dockerfile.json +113 -0
  80. package/data/defination/go.json +561 -0
  81. package/data/defination/html.json +559 -0
  82. package/data/defination/java.json +184 -0
  83. package/data/defination/javascript.json +265 -0
  84. package/data/defination/lua.json +181 -0
  85. package/data/defination/php.json +726 -0
  86. package/data/defination/python.json +717 -0
  87. package/data/defination/ruby.json +670 -0
  88. package/data/defination/rust.json +207 -0
  89. package/data/defination/sql.json +473 -0
  90. package/data/defination/toml.json +251 -0
  91. package/data/defination/typescript.json +29 -0
  92. package/data/defination/yaml.json +197 -0
  93. package/data/hover/bash.json +245 -0
  94. package/data/hover/c.json +265 -0
  95. package/data/hover/cpp.json +210 -0
  96. package/data/hover/csharp.json +290 -0
  97. package/data/hover/dockerfile.json +145 -0
  98. package/data/hover/go.json +580 -0
  99. package/data/hover/html.json +250 -0
  100. package/data/hover/java.json +395 -0
  101. package/data/hover/javascript.json +330 -0
  102. package/data/hover/lua.json +265 -0
  103. package/data/hover/php.json +300 -0
  104. package/data/hover/python.json +380 -0
  105. package/data/hover/ruby.json +265 -0
  106. package/data/hover/rust.json +275 -0
  107. package/data/hover/sql.json +230 -0
  108. package/data/hover/toml.json +145 -0
  109. package/data/hover/typescript.json +120 -0
  110. package/data/hover/yaml.json +165 -0
  111. package/data/manifest.json +242 -0
  112. package/package.json +1 -1
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "top",
3
+ "description": "Display and manage Linux processes in real-time with an interactive full-screen interface",
4
+ "category": "System Monitoring",
5
+ "platforms": ["linux", "macos"],
6
+ "shells": ["bash", "zsh", "fish"],
7
+ "subcommands": [],
8
+ "globalOptions": [
9
+ { "name": "-h", "description": "Show usage information and exit" },
10
+ { "name": "-v", "description": "Show version info and exit" },
11
+ { "name": "-b", "description": "Batch mode - send output to stdout or file (useful for scripting, no interactive input)" },
12
+ { "name": "-c", "description": "Toggle full command line display vs. program name only" },
13
+ { "name": "-d", "description": "Delay time interval in seconds between screen updates (supports fractional seconds)", "takesValue": true },
14
+ { "name": "-H", "description": "Show individual threads instead of aggregating by process" },
15
+ { "name": "-i", "description": "Toggle idle process display - when set, tasks that have not used any CPU since the last update are hidden" },
16
+ { "name": "-n", "description": "Maximum number of iterations (refreshes) before exiting", "takesValue": true },
17
+ { "name": "-o", "description": "Sort by specified field name (e.g., %CPU, %MEM, TIME+, RES, PID)", "takesValue": true },
18
+ { "name": "-O", "description": "Print all available sort field names and exit" },
19
+ { "name": "-p", "description": "Monitor only processes with specified PIDs (comma-separated, max 20)", "takesValue": true },
20
+ { "name": "-u", "description": "Show only processes owned by the specified user (name or UID)", "takesValue": true },
21
+ { "name": "-U", "description": "Show only processes owned by the specified user (matches real, effective, saved, filesystem UID)", "takesValue": true },
22
+ { "name": "-1", "description": "Toggle single/separate CPU states display (show per-CPU stats)" },
23
+ { "name": "-E", "description": "Scale summary area memory units (k, m, g, t, p, e)", "takesValue": true },
24
+ { "name": "-e", "description": "Scale task area memory units (k, m, g, t, p, e)", "takesValue": true },
25
+ { "name": "-w", "description": "Set output width (in batch mode); without value uses 512 columns", "takesValue": true },
26
+ { "name": "-S", "description": "Toggle cumulative time mode (include dead child process time)" }
27
+ ],
28
+ "examples": [
29
+ { "command": "top", "description": "Launch interactive process viewer" },
30
+ { "command": "top -b -n 1", "description": "Batch mode with single iteration (for scripting)" },
31
+ { "command": "top -u www-data", "description": "Show only processes owned by www-data" },
32
+ { "command": "top -p 1234,5678", "description": "Monitor specific processes by PID" },
33
+ { "command": "top -o %MEM", "description": "Sort processes by memory usage" },
34
+ { "command": "top -d 5", "description": "Update display every 5 seconds" },
35
+ { "command": "top -b -n 5 -d 2 > top_output.txt", "description": "Capture 5 iterations at 2s intervals to a file" },
36
+ { "command": "top -H -p 1234", "description": "Show threads for a specific process" },
37
+ { "command": "top -1", "description": "Show individual CPU core statistics" },
38
+ { "command": "top -c -b -n 1 | head -30", "description": "Show full command lines in batch mode" }
39
+ ],
40
+ "relatedCommands": ["htop", "btop", "ps", "vmstat", "iostat"],
41
+ "contextEngine": {
42
+ "detectors": [
43
+ {
44
+ "name": "version",
45
+ "description": "top version information",
46
+ "command": "top -v 2>&1 | head -1",
47
+ "parser": "lines",
48
+ "cacheFor": 600,
49
+ "requiresCmd": "top"
50
+ },
51
+ {
52
+ "name": "snapshot",
53
+ "description": "Current top snapshot summary",
54
+ "command": "top -b -n 1 2>/dev/null | head -5",
55
+ "parser": "lines",
56
+ "cacheFor": 30,
57
+ "requiresCmd": "top"
58
+ }
59
+ ]
60
+ }
61
+ }
@@ -0,0 +1,367 @@
1
+ {
2
+ "name": "trivy",
3
+ "description": "Comprehensive security scanner for vulnerabilities in container images, file systems, git repositories, IaC configurations, Kubernetes clusters, and more",
4
+ "category": "security",
5
+ "platforms": ["linux", "macos", "windows"],
6
+ "shells": ["bash", "zsh", "fish", "powershell"],
7
+ "subcommands": [
8
+ {
9
+ "name": "image",
10
+ "description": "Scan a container image for vulnerabilities, misconfigurations, and secrets",
11
+ "args": [{ "name": "image", "type": "string", "required": true, "description": "Container image name and optional tag (e.g., nginx:latest)" }],
12
+ "options": [
13
+ { "name": "--severity", "short": "-s", "description": "Comma-separated list of severities: UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL", "type": "string" },
14
+ { "name": "--format", "short": "-f", "description": "Output format: table, json, sarif, cyclonedx, spdx, template, cosign-vuln, github", "type": "string" },
15
+ { "name": "--output", "short": "-o", "description": "Write results to file instead of stdout", "type": "string" },
16
+ { "name": "--ignore-unfixed", "description": "Show only fixed vulnerabilities" },
17
+ { "name": "--vuln-type", "description": "Comma-separated vulnerability types: os, library", "type": "string" },
18
+ { "name": "--scanners", "description": "Comma-separated scanners: vuln, misconfig, secret, license", "type": "string" },
19
+ { "name": "--exit-code", "description": "Exit code when vulnerabilities are found", "type": "string" },
20
+ { "name": "--timeout", "description": "Timeout for the scan (e.g., 5m0s)", "type": "string" },
21
+ { "name": "--skip-files", "description": "Comma-separated file paths to skip", "type": "string" },
22
+ { "name": "--skip-dirs", "description": "Comma-separated directories to skip", "type": "string" },
23
+ { "name": "--list-all-pkgs", "description": "List all packages regardless of vulnerability status" },
24
+ { "name": "--input", "description": "Scan a saved image archive (tar file)", "type": "string" },
25
+ { "name": "--platform", "description": "Target platform for multi-arch images (linux/amd64)", "type": "string" },
26
+ { "name": "--db-repository", "description": "OCI repository for vulnerability DB", "type": "string" },
27
+ { "name": "--java-db-repository", "description": "OCI repository for Java vulnerability DB", "type": "string" },
28
+ { "name": "--offline-scan", "description": "Do not send any requests to the internet" },
29
+ { "name": "--template", "description": "Path to a custom output template file", "type": "string" },
30
+ { "name": "--secret-config", "description": "Path to a secret scanning config file", "type": "string" }
31
+ ],
32
+ "examples": [
33
+ "trivy image nginx:latest",
34
+ "trivy image --severity HIGH,CRITICAL alpine:3.18",
35
+ "trivy image --format json --output results.json myregistry/myapp:v1.2",
36
+ "trivy image --ignore-unfixed --exit-code 1 python:3.11-slim",
37
+ "trivy image --scanners vuln,secret --severity CRITICAL node:20",
38
+ "trivy image --format sarif --output trivy.sarif ghcr.io/myorg/myapp:latest",
39
+ "trivy image --list-all-pkgs --format cyclonedx --output sbom.json ubuntu:22.04"
40
+ ]
41
+ },
42
+ {
43
+ "name": "fs",
44
+ "description": "Scan a local filesystem or project directory for vulnerabilities in dependencies and misconfigurations",
45
+ "args": [{ "name": "path", "type": "string", "required": true, "description": "Path to the directory or file to scan" }],
46
+ "options": [
47
+ { "name": "--severity", "short": "-s", "description": "Comma-separated severities to report", "type": "string" },
48
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
49
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
50
+ { "name": "--scanners", "description": "Scanners to use: vuln, misconfig, secret, license", "type": "string" },
51
+ { "name": "--skip-files", "description": "File paths to skip", "type": "string" },
52
+ { "name": "--skip-dirs", "description": "Directories to skip", "type": "string" },
53
+ { "name": "--exit-code", "description": "Exit code when issues found", "type": "string" },
54
+ { "name": "--config-file", "description": "Path to trivy config file", "type": "string" },
55
+ { "name": "--ignore-unfixed", "description": "Show only fixed vulnerabilities" },
56
+ { "name": "--secret-config", "description": "Path to secret scanning config", "type": "string" }
57
+ ],
58
+ "examples": [
59
+ "trivy fs .",
60
+ "trivy fs --severity HIGH,CRITICAL /path/to/project",
61
+ "trivy fs --scanners vuln,secret --format json --output results.json .",
62
+ "trivy fs --exit-code 1 --severity CRITICAL ./src"
63
+ ]
64
+ },
65
+ {
66
+ "name": "repo",
67
+ "description": "Scan a remote git repository for vulnerabilities",
68
+ "args": [{ "name": "repo-url", "type": "string", "required": true, "description": "Git repository URL or local path" }],
69
+ "options": [
70
+ { "name": "--severity", "short": "-s", "description": "Severities to report", "type": "string" },
71
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
72
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
73
+ { "name": "--branch", "description": "Branch to scan", "type": "string" },
74
+ { "name": "--commit", "description": "Commit hash to scan", "type": "string" },
75
+ { "name": "--tag", "description": "Tag to scan", "type": "string" },
76
+ { "name": "--scanners", "description": "Scanners to use", "type": "string" },
77
+ { "name": "--exit-code", "description": "Exit code on findings", "type": "string" }
78
+ ],
79
+ "examples": [
80
+ "trivy repo https://github.com/myorg/myrepo",
81
+ "trivy repo --branch develop --severity HIGH,CRITICAL https://github.com/myorg/myrepo",
82
+ "trivy repo --format json https://github.com/myorg/myrepo"
83
+ ]
84
+ },
85
+ {
86
+ "name": "rootfs",
87
+ "description": "Scan a root filesystem (e.g., host machine or exported container filesystem)",
88
+ "args": [{ "name": "path", "type": "string", "required": true, "description": "Path to the root filesystem" }],
89
+ "options": [
90
+ { "name": "--severity", "short": "-s", "description": "Severities to report", "type": "string" },
91
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
92
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
93
+ { "name": "--scanners", "description": "Scanners to use", "type": "string" },
94
+ { "name": "--exit-code", "description": "Exit code on findings", "type": "string" }
95
+ ],
96
+ "examples": [
97
+ "trivy rootfs /",
98
+ "trivy rootfs --severity CRITICAL /mnt/exported-fs"
99
+ ]
100
+ },
101
+ {
102
+ "name": "sbom",
103
+ "description": "Generate or scan a Software Bill of Materials (SBOM)",
104
+ "args": [{ "name": "target", "type": "string", "required": true, "description": "SBOM file path or image to generate SBOM from" }],
105
+ "options": [
106
+ { "name": "--format", "short": "-f", "description": "SBOM format: cyclonedx, spdx, spdx-json", "type": "string" },
107
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
108
+ { "name": "--severity", "short": "-s", "description": "Severities for SBOM scanning", "type": "string" },
109
+ { "name": "--scanners", "description": "Scanners for SBOM scanning", "type": "string" },
110
+ { "name": "--artifact-type", "description": "Type of artifact (image, fs, repo)", "type": "string" }
111
+ ],
112
+ "examples": [
113
+ "trivy sbom --format cyclonedx --output sbom.json nginx:latest",
114
+ "trivy sbom ./sbom.json",
115
+ "trivy sbom --format spdx-json --output sbom-spdx.json ."
116
+ ]
117
+ },
118
+ {
119
+ "name": "config",
120
+ "description": "Scan IaC (Infrastructure as Code) files for misconfigurations (Terraform, CloudFormation, Dockerfile, Kubernetes, Helm, etc.)",
121
+ "args": [{ "name": "path", "type": "string", "required": true, "description": "Path to IaC files or directory" }],
122
+ "options": [
123
+ { "name": "--severity", "short": "-s", "description": "Severities to report", "type": "string" },
124
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
125
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
126
+ { "name": "--exit-code", "description": "Exit code on findings", "type": "string" },
127
+ { "name": "--skip-files", "description": "Files to skip", "type": "string" },
128
+ { "name": "--skip-dirs", "description": "Directories to skip", "type": "string" },
129
+ { "name": "--policy", "description": "Path to custom Rego policies", "type": "string" },
130
+ { "name": "--namespaces", "description": "Rego namespaces", "type": "string" },
131
+ { "name": "--tf-vars", "description": "Path to terraform.tfvars file", "type": "string" },
132
+ { "name": "--helm-set", "description": "Set Helm values on the command line", "type": "string" },
133
+ { "name": "--helm-values", "description": "Path to Helm values file", "type": "string" }
134
+ ],
135
+ "examples": [
136
+ "trivy config .",
137
+ "trivy config --severity HIGH,CRITICAL ./terraform",
138
+ "trivy config --format json --output misconfig.json ./k8s-manifests",
139
+ "trivy config --tf-vars terraform.tfvars ./infra",
140
+ "trivy config --exit-code 1 Dockerfile"
141
+ ]
142
+ },
143
+ {
144
+ "name": "kubernetes",
145
+ "description": "Scan a running Kubernetes cluster for vulnerabilities and misconfigurations",
146
+ "args": [{ "name": "context", "type": "string", "required": false, "description": "Kubernetes context or 'cluster' for full cluster scan" }],
147
+ "options": [
148
+ { "name": "--severity", "short": "-s", "description": "Severities to report", "type": "string" },
149
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
150
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
151
+ { "name": "--namespace", "short": "-n", "description": "Kubernetes namespace to scan", "type": "string" },
152
+ { "name": "--all-namespaces", "short": "-A", "description": "Scan all namespaces" },
153
+ { "name": "--scanners", "description": "Scanners: vuln, misconfig, secret", "type": "string" },
154
+ { "name": "--report", "description": "Report type: summary, all", "type": "string" },
155
+ { "name": "--components", "description": "Components to scan: workload, infra", "type": "string" },
156
+ { "name": "--kubeconfig", "description": "Path to kubeconfig file", "type": "string" },
157
+ { "name": "--context", "description": "Kubernetes context to use", "type": "string" },
158
+ { "name": "--parallel", "description": "Number of parallel scan goroutines", "type": "string" },
159
+ { "name": "--timeout", "description": "Timeout for the scan", "type": "string" },
160
+ { "name": "--exclude-owned", "description": "Exclude resources owned by other resources (e.g., ReplicaSets owned by Deployments)" },
161
+ { "name": "--tolerations", "description": "Tolerations for node-collector DaemonSet", "type": "string" }
162
+ ],
163
+ "examples": [
164
+ "trivy kubernetes --report summary cluster",
165
+ "trivy kubernetes --namespace default --severity HIGH,CRITICAL cluster",
166
+ "trivy kubernetes -A --format json --output k8s-report.json cluster",
167
+ "trivy kubernetes --scanners vuln,misconfig --report all cluster"
168
+ ]
169
+ },
170
+ {
171
+ "name": "vm",
172
+ "description": "Scan a virtual machine image for vulnerabilities",
173
+ "args": [{ "name": "vm-image", "type": "string", "required": true, "description": "VM image path or identifier" }],
174
+ "options": [
175
+ { "name": "--severity", "short": "-s", "description": "Severities to report", "type": "string" },
176
+ { "name": "--format", "short": "-f", "description": "Output format", "type": "string" },
177
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" },
178
+ { "name": "--scanners", "description": "Scanners to use", "type": "string" }
179
+ ],
180
+ "examples": [
181
+ "trivy vm --severity HIGH,CRITICAL ami:12345",
182
+ "trivy vm --format json ./disk.vmdk"
183
+ ]
184
+ },
185
+ {
186
+ "name": "server",
187
+ "description": "Run Trivy in server mode, providing a REST API for remote scanning",
188
+ "args": [],
189
+ "options": [
190
+ { "name": "--listen", "description": "Address and port to listen on", "type": "string" },
191
+ { "name": "--token", "description": "Bearer token for API authentication", "type": "string" },
192
+ { "name": "--token-header", "description": "Custom header name for token", "type": "string" },
193
+ { "name": "--db-repository", "description": "OCI repository for vulnerability DB", "type": "string" },
194
+ { "name": "--cache-dir", "description": "Cache directory path", "type": "string" }
195
+ ],
196
+ "examples": [
197
+ "trivy server --listen 0.0.0.0:4954",
198
+ "trivy server --listen :8080 --token mytoken"
199
+ ]
200
+ },
201
+ {
202
+ "name": "plugin install",
203
+ "description": "Install a Trivy plugin",
204
+ "args": [{ "name": "plugin", "type": "string", "required": true, "description": "Plugin name or repository URL" }],
205
+ "options": [],
206
+ "examples": [
207
+ "trivy plugin install github.com/aquasecurity/trivy-plugin-kubectl",
208
+ "trivy plugin install referrer"
209
+ ]
210
+ },
211
+ {
212
+ "name": "plugin list",
213
+ "description": "List installed Trivy plugins",
214
+ "args": [],
215
+ "options": [],
216
+ "examples": ["trivy plugin list"]
217
+ },
218
+ {
219
+ "name": "plugin info",
220
+ "description": "Show information about a plugin",
221
+ "args": [{ "name": "plugin", "type": "string", "required": true, "description": "Plugin name" }],
222
+ "options": [],
223
+ "examples": ["trivy plugin info kubectl"]
224
+ },
225
+ {
226
+ "name": "plugin uninstall",
227
+ "description": "Uninstall a Trivy plugin",
228
+ "args": [{ "name": "plugin", "type": "string", "required": true, "description": "Plugin name to uninstall" }],
229
+ "options": [],
230
+ "examples": ["trivy plugin uninstall kubectl"]
231
+ },
232
+ {
233
+ "name": "plugin run",
234
+ "description": "Run an installed plugin",
235
+ "args": [{ "name": "plugin", "type": "string", "required": true, "description": "Plugin name to run" }],
236
+ "options": [],
237
+ "examples": ["trivy plugin run kubectl -- get pods"]
238
+ },
239
+ {
240
+ "name": "plugin update",
241
+ "description": "Update installed plugins",
242
+ "args": [{ "name": "plugin", "type": "string", "required": false, "description": "Plugin name (all if omitted)" }],
243
+ "options": [],
244
+ "examples": ["trivy plugin update", "trivy plugin update kubectl"]
245
+ },
246
+ {
247
+ "name": "module install",
248
+ "description": "Install a WebAssembly module for custom analysis",
249
+ "args": [{ "name": "module", "type": "string", "required": true, "description": "Module repository URL" }],
250
+ "options": [],
251
+ "examples": ["trivy module install github.com/aquasecurity/trivy-module-spring4shell"]
252
+ },
253
+ {
254
+ "name": "module list",
255
+ "description": "List installed modules",
256
+ "args": [],
257
+ "options": [],
258
+ "examples": ["trivy module list"]
259
+ },
260
+ {
261
+ "name": "module uninstall",
262
+ "description": "Uninstall a module",
263
+ "args": [{ "name": "module", "type": "string", "required": true, "description": "Module name" }],
264
+ "options": [],
265
+ "examples": ["trivy module uninstall spring4shell"]
266
+ },
267
+ {
268
+ "name": "clean",
269
+ "description": "Remove cached data including vulnerability databases and scan caches",
270
+ "args": [],
271
+ "options": [
272
+ { "name": "--all", "short": "-a", "description": "Remove all cached data" },
273
+ { "name": "--vuln-db", "description": "Remove only the vulnerability database cache" },
274
+ { "name": "--java-db", "description": "Remove only the Java database cache" },
275
+ { "name": "--checks-bundle", "description": "Remove only the checks bundle cache" }
276
+ ],
277
+ "examples": [
278
+ "trivy clean --all",
279
+ "trivy clean --vuln-db",
280
+ "trivy clean --java-db"
281
+ ]
282
+ },
283
+ {
284
+ "name": "convert",
285
+ "description": "Convert between SBOM formats or trivy result formats",
286
+ "args": [{ "name": "input", "type": "string", "required": true, "description": "Input file path" }],
287
+ "options": [
288
+ { "name": "--format", "short": "-f", "description": "Target output format", "type": "string" },
289
+ { "name": "--output", "short": "-o", "description": "Output file path", "type": "string" }
290
+ ],
291
+ "examples": [
292
+ "trivy convert --format cyclonedx --output sbom.cdx.json results.json",
293
+ "trivy convert --format sarif --output results.sarif results.json"
294
+ ]
295
+ },
296
+ {
297
+ "name": "version",
298
+ "description": "Show Trivy version and build information",
299
+ "args": [],
300
+ "options": [
301
+ { "name": "--format", "short": "-f", "description": "Output format (json)", "type": "string" }
302
+ ],
303
+ "examples": ["trivy version", "trivy version --format json"]
304
+ }
305
+ ],
306
+ "globalOptions": [
307
+ { "name": "--help", "short": "-h", "description": "Show help information" },
308
+ { "name": "--version", "short": "-v", "description": "Show Trivy version" },
309
+ { "name": "--severity", "short": "-s", "description": "Severities of security issues to report: UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL", "type": "string" },
310
+ { "name": "--format", "short": "-f", "description": "Output format: table, json, sarif, cyclonedx, spdx, template, cosign-vuln, github", "type": "string" },
311
+ { "name": "--output", "short": "-o", "description": "Write output to file", "type": "string" },
312
+ { "name": "--exit-code", "description": "Exit code when security issues found (default: 0)", "type": "string" },
313
+ { "name": "--timeout", "description": "Timeout for operations", "type": "string" },
314
+ { "name": "--cache-dir", "description": "Cache directory path", "type": "string" },
315
+ { "name": "--config-file", "description": "Path to Trivy config file (trivy.yaml)", "type": "string" },
316
+ { "name": "--quiet", "short": "-q", "description": "Suppress progress bar and log output" },
317
+ { "name": "--debug", "short": "-d", "description": "Enable debug logging" },
318
+ { "name": "--insecure", "description": "Allow insecure server connections for registries" }
319
+ ],
320
+ "examples": [
321
+ "trivy image nginx:latest",
322
+ "trivy image --severity HIGH,CRITICAL --ignore-unfixed alpine:3.18",
323
+ "trivy image --format json --output results.json myapp:latest",
324
+ "trivy fs --scanners vuln,secret .",
325
+ "trivy repo https://github.com/myorg/myrepo",
326
+ "trivy config --severity HIGH,CRITICAL ./terraform",
327
+ "trivy kubernetes --report summary cluster",
328
+ "trivy sbom --format cyclonedx --output sbom.json nginx:latest",
329
+ "trivy image --exit-code 1 --severity CRITICAL python:3.11-slim",
330
+ "trivy server --listen 0.0.0.0:4954",
331
+ "trivy clean --all",
332
+ "trivy version"
333
+ ],
334
+ "relatedCommands": ["snyk", "docker", "kubectl"],
335
+ "contextEngine": {
336
+ "detectors": [
337
+ {
338
+ "name": "trivy_version",
339
+ "description": "Detect installed Trivy version",
340
+ "command": "trivy version --format json 2>/dev/null",
341
+ "parser": "json",
342
+ "cacheFor": 300
343
+ },
344
+ {
345
+ "name": "trivy_config",
346
+ "description": "Detect trivy.yaml configuration in the project",
347
+ "command": "test -f trivy.yaml && cat trivy.yaml || test -f .trivy.yaml && cat .trivy.yaml",
348
+ "parser": "lines",
349
+ "cacheFor": 60
350
+ },
351
+ {
352
+ "name": "trivy_plugins",
353
+ "description": "Detect installed Trivy plugins",
354
+ "command": "trivy plugin list 2>/dev/null",
355
+ "parser": "lines",
356
+ "cacheFor": 120
357
+ },
358
+ {
359
+ "name": "container_images",
360
+ "description": "Detect local container images available for scanning",
361
+ "command": "docker images --format '{{.Repository}}:{{.Tag}}' 2>/dev/null | head -20",
362
+ "parser": "lines",
363
+ "cacheFor": 30
364
+ }
365
+ ]
366
+ }
367
+ }