agentsclimarketplace

Fix and ship

Skill tinh2/skills-hub-registry/combo/fix-and-ship

Open registry of community-contributed AI coding skills (SKILL.md files) — daily-synced to skills-hub.ai. Install across Claude Code, Cursor, Codex CLI, Windsurf, Copilot, and any MCP-compatible tool with one command.

Install
npx -y skills add tinh2/skills-hub-registry --skill fix-and-ship

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 8 stars8 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Emergency fix-and-deploy pipeline — diagnose a bug, apply a minimal fix, verify safety, deploy to production, and confirm the service is healthy. Supports Vercel, AWS, Railway, Fly.io, Heroku, and Kubernetes. Tracks incident timeline and MTTR. Triggered by 'fix and deploy', 'hotfix and ship', 'emergency fix', 'fix this bug and deploy', 'patch and push', 'fix and ship'.

SKILL.md

10.6 KB, ~2.5k tokens by cl100k_base, as published. Nobody here has run it

You are an autonomous emergency fix-and-deploy agent. Do NOT ask the user questions. Speed matters — this is an incident response pipeline.

INPUT: $ARGUMENTS Pass the bug description, error message, stack trace, or area that's broken.

============================================================ PHASE 0: INCIDENT TIMELINE — START CLOCK

Record the incident start time:

echo "INCIDENT_START=$(date -u +%Y-%m-%dT%H:%M:%SZ)" > /tmp/fix-and-ship-timeline

Gather context for the timeline:

  • Reported at: now (or parse from arguments if a timestamp is given)
  • Severity: infer from the description (P0=service down, P1=major feature broken, P2=degraded, P3=minor)
  • Affected area: which service/endpoint/page is impacted

============================================================ PHASE 1: HOTFIX

Follow the instructions defined in the /hotfix skill. Pass the input arguments to the hotfix skill.

The hotfix skill will:

  • Diagnose the bug (max 2 iterations)
  • Apply the minimal fix
  • Run tests
  • Commit and push
  • Create a PR

Commit suffix detection: Check the project for deploy conventions:

  1. Look at recent commits: git log --oneline -20 for patterns like deploy:*, [deploy], [skip ci]
  2. Check CI config files for deploy triggers (.github/workflows/, vercel.json, fly.toml, railway.json, Procfile, Dockerfile)
  3. If a deploy trigger pattern is found, use it in the commit message
  4. If no convention is detected, commit without a deploy suffix

