OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…

MITAuto-check: notes

Install Ops Deploy Fix

skills CLI
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .claude/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .claude/skills/ops-deploy-fix && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ops-deploy-fix
GitHub stars
542
Token cost
~2.6k tokens
SKILL.md length
644 words
Files
1
Skills in repo
67
Repo updated
First seen
Licence
MIT

At a glance

OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…

  • Works in 4 steps: Read current state from $PREFS_PATH.… → Ask → Execute the corresponding sub-flow… → …
  • Asks to deploy auto-fix
  • SKILL.md covers Arguments, Subcommand: status, Subcommand: tail and Subcommand: configure, plus 3 more sections
  • Calls jq, claude and brew

What it does

Ops Deploy Fix is an agent skill from Lifecycle-Innovations-Limited/claude-ops. OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Business operating system for Claude Code — 57 skills, 21 agents, smart daemon. Unified inbox (WhatsApp/Email/Slack/Telegram), autonomous PR merge, full-AWS monitoring, revenue… The licence is MIT.

When your agent uses it

  • Asks to deploy auto-fix

Example prompts

  • “deploy auto-fix”
  • “failed deploy”
  • “/ops-deploy-fix”

Requirements

  • Pre-approved tools (allowed-tools): Bash, Read, AskUserQuestion, Skill

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Read current state from $PREFS_PATH. Print compact summary (same fields as status, no logs).
  2. Ask
  3. Execute the corresponding sub-flow inline by following Step 6.5 of skills/setup/SKILL.md — same questions, same persistence, same Rule-3…
  4. After persistence, print

What it can do on your machine

Read from SKILL.md and the folder at commit 1aa0928. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • AskUserQuestion
    • Skill

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq
    • claude
    • brew

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ops Deploy Fix loads about 2.6k tokens when it runs. Until then it costs about 29 tokens; SKILL.md has 644 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~29
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, AskUserQuestion, Skill

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Lifecycle-Innovations-Limited/claude-ops at commit 1aa0928, republished under its MIT licence (© Lifecycle-Innovations-Limited). 644 words, ~2,588 tokens.

Download SKILL.mdSave it as .claude/skills/ops-deploy-fix/SKILL.md (or your agent's skills folder).
name
ops-deploy-fix
description
OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…
allowed-tools
Bash, Read, AskUserQuestion, Skill
argument-hint
[status|tail|configure|test]

/ops:deploy-fix — Auto-fix subsystem control surface

Load ops-rules before acting. Public repo (no personal data). Outbound: one draft → one approval → one send. If AskUserQuestion / Workflow are missing, follow Rule 10 in ops-rules (Hermes: numbered options / two-turn Telegram card; delegate_task).

This skill is the operator console for the post-merge + build-failure auto-fix loop installed by /ops:setup Step 6.5a. The underlying daemons, hooks, and prompts live in ${CLAUDE_PLUGIN_ROOT}/scripts/, ${CLAUDE_PLUGIN_ROOT}/hooks/, and ${CLAUDE_PLUGIN_ROOT}/prompts/. State lives in ~/.claude/state/ops-deploy-fix/. Logs live in ~/.claude/logs/ops-deploy-fix/.

Plugin rules apply (see claude-ops/CLAUDE.md). In particular:

  • Rule 0 — never echo personal data (slugs are fine, but redact tokens, webhooks, emails)
  • Rule 1 — max 4 options per AskUserQuestion
  • Rule 4 — background by default during configure
  • Rule 5 — destructive ops (clearing locks, wiping state) require explicit per-action confirmation
  • Rule 6 — this skill never sends outbound comms; if a future flow needs to, use the universal send gate

Arguments

The first positional argument selects the subcommand. If absent, present:

/ops:deploy-fix — what do you want to do?
  [status]
  [tail]
  [configure]
  [test]

Subcommands:

SubcommandPurpose
statusDashboard of recent monitor runs, fixer dispatches, locks, budget
tailFollow the latest fixer log live
configureRe-run the wizard from /ops:setup Step 6.5a
testSend a synthetic failure through the pipeline (dry-run, no real fix)

Subcommand: status

Print a compact dashboard. Read all data via Bash; favor parallel reads.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 OPS ► DEPLOY-FIX STATUS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Master switch:    <on|off>          (deploy_fix_enabled)
 Auto-dispatch:    <on|off>          (auto_dispatch_fixer)
 Danger flag:      <on|off>          (allow_dangerous)
 Budget cap:       <N>/hour/repo     (max_fixes_per_hour)
 Notify channel:   <macos|ntfy|discord|none>
 Fix model:        <haiku|sonnet|opus>

 Last 5 monitor runs:
   2026-04-26T08:14Z  owner/repo-a:dev   merge-watch         deploy-success
   2026-04-26T08:11Z  owner/repo-b:main  build-watch         transient → rerun
   ...

 Last 5 fixer dispatches:
   2026-04-26T08:09Z  owner/repo-b:main  build-fix.md   in-flight   pid 41123
   2026-04-26T07:42Z  owner/repo-a:dev   deploy-fix.md  done        log:fix-...log

 Active locks:
   owner/repo-b:main:build  pid=41123 (alive)

 Hourly budget remaining (this hour, <YYYYMMDD-HH>):
   owner/repo-a   2 / 3
   owner/repo-b   1 / 3
──────────────────────────────────────────────────────

Data sources:

bash
PREFS=~/.claude/plugins/data/ops-ops-marketplace/preferences.json
STATE=~/.claude/state/ops-deploy-fix
LOGS=~/.claude/logs/ops-deploy-fix

# Config snapshot (all keys read with defaults from plugin.json userConfig)
jq -r '{
  deploy_fix_enabled, auto_dispatch_fixer, allow_dangerous,
  max_fixes_per_hour, notify_channel, fix_model
}' "$PREFS" 2>/dev/null

