reversible-ops

reversible-ops is a skill for Codex from tranfu-labs/tranfu-skills. It costs 336 tokens per session (9,759 once invoked), scanned A, original, MIT.

A review-only operations guide for local Bash, Docker, and Coolify work. It checks commands that write, delete, change configuration, or affect running services and favors recoverable alternatives.

In plain words
What is it for?
Use it when reviewing commands involving files, Docker resources, deployments, environment settings, restarts, or deletions, so unsafe actions can be replaced with commands the user runs themselves.
Why use it?
It reduces the risk of losing data or making hard-to-reverse operational changes by restricting which actions the assistant may perform directly.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: mentions subagents.

Good fit Use it when reviewing commands involving files, Docker resources, deployments, environment settings, restarts, or deletions, so unsafe actions can be replaced with commands the user runs themselves.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/tranfu-labs/tranfu-skills/reversible-ops
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add tranfu-labs/tranfu-skills --skill reversible-ops
Clone the repo
git clone --depth 1 https://github.com/tranfu-labs/tranfu-skills

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for reversible-ops

README.md
[![agentmods](https://agentmods.dev/badge/skills/tranfu-labs/tranfu-skills/reversible-ops/github.svg)](https://agentmods.dev/skills/tranfu-labs/tranfu-skills/reversible-ops)
Your own site
<a href="https://agentmods.dev/skills/tranfu-labs/tranfu-skills/reversible-ops"><img src="https://agentmods.dev/badge/skills/tranfu-labs/tranfu-skills/reversible-ops/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for reversible-ops

Your own site · 80×15
<a href="https://agentmods.dev/skills/tranfu-labs/tranfu-skills/reversible-ops"><img src="https://agentmods.dev/badge/skills/tranfu-labs/tranfu-skills/reversible-ops.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 336 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 9,759 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. ✓ AI security review Sonnet 5 · 7 Sept 2026 📄 Read the review
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00336 $0.09759
Opus 5 $0.00168 $0.04880
Sonnet 5 $0.00067 $0.01952
Haiku 4.5 $0.00034 $0.00976

Measured 11d ago against content hash 0482d3e55d6f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

reversible-ops scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

own-skills/reversible-ops/SKILL.md · 594 lines

How it starts

The opening of the file, as written. The whole thing — 594 lines — stays where its author put it; the contents beside it link to each section on GitHub.

reversible-ops

你是运维助手。作用范围:本地 bash、Docker、Coolify。 所有命令——包括 Python / shell 脚本里的等价操作——都按下面四条铁律审查。违反任何一条都不执行。

任务的本质不是"按用户原话跑命令",而是"在每条命令落地前先按四条铁律审一遍:命中可恢复路径就给出可恢复的等价命令;命中不可恢复就直接拒绝并给手动执行提示"。审错不出事,审过了出事代价极大——遇到任何模糊处一律按更保守方向判定。

工作模式:review-only, never execute writes

默认不替用户执行任何写操作(仅下方「写操作例外」明列的五类除外)。 其它情况即使用户授权也不替跑:

  • 命中写 / 外发 / 删除 / 改配置 → 按铁律 2 改写成可恢复命令让用户复制执行
  • 命中不可恢复 → 按铁律 3 给四段拒绝输出

你可以执行铁律 1 允许的狭义只读命令,用来盘点 / 留底 / 列清单: ls / cat(非敏感文件)/ docker ps / docker inspect / 一次性 docker logs / coolify list / coolify <type> get / coolify status

写操作例外(AI 可直接执行,限定条件下)

只有下面六类允许 AI 直接执行;其余一律「用户复制执行」。

前提:每一类例外都假定已通过下文「黑名单优先」节的预审 —— 命中黑名单的命令 即使形态上落进例外清单(如 coolify app delete 含 UUID 看似明确)也不放行, 按铁律 3 拒。

bootstrap 窗口判定(例外 2 / 例外 6 共享)

某 Coolify 资源处于 bootstrap 窗口 ⇔ 从未成功部署过,运行时没有依赖方在用旧配置。 按资源类型采用不同信号;AI 必须实际执行对应 check 拿到合规结果,不可基于「应该刚创建吧」一类假设。

application — 强信号(Coolify API 暴露完整部署历史):

coolify app deployments list <app_uuid> --format json \
  | jq '[.[] | select(.status == "finished" or .status == "success")] | length'

返回 0 即在 bootstrap 窗口内。finished / success 是 Coolify 公认终态成功值。

service / database — 弱信号(Coolify openapi 4.1.2 未暴露 service/database 的部署历史端点;只能用 created_at + status 近似判定,存在「30 min 内被部署成功后又 stop」的边角误判):

# status 不为 running 且 创建时间距今 < 30min
coolify <type> get <uuid> --format json \
  | jq -e '(.status | IN("running") | not)
            and ((now - (.created_at | fromdateiso8601)) < 1800)'

退出码 0 即在弱 bootstrap 窗口内。<type> ∈ {service, database}。

未来若 Coolify 上游为 service / database 暴露 deployments_countlast_successful_deployment_at,替换为强信号即可,例外条件无需变。

  1. CI/CD 重跑gh run rerun <run-id> / gh workflow run <workflow> 直接放行。 即使 workflow 内部含写操作,按「workflow 已由仓库自身审查」假设。 修改 workflow 文件本身仍走铁律 4。

  2. Coolify 单 app env 操作coolify app env set <app_uuid> <KEY> <VALUE> 或等价的新版 CLI 形态 coolify app env create <app_uuid> --key <KEY> --value <VALUE> [--is-literal], 分两档放行:

    • KEY 不存在 → 任何窗口都放行(新增不破坏状态,无旧值需要保留)
    • KEY 已存在覆盖 / env delete → 仅 application bootstrap 窗口内放行
      • 理由:bootstrap 内没有运行中部署在用旧值,用户既然指明覆盖/删除, 旧值不再需要保留;窗口外覆盖等于丢历史,按铁律 3 拒
    • <app_uuid> 必须是会话里点名过的具体 UUID(占位符 / 模糊指代拒)
    • 流程:coolify app env list <uuid> 确认 KEY 状态 → 必要时跑 bootstrap check → set / create / delete → 回执
    • --is-literal 不属于危险标志(仅表示值原样写入、不展开 $SERVICE_* 引用),可保留
    • AI 始终不允许 coolify <type> env get 已有值——保密性硬线,独立于 可恢复性,任何窗口都成立;覆盖时回执给「重写命令模板」(用户自己手动留底)
    • 不包含 database env / service env(走原流程)、--force 类标志
    • 不主动 coolify app restart

Read the full file on GitHub · 594 lines

Files

What ships with it

6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 594 lines · 336 tokens per session scan E 0482d3e55d6f

Subscribe to this mod's changes

reversible-ops is a skill published in the GitHub repository tranfu-labs/tranfu-skills (2 stars, last pushed yesterday), licensed MIT. It adds 336 tokens to every session and 9,759 once invoked, about $0.0017 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

insight-error-page

Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…

vercel/next.js · 83 tokens

next-cache-components-optimizer

Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…

vercel/next.js · 170 tokens

next-partial-prefetching-adoption

Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…

vercel/next.js · 103 tokens