Sandbox

Claude Code plugin for business ops, agents, and skills

claude-ops packages a large set of Claude Code skills, agents, hooks, and service integrations into one installable plugin. It gives you terminal commands for morning briefing, inbox zero, PR automation, revenue checks, marketing, voice, and AWS monitoring, with a daemon that pre-warms context in the background.

188 stars22 forksShellUpdated 7d ago
Who it's for

Builders who want their agent to manage inboxes, PRs, revenue, and ops from Claude Code or other supported CLIs.

What it delivers

You can run a business ops dashboard, automate routine agent work, and keep project context ready without stitching tools together yourself.

What it does

Morning briefing command

`/ops:go` shows a single terminal view of infrastructure, CI/CD, inbox, PRs, sprint state, and revenue.

Unified inbox handling

`/ops:inbox` and `/ops:comms` pull together Slack, Telegram, email, and other channels.

Autonomous PR pipeline

`/ops:merge` handles PR merge flows and connects to post-merge auto-fix behavior.

Business monitoring

`/ops:fires`, `/ops:monitor`, and `/ops:revenue` cover AWS health, APM, and sales signals.

Marketing and commerce ops

`/ops:marketing`, `/ops:ecom`, and `/ops:gtm` connect to Klaviyo, Meta, GA4, Shopify, and related services.

Voice and meeting actions

`/ops:voice` supports phone calls, FaceTime, Zoom, Twilio, Bland, ElevenLabs, and transcription.

Autonomy and routing

The repo includes specialist agents, agent teams, and a daemon that pre-warms briefing data and routes tasks.

Cross-CLI installer

The installer mirrors skills and binstubs into supported CLI layouts from one config file.

How to get it

  1. 1Run
    git clone https://github.com/Lifecycle-Innovations-Limited/claude-ops.git
    cd claude-ops/installer
    npm install
    node bin/claude-ops-installer.mjs install
  2. 2Local development
    git clone https://github.com/Lifecycle-Innovations-Limited/claude-ops.git
    claude --plugin-dir ./claude-ops/claude-ops

README

claude-ops

Business Operating System for Claude Code

Version License: MIT Claude Code Plugin Skills Agents Integrations Auto-fix Safety Models

One command. Sixty seconds. Your entire business, at a glance.

