agentleFS
TrustPagerTrustPager/Business_Operating_System/skills/audit-my-automations/SKILL.md

Audit My Automations

Skill8 starsChanged 5 months agoMITView on GitHub

Health-check every automation in the workspace — which are firing, which have gone stale, which are erroring, which are missing safety dials (dedup, daily caps), and which overlap with each other. Surfaces problems in priority order with a one-line fix for each.

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If the script can't run (auth/network), fall back to mcp__trustpager__list_automations + mcp__trustpager__list_automation_runs per …

    line 39
  2. Very specific:

    Never delete an automation without explicit confirmation naming it.

    line 84

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Audit My Automations

Operators set automations up and never look at them again — so they don't notice when one silently stops firing, starts erroring, or sends twice. This skill is the regular check-up.

Read first: knowledge/automation-method.md — especially §6 (safety dials) and §8 (reading the run log). The flags this skill raises map directly to those sections.

Step 1 — Fetch the health digest

python ~/.claude/bos-run.py audit-my-automations

One call: lists every automation (with triggers + actions inline), samples each one's recent runs, and computes per-automation flags plus cross-automation trigger overlaps. The shape is documented at the bottom of fetch.py.

If the script can't run (auth/network), fall back to mcp__trustpager__list_automations + mcp__trustpager__list_automation_runs per automation — but that's many calls; prefer the script.

Step 2 — Present the report, worst first

Lead with what's broken, then what's risky, then a one-line "healthy" tally. Never dump all automations as a flat list.

🔧 NEEDS ATTENTION (N)
  → "Renewal reminder" — 3 failed runs this week. Last error: <error_message>. → check it
  → "Old intake" — has a trigger but no actions (does nothing). → add actions or delete

⚠️ WORTH A LOOK (N)
  → "Quote follow-up" — enabled but hasn't fired in 41 days. Trigger may be wrong, or just quiet.
  → "Welcome email" — sends email but dedup is OFF — a double-submit double-emails. → turn dedup on
  → "Lead → quoting API" — calls a webhook with no daily cap. → set max_executions_per_day as a seatbelt
  → "Win celebration" — 9 of last 10 runs SKIPPED. Conditions may be too tight to ever pass.

🔁 OVERLAPS (N)
  → "Tag new lead" and "Email new lead" both fire on form_completed (Intake form).
    Fine if intentional; consolidate into one automation with multiple actions if not.

✅ HEALTHY: 12 automations firing normally.

What each flag means + the fix

FlagMeaningFix to offer
recent_failures_Nactions errored on recent runsopen it, read error_message; /why-didnt-it-fire for the detail
no_actionstrigger fires but nothing happensadd actions, or delete the automation
no_triggersnothing can fire it (and not a stage automation)add a trigger, or it's dead weight
never_runenabled but never firedtrigger/source likely wrong, or genuinely no events yet
stale_Ndenabled, no run in N days (≥30)confirm the trigger still matches reality; not always a problem
mostly_skipped≥80% of recent runs skippedconditions too tight — they rarely pass
sends_without_dedupa send action, dedup OFFturn dedup on so a double-event doesn't double-send
webhook_without_daily_capcall_webhook/feedback action, no daily capset max_executions_per_day as a runaway-loop seatbelt
disabledswitched offinformational — list under a "staged/off" count, not as a problem

Step 3 — Offer fixes (with approval)

For the safe, mechanical fixes, offer to apply them — one at a time, with a yes:

  • Turn on dedup → mcp__trustpager__update_automation(automation_id, dedup_enabled=true, dedup_window_minutes=60)
  • Set a daily cap → update_automation(automation_id, max_executions_per_day=N)
  • Disable a redundant duplicate → mcp__trustpager__disable_automation(automation_id)

Never delete an automation without explicit confirmation naming it. For "why is it failing / skipping" deep-dives, hand to /why-didnt-it-fire. For building a missing automation, /automate-this.

What to never do

  • ❌ Don't present automations alphabetically or as one flat list — rank by severity.
  • ❌ Don't auto-apply fixes. Offer, get a yes, then apply — one at a time.
  • ❌ Don't flag disabled as broken — staged/off is a valid state. Count it, don't alarm about it.
  • ❌ Don't treat skipped runs as failures — that's conditions working as designed. Only mostly_skipped is worth a mention.

Output shape

Open with the headline tally ("18 automations: 12 healthy, 2 need attention, 4 worth a look"), then the prioritised sections, then the single most important fix to make first.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.