find-docker-image
Skill76 starsChanged 20 days agoApache-2.0View on GitHub
Find existing Hyperlane Docker images on GHCR (ghcr.io/hyperlane-xyz/*). The hyperlane-node-services image is a unified image. Set SERVICE_NAME env var at runtime to select which service to run. Use the mutable branch tag directly: Query the OCI registry API (no auth needed for public images): Replace <IMAGE> with the image name (e.g. hyperlane-agent). Grep the tag list for a sha prefix: Look up the sha from the last successful build: Then match the sha against the GHCR tag list.
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 33
Use the mutable branch tag directly:
- Distinctive: line 61
Look up the sha from the last successful build:
- Distinctive: line 85
Use the appropriate method above to find the tag.
- Very specific: line 87
If no image exists for their branch/commit, suggest using /build-docker-image to trigger one.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Find Docker Images
Find existing Hyperlane Docker images on GHCR (ghcr.io/hyperlane-xyz/*).
Image Repositories
| Image | Contents |
hyperlane-agent | Rust relayer, validator, scraper |
hyperlane-monorepo | Full TS/Solidity monorepo |
hyperlane-node-services | All TS node services (rebalancer, warp-monitor, ccip-server, keyfunder, relayer) |
The hyperlane-node-services image is a unified image. Set SERVICE_NAME env var at runtime to select which service to run.
Tag Format
- Commit tags:
<7-char-sha>-<YYYYMMDD>-<HHMMSS>(e.g.c558a9f-20260304-105241) — immutable, used in production - Branch tags:
main,my-feature-branch— mutable, overwritten on each build - PR tags:
pr-123— ephemeral, cleaned up after 1 week
How to Find Images
Latest image for a branch
Use the mutable branch tag directly:
ghcr.io/hyperlane-xyz/hyperlane-agent:mainList all tags for an image
Query the OCI registry API (no auth needed for public images):
TOKEN=$(curl -s "https://ghcr.io/token?service=ghcr.io&scope=repository:hyperlane-xyz/<IMAGE>:pull" | jq -r .token)
curl -s -H "Authorization: Bearer $TOKEN" "https://ghcr.io/v2/hyperlane-xyz/<IMAGE>/tags/list" | jq '.tags'Replace <IMAGE> with the image name (e.g. hyperlane-agent).
Find tag for a specific commit
Grep the tag list for a sha prefix:
TOKEN=$(curl -s "https://ghcr.io/token?service=ghcr.io&scope=repository:hyperlane-xyz/<IMAGE>:pull" | jq -r .token)
curl -s -H "Authorization: Bearer $TOKEN" "https://ghcr.io/v2/hyperlane-xyz/<IMAGE>/tags/list" | jq -r '.tags[]' | grep '<SHA_PREFIX>'Find tag from latest workflow run
Look up the sha from the last successful build:
# Agent builds
gh run list --workflow=rust-docker.yml --branch=main --status=success --limit=1 --json headSha,createdAt --jq '.[0] | "\(.headSha[:7]) built \(.createdAt)"'
# Monorepo builds
gh run list --workflow=monorepo-docker.yml --branch=main --status=success --limit=1 --json headSha,createdAt --jq '.[0] | "\(.headSha[:7]) built \(.createdAt)"'
# Node service builds
gh run list --workflow=node-services-docker.yml --branch=main --status=success --limit=1 --json headSha,createdAt --jq '.[0] | "\(.headSha[:7]) built \(.createdAt)"'Then match the sha against the GHCR tag list.
Check what's currently deployed in production
grep -E '(tag|Tag)' typescript/infra/config/docker.tsInstructions
- Determine what the user needs: latest for a branch, a specific commit, or what's deployed.
- Use the appropriate method above to find the tag.
- Return the full image reference:
ghcr.io/hyperlane-xyz/<image>:<tag>. - If no image exists for their branch/commit, suggest using
/build-docker-imageto trigger one.
References
- To trigger a new build, use the
/build-docker-imageskill. - See
docs/docker-image-policy.mdfor the full Docker image policy.
In this repository49 other files it gives its agents.
- AGENTS.mdAGENTS.md
- add-registry-changesetSkill
- build-docker-imageSkill
- classify-onchain-ownerSkill
- code-reviewSkill
- debug-messageSkill
- debug-rpc-providerSkill
- debug-validator-checkpoint-inconsistencySkill
- denylist-stuck-messagesSkill
- fetch-linear-ticketSkill
- fetch-safe-tx-batchSkill
- fix-merkle-root-mismatchSkill
- fix-rpc-urlsSkill
- gcp-logsSkill
- hyperlane-message-utilsSkill
- hyperlane-utilsSkill
- inline-pr-commentsSkill
- investigate-merkle-root-mismatchSkill
- investigate-stuck-messagesSkill
- registry-yaml-sort-policySkill
- security-reviewSkill
- self-relay-hyperlane-messageSkill
- set-moonpay-standing-quotesSkill
- start-http-registrySkill
- stop-http-registrySkill
- svm-warp-alt-manageSkill
- svm-warp-program-upgradeSkill
- tob-reviewSkill
- verify-warp-contractsSkill
- warp-balancesSkill
- warp-deploy-fund-deployerSkill
- warp-deploy-init-routeSkill
- warp-deploy-nexusSkill
- warp-deploy-register-routeSkill
- warp-deploy-select-keysSkill
- warp-deploy-send-testSkill
- warp-deploy-update-ownersSkill
- warp-deploy-validate-ownersSkill
- warp-forkSkill
- warp-key-value-expansionSkill
- warp-manage-offchain-quotesSkill
- warp-route-checkSkill
- warp-run-logSkill
- warp-simulate-svm-txsSkill
- warp-update-extendSkill
- warp-update-proposeSkill
- warp-update-resolve-artifactsSkill
- warp-updateSkill
- warp-verify-onchain-configSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

