{"id":"13389d37-7fc7-4b07-a40d-716d2fab8857","entityType":"agent","slug":"clawhub-lentiancn-skill-docker","name":"Docker","canonicalUrl":"https://www.xpersona.co/agent/clawhub-lentiancn-skill-docker","canonicalPath":"/agent/clawhub-lentiancn-skill-docker","generatedAt":"2026-10-10T21:44:12.281Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":null},"description":"skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... Skill: Docker Owner: lentiancn Summary: skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... Tags: latest:1.0.6 Version history: v1.0.6 | 2026-06-01T08:31:34.259Z | user - Minor documentation restructure and naming update in SKILL.md for clarity and consistency. - Renamed interfaces to skill-docker:interface-01,","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.3K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s171s9nrp26s708az7wxhva2g583swdr:skill-docker","sourceUrl":"https://clawhub.ai/lentiancn/skill-docker","homepage":"https://clawhub.ai/lentiancn/skills/skill-docker","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/lentiancn/skill-docker","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/lentiancn/skills/skill-docker","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":62,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... "},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":null},"stars":null,"forks":null,"downloads":1300,"packageName":null,"latestVersion":"1.0.6","tractionLabel":"1.3K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T18:17:19.902Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T18:17:19.903Z","lastCrawledAt":"2026-10-10T18:17:19.902Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T18:17:19.902Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.6","createdAt":"2026-06-01T08:31:34.259Z","changelog":"- Minor documentation restructure and naming update in SKILL.md for clarity and consistency. - Renamed interfaces to skill-docker:interface-01, skill-docker:interface-02, etc. - Streamlined and reformatted usage steps and interface descriptions. - Removed the skill-card.md file. - No changes to command functionality or logic.","fileCount":7,"zipByteSize":6245},{"version":"1.0.5","createdAt":"2026-05-28T03:56:19.256Z","changelog":"- Clarified modification policy: Added an \"Important Principles\" section emphasizing that files under skill-docker must not be edited directly. - No functional or interface changes to the skill itself. - Documentation was restructured for clearer guidance regarding maintenance and file integrity.","fileCount":7,"zipByteSize":6271},{"version":"1.0.4","createdAt":"2026-05-25T15:41:53.763Z","changelog":"- Documentation updated: new warning not to modify any files under skill-docker. - No functional or interface changes.","fileCount":6,"zipByteSize":5063},{"version":"1.0.3","createdAt":"2026-05-24T14:17:23.213Z","changelog":"- Documentation updated to clarify that DOCKER_BUILDER_NAME is now prompted only if not provided during build and push. - Step 4.1 in docker:interface 4 now checks if DOCKER_BUILDER_NAME is available before prompting the user. - Added more explicit step descriptions for user prompts and variable assignment in the build and push workflow. - Minor formatting and consistency improvements to interface documentation.","fileCount":6,"zipByteSize":5056},{"version":"1.0.2","createdAt":"2026-05-24T05:07:46.858Z","changelog":"- Renamed script: fixed typo in build destroy script (now scripts/docker_buildx_destroy.sh). - Updated all documentation and commands to reference the correct script name. - Improved environment variable names for clarity and consistency throughout the usage instructions. - Clarified input and output specifications for all interfaces. - Expanded and refined step-by-step instructions for the build and push workflow.","fileCount":6,"zipByteSize":4952},{"version":"1.0.1","createdAt":"2026-05-24T01:12:05.823Z","changelog":"- Added three new scripts: docker_buildx_init.sh, docker_buildx_destory.sh, and docker_buildx_push.sh. - Introduced new interfaces for builder initialization, destruction, and image build & push using Buildx. - Updated documentation with detailed usage instructions and expected outputs for each script. - Expanded functionality beyond manifest inspect to cover the full build and push workflow.","fileCount":6,"zipByteSize":4937},{"version":"1.0.0","createdAt":"2026-05-22T03:52:05.989Z","changelog":"Initial release of skill-docker. - Adds interface to inspect Docker image manifests via a shell script. - Accepts a Docker image and one or more tags as input. - Returns JSON with tag existence and architecture details on success. - Provides clear error messages for usage and authentication issues.","fileCount":3,"zipByteSize":2456}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s171s9nrp26s708az7wxhva2g583swdr:skill-docker","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T21:44:12.280Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-lentiancn-skill-docker/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":null},"readme":"Skill: Docker\n\nOwner: lentiancn\n\nSummary: skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -...\n\nTags: latest:1.0.6\n\nVersion history:\n\nv1.0.6 | 2026-06-01T08:31:34.259Z | user\n\n- Minor documentation restructure and naming update in SKILL.md for clarity and consistency.\n- Renamed interfaces to skill-docker:interface-01, skill-docker:interface-02, etc.\n- Streamlined and reformatted usage steps and interface descriptions.\n- Removed the skill-card.md file.\n- No changes to command functionality or logic.\n\nv1.0.5 | 2026-05-28T03:56:19.256Z | user\n\n- Clarified modification policy: Added an \"Important Principles\" section emphasizing that files under skill-docker must not be edited directly.\n- No functional or interface changes to the skill itself.\n- Documentation was restructured for clearer guidance regarding maintenance and file integrity.\n\nv1.0.4 | 2026-05-25T15:41:53.763Z | user\n\n- Documentation updated: new warning not to modify any files under skill-docker.\n- No functional or interface changes.\n\nv1.0.3 | 2026-05-24T14:17:23.213Z | user\n\n- Documentation updated to clarify that DOCKER_BUILDER_NAME is now prompted only if not provided during build and push.\n- Step 4.1 in docker:interface 4 now checks if DOCKER_BUILDER_NAME is available before prompting the user.\n- Added more explicit step descriptions for user prompts and variable assignment in the build and push workflow.\n- Minor formatting and consistency improvements to interface documentation.\n\nv1.0.2 | 2026-05-24T05:07:46.858Z | user\n\n- Renamed script: fixed typo in build destroy script (now scripts/docker_buildx_destroy.sh).\n- Updated all documentation and commands to reference the correct script name.\n- Improved environment variable names for clarity and consistency throughout the usage instructions.\n- Clarified input and output specifications for all interfaces.\n- Expanded and refined step-by-step instructions for the build and push workflow.\n\nv1.0.1 | 2026-05-24T01:12:05.823Z | user\n\n- Added three new scripts: docker_buildx_init.sh, docker_buildx_destory.sh, and docker_buildx_push.sh.\n- Introduced new interfaces for builder initialization, destruction, and image build & push using Buildx.\n- Updated documentation with detailed usage instructions and expected outputs for each script.\n- Expanded functionality beyond manifest inspect to cover the full build and push workflow.\n\nv1.0.0 | 2026-05-22T03:52:05.989Z | user\n\nInitial release of skill-docker.\n\n- Adds interface to inspect Docker image manifests via a shell script.\n- Accepts a Docker image and one or more tags as input.\n- Returns JSON with tag existence and architecture details on success.\n- Provides clear error messages for usage and authentication issues.\n\nArchive index:\n\nArchive v1.0.6: 7 files, 6245 bytes\n\nFiles: scripts/docker_buildx_destroy.sh (713b), scripts/docker_buildx_init.sh (1386b), scripts/docker_buildx_push.sh (1822b), scripts/docker_manifest_inspect.sh (2538b), skill-card.md (1993b), SKILL.md (5061b), _meta.json (131b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: skill-docker\ndescription: \"skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 - Build and Push\"\n---\n\n## Important Principles ⭐\n\n**Modification Prohibited (Mandatory)**: Any files under `skill-docker`. This skill is maintained via\n`openclaw skills update skill-docker`; any alterations will disrupt its normal operation.\n\n## skill-docker:interface-01 - Manifest Inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<DOCKER_TAG1> [<DOCKER_TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n### Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. DOCKER_TAGS=(1.0.0 latest))\n\n### Return value (result)\n\n**Success**: (sample only)\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error**: (sample only)\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n## skill-docker:interface-02 - Build Init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n### Return value (result)\n\n**Success**: (sample only)\n\n- `SUCCESS: initted`\n\n## skill-docker:interface-03 - Build Destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n### Return value (result)\n\n**Success**: (sample only)\n\n- `SUCCESS: destroyed`\n\n## skill-docker:interface-04 - Build and Push\n\n### skill-docker:step-0401\n\nIf the `DOCKER_BUILDER_NAME` is not provided, ask user with \"Confirm to use docker builder 'skilldockerbuilder' ?\" to\nobtain the value, then assign the value to variable __DOCKER_BUILDER_NAME__ . Then ask user with \"Confirm to remove all\nbuild cache (including internal/frontend images) ?\", then assign the value to variable __DOCKER_PRUNE_FIRST__\n\n### skill-docker:step-0402\n\nCall `skill-docker:interface-02` to initialize builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and\nwith `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n### skill-docker:step-0403\n\nRun build and push\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<DOCKER_PROVENANCE> DOCKER_SBOM=<DOCKER_SBOM> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n#### Input value\n\n- `DOCKER_BUILDER_NAME`: Fixed, via `variable __DOCKER_BUILDER_NAME__`\n- `DOCKER_PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `DOCKER_IMAGE_TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0.0 myimage:latest))\n- `DOCKER_BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(BUILD_ARG1=val1 BUILD_ARG2=val2))\n- `DOCKER_PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `DOCKER_SBOM`: Optional, enable SBOM attestation (default: false)\n\n#### Return value (result)\n\n**Success**: (sample only)\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error**: (sample only)\n\n- `ERROR: DOCKER_BUILDER_NAME is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: DOCKER_PLATFORM is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: At least one tag must be provided via DOCKER_IMAGE_TAGS environment variable. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n\n### skill-docker:step-0404\n\nCall `skill-docker:interface-03` to destroy builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with\n`DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n## More skills\n\nhttps://github.com/lentiancn/skills\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1780302694259\n}\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nHelps agents inspect Docker image manifests, initialize and destroy Docker buildx builders, and build and push multi-platform Docker images.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[lentiancn](https://clawhub.ai/user/lentiancn)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and release engineers use this skill to inspect container image tags and automate Docker buildx setup, teardown, and multi-platform image publishing.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Build initialization can run an unpinned third-party binfmt container with privileged host access.\n\nMitigation: Use the skill only on a trusted, disposable, or dedicated Docker build host and pin the binfmt image by digest before use.\n\nRisk: Build and push operations can publish images to the configured registry.\n\nMitigation: Review image tags, target registry, build arguments, provenance, and SBOM settings before invoking the push workflow.\n\nRisk: Buildx cleanup can delete system-wide build cache when pruning is enabled.\n\nMitigation: Confirm the builder name and leave cache pruning disabled unless cache removal is intentional.\n\n## Reference(s):\n\n- [ClawHub Docker Skill Page](https://clawhub.ai/lentiancn/skills/skill-docker)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline bash commands and JSON command output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May return Docker manifest JSON, success strings, error strings, and Docker build or registry side effects.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.5: 7 files, 6271 bytes\n\nFiles: scripts/docker_buildx_destroy.sh (713b), scripts/docker_buildx_init.sh (1386b), scripts/docker_buildx_push.sh (1822b), scripts/docker_manifest_inspect.sh (2538b), skill-card.md (2271b), SKILL.md (4936b), _meta.json (131b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: skill-docker\ndescription: \"docker:interface 1 - manifest inspect; docker:interface 2 - build init; docker:interface 3 - build destroy; docker:interface 4 - build and push\"\n---\n\n# Important Principles ⭐\n\n**Modification Restriction (Mandatory)**: Do not modify any files under `skill-docker`. This skill is maintained via\n`openclaw skills update skill-docker`; any alterations will disrupt its normal operation.\n\n---\n\n# docker:interface 1 - manifest inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. TAGS=(1.0.0 latest))\n\n## Return value (result)\n\n**Success: (sample only)**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error: (sample only)**\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# docker:interface 2 - build init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: initted`\n\n---\n\n# docker:interface 3 - build destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: destroyed`\n\n---\n\n# docker:interface 4 - build and push\n\n## step 4.1: If the `DOCKER_BUILDER_NAME` is not provided, ask user with \"Confirm to use docker builder 'skilldockerbuilder' ?\" to obtain the value, then assign the value to variable __DOCKER_BUILDER_NAME__ . Then ask user with \"Confirm to remove all build cache (including internal/frontend images) ?\", then assign the value to variable __DOCKER_PRUNE_FIRST__\n\n## step 4.2: Call `docker:interface 2` to initialize builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n## step 4.3: Run build and push\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<DOCKER_PROVENANCE> DOCKER_SBOM=<DOCKER_SBOM> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Fixed, via `variable __DOCKER_BUILDER_NAME__`\n- `DOCKER_PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `DOCKER_IMAGE_TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0.0 myimage:latest))\n- `DOCKER_BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(BUILD_ARG1=val1 BUILD_ARG2=val2))\n- `DOCKER_PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `DOCKER_SBOM`: Optional, enable SBOM attestation (default: false)\n\n### Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error: (sample only)**\n\n- `ERROR: DOCKER_BUILDER_NAME is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: DOCKER_PLATFORM is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: At least one tag must be provided via DOCKER_IMAGE_TAGS environment variable. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n\n## step 4.4: Call `docker:interface 3` to destroy builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1779940579256\n}\n\nFile v1.0.5:skill-card.md\n\n## Description: <br>\nProvides Docker helper interfaces for manifest inspection, buildx builder initialization and teardown, and multi-platform image build and push workflows. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[lentiancn](https://clawhub.ai/user/lentiancn) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and release engineers use this skill to inspect Docker image manifests and run scripted buildx workflows for multi-platform container image publishing. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Privileged Docker operations can change host-level build support and builder state. <br>\nMitigation: Run the skill only on a dedicated workstation or CI runner where binfmt registration and builder replacement are acceptable. <br>\nRisk: Build and push workflows can publish images to remote registries under the provided tags. <br>\nMitigation: Confirm registry authentication, image names, and tags before running build-and-push commands. <br>\nRisk: Prune options can remove build cache that may be shared by other projects. <br>\nMitigation: Avoid enabling cache pruning on shared developer hosts unless the cache impact is understood. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/lentiancn/skill-docker) <br>\n- [lentiancn skills repository](https://github.com/lentiancn/skills) <br>\n- [Repository license](https://github.com/lentiancn/skills/blob/main/LICENSE) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [JSON, Shell commands, Configuration, Status messages] <br>\n**Output Format:** [JSON and plain-text command output from Docker shell scripts] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs depend on Docker daemon state, registry authentication, selected image tags, and buildx builder configuration.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.4: 6 files, 5063 bytes\n\nFiles: scripts/docker_buildx_destroy.sh (713b), scripts/docker_buildx_init.sh (1386b), scripts/docker_buildx_push.sh (1822b), scripts/docker_manifest_inspect.sh (2538b), SKILL.md (4861b), _meta.json (131b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: skill-docker\ndescription: docker:interface 1 - manifest inspect; docker:interface 2 - build init; docker:interface 3 - build destroy; docker:interface 4 - build and push\n# ⚠️ DO NOT MODIFY ANY FILES UNDER skill-docker — maintained via 'openclaw skills update skill-docker'\n# Any change may affect the normal operation of the skill.\n---\n\n# docker:interface 1 - manifest inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. TAGS=(1.0.0 latest))\n\n## Return value (result)\n\n**Success: (sample only)**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error: (sample only)**\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# docker:interface 2 - build init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: initted`\n\n---\n\n# docker:interface 3 - build destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: destroyed`\n\n---\n\n# docker:interface 4 - build and push\n\n## step 4.1: If the `DOCKER_BUILDER_NAME` is not provided, ask user with \"Confirm to use docker builder 'skilldockerbuilder' ?\" to obtain the value, then assign the value to variable __DOCKER_BUILDER_NAME__ . Then ask user with \"Confirm to remove all build cache (including internal/frontend images) ?\", then assign the value to variable __DOCKER_PRUNE_FIRST__\n\n## step 4.2: Call `docker:interface 2` to initialize builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n## step 4.3: Run build and push\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<DOCKER_PROVENANCE> DOCKER_SBOM=<DOCKER_SBOM> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Fixed, via `variable __DOCKER_BUILDER_NAME__`\n- `DOCKER_PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `DOCKER_IMAGE_TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0.0 myimage:latest))\n- `DOCKER_BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(BUILD_ARG1=val1 BUILD_ARG2=val2))\n- `DOCKER_PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `DOCKER_SBOM`: Optional, enable SBOM attestation (default: false)\n\n### Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error: (sample only)**\n\n- `ERROR: DOCKER_BUILDER_NAME is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: DOCKER_PLATFORM is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: At least one tag must be provided via DOCKER_IMAGE_TAGS environment variable. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n\n## step 4.4: Call `docker:interface 3` to destroy builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1779723713763\n}\n\nArchive v1.0.3: 6 files, 5056 bytes\n\nFiles: scripts/docker_buildx_destroy.sh (713b), scripts/docker_buildx_init.sh (1386b), scripts/docker_buildx_push.sh (1822b), scripts/docker_manifest_inspect.sh (2538b), SKILL.md (4842b), _meta.json (131b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: skill-docker\ndescription: docker:interface 1 - manifest inspect; docker:interface 2 - build init; docker:interface 3 - build destroy; docker:interface 4 - build and push\n# ⚠️ DO NOT MODIFY THIS FILE — maintained via 'openclaw skills update skill-docker'\n# Any change may affect the normal operation of the skill.\n---\n\n# docker:interface 1 - manifest inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. TAGS=(1.0.0 latest))\n\n## Return value (result)\n\n**Success: (sample only)**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error: (sample only)**\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# docker:interface 2 - build init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: initted`\n\n---\n\n# docker:interface 3 - build destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: destroyed`\n\n---\n\n# docker:interface 4 - build and push\n\n## step 4.1: If the `DOCKER_BUILDER_NAME` is not provided, ask user with \"Confirm to use docker builder 'skilldockerbuilder' ?\" to obtain the value, then assign the value to variable __DOCKER_BUILDER_NAME__ . Then ask user with \"Confirm to remove all build cache (including internal/frontend images) ?\", then assign the value to variable __DOCKER_PRUNE_FIRST__\n\n## step 4.2: Call `docker:interface 2` to initialize builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n## step 4.3: Run build and push\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<DOCKER_PROVENANCE> DOCKER_SBOM=<DOCKER_SBOM> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Fixed, via `variable __DOCKER_BUILDER_NAME__`\n- `DOCKER_PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `DOCKER_IMAGE_TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0.0 myimage:latest))\n- `DOCKER_BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(BUILD_ARG1=val1 BUILD_ARG2=val2))\n- `DOCKER_PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `DOCKER_SBOM`: Optional, enable SBOM attestation (default: false)\n\n### Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error: (sample only)**\n\n- `ERROR: DOCKER_BUILDER_NAME is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: DOCKER_PLATFORM is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: At least one tag must be provided via DOCKER_IMAGE_TAGS environment variable. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n\n## step 4.4: Call `docker:interface 3` to destroy builder with `DOCKER_BUILDER_NAME=variable __DOCKER_BUILDER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1779632243213\n}\n\nArchive v1.0.2: 6 files, 4952 bytes\n\nFiles: scripts/docker_buildx_destroy.sh (713b), scripts/docker_buildx_init.sh (1547b), scripts/docker_buildx_push.sh (1822b), scripts/docker_manifest_inspect.sh (2538b), SKILL.md (4567b), _meta.json (131b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: skill-docker\ndescription: docker:interface 1 - manifest inspect; docker:interface 2 - build init; docker:interface 3 - build destroy; docker:interface 4 - build and push\n---\n\n# docker:interface 1 - manifest inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. TAGS=(1.0.0 latest))\n\n## Return value (result)\n\n**Success: (sample only)**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error: (sample only)**\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# docker:interface 2 - build init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: initted`\n\n---\n\n# docker:interface 3 - build destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n## Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n## Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: destroyed`\n\n---\n\n# docker:interface 4 - build and push\n\n## step 4.1: Ask user: \"Confirm to use docker builder 'skilldockerbuilder' ?\" Assign the value to variable __DOCKER_NAME__ . Then ask user: \"Confirm to remove all build cache (including internal/frontend images) ?\" Assign the value to variable __DOCKER_PRUNE_FIRST__\n\n## step 4.2: Call `docker:interface 2` to initialize builder with `DOCKER_BUILDER_NAME=variable __DOCKER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n## step 4.3: Run build and push\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<true|false> DOCKER_SBOM=<true|false> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Fixed, via `variable __DOCKER_NAME__`\n- `DOCKER_PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `DOCKER_IMAGE_TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0.0 myimage:latest))\n- `DOCKER_BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(BUILD_ARG1=val1 BUILD_ARG2=val2))\n- `DOCKER_PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `DOCKER_SBOM`: Optional, enable SBOM attestation (default: false)\n\n### Return value (result)\n\n**Success: (sample only)**\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error: (sample only)**\n\n- `ERROR: DOCKER_BUILDER_NAME is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: DOCKER_PLATFORM is required. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n- `ERROR: At least one tag must be provided via DOCKER_IMAGE_TAGS environment variable. \nUsage: DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_IMAGE_TAGS=<DOCKER_IMAGE_TAGS> $0`\n\n## step 4.4: Call `docker:interface 3` to destroy builder with `DOCKER_BUILDER_NAME=variable __DOCKER_NAME__` and with `DOCKER_PRUNE_FIRST=__DOCKER_PRUNE_FIRST__`.\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1779599266858\n}\n\nArchive v1.0.1: 6 files, 4937 bytes\n\nFiles: scripts/docker_buildx_destory.sh (544b), scripts/docker_buildx_init.sh (1196b), scripts/docker_buildx_push.sh (1297b), scripts/docker_manifest_inspect.sh (2497b), SKILL.md (3972b), _meta.json (131b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: skill-docker\ndescription: manifest inspect\n---\n\n# docker:interface 1 - manifest inspect\n\n```bash\nmanifest_json=$(bash scripts/docker_manifest_inspect.sh <DOCKER_IMAGE> <DOCKER_TAG1> [DOCKER_TAG2 ...])\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, remote git repository address\n- `DOCKER_TAG*`: Required, local storage directory\n\n## Return value (manifest_json=stdout, example only)\n\n**Success:**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm/v5\": {\n          \"size\": 1037,\n          \"digest\": \"sha256:87830995eed0e62e9d1aa5360345611d29b343ce532bfce499d9342f33d41076\"\n        },\n        \"linux/arm/v7\": {\n          \"size\": 1037,\n          \"digest\": \"sha256:dc071dceb8d8c47d9496e56aa149fb8d13cd73af3bde779df7dbaece27eec510\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        \"linux/386\": {\n          \"size\": 1017,\n          \"digest\": \"sha256:804a514efd1d29653f3994230b23af636427967819f18d34ac02301e1ebb3944\"\n        },\n        \"linux/ppc64le\": {\n          \"size\": 1025,\n          \"digest\": \"sha256:df3512fd9c128f0344a2e4db3b42c66d71ecb62295c24463f4ae851350efd14e\"\n        },\n        \"linux/riscv64\": {\n          \"size\": 1025,\n          \"digest\": \"sha256:4f52ee6eaf425fa42ddfd7b871040a2bfd5411ce07801b6342ae57ba40c8cf5c\"\n        },\n        \"linux/s390x\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:7c6b2cfbda75aa8ebddd4634addba1286dc3e7a41ed604041c3eae2de5746c9f\"\n        }\n      }\n    }\n  ]\n}\n```\n\n**Error:**\n\n- `ERROR: Usage: scripts/docker_manifest_inspect.sh <DOCKER_IMAGE> <DOCKER_TAG1> [DOCKER_TAG2 ...]`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# docker:interface 2 - build init\n\n```bash\nresult=$(BUILDER_NAME=<BUILDER_NAME> BUILD_CONCURRENCY=<BUILD_CONCURRENCY> bash scripts/docker_buildx_init.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Optional, builder name (default: defaultbuilder)\n- `BUILD_CONCURRENCY`: Optional, max parallelism (default: 4)\n\n## Return value (result=stdout)\n\n**Success:**\n\n- `SUCCESS: initted`\n\n---\n\n# docker:interface 3 - build destroy\n\n```bash\nresult=$(BUILDER_NAME=<BUILDER_NAME> bash scripts/docker_buildx_destory.sh)\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, builder name to destroy (via env)\n\n## Return value (result=stdout)\n\n**Success:**\n\n- `SUCCESS: destroyed`\n\n---\n\n# docker:interface 4 - build and push\n\n## step 4.1: Call `docker:interface 2` to initialize builder.\n\n## step 4.2: Run build and push\n\n```bash\noutput=$(BUILDER_NAME=<BUILDER_NAME> PLATFORM=<PLATFORM> PROVENANCE=<true|false> SBOM=<true|false> \\\n  TAGS=(<TAG1> [<TAG2> ...]) BUILD_ARGS=(<ARG1> [<ARG2> ...]) bash scripts/docker_buildx_push.sh)\n```\n\n### Input value\n\n- `BUILDER_NAME`: Optional, builder name (default: from env or defaultbuilder)\n- `PLATFORM`: Required, target platforms separated by comma (e.g. linux/amd64,linux/arm64)\n- `TAGS`: Required, image tags array (e.g. TAGS=(myimage:1.0 myimage:latest))\n- `BUILD_ARGS`: Optional, build arguments array (e.g. BUILD_ARGS=(ARG1=val1 ARG2=val2))\n- `PROVENANCE`: Optional, enable provenance attestation (default: false)\n- `SBOM`: Optional, enable SBOM attestation (default: false)\n\n### Return value (output=stdout)\n\n**Success:**\n\n- `SUCCESS: Build and push completed successfully`\n\n**Error:**\n\n- `ERROR: BUILDER_NAME is required. Usage: $0 <BUILDER_NAME>`\n- `ERROR: PLATFORM is required. Usage: $0 <PLATFORM>`\n- `ERROR: At least one tag must be provided via TAGS environment variable`\n\n## step 4.3: Call `docker:interface 3` to destroy builder.\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1779585125823\n}\n\nArchive v1.0.0: 3 files, 2456 bytes\n\nFiles: scripts/docker_manifest_inspect.sh (2497b), SKILL.md (2265b), _meta.json (131b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: skill-docker\ndescription: manifest inspect\n---\n\n# docker: interface 1 - manifest inspect\n\n```bash\nmanifest_json=$(bash scripts/docker_manifest_inspect.sh <DOCKER_IMAGE> <DOCKER_TAG1> [DOCKER_TAG2 ...])\n```\n\n## Input value\n\n- `DOCKER_IMAGE`: Required, remote git repository address\n- `DOCKER_TAG*`: Required, local storage directory\n\n## Return value (manifest_json=stdout, example only)\n\n**Success:**\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"unknown/unknown\": {\n          \"size\": 562,\n          \"digest\": \"sha256:6a4b4f615ebaf84ccb5ec504d24281b9af7534322b54d7c1f2584aa70412fa73\"\n        },\n        \"linux/arm/v5\": {\n          \"size\": 1037,\n          \"digest\": \"sha256:87830995eed0e62e9d1aa5360345611d29b343ce532bfce499d9342f33d41076\"\n        },\n        \"linux/arm/v7\": {\n          \"size\": 1037,\n          \"digest\": \"sha256:dc071dceb8d8c47d9496e56aa149fb8d13cd73af3bde779df7dbaece27eec510\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        \"linux/386\": {\n          \"size\": 1017,\n          \"digest\": \"sha256:804a514efd1d29653f3994230b23af636427967819f18d34ac02301e1ebb3944\"\n        },\n        \"linux/ppc64le\": {\n          \"size\": 1025,\n          \"digest\": \"sha256:df3512fd9c128f0344a2e4db3b42c66d71ecb62295c24463f4ae851350efd14e\"\n        },\n        \"linux/riscv64\": {\n          \"size\": 1025,\n          \"digest\": \"sha256:4f52ee6eaf425fa42ddfd7b871040a2bfd5411ce07801b6342ae57ba40c8cf5c\"\n        },\n        \"linux/s390x\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:7c6b2cfbda75aa8ebddd4634addba1286dc3e7a41ed604041c3eae2de5746c9f\"\n        }\n      }\n    }\n  ]\n}\n```\n\n**Error:**\n\n- `ERROR: Usage: scripts/docker_manifest_inspect.sh <DOCKER_IMAGE> <DOCKER_TAG1> [DOCKER_TAG2 ...]`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n---\n\n# More skills: https://github.com/lentiancn/skills\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1779421925989\n}","readmeExcerpt":"Skill: Docker Owner: lentiancn Summary: skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... Tags: latest:1.0.6 Version history: v1.0.6 | 2026-06-01T08:31:34.259Z | user - Minor documentation restructure and naming update in SKILL.md for clarity and consistency. - Renamed interfaces to skill-docker:interface-01,","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"result=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<DOCKER_TAG1> [<DOCKER_TAG2> ...]) bash scripts/docker_manifest_inspect.sh)"},{"language":"json","snippet":"{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}"},{"language":"bash","snippet":"result=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)"},{"language":"bash","snippet":"result=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)"},{"language":"bash","snippet":"result=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PLATFORM=<DOCKER_PLATFORM> DOCKER_PROVENANCE=<DOCKER_PROVENANCE> DOCKER_SBOM=<DOCKER_SBOM> \\\n  DOCKER_IMAGE_TAGS=(<IMAGE_TAG1> [<IMAGE_TAG2> ...]) DOCKER_BUILD_ARGS=(<BUILD_ARG1> [<BUILD_ARG2> ...]) bash scripts/docker_buildx_push.sh)"},{"language":"bash","snippet":"result=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) bash scripts/docker_manifest_inspect.sh)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: skill-docker\ndescription: \"skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 - Build and Push\"\n---\n\n## Important Principles ⭐\n\n**Modification Prohibited (Mandatory)**: Any files under `skill-docker`. This skill is maintained via\n`openclaw skills update skill-docker`; any alterations will disrupt its normal operation.\n\n## skill-docker:interface-01 - Manifest Inspect\n\n```bash\nresult=$(DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<DOCKER_TAG1> [<DOCKER_TAG2> ...]) bash scripts/docker_manifest_inspect.sh)\n```\n\n### Input value\n\n- `DOCKER_IMAGE`: Required, docker image name\n- `DOCKER_TAGS`: Required, image tags array (e.g. DOCKER_TAGS=(1.0.0 latest))\n\n### Return value (result)\n\n**Success**: (sample only)\n\n```json\n{\n  \"image\": \"debian\",\n  \"tags\": [\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n      }\n    },\n    {\n      \"tag\": \"latest\",\n      \"exists\": true,\n      \"archs\": {\n        \"linux/amd64\": {\n          \"size\": 1021,\n          \"digest\": \"sha256:2477d9ee0ead4370c778ce3aa42258a0b07684d1a84ded8f4af518383fbc3f2d\"\n        },\n        \"linux/arm64/v8\": {\n          \"size\": 1041,\n          \"digest\": \"sha256:b1e30180b5678df3c17d6b0e659f7107ae4c299506e97427a9373640804db927\"\n        },\n        ...\n      }\n    }\n  ]\n}\n```\n\n**Error**: (sample only)\n\n- `ERROR: Usage: DOCKER_IMAGE=<DOCKER_IMAGE> DOCKER_TAGS=(<TAG1> [<TAG2> ...]) scripts/docker_manifest_inspect.sh`\n- `ERROR: authentication required or image('$DOCKER_IMAGE') not found`\n\n## skill-docker:interface-02 - Build Init\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_BUILD_CONCURRENCY=<DOCKER_BUILD_CONCURRENCY> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_init.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to init (via env)\n- `DOCKER_BUILD_CONCURRENCY`: Optional, max parallelism (default: 2)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n### Return value (result)\n\n**Success**: (sample only)\n\n- `SUCCESS: initted`\n\n## skill-docker:interface-03 - Build Destroy\n\n```bash\nresult=$(DOCKER_BUILDER_NAME=<DOCKER_BUILDER_NAME> DOCKER_PRUNE_FIRST=<DOCKER_PRUNE_FIRST> bash scripts/docker_buildx_destroy.sh)\n```\n\n### Input value\n\n- `DOCKER_BUILDER_NAME`: Required, builder name to destroy (via env)\n- `DOCKER_PRUNE_FIRST`: Optional, remove all build cache (including internal/frontend images) (default: false)\n\n### Return value (result)\n\n**Success**: (sample only)\n\n- `SUCCESS: destroyed`\n\n## skill-docker:interface-04 - Build and Push\n\n### skill-docker:step-0401\n\nIf the `DOCKER_BUILDER_NAME` is not provided, ask user with \"Confirm to use docker builder 'skilldockerbuilder' ?\" to\nobtain the value, then assign the value to variable __DOCKER_BUILDER_NAME__ . Then ask user with \"Confirm to remove all\nbuild cache (including internal/frontend images) ?\", then assign the v"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7c7940mcwpxdz93fm36yw85d81h21a\",\n  \"slug\": \"skill-docker\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1780302694259\n}"},{"path":"skill-card.md","content":"## Description:\n\nHelps agents inspect Docker image manifests, initialize and destroy Docker buildx builders, and build and push multi-platform Docker images.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[lentiancn](https://clawhub.ai/user/lentiancn)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and release engineers use this skill to inspect container image tags and automate Docker buildx setup, teardown, and multi-platform image publishing.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Build initialization can run an unpinned third-party binfmt container with privileged host access.\n\nMitigation: Use the skill only on a trusted, disposable, or dedicated Docker build host and pin the binfmt image by digest before use.\n\nRisk: Build and push operations can publish images to the configured registry.\n\nMitigation: Review image tags, target registry, build arguments, provenance, and SBOM settings before invoking the push workflow.\n\nRisk: Buildx cleanup can delete system-wide build cache when pruning is enabled.\n\nMitigation: Confirm the builder name and leave cache pruning disabled unless cache removal is intentional.\n\n## Reference(s):\n\n- [ClawHub Docker Skill Page](https://clawhub.ai/lentiancn/skills/skill-docker)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline bash commands and JSON command output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May return Docker manifest JSON, success strings, error strings, and Docker build or registry side effects.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... Skill: Docker Owner: lentiancn Summary: skill-docker:interface-01 - Manifest Inspect; skill-docker:interface-02 - Build Init; skill-docker:interface-03 - Build Destroy; skill-docker:interface-04 -... Tags: latest:1.0.6 Version history: v1.0.6 | 2026-06-01T08:31:34.259Z | user - Minor documentation restructure and naming update in SKILL.md for clarity and consistency. - Renamed interfaces to skill-docker:interface-01,","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1221,"uniquenessScore":45,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T18:17:19.903Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T21:44:12.281Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}