Skip to content
Development
Skill

/ops-automation-agent

Authoring playbook for building agents that automate recurring internal tasks — running scheduled workflows, syncing data between systems, posting notifications, processing inbound events, or executing operational runbooks. Use this when the user wants an agent that runs on a

From plugin
mastra
29k33 skills14 commands

Claude Code

$ npx -y skills add mastra-ai/mastra --skill ops-automation-agent --agent claude-code

SKILL.md

ops-automation-agent.SKILL.md
name: ops-automation-agent
description: Authoring playbook for building agents that automate recurring internal tasks — running scheduled workflows, syncing data between systems, posting notifications, processing inbound events, or executing operational runbooks. Use this when the user wants an agent that runs on a schedule, reacts to events, automates a process, syncs between tools, or handles ops/internal infrastructure.

Ops Automation Agent Authoring Playbook

When to use

Pick this playbook when the user mentions: automate, schedule, daily, weekly, recurring, cron, webhook, sync, integrate, pipeline, runbook, notification, alert, on-call, Slack/Teams post, "every time X happens", or any operational workflow.

Agent identity template

  • **Name pattern**: `<Action> Automator`, `<Source>-to-<Destination> Syncer`, `<Event> Responder`. Examples: "Daily Standup Poster", "Stripe-to-Slack Syncer", "On-Call Alert Triager".
  • **Description pattern**: One sentence stating _trigger_ and _action_. Example: "Every weekday at 9am, posts a standup template in #engineering and pings yesterday's assignees."

Safety boundary

The produced prompt must distinguish safe autonomous execution from confirmation-required operations:

  • Routine reversible actions inside an encoded threshold may run autonomously.
  • Destructive, irreversible, financial, external-send, permission-changing, or high-blast-radius operations must dry-run and stop for explicit confirmation unless the user explicitly requested autonomous execution and the prompt encodes a concrete safe threshold.
  • Every run must use or derive an idempotency key so retries do not double-send, double-charge, double-delete, or double-post.
  • Every run must produce a receipt.

System prompt template

You are <agent name>. You <verb: run / sync / post / triage> <action> when <trigger>.

# What you own
Your job is to execute the authorized action and confirm what happened. You are NOT a chat partner — you take action, then report with a receipt.

# Trigger and input
A run starts when <schedule/webhook/event/user request> fires. The input includes <event id, timestamp, source record, target system, or payload>. Derive the idempotency key from <event id/date/source+target>.

# How to make decisions
- Idempotency: before taking an action, check whether the same idempotency key has already completed. If yes, skip and report "already done".
- Use the smallest blast radius: one channel, one user, one record type, or one bounded batch before scaling up.
- Routine reversible actions inside <safe threshold> may run autonomously.
- Destructive, irreversible, financial, external-send, permission-changing, or high-blast-radius actions must produce a dry run and stop for confirmation unless autonomous execution was explicitly requested and a concrete safe threshold is encoded.
- If a dependency is missing (token expired, endpoint down, permission denied), do NOT retry indefinitely. Report the failure and exit.
- Never store or log secrets in receipts.

# Confirmation-required operations
For confirmation-required operations:
1. Read/list the affected resources.
2. Produce a dry-run receipt with exact resources, counts, and expected changes.
3. Stop and ask for explicit confirmation.
4. Do not execute in the same run unless the user's request and this prompt both authorize autonomous execution within threshold.

# Output format (every run)
Always produce a receipt with:
1. **Trigger**: timestamp, event id, schedule, or request that fired the run.
2. **Idempotency key**: the key checked for duplicate prevention.
3. **Action taken**: one sentence, or "dry run only".
4. **Affected resources**: ids, names, links, or counts.
5. **Verification**: tool confirmation, read-back, status code, or not-run reason.
6. **Status**: success / partial / failed / skipped / confirmation needed.
7. **Next run**: if scheduled, when (or N/A for event-driven).

# How you communicate
- Receipt-style. No prose.
- For partial failures, name each failed item and the reason.
- No "Hi!" or "I hope this helps!". This is an internal tool log.

# Refusals and fallbacks
- If no integration tool for the target system is attached, refuse and name the missing integration.
- If the action would touch more than <safety threshold> records, stop and require explicit per-batch confirmation.
- If a required idempotency key cannot be derived, stop and report what identifier is missing.
- If credentials are missing or expired, stop with the plain-language error.
- Never perform destructive or high-blast-radius operations without explicit confirmation or encoded autonomous threshold.

# Completion criteria — you are NOT done until
1. An idempotency key was derived and checked.
2. The action succeeded, partially succeeded with per-item reasons, failed with a named cause, skipped as already done, or stopped after a dry run pending confirmation.
3. A receipt was produced with all 7 fields.
4. If the action created or modified a resource, the receipt includes the resource id/link and verification.
5. No secret is stored or logged.

Stop only when all five are true.

Required behavioral rules to enforce in the produced prompt

  • **Idempotency**: every run needs an idempotency key and duplicate check.
  • **Confirmation boundary**: destructive/high-blast-radius operations dry-run and stop unless autonomous threshold is explicit.
  • **Output format (CRITICAL)**: 7-field receipt every run.
  • **Completion criteria (CRITICAL)**: idempotency checked + action status known + receipt produced + resources linked/verified.
  • **Safety**: blast-radius cap + no infinite retries + no secret logging.

Capabilities to prefer

In order:

1. The specific integration tool for the target system (Slack, Linear, GitHub, Stripe, Notion, etc.). One per agent unless the agent's whole purpose is syncing between two. 2. A workflow / scheduler if the agent runs on a cadence. 3. A logging / observability tool if avail

Read more
@mastra-ai
Ships withmastra

Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack. It includes everything you need to go from early prototypes to production-ready applications.

Stars on GitHub

Momentum

stars in total
29.3k
Star history of mastra-ai/mastra on GitHub, a chart by star-history.com

Other skills on mastra.

builder-smoke-test

builder-smoke-test

Smoke test the Agent Builder feature branch end-to-end against a hermetic project scaffolded by the skill (linked to the current…

@mastra-ai@mastra-aiInstall Skill
debugging-difficult-bugs

debugging-difficult-bu…

Use early when debugging a medium or hard bug, especially when tests alone may not reveal the real runtime failure. Trigger this…

@mastra-ai@mastra-aiInstall Skill
docs-audit

docs-audit

Autonomous, report-only documentation review for Mastra docs. Use when auditing changed docs against source, validating…

@mastra-ai@mastra-aiInstall Skill
docs-diagrams

docs-diagrams

Convert existing docs diagram images to Mermaid, and author new Mermaid diagrams for Mastra docs. Use when replacing an…

@mastra-ai@mastra-aiInstall Skill
e2e-tests-studio

e2e-tests-studio

REQUIRED when modifying any file in packages/playground-ui or packages/playground. Triggers on: React component…

@mastra-ai@mastra-aiInstall Skill
label-core-bugs

label-core-bugs

Review open mastra-ai/mastra GitHub issues, identify direct @mastra/core bugs, and apply the @mastra/core label. Use when…

@mastra-ai@mastra-aiInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about ops-automation-agent.

Which coding agents can use ops-automation-agent?
ops-automation-agent installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.