# Monitor runs — last 5 across all repos
ls -t "$LOGS"/monitor-*.log 2>/dev/null | head -5 | while read f; do
  printf '%s  %s\n' "$(stat -f '%Sm' -t '%FT%RZ' "$f" 2>/dev/null || stat --format='%y' "$f" 2>/dev/null | awk '{print $1"T"$2"Z"}')" "$(basename "$f")"
done

# Fixer dispatches — last 5
ls -t "$LOGS"/fix-*.log 2>/dev/null | head -5 | while read f; do
  pid_file="$STATE/lock-$(basename "$f" | sed 's/^fix-//; s/-[0-9]*\.log$//')"
  status="done"
  [ -f "$pid_file" ] && kill -0 "$(cat "$pid_file")" 2>/dev/null && status="in-flight"
  printf '%s  %s  %s\n' "$(stat -f '%Sm' -t '%FT%RZ' "$f" 2>/dev/null || stat --format='%y' "$f" 2>/dev/null | awk '{print $1"T"$2"Z"}')" "$status" "$(basename "$f")"
done

# Active locks
for f in "$STATE"/lock-*; do
  [ -f "$f" ] || continue
  pid=$(cat "$f")
  if kill -0 "$pid" 2>/dev/null; then
    echo "$(basename "$f" | sed 's/^lock-//')  pid=$pid (alive)"
  fi
done

# Hourly budget — read all budget files for current hour
hour=$(date +%Y%m%d-%H)
cap=$(jq -r '.max_fixes_per_hour // 3' "$PREFS")
for f in "$STATE"/budget-*-"$hour"; do
  [ -f "$f" ] || continue
  slug=$(basename "$f" | sed "s/^budget-//; s/-$hour\$//")
  used=$(cat "$f")
  echo "$slug  $((cap - used)) / $cap"
done

After the dashboard, if any lock is older than the configured watcher_timeout_seconds, surface a ⚠️ Stale lock: line and offer:

Stale lock detected for <repo>. Action?
  [Inspect log]
  [Clear lock (Rule 5 — destructive)]
  [Leave it]
  [Skip]

Only on Clear lock should you delete the file (per-action confirmation per Rule 5).


Subcommand: tail

Tail the most-recent fixer log. Resolve via ls -t:

bash
LATEST=$(ls -t ~/.claude/logs/ops-deploy-fix/fix-*.log 2>/dev/null | head -1)
if [ -z "$LATEST" ]; then
  echo "No fixer logs yet. Trigger one with /ops:deploy-fix test or wait for a real failure."
  exit 0
fi
echo "▸ Tailing $LATEST (Ctrl-C to stop)"
tail -f "$LATEST"

Run via Bash with run_in_background: true and a long timeout so the user can read the stream as it grows. Print the resolved log path and the spawned shell PID up-front so the user knows what's running.

If a second positional arg --lines N is passed, do tail -n N -f. If --no-follow, drop -f.


Subcommand: configure

Re-run the wizard from /ops:setup Step 6.5a, plus optionally 6.5b/c/d. Implementation: route into the setup skill with section filter.

Flow:

  1. Read current state from $PREFS_PATH. Print compact summary (same fields as status, no logs).
  2. Ask:
    What do you want to reconfigure?
      [Deploy auto-fix wizard (6.5a)]
      [Recap marquee (6.5b)]
      [Task* reminder (6.5c)]
      [Account rotation toggle (6.5d)]
  3. Execute the corresponding sub-flow inline by following Step 6.5 of skills/setup/SKILL.md — same questions, same persistence, same Rule-3 "never silently skip" semantics.
  4. After persistence, print:
    ✓ Reconfigured. Daemons & hooks pick up the new prefs on the next event — no restart required.