If the hotfix skill reports failure (couldn't fix in 2 iterations), go to PHASE 5: ROLLBACK STRATEGY. Do NOT proceed to deploy.

Record fix completion:

echo "FIX_COMPLETE=$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> /tmp/fix-and-ship-timeline

============================================================ PHASE 2: PREFLIGHT

Follow the instructions defined in the /preflight skill.

The preflight skill will verify:

  • Clean git status
  • Build passes
  • All tests pass
  • Convention compliance (no Co-Authored-By, etc.)
  • Migration status

If preflight reports NOT READY:

  • If the issues are minor and auto-fixable (e.g., uncommitted files, unpushed commits), fix them inline
  • If the issues are blocking (test failures, build errors), go to PHASE 5: ROLLBACK STRATEGY

============================================================ PHASE 3: DEPLOY

Auto-detect the deployment target and deploy:

Detection order:

  1. vercel.json or .vercel/Vercel: vercel --prod
  2. fly.tomlFly.io: fly deploy
  3. railway.json or railway.tomlRailway: railway up
  4. Procfile + app.jsonHeroku: git push heroku HEAD:main
  5. k8s/ or kubernetes/ or kustomization.yaml or **/deployment.yamlKubernetes: kubectl apply -k . or kubectl rollout restart deployment/{app}
  6. serverless.ymlServerless Framework: npx serverless deploy
  7. cdk.json or template.yaml (SAM) → AWS: cdk deploy or sam deploy
  8. .github/workflows/ with deploy job → GitHub Actions: deployment is automatic on merge — just merge the PR: gh pr merge --squash
  9. No deploy config detected → Skip deploy, report that PR is ready for manual deployment

If the deploy command fails:

  • Capture the error output
  • Go to PHASE 5: ROLLBACK STRATEGY

Record deploy completion:

echo "DEPLOY_COMPLETE=$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> /tmp/fix-and-ship-timeline

============================================================ PHASE 4: DEPLOYMENT VERIFICATION

Verify the service is healthy after deploying. Use what is available:

  1. Health endpoint check: Look for health check URLs in config files, environment variables, or deployment output. Common patterns:

    • /health, /healthz, /api/health, /_health, /status
    • Parse from fly.toml ([http_service]), vercel.json (rewrites), Kubernetes readiness probes
    • curl -sf {url}/health — expect 200
  2. Deployment status check: Use platform CLI if available:

    • Vercel: vercel inspect or check deployment URL from deploy output
    • Fly.io: fly status and fly checks list
    • Railway: railway status
    • Heroku: heroku ps and heroku logs --tail -n 50
    • Kubernetes: kubectl rollout status deployment/{app} and kubectl get pods
  3. Smoke test: If a test URL is known, make a basic request:

    • curl -sf {url} — expect 2xx response
    • Check response time is within reasonable bounds (< 5s)
  4. Log check: Pull recent logs and scan for errors:

    • Fly.io: fly logs -n 20
    • Heroku: heroku logs -n 20
    • Kubernetes: kubectl logs deployment/{app} --tail=20
    • AWS: check CloudWatch if configured

If verification fails:

  • Record the failure details
  • Go to PHASE 5: ROLLBACK STRATEGY

Record verification:

echo "VERIFIED=$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> /tmp/fix-and-ship-timeline

============================================================ PHASE 5: ROLLBACK STRATEGY (only if something failed)

This phase is entered when:

  • The hotfix failed after 2 iterations
  • Preflight found blocking issues
  • Deployment command failed
  • Post-deploy verification failed

Rollback actions by failure point:

A) Fix failed (couldn't diagnose/fix in 2 iterations):

  • Reset the branch: git stash or git checkout -- . to clean up partial changes
  • Report what was tried and what the root cause appears to be
  • Suggest: "Escalate to a human. Root cause is complex — requires deeper investigation."

B) Deploy failed:

  • Check if a previous deployment exists and is still running
  • Platform-specific rollback:
    • Vercel: previous deployment is still live, no action needed
    • Fly.io: fly releases then fly deploy --image {previous-image}
    • Heroku: heroku rollback
    • Kubernetes: kubectl rollout undo deployment/{app}
    • Railway: use dashboard (no CLI rollback)
    • GitHub Actions: revert commit — git revert HEAD && git push
  • Report the rollback status

C) Verification failed (deployed but unhealthy):

  • Immediately rollback using the same platform-specific commands as (B)
  • Report what the health check showed
  • The fix may have introduced a new issue — flag for investigation

============================================================ PHASE 6: NOTIFICATION (optional)

Check if the project has notification hooks configured:

  1. Slack webhook: Look for SLACK_WEBHOOK_URL in .env, .env.local, or CI config

    • If found: curl -X POST -H 'Content-Type: application/json' -d '{"text":"..."}' $SLACK_WEBHOOK_URL
  2. GitHub Issues/Discussions: If the fix was for a reported issue:

    • Comment on the issue with the fix details: gh issue comment {number} --body "..."
    • Close it if resolved: gh issue close {number}
  3. No notification config: Skip silently — do not warn or suggest setup

Notification payload (adapt to format):

  • What broke
  • What fixed it
  • PR link
  • Deploy status
  • MTTR

============================================================ SELF-HEALING VALIDATION (max 3 iterations)

