deploy
Deploy-and-verify loop — commit, trigger the deployment, watch the pipeline, verify the running instances, test, fix, repeat until clean.
Skill by ajyadav013
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ajyadav013-deploy
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: testing, devops, data, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/deploy
What's inside
- Skill name
deploy- Description
- Deploy-and-verify loop — commit, trigger the deployment, watch the pipeline, verify the running instances, test, fix, repeat until clean. Interviews you once for your delivery setup. Use when asked to deploy, ship, or run the ship loop.
- License
- MIT
- Instructions
- 198 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# deploy — commit → deploy → monitor → verify → repeat
A delivery-execution skill for projects where deployment is driven from the repo (a tag, a
branch push, a CI dispatch, or a deploy command). It runs once by default, or loops
autonomously until the exit condition is met. It is deliberately **configuration-driven**:
nothing below assumes a specific CI provider, orchestrator, or cloud.
| Usage | What it does |
|-------|-------------|
| `$deploy` | Commit + push (+ merge to the integration branch) + trigger the deployment |
| `$deploy fix: use internal URL` | Same, with a custom commit description |
| `$deploy commit-only` | Commit + push only — no merge, no deploy |
| `$deploy no-deploy` | Commit + push + merge, skip the deploy trigger |
| `$deploy setup` | (Re-)run the interview and rewrite `.ckit/config/deploy.yaml` |
| `$deploy loop` | Full ship loop: implement → commit → deploy → monitor → verify → test → repeat |
---
## Step 0 — Load or build the delivery profile
Read `.ckit/config/deploy.yaml`. If it exists, use it and **ask nothing** already answered.
If it is missing (or `setup` mode), build it: **auto-detect first, ask only what detection
can't settle**, then write the file so the interview never repeats.
### What to detect / ask
1. **Integration branch** — the branch deployments are cut from (staging/SIT/release), if any.
Detect: a branch named in `AGENTS.md`, or the branch recent merge commits target. Trunk-based
projects answer "none — deploy from the default branch"; record that explicitly.
2. **Commit message format** — detect from `git log --oneline -15` (a consistent prefix pattern
is the answer). Else ask, offering: Conventional Commits (`fix: …`), ticket-prefixed
(`PROJ-1234: …`), or a custom template with placeholders (e.g.
`ID:<ticket>; DONE:<pct>; HOURS:<n>; <description>`). Also ask for any required trailer.
Once configured, the format is **byte-exact, every commit** — no drift, no improvisation.
3. **Deploy trigger** — how a deployment actually starts. One of:
- **tag push** — capture the exact tag format (e.g. `vX.Y.Z`, `deploy-<env>-<n>`) and the
remote it must be pushed to;
- **merge/push to a branch** — the deploy happens on push; nothing extra to run;
- **CI manual dispatch** — capture the exact command (e.g. the CI CLI's run/dispatch call);
- **a deploy command or script** — capture it verbatim, including arguments (many platforms
wrap tagging in a helper; treat the helper as the trigger and don't second-guess it).
4. **Pipeline monitor** — how to watch the build/deploy pipeline. Offer, in order of preference:
- the CI provider's **CLI** (e.g. `gh run watch` for GitHub Actions, `glab ci status` for
GitLab, the Azure DevOps CLI for Azure Pipelines) — poll-able, scriptable;
- a **provider MCP server**, if one is connected — use its build-status tools;
- a **web dashboard URL** watched through the browser (Chrome DevTools MCP) when no CLI/API
is available — capture the URL;
- **none** — the user watches and reports back; the loop pauses at this step.
5. **Runtime verification** — how to confirm the new version is actually live and healthy.
Ask which of these the project has (multiple allowed; capture the exact command, context,
and namespace/identifier for each — these run **read-only, every iteration**):
- **Kubernetes**: `kubectl rollout status <deployment>` then `kubectl get pods` (with the
configured `--context`/`-n`); `kubectl logs` for spot checks;
- **container runtime / compose**: the equivalent `ps`/service-status listing;
- **cloud service CLI**: the provider's service/revision describe command (ECS/Cloud Run/
App Service and equivalents);
- **PaaS CLI**: the platform's status command (fly/heroku/railway and equivalents);
- **HTTP**: a health/readiness endpoint, and ideally a **version endpoint** that reports the
deployed SHA/tag — the strongest single check;
- **logs/monitoring**: an error-rate or log query to compare before/after.
6. **Test surface** — a URL to exercise in the browser after deploy (optional; skip if none).
7. **Exit condition & bounds** — when the loop stops. Default: pipeline green **and** instances
healthy on the new revision **and** zero blocking/major findings. Default cap: 5 iterations;
3-strike rule below always applies.
Write the answers to `.ckit/config/deploy.yaml` (create `.ckit/config/` if needed):
```yaml
integration_branch: <name or "none">
commit_format:
template: "<the exact template>"
trailer: "<required trailer or omit>"
deploy:
trigger: tag | branch-push | ci-dispatch | command
detail: "<tag format / command verbatim>"
pipeline:
monitor: ci-cli | mcp | browser | manual
detail: "<command / URL>"
verify:
- "<read-only command 1>"
- "<read-only command 2>"
test_url: "<URL or omit>"
loop:
max_iterations: 5
```
**Never store secrets or tokens in this file** — commands reference environment variables;
the file is committed config, not a credential store. Record the active run's state (tag,
build id, findings) in `.ckit/CONTINUITY.md`, not here.
---
## Non-negotiable rules (every iteration)
- **The commit format is law.** Use the configured template byte-exactly, every commit,
including merge commits and fix-up iterations.
- **Stage by name.** `git add <path>` for the files you changed — never `git add -A`. Never
stage `.env`, credentials, OS junk, or large binaries.
- **Never force-push. Never deploy from the default branch** unless the config explicitly says
the project is trunk-based. Never skip the configured merge step.
- **Never auto-resolve merge conflicts** — show the conflicting files and ask.
- **Verification commands are read-only.** Status, list, describe, logs — never delete,
restart, or scale anything while verifying (the kit's guard hooks block destructive
orchestrator commands regardless).
- **A release that carries a database migration pauses for explicit human confirmation** with a
written rollback note before the trigger fires (see `risk-classification`).
- **No success without evidence.** "Deployed" means: the pipeline reports success, the runtime
checks show the **new** revision healthy, and — where possible — a unique marker from your
diff is observably live (a version endpoint, a log line, a visible change). An image tag or
a green build alone proves nothing on shared branches.
- **3-strike stop.** If the same failure survives 3 iterations with no forward progress, STOP,
keep the environment as-is, and escalate with the evidence collected.
- **Stash before switching.** `git stash --include-untracked` if the tree is dirty before any
checkout; pop when switching back.
- **One deploy trigger per iteration.** Don't re-fire the trigger while a pipeline for the
previous one is still running.
---From ajyadav013/claude-kit, MIT.
More from ajyadav013/claude-kit
- 0.602score
data-engineering-bigquery-gcs
ajyadav013
BigQuery medallion architecture (bronze/silver/gold), parameterized queries, MERGE upserts, partitioning, CDC dedup, Temporal orchestration.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
async-python-patterns
ajyadav013
Async Python for high-performance services.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
backend-repo-architecture
ajyadav013
Canonical backend repository structure for Python/FastAPI — multi-mode entrypoint, app factory, ConnectionManager, BaseDao, flat vs versioned layout.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
cron-and-scheduled-jobs
ajyadav013
Scheduled jobs across two mechanisms — Kubernetes CronJobs (schedule in Helm values, MODE=cron) and Temporal Schedules.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
api-and-interface-design
ajyadav013
Stable API and interface design patterns.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
api-pagination-filtering-sorting
ajyadav013
HTTP query parameter conventions for pagination, filtering, sorting, and search with standardized response metadata.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
code-simplification
ajyadav013
Simplifies/refactors working code for clarity without changing behavior.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
auth-and-rbac
ajyadav013
FastAPI auth patterns — session/JWT chains, argon2id hashing, pyotp TOTP/Email OTP, role-based access control, x-user-data gateway forwarding.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
docker-shared
ajyadav013
Shared Docker building blocks — base images for private registries, .dockerignore conventions, compose fragment reuse with YAML anchors.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
dockerfile-backend
ajyadav013
Multi-stage Dockerfiles for Python/FastAPI backends — builder vs runtime, slim vs alpine, system deps, layer caching, non-root users.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
anthropic-vertex-integration
ajyadav013
Claude on Vertex AI via the AnthropicVertex SDK — lazy ADC client init, env-based project/region resolution, async helpers, backoff retry.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
design-patterns-and-conventions
ajyadav013
Cross-cutting design patterns, naming, folder layout, and anti-patterns for production Python/FastAPI backends.
SkillBFreshness: B★ 14Claude Code +9
Signals
- Stars
- 14
- Forks
- 5
- Open issues
- 9
- Last commit (this folder)
- Aug 22, 2026 (2 months ago)
- Last release
- Sep 7, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/ajyadav013/claude-kit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from ajyadav013
- 0.602score
anthropic-vertex-integration
ajyadav013
Claude on Vertex AI via the AnthropicVertex SDK — lazy ADC client init, env-based project/region resolution, async helpers, backoff retry.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
dockerfile-backend
ajyadav013
Multi-stage Dockerfiles for Python/FastAPI backends — builder vs runtime, slim vs alpine, system deps, layer caching, non-root users.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
code-simplification
ajyadav013
Simplifies/refactors working code for clarity without changing behavior.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
cron-and-scheduled-jobs
ajyadav013
Scheduled jobs across two mechanisms — Kubernetes CronJobs (schedule in Helm values, MODE=cron) and Temporal Schedules.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
docker-shared
ajyadav013
Shared Docker building blocks — base images for private registries, .dockerignore conventions, compose fragment reuse with YAML anchors.
SkillBFreshness: B★ 14Claude Code +9 - 0.602score
api-and-interface-design
ajyadav013
Stable API and interface design patterns.
SkillBFreshness: B★ 14Claude Code +9
Cite this page
deploy skill. Agent Mart. https://agentmart.dev/skills/ajyadav013-deploy (last updated 2026-10-24)