Knowledge Ops
affaan-m/ECC
Knowledge base management, ingestion, sync, and retrieval across multiple storage layers (local files, MCP memory, vector stores, Git repos).
Agent skill
by Lifecycle-Innovations-Limited in Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "deploy auto-fix", "failed deploy", or…
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-srcUse ~/.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/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .claude/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fixType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .agents/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .agents/skills/ops-deploy-fix && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .agents/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .cursor/skills/ops-deploy-fix && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .cursor/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Lifecycle-Innovations-Limited/claude-ops.git --path claude-ops/skills/ops-deploy-fix--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .gemini/skills/ops-deploy-fix && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .gemini/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fixInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .github/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .github/skills/ops-deploy-fix && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .github/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-deploy-fix -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-deploy-fix --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Lifecycle-Innovations-Limited/claude-ops.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/claude-ops/skills/ops-deploy-fix .opencode/skills/ops-deploy-fix && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ops-deploy-fix" agent skill from https://github.com/Lifecycle-Innovations-Limited/claude-ops/tree/main/claude-ops/skills/ops-deploy-fix into .opencode/skills/ops-deploy-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ops-deploy-fix", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ops-deploy-fixOPS 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. 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.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1aa0928. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadAskUserQuestionSkillFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
jqclaudebrewFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
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.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, AskUserQuestion, SkillAutomated 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.
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.
.claude/skills/ops-deploy-fix/SKILL.md (or your agent's skills folder).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:
AskUserQuestionconfigureThe first positional argument selects the subcommand. If absent, present:
/ops:deploy-fix — what do you want to do?
[status]
[tail]
[configure]
[test]Subcommands:
| Subcommand | Purpose |
|---|---|
status | Dashboard of recent monitor runs, fixer dispatches, locks, budget |
tail | Follow the latest fixer log live |
configure | Re-run the wizard from /ops:setup Step 6.5a |
test | Send a synthetic failure through the pipeline (dry-run, no real fix) |
statusPrint 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:
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"
doneAfter 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).
tailTail the most-recent fixer log. Resolve via ls -t:
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.
configureRe-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:
$PREFS_PATH. Print compact summary (same fields as status, no logs).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)]skills/setup/SKILL.md — same questions, same persistence, same Rule-3 "never silently skip" semantics.✓ 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.
testSynthetic 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:
Pre-flight check:
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; }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)]Generate a fake event payload matching the chosen kind. Set env var OPS_DEPLOY_FIX_DRY_RUN=1 and invoke the relevant trigger script:
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 ;;
esacTrigger scripts must honor OPS_DEPLOY_FIX_DRY_RUN=1 by:
claude -p ... dispatch in dispatch_fix_agentwould-dispatch-<id>-<ts>.log to $LOGS_DIR instead[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.
Print the resulting would-dispatch-*.log path and a one-line classification result (transient? dedup-hit? budget-exhausted? would-dispatch-template=<file>).
Offer:
Test complete. Next?
[Tail the would-dispatch log]
[Run another test]
[Show status dashboard]
[Done]/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.status flow above, requires Rule-5 confirmation to clear.discord selected but no webhook) → on status, surface as ⚠️ notify_channel=discord but no webhook URL configured and offer [Reconfigure now].~/.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~/.claude/state/ops-deploy-fix/lock-* (clear on stale)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
Just SKILL.md in claude-ops/skills/ops-deploy-fix of Lifecycle-Innovations-Limited/claude-ops.
Open the folder on GitHubat commit 1aa0928
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Ops Deploy Fix this skillLifecycle-Innovations-Limited/claude-ops | 542 | — | ~2.6k | Automated safety check: Notes | MIT | |
| Knowledge Opsaffaan-m/ECC | 276k | 2 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Research Opsaffaan-m/ECC | 276k | 2 repos | ~902 | Automated safety check: Pass | MIT | |
| Terminal Opsaffaan-m/ECC | 276k | 2 repos | ~750 | Automated safety check: Pass | MIT | |
| Messages Opsaffaan-m/ECC | 276k | 1 repos | ~724 | Automated safety check: Pass | MIT | |
| Email Opsaffaan-m/ECC | 276k | 1 repos | ~1.1k | Automated safety check: Pass | MIT |
affaan-m/ECC
Knowledge base management, ingestion, sync, and retrieval across multiple storage layers (local files, MCP memory, vector stores, Git repos).
affaan-m/ECC
Evidence-first current-state research workflow for ECC. An agent skill from affaan-m/ECC.
affaan-m/ECC
Evidence-first repo execution workflow for ECC. An agent skill from affaan-m/ECC.
affaan-m/ECC
Evidence-first live messaging workflow for ECC. An agent skill from affaan-m/ECC.
affaan-m/ECC
Evidence-first mailbox triage, drafting, send verification, and sent-mail-safe follow-up workflow for ECC.
affaan-m/ECC
GitHub repository operations, automation, and management. An agent skill from affaan-m/ECC.
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "ops dashboard", "pixel HQ", or…
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "go to market", "GTM plan", or…
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "tweet", "post to linkedin", or…
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "yolo mode", "run the business today"…
Lifecycle-Innovations-Limited/claude-ops
OPS on-demand: This skill should be used when the user asks to "datadog", "APM alerts", or…
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.
Ops Deploy Fix fits situations like: asks to deploy auto-fix.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.