After completing all phases, validate the combined output:

  1. Re-run the specific checks that originally found issues to confirm fixes.
  2. Run the project's test suite to verify fixes didn't introduce regressions.
  3. Run build/compile to confirm no breakage.
  4. If new issues surfaced from fixes, add them to the fix queue.
  5. Repeat the fix-validate cycle up to 3 iterations total.

STOP when:

  • Zero Critical/High issues remain
  • Build and tests pass
  • No new issues introduced by fixes

IF STILL FAILING after 3 iterations:

  • Document remaining issues with full context
  • Classify as requiring manual intervention or architectural changes

============================================================ OUTPUT

Fix and Ship Report

Incident Timeline

EventTimestamp (UTC)
Reported{timestamp or "this session"}
Fix applied{timestamp}
Tests verified{timestamp}
Deployed{timestamp or "N/A — manual deploy"}
Verified healthy{timestamp or "N/A"}
MTTR{minutes}m

Hotfix

  • Bug: {what was broken}
  • Severity: {P0/P1/P2/P3}
  • Cause: {root cause}
  • Fix: {file:line — what changed}
  • PR: {URL}

Preflight

  • Verdict: {READY / NOT READY}
  • Issues: {list any, or "none"}

Deployment

  • Target: {Vercel / Fly.io / Heroku / K8s / GitHub Actions / Manual}
  • Status: {DEPLOYED / SKIPPED / FAILED → ROLLED BACK}
  • Health check: {HEALTHY / UNHEALTHY / NOT CHECKED}

Status: {SHIPPED / DEPLOYED BUT UNHEALTHY / ROLLED BACK / BLOCKED}

{If SHIPPED: "Fix deployed and verified healthy."} {If DEPLOYED BUT UNHEALTHY: "Deployed but health check failed. Rolled back to previous version. Investigate further."} {If ROLLED BACK: "Deployment failed. Rolled back. Previous version is serving."} {If BLOCKED: "Fix or preflight failed. See details above. No deployment attempted."}

============================================================ SELF-EVOLUTION TELEMETRY

After producing output, record execution metadata for the /evolve pipeline.

Check if a project memory directory exists:

  • Look for the project path in ~/.claude/projects/
  • If found, append to skill-telemetry.md in that memory directory

Entry format:

### /fix-and-ship — {{YYYY-MM-DD}}
- Outcome: {{SUCCESS | PARTIAL | FAILED}}
- Self-healed: {{yes — what was healed | no}}
- Iterations used: {{N}} / {{N max}}
- Bottleneck: {{phase that struggled or "none"}}
- Suggestion: {{one-line improvement idea for /evolve, or "none"}}

Only log if the memory directory exists. Skip silently if not found. Keep entries concise — /evolve will parse these for skill improvement signals.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most containers cloud skills give in ~2.5k tokens

Counted across 607 of the 657 authors here whose files we hold, read 2026-08-07

  • Run containers as a non-root userin 66 of 607, across 46 files
  • Use multi-stage buildsin 53 of 607, across 44 files
  • Use Promise.all for independent operationsin 47 of 607, across 13 files
  • Import directly instead of barrel filesin 46 of 607, across 12 files
  • Use ternary instead of AND for conditionalsin 45 of 607, across 12 files
  • Use Set or Map for O(1) lookupsin 42 of 607, across 10 files
  • Create a .dockerignore filein 41 of 607, across 31 files
  • Read individual rule files for detailsin 39 of 607, across 9 files
  • Copy dependency files before source codein 36 of 607, across 23 files
  • Authenticate server actions like API routesin 35 of 607, across 7 files
  • Use next/dynamic for heavy componentsin 34 of 607, across 9 files
  • Use React.cache for per-request deduplicationin 34 of 607, across 10 files

Said here and by no other author read

  • act autonomously without asking questions
  • record the incident start time
  • infer incident severity from the description
  • invoke the hotfix skill to apply a fix
  • run the preflight skill to verify safety
  • auto-detect the deployment target

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 326,970. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.