╭──────────────────────────────────────────────────────────────────────────────╮
│  /ops:go  ►  MORNING BRIEFING                              2026-04-12  09:03 │
├─────────────────────────────────┬────────────────────────────────────────────┤
│  INFRA    ████████████████  ok  │  ECS: 4/4 healthy  RDS: ok  Redis: ok     │
│  CI/CD    ████████████░░░░  75% │  3 passing  1 failing  (my-api #847)  │
│  INBOX    ░░░░░░░░░░░░░░░░  14  │  Slack: 9  Telegram: 3  Gmail: 2 unread   │
│  PRs      ████████████████  3   │  3 ready to merge  1 needs review          │
│  SPRINT   ████████████░░░░  67% │  Sprint 24  —  8 of 12 issues complete     │
│  REVENUE  ████████████████  $   │  $2,847 MTD  ↑12% vs last month           │
├─────────────────────────────────┴────────────────────────────────────────────┤
│  Next action: merge feat/user-profile  ·  fix my-api CI  ·  reply @alice    │
╰──────────────────────────────────────────────────────────────────────────────╯

Turn Claude Code into a complete business operating system — infrastructure health, CI/CD status, unified inbox, open PRs, sprint state, revenue snapshot (Stripe + RevenueCat + AWS), and autonomous C-suite agents that act on your behalf.


What's new in v3.6

Current: v3.6.1. One plugin, three harnesses, official skill shape.

HermesInstaller mirrors skills into ~/.hermes/skills for working slash commands and links hermes-plugin/ for skill_view("ops:*").
GrokLoads the Claude plugin as-is. No .grok-plugin.
SkillsThird-person trigger descriptions, shared preamble, ops-rules (plugin-root CLAUDE.md is a pointer). Oversized skills split into references/.
Versionsplugin.json = Hermes plugin.yaml = installer pin. ops-release keeps them together.
MCPPlugin .mcp.json is empty. Servers start on demand, not once per session.

Ports: claude-ops/docs/harness-ports.md. Rules: skills/ops-rules/SKILL.md. Full notes: CHANGELOG.


What's new in v2.0

v2 turns claude-ops from a briefing + comms surface into an autonomy layer for Claude Code itself. Purely additive — no v1 behaviour changes by default. See claude-ops/CHANGELOG.md and docs/migrating-from-v1.md.

CapabilitySkillDoc
Post-merge + build-failure auto-fix (PostToolUse hooks → headless Haiku fixer)/ops:deploy-fixdeploy-fix.md
Pre-installed specialist agents + silent general-purpose → specialist routing(transparent)agents.md
Universal safety hooks: secret-scan, rm -rf anchor block, main push warn(always-on)safety-hooks.md
Recap marquee — multi-session digest in tmux status-right / statusLine/ops:recaprecap.md
Multi-account Claude Max rotator with launchd daemon + AI-brain (jittered post-rotation respawn + /login re-auth so a freshly-rotated account isn't hit by a synchronized first-call burst)/ops:rotate, /ops:rotate-setupCHANGELOG
Periodic Task* tracking nudge(PostToolUse hook)CHANGELOG
Windsor.ai live marketing data source for ops dashboards, marketing, socials & ecom/ops:marketingwindsor-ai.md

Quick start for the auto-fix subsystem

# 1. Upgrade
/plugin update ops@ops-marketplace

# 2. Run the wizard (hits new steps 6.5a–6.5d for v2 toggles)
/ops:setup

# 3. Map your repos to their deploy URLs
/ops:deploy-fix configure
# (opens ~/.claude/config/post-merge-services.json)

# 4. From now on, every `gh pr merge` you run from Claude Code will:
#    - poll the deploy workflow
#    - curl /health on success
#    - verify /version returns the merged SHA
#    - on failure: auto-rerun transients, OR dispatch a Haiku deploy-fixer
/ops:deploy-fix          # see status / budget / live runs

Per-repo budget caps (default 3/hour), single-flight locks, and content-hash dedup prevent runaway spending. Notifications route via macos/ntfy/pushover/discord/telegram/none. Every toggle is spacebar-toggleable in /plugins settings.


Quick Start

# 1. Add the marketplace (ships ops + desktop-act companion)
/plugin marketplace add Lifecycle-Innovations-Limited/claude-ops

# 2. Install the ops plugin
/plugin install ops@ops-marketplace
# Optional explicit companion (also run by /ops:setup and /ops:update):
# /plugin install desktop-act@ops-marketplace

# 3. Run the guided setup wizard (co-installs desktop-act by default)
/ops:setup

Cross-CLI install (Claude Code + Codex + Gemini + OpenClaw + Hermes + OpenCode)

git clone https://github.com/Lifecycle-Innovations-Limited/claude-ops.git
cd claude-ops/installer
npm install
node bin/claude-ops-installer.mjs install

One command mirrors upstream skills + binstubs into every detected CLI's expected layout from a single central config (~/.config/claude-ops-installer/config.yaml). See installer/README.md for the schema, supported agents, and verify / doctor / update / uninstall subcommands.

[!TIP] The wizard installs the background daemon EARLY (Step 2c). While you're still answering "connect Slack? [OAuth/Skip]" questions, briefing-pre-warm is already running every 2 minutes — pre-fetching ECS health, git state, PRs, CI, and unread counts. By the time setup finishes, your first /ops:go briefing loads in <3 seconds from warm cache instead of ~30s cold.

Local development:

git clone https://github.com/Lifecycle-Innovations-Limited/claude-ops.git
claude --plugin-dir ./claude-ops/claude-ops

Commands

All 66 skills, grouped by category:

🧭 Navigation📊 Daily Ops
/ops — pixel-art dashboard/ops:go — morning briefing
/ops:dash — same + hotkeys/ops:next — priority next action
/ops:setup — guided wizard/ops:inbox — deep-context inbox zero
/ops:uninstall — clean removal/ops:comms — send/read any channel
/ops:merge — autonomous PR pipeline
/ops:relations — relationship manager
/ops:vip — VIP list, answered first
🛠️ Project & Eng💰 Business
/ops:projectsportfolio dashboard/ops:revenueStripe + RevenueCat + AWS
/ops:linear — sprint board/ops:ecom — Shopify operations
/ops:triage — cross-platform issues/ops:marketing — Klaviyo/Meta/GA4/GSC
/ops:fires — incidents + all AWS/ops:gtmcross-channel GTM planner
/ops:deploy — ECS/Vercel/Actions/ops:voicenative + Twilio + Bland + Zoom + smart join
/ops:monitor — Datadog/New Relic/OTEL/ops:package — carrier-agnostic shipping
/ops:competitorsself-discovering competitor intel (v2.3)
🤖 Automation🧰 Maintenance
/ops:orchestrate — parallel engine/ops:speedupGPU/ANE + power hogs + OS actions
/ops:yolo — 4 parallel C-suite agents/ops:doctor — plugin auto-repair
/ops:integrate — add external service/ops:daemon — launchd background brain
/ops:whatsapp-biz — catalog/orders/ops:status — plugin + daemon health

Voice / phone / video (v2.9)

/ops:voice is a full voice surface — not just AI calls.

SubcommandWhat it does
phone <number>Native Phone.app dial via Continuity
facetime <handle> [--audio]FaceTime video or audio
zoom start|join|scheduleNative Zoom + REST scheduling
join [--at now|next]Auto-joins the current/next calendar meeting with smart AV defaults (cam/mic policy by attendee count, lid-state mic switching, Elgato auto-launch)
twilio-call, twilio-smsProgrammatic outbound voice + SMS
bland-callAI agent phone call
tts, transcribeElevenLabs TTS + Groq Whisper

All outbound 1:1 channels (twilio, bland) go through the per-message approval gate (Rule 6).

Skill routing

flowchart TD
    U["User"] --> O["/ops"]
    O --> D["Dashboard"]
    D --> Daily["Daily Ops"]
    D --> Eng["Project & Eng"]
    D --> Biz["Business"]
    D --> Auto["Automation"]
    Daily --> go["/ops:go"]
    Daily --> inbox["/ops:inbox"]
    Daily --> merge["/ops:merge"]
    Eng --> projects["/ops:projects"]
    Eng --> linear["/ops:linear"]
    Eng --> fires["/ops:fires"]
    Biz --> revenue["/ops:revenue"]
    Biz --> ecom["/ops:ecom"]
    Biz --> marketing["/ops:marketing"]
    Auto --> yolo["/ops:yolo"]
    Auto --> orchestrate["/ops:orchestrate"]

Before / After

┌────────────────────────────────────────────┬──────────────────────────────────────────────┐
│  WITHOUT claude-ops                        │  WITH claude-ops                             │
├────────────────────────────────────────────┼──────────────────────────────────────────────┤
│  Open 6+ tabs every morning                │  /ops:go  ——  one command, done              │
│  Context-switch between Slack/Telegram/    │  /ops:inbox  ——  unified view, all channels  │
│  email                                     │                                              │
│  Manually review and merge PRs one by one  │  /ops:merge  ——  autonomous pipeline         │
│  SSH into servers to check health          │  /ops:fires  ——  terminal dashboard          │
│  Forget to track AWS spend                 │  /ops:revenue  ——  automatic cost snapshot   │
│  Switch between Linear and GitHub          │  /ops:linear + /ops:projects  ——  unified    │
└────────────────────────────────────────────┴──────────────────────────────────────────────┘

Integrations (22 services)

Most integrations offer two paths — MCP (zero-config OAuth) or CLI (fuller feature set). The setup wizard lets you choose per-integration.

SERVICEMCPCLIWHAT YOU LOSE WITHOUT CLI
GitHubgh (auto)EVERYTHING — CI logs, PR merge, triage all require gh
AWSaws (auto)EVERYTHING — 17+ services probed by infra-monitor
StripeAPI keyRequired for /ops:revenue MRR — web + desktop subs
RevenueCatAPI key + project IDRequired for mobile-app subscription MRR
LinearOAuth via Claude.ai (12 tools)Nothing — fully covered
VercelOAuth via Claude.aiNothing — deploy status, build + runtime logs
SlackOAuth via Claude.ailocal bot tokenMCP covers most. Token adds: unlimited search, private ch
GmailOAuth (read)gog (send+archive)MCP = read-only. CLI = full autonomous inbox
CalendarOAuth via Claude.aigog (read-only)MCP has more features — either works
SentryOAuth via Claude.aisentry-cliMCP covers triage. CLI adds source maps + releases
WhatsAppwacliEVERYTHING — no MCP exists
Telegrambundled MCP serverEVERYTHING — plugin ships its own MTProto server
ShopifyAdmin API + templateStore ops, order mgmt, inventory via /ops:ecom
KlaviyoAPI keyEmail/SMS campaigns via /ops:marketing
Meta AdsAPI tokenPaid-social reporting via /ops:marketing
GA4service accountAnalytics via /ops:marketing
GSCservice accountSearch Console via /ops:marketing
Bland AIAPI keyOutbound voice via /ops:voice
ElevenLabsAPI keyTTS + cloning via /ops:voice
WhisperAPI keyTranscription via /ops:voice
TwilioAPI (Account SID + Auth Token)Outbound voice + SMS via /ops:voice twilio-*
ZoomServer-to-Server OAuthAPI tokenNative start/join (no creds) + REST schedule via /ops:voice zoom *
macOS Phone / FaceTimeURL schemes (tel:, facetime://, facetime-audio://)Native via Continuity — no creds, no API
Elgato Camera Hubauto-launched if installedVirtual camera setup for meetings via /ops:voice join
GSDauto-detectedOptional — roadmap state; degrades gracefully
Doppler@dopplerhq/mcp-server (MCP)doppler CLI (fallback)Secrets manager; MCP server provides direct tool access

[!NOTE] infra-monitor now covers every AWS service you have IAM for — ECS, EC2, RDS, Lambda, S3, CloudFront, ALB/NLB, API Gateway, SQS, SNS, DynamoDB, ElastiCache, Route 53, ACM, CloudWatch, Budgets, IAM. Probes run in parallel; services you can't access are silently skipped.


Architecture

flowchart TB
    CC[Claude Code] --> S[Skills · 22]
    CC --> A[Agents · 12]
    CC --> H[Hooks]
    S & A & H --> RC[Runtime Context]
    RC --> P[preferences.json]
    RC --> M[memories/]
    RC --> SEC[Doppler · PW Mgr · Keychain · env]
    CC <--> D[ops-daemon<br/>launchd · 7 services]

All skills use pre-execution shell blocks (! fences) that gather data before model context loads — zero extra latency, minimal token overhead. The ops-daemon pre-warms briefing data so /ops:go hits warm cache.

Why the nested claude-ops/claude-ops/ directory? Claude Code's plugin marketplace system requires a two-level layout: the repo root acts as a marketplace container (with .claude-plugin/marketplace.json pointing "source": "./claude-ops"), while the inner directory is the actual plugin root (with .claude-plugin/plugin.json, skills, agents, etc.). This is how Claude Code resolves and caches plugins — it cannot be flattened.

claude-ops/                        ← marketplace root (this repo, this README)
├── .claude-plugin/
│   └── marketplace.json           # points to ./claude-ops as plugin source
├── README.md                      # ← you are here
│
└── claude-ops/                    ← plugin root (Claude Code loads from here)
    ├── .claude-plugin/plugin.json
    ├── CLAUDE.md                  # 5 non-negotiable plugin rules
    ├── skills/                    # 22 slash commands
    ├── agents/                    # 12 autonomous agents (Opus/Sonnet/Haiku)
    ├── bin/                       # ops-gather · ops-shopify-create · gog fallback
    ├── hooks/                     # SessionStart health check
    ├── telegram-server/           # bundled MCP server (gram.js)
    ├── templates/                 # Shopify Admin + app scaffolding
    ├── tests/                     # bash validation · test-no-secrets.sh
    └── .mcp.json                  # empty on purpose — MCP starts on demand, not per session

Agent Teams

Every ops skill that spawns agents supports Claude Code Agent Teams — a coordination layer where agents share context, report progress, and accept mid-flight steering.

Enable: Set CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in your environment.

How it works: When the flag is set, skills create a named team and dispatch agents into it. Agents within a team can share findings (e.g., an inbox agent discovers a Slack message referencing an email thread, so the email agent prioritizes it) and you can steer priorities via SendMessage.

TeamCreate("fire-fixers")
Agent(team_name="fire-fixers", name="fix-ecs", ...)
Agent(team_name="fire-fixers", name="fix-ci", ...)
SendMessage(to="fix-ecs", content="This is P0, prioritize over CI")

Without the flag: Skills fall back

Files in the repo

Repository payload20 top-level entries
  • .claude-plugin
  • .cursor
  • .githooks
  • .github
  • .planning
  • claude-ops
  • desktop-act
  • docs
  • installer
  • pocket-ops-ui
  • scripts
  • .gitignore
  • .metadata_never_index
  • AGENTS.md
  • APPROVAL_POLICY.md
  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md
  • LICENSE
  • README.md
  • SECURITY.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More plugins

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

138k
1 add

Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

82k
code-yeongyu/
oh-my-openagent

OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.

69k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

94k

Opinionated Oxlint rules for rejecting low-evidence TypeScript and JavaScript patterns

4.3k