Readme Capability Badges
Overview
Use this skill to express repository capabilities as stable README badges. Keep the badges semantic and human-scannable: they should describe whether a capability exists and how it is triggered, not whether the latest run passed.
Design Rules
- Prefer Shields.io static badge URLs.
- Use short labels:
image publish,dev deploy,prod deploy,preview env,rollback. - Use short values:
auto,manual,enabled,partial,none. - Include both label and value in image alt text, preferably as
label: value, so raw Markdown still communicates the capability. For example, use, not. - Do not use these badges for CI status. Use GitHub Actions workflow badges for live run state.
- Keep each badge to one meaning. Do not combine environment and unrelated behavior in one badge.
- Use lowercase badge text unless matching an existing README style.
- URL-encode spaces as
%20; encode hyphen-like separators in labels with--only when using Shields’ dash syntax.
Image Publish Badges
Use this badge when repository workflows can build and push a container image, but do not prove that the image is deployed to a runtime environment:


Meanings:
image publish: auto: the repository automatically publishes a container image from a configured event such as push, tag, release, or another non-manual trigger.image publish: manual: the repository can publish a container image, but it must be manually triggered.
Detect image publish capability from .github/workflows/*.yml and .github/workflows/*.yaml by looking for workflows that push images to a registry. Common signals include:
docker/build-push-actionwithpush: truedocker buildx build --push,docker push,docker manifest push, ordocker buildx imagetools create- registry login plus a later push to GHCR, ACR, ECR, GCR/Artifact Registry, Docker Hub, or another container registry
Classify trigger mode using the same trigger rules as deployment badges: any non-workflow_dispatch trigger is auto; only workflow_dispatch is manual; both together means auto.
Keep image publication separate from deployment. An image push workflow proves that an artifact is published, not that dev or prod was updated. Only add dev deploy or prod deploy badges when a workflow actually targets an environment deploy or rollout path.
Deployment Badges
Use this vocabulary:




Meanings:
dev deploy: manual: the repository has an action/workflow that can deploy to dev, but it must be manually triggered.prod deploy: manual: the repository has an action/workflow that can deploy to production, but it must be manually triggered.dev deploy: auto: the repository automatically deploys to dev from a configured event such as push, merge, tag, or release.prod deploy: auto: the repository automatically deploys to production from a configured event.
Default color choices:
autoto dev:brightgreenmanualto dev:bluemanualto prod:yellowautoto prod:orange- unavailable or intentionally absent:
lightgreyorred, depending on whether absence is neutral or a warning.
OOMOL Aliyun Deploy Detection
When a repository uses workflows generated by $aliyun-deploy-action, derive the badges from .github/workflows/*.yml and .github/workflows/*.yaml.
Recognize these central reusable workflows:
- Dev image deploy:
oomol/aliyun-k8s-yaml/.github/workflows/reusable-trigger-central-dev-image-deploy.yaml@main - Prod image deploy:
oomol/aliyun-k8s-yaml/.github/workflows/reusable-trigger-central-prod-image-deploy.yaml@main - Deployment rollout:
oomol/aliyun-k8s-yaml/.github/workflows/reusable-trigger-central-deployment-rollout.yaml@mainwithwith.environment: devorwith.environment: prod
Classify each environment independently:
- For
dev, inspect only workflows that target dev image deploy or rollout withenvironment: dev. - For
prod, inspect only workflows that target prod image deploy or rollout withenvironment: prod. - If any matching workflow for that environment has an automatic trigger, badge that environment as
auto. - Otherwise, if any matching workflow for that environment has
workflow_dispatch, badge that environment asmanual. - Otherwise, badge that environment as
noneonly when the README should explicitly show absence; usually omit absent environments unless the user asks for a complete matrix.
Treat these as automatic triggers:
pushpull_requestpull_request_targetreleaseworkflow_runschedule- any other non-
workflow_dispatchtrigger that can run without a person clicking Run workflow
Treat workflow_dispatch as manual. If a workflow has both workflow_dispatch and an automatic trigger, classify it as auto.
Preserve operation independence from environment independence. image-deploy and deployment-rollout both prove deploy capability for the target environment; the badge only reports trigger mode for that environment, not the operation type.
Common Sets
Image publish only, no proven deploy capability:

Manual deploy to both environments:


Auto deploy to dev, manual deploy to production:


Auto deploy to both environments:


No production deploy capability:


Editing READMEs
When editing an existing README, inspect nearby badge style first and match it unless it is ambiguous or misleading. Place capability badges near the top, usually below the title and before longer prose. If existing badges already show live build/test status, keep capability badges visually separate by label wording rather than by adding explanatory text.