Artifactory
Query and monitor JFrog Artifactory from a package consumer perspective. AQL-powered package search, repository health checks, and service status monitoring with diff detection for tracking package changes over time.
Authentication
Uses a JFrog Identity Token or Access Token stored in a swamp vault. Generate a token via the Artifactory UI or REST API.
Usage
swamp model create @webframp/artifactory packages \
--global-arg url=https://packages.example.com \
--global-arg 'token=vault://my-vault/artifactory-token'
swamp model method run packages system_health
swamp model method run packages list_repos
swamp model method run packages query_packages --input 'query=items.find({"repo":"my-repo"})'2026.08.28.1
Changed: Normalized the extension license to Apache-2.0 and corrected the copyright holder to "Sean Escriva". Extensions that previously shipped an MIT LICENSE.md are now Apache-2.0, consistent with the repository root and every other extension. No code or behavioral changes.
Upgrade note: License text only. No API, schema, or runtime behavior changed.
2026.08.26.3
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
Global Arguments
| Argument | Type | Description |
|---|---|---|
| url | string | Artifactory base URL including context path (e.g., https://packages.example.com/artifactory) |
| token | string | vault:// reference to JFrog Identity Token or Access Token |
| Argument | Type | Description |
|---|---|---|
| repoKey? | string | Specific repo. Omit to scan all. |
| Argument | Type | Description |
|---|---|---|
| query | string | AQL query string (e.g., items.find({"repo":"my-repo"})) |
| limit | number | Maximum results to return |
| Argument | Type | Description |
|---|---|---|
| query | string | AQL query string (same as used in query_packages) |
| limit | number | Maximum results to return |
Resources
2026.08.26.3
Fixed: Restored inline npm:zod@4.4.3 import specifiers so the registry
quality scorer can resolve dependencies and score the extension. An earlier
release used a bare "zod" import-map specifier, which published but scored as
unscored.
Changed: Retained explicit compilerOptions.strict in deno.json. No
behavioral or schema changes.
2026.08.26.1
Fixed: Added missing description field to upgrade entry for version
2026.08.24.2. The omission caused swamp extension pull to fail with a catalog
validation error ("upgrades.N.description: Invalid input: expected string,
received undefined").
2026.08.24.3
Added: Output metadata attributes for observability.
durationMs: Method execution duration in milliseconds.collectedBy: Extension name that produced the data.fetchedAt: ISO 8601 timestamp when data was fetched (added to resources that previously lacked it).
2026.08.24.2
Fixed source/manifest version mismatch. Added Troubleshooting section documenting 401 token expiry, 403 graceful degrade on admin endpoints, first-run empty diff, truncation-suppressed diff, and URL context path requirements.
2026.08.21.2
Changed: list_repos, get_repo_health, diff_packages, and
get_storage_info used to raise a bare HTTP <status> error on a
non-200 response, discarding the response body. They now include the
request URL and the server's response body in the error message, matching
query_packages's existing behavior, so a failed call says what was
attempted and why the server rejected it instead of just the status code.
query_packages and diff_packages now reject an empty query argument
before making any request, rather than sending it to Artifactory and
surfacing whatever error AQL returns for an empty query string.
2026.08.21.1
Changed: Added descriptions to the previously undocumented fields across
the health, repos, packages, package-diff, and storage resource
schemas, and to the diff_packages method's limit argument. Tightened the
global token argument to require a non-empty string.
2026.07.18.1
Added: An upgrades array entry (no-op) to artifactory.ts for proper
typeVersion tracking on existing instances. No schema or behavior changes.
2026.07.18.1
Added: An upgrades array entry (no-op) to artifactory.ts for proper
typeVersion tracking on existing instances. No schema or behavior changes.
- Has README or module doc2/2earned
- README has a code example1/1earned
- README is substantive1/1earned
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License declared1/1earned
- Verified public repository2/2earned