Use run_in_background: true (Rule 4) for any CLI install / brew / curl / tmux source-file triggered along the way.


Show full SKILL.md (356 more words)Show less

Subcommand: test

Synthetic dry-run through the pipeline. No real fix dispatch — no agent runs. Confirms wiring: hooks fire → monitor classifies → notify channel pings → state files written → would-dispatch path logged.

Steps:

  1. Pre-flight check:

    bash
    PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-}"
    [ -z "$PLUGIN_ROOT" ] && PLUGIN_ROOT=$(find ~/.claude -type d -name claude-ops 2>/dev/null | head -1)
    COMMON="$PLUGIN_ROOT/scripts/lib/deploy-fix-common.sh"
    [ -f "$COMMON" ] || { echo "✗ deploy-fix-common.sh missing — re-install the plugin"; exit 1; }
  2. Ask:

    What should the synthetic failure look like?
      [Build failure (npm run build:* exit 1)]
      [Deploy workflow failure (gh actions check_run)]
      [Health check failure (curl /health 503)]
      [Version mismatch (served SHA != merged SHA)]
  3. Generate a fake event payload matching the chosen kind. Set env var OPS_DEPLOY_FIX_DRY_RUN=1 and invoke the relevant trigger script:

    bash
    export OPS_DEPLOY_FIX_DRY_RUN=1
    export OPS_DEPLOY_FIX_TEST_REPO="your-org/your-repo"   # placeholder per Rule 0
    export OPS_DEPLOY_FIX_TEST_BASE="dev"
    case "$kind" in
      build)   bash "$PLUGIN_ROOT/bin/ops-deploy-fix-build-trigger" --synthetic ;;
      deploy)  bash "$PLUGIN_ROOT/bin/ops-deploy-fix-merge-trigger" --synthetic ;;
      health)  bash "$PLUGIN_ROOT/scripts/ops-deploy-monitor.sh" --synthetic-health ;;
      version) bash "$PLUGIN_ROOT/scripts/ops-deploy-monitor.sh" --synthetic-version ;;
    esac

    Trigger scripts must honor OPS_DEPLOY_FIX_DRY_RUN=1 by:

    • Skipping the actual claude -p ... dispatch in dispatch_fix_agent
    • Writing a would-dispatch-<id>-<ts>.log to $LOGS_DIR instead
    • Still incrementing the budget counter (so the test exercises the cap)
    • Logging [DRY-RUN] would notify <channel> instead of firing real notify (no actual outbound messages during test — Rule 6)

    If the trigger scripts don't yet support --synthetic / OPS_DEPLOY_FIX_DRY_RUN, surface that as a known TODO in the output and degrade to "would-have-dispatched" log-only.

  4. Print the resulting would-dispatch-*.log path and a one-line classification result (transient? dedup-hit? budget-exhausted? would-dispatch-template=<file>).

  5. Offer:

    Test complete. Next?
      [Tail the would-dispatch log]
      [Run another test]
      [Show status dashboard]
      [Done]

Failure modes / hand-offs

  • No prefs file → tell the user to run /ops:setup (or /ops:deploy-fix configure) first.
  • claude CLI missing (status / test) → instruct via output, do not auto-install.
  • jq missing → run brew install jq in background (Rule 4) and retry.
  • Stale lock detection → see status flow above, requires Rule-5 confirmation to clear.
  • Notify channel mis-set (e.g. discord selected but no webhook) → on status, surface as ⚠️ notify_channel=discord but no webhook URL configured and offer [Reconfigure now].

Files this skill reads / writes

  • Read-only: ~/.claude/plugins/data/ops-ops-marketplace/preferences.json, ~/.claude/state/ops-deploy-fix/*, ~/.claude/logs/ops-deploy-fix/*, ${CLAUDE_PLUGIN_ROOT}/scripts/lib/deploy-fix-common.sh, ${CLAUDE_PLUGIN_ROOT}/prompts/{build-fix,deploy-fix}.md
  • Write (with explicit confirmation only): lock files in ~/.claude/state/ops-deploy-fix/lock-* (clear on stale)
  • Write (via configure subcommand): the prefs file, via the merge pattern in Step 6.5

© Lifecycle-Innovations-Limited, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in claude-ops/skills/ops-deploy-fix of Lifecycle-Innovations-Limited/claude-ops.

Open the folder on GitHubat commit 1aa0928

Compare with similar skills

Ops Deploy Fix next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ops Deploy Fix compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ops Deploy Fix this skillLifecycle-Innovations-Limited/claude-ops542—~2.6kAutomated safety check: NotesMIT
Knowledge Opsaffaan-m/ECC276k2 repos~1.7kAutomated safety check: PassMIT
Research Opsaffaan-m/ECC276k2 repos~902Automated safety check: PassMIT
Terminal Opsaffaan-m/ECC276k2 repos~750Automated safety check: PassMIT
Messages Opsaffaan-m/ECC276k1 repos~724Automated safety check: PassMIT
Email Opsaffaan-m/ECC276k1 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Knowledge Ops

    affaan-m/ECC

    Knowledge base management, ingestion, sync, and retrieval across multiple storage layers (local files, MCP memory, vector stores, Git repos).

    276k GitHub starsUsed in 2 repos~1.7k tokens
    Knowledge ManagementAuto-check passed
  • Research Ops

    affaan-m/ECC

    Evidence-first current-state research workflow for ECC. An agent skill from affaan-m/ECC.

    276k GitHub starsUsed in 2 repos~902 tokens
    Research & ScienceAuto-check passed
  • Terminal Ops

    affaan-m/ECC

    Evidence-first repo execution workflow for ECC. An agent skill from affaan-m/ECC.

    276k GitHub starsUsed in 2 repos~750 tokens
    Testing & QAAuto-check passed
  • Messages Ops

    affaan-m/ECC

    Evidence-first live messaging workflow for ECC. An agent skill from affaan-m/ECC.

    276k GitHub starsUsed in 1 repo~724 tokens
    Productivity & AutomationAuto-check passed
  • Email Ops

    affaan-m/ECC

    Evidence-first mailbox triage, drafting, send verification, and sent-mail-safe follow-up workflow for ECC.

    276k GitHub starsUsed in 1 repo~1.1k tokens
    Writing & ContentAuto-check passed
  • GitHub Ops

    affaan-m/ECC

    GitHub repository operations, automation, and management. An agent skill from affaan-m/ECC.

    276k GitHub starsUsed in 2 repos~1.5k tokens
    DevelopmentAuto-check: warnings

More from Lifecycle-Innovations-Limited/claude-ops

All 67 skills in this repo
  • Ops Dash

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "ops dashboard", "pixel HQ", or…

    542 GitHub stars~4.7k tokensUpdated today
    Auto-check: notes
  • Ops Gtm

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "go to market", "GTM plan", or…

    542 GitHub stars~3.7k tokensUpdated today
    Auto-check: notes
  • Ops Marketing

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…

    542 GitHub stars~3.5k tokensUpdated today
    Auto-check: notes
  • Ops Socials

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "tweet", "post to linkedin", or…

    542 GitHub stars~3.6k tokensUpdated today
    Auto-check: notes
  • Ops Yolo

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "yolo mode", "run the business today"…

    542 GitHub stars~4k tokensUpdated today
    Auto-check: notes
  • Ops Monitor

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "datadog", "APM alerts", or…

    542 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check: notes

Questions about Ops Deploy Fix

What does Ops Deploy Fix do?

OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…. Ops Deploy Fix is an agent skill from Lifecycle-Innovations-Limited/claude-ops.

When should I use Ops Deploy Fix?

Ops Deploy Fix fits situations like: asks to deploy auto-fix.

How do I install Ops Deploy Fix in Claude Code?

Run `npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a claude-code`. Or copy the skill folder (claude-ops/skills/ops-deploy-fix in Lifecycle-Innovations-Limited/claude-ops) into .claude/skills/ops-deploy-fix in your project. Claude Code loads it when a task matches its description.

How do I install Ops Deploy Fix in Codex?

Run `npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a codex`. Or copy the skill folder (claude-ops/skills/ops-deploy-fix in Lifecycle-Innovations-Limited/claude-ops) into .agents/skills/ops-deploy-fix in your project. Codex loads it when a task matches its description.

Can I use Ops Deploy Fix in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ops-deploy-fix, .gemini/skills/ops-deploy-fix, .github/skills/ops-deploy-fix and .opencode/skills/ops-deploy-fix in your project.

What does Ops Deploy Fix need to run?

Going by SKILL.md and its folder, Ops Deploy Fix needs the command-line tools its instructions call (jq, claude and brew). Its frontmatter pre-approves these tools: Bash, Read, AskUserQuestion, Skill.

Does Ops Deploy Fix access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Ops Deploy Fix safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Ops Deploy Fix use?

Ops Deploy Fix is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ops Deploy Fix use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ops Deploy Fix?

Skills that share tags, products or a category with Ops Deploy Fix: Knowledge Ops (affaan-m/ECC, 276k stars), Research Ops (affaan-m/ECC, 276k stars), Terminal Ops (affaan-m/ECC, 276k stars) and Messages Ops (affaan-m/ECC, 276k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ops Deploy Fix?

Lifecycle-Innovations-Limited (a GitHub organization) maintains it in Lifecycle-Innovations-Limited/claude-ops, which has 542 GitHub stars. The repository holds 67 skills in this directory. The repository was last updated on October 9, 2026.

Source: Lifecycle-Innovations-Limited/claude-ops on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.