OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…

MITAuto-check: notesMarketing & SEO

Install Ops Marketing

skills CLI
$ npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-marketing -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-marketing --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ 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-marketing .claude/skills/ops-marketing && rm -rf skills-src

Use ~/.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/

Facts

Skill name
ops-marketing
GitHub stars
542
Token cost
~3.5k tokens
SKILL.md length
783 words
Files
2 (incl. references)
Skills in repo
67
Repo updated
First seen
Licence
MIT

At a glance

OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…

  • Works in 4 steps: ops-marketing-provision status --project… → For each missing channel, run… → Verify with ops-marketing-dash --project → …
  • Asks to klaviyo
  • SKILL.md covers DNS provisioning, Quick start — autonomous mode, Runtime Context and Additional resources
  • Needs CLOUDFLARE_API_TOKEN and CLOUDFLARE_API_KEY

What it does

Ops Marketing is an agent skill from Lifecycle-Innovations-Limited/claude-ops. OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…

Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/details.md`).

It sits in Marketing & SEO, covering Email marketing. 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.

When your agent uses it

  • Asks to klaviyo
  • Tasks that involve Email marketing

Example prompts

  • “klaviyo”
  • “ads spend”
  • “/ops-marketing”

Requirements

  • A credential in CLOUDFLARE_API_TOKEN
  • A credential in CLOUDFLARE_API_KEY
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Grep, Glob, Agent, TeamCreate, SendMessage, AskUserQuestion, WebFetch, WebSearch

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. ops-marketing-provision status --project — what's missing
  2. For each missing channel, run ops-marketing-provision provision- --project (interactive only if OAuth/keys missing; otherwise idempotent)
  3. Verify with ops-marketing-dash --project
  4. If autopilot not yet enabled, enable: ops-marketing-autopilot --project --first-run-dry

What it can do on your machine

Read from SKILL.md and the folder at commit 996d61a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Grep
    • Glob
    • Agent
    • TeamCreate
    • SendMessage
    • AskUserQuestion
    • WebFetch

    …and 1 more on the same allowed-tools line.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash and jsonc).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • ads.google.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • CLOUDFLARE_API_TOKEN
    • CLOUDFLARE_API_KEY
    • KLAVIYO_API_KEY
    • RESEND_API_KEY
    • STRIPE_SECRET_KEY
    • STRIPE_API_KEY
    • META_ACCESS_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ops Marketing loads about 3.5k tokens when it runs, and up to ~38k if it reads all its reference files. Until then it costs about 26 tokens; SKILL.md has 783 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~26
When it runs · the whole SKILL.md, loaded when a task matches
~3.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~38k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Grep, Glob, Agent, TeamCreate, SendMessage, AskUserQuestion, WebFetch, WebSearch

Automated 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.

SKILL.md

The full file from Lifecycle-Innovations-Limited/claude-ops at commit 996d61a, republished under its MIT licence (© Lifecycle-Innovations-Limited). 783 words, ~3,504 tokens.

Download SKILL.mdSave it as .claude/skills/ops-marketing/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
ops-marketing
description
OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…
allowed-tools
Bash, Read, Write, Grep, Glob, Agent, TeamCreate, SendMessage, AskUserQuestion, WebFetch, WebSearch
argument-hint
<project> [email|ads|analytics|seo|social|campaigns|setup|autopilot ...]
effort
medium
maxTurns
40
context
fork

OPS ► MARKETING COMMAND CENTER

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).

DNS provisioning

bin/ops-dns-provision is the canonical DNS surface for any marketing project — it covers every record an end-to-end SaaS launch typically needs, all routed through scripts/lib/cloudflare-dns.sh for GET-first idempotency. Re-running is safe; OPS_DRY_RUN=1 prints planned API calls without firing.

SubcommandWhat it does
gsc <project> <domain>Google Search Console site verification — fetches token via siteVerification/v1/token, upserts TXT at apex, calls webResource?verificationMethod=DNS_TXT to verify.
meta-aem <project> <domain>Meta Aggregated Event Measurement — reads verification_string from /me/owned_domains, upserts facebook-domain-verification=<token> TXT at apex.
apple-pay <project> <domain>Two modes via apple_pay.mode: static-file (default — surfaces the .well-known/apple-developer-merchantid-domain-association deploy-hook path) or stripe-dns (Stripe POST /v1/payment_method_domains).
spf <project> <domain>Builds v=spf1 include:... <policy> from .esp.spf_includes, upserts merge-safely at apex (refuses to overwrite a foreign TXT lacking the v=spf1 marker).
dkim <project> <domain>ESP-keyed off .esp.provider. Resend implemented (parses records[] from POST /domains, CNAME upserts). Postmark/SES stubbed.
dmarc <project> <domain>_dmarc.<apex> TXT with v=DMARC1; p=<policy>; rua=<rua>. Defaults: policy=quarantine, rua=mailto:dmarc@<apex>.
mx <project> <domain>Provider template keyed off .inbound.provider: google-workspace (smtp.google.com pri 1) / resend-inbound / ses (region from .inbound.region).
klaviyo-sending <project> <domain>Klaviyo dedicated sending domain — POST /api/dedicated-sending-domains/, CNAME upserts.
audit <project> [--json]Read-only — for each row, queries CF and reports present / absent / conflicting.
provision-all <project> [--skip <row,row>]Idempotent full sweep.

Auth: CLOUDFLARE_API_TOKEN (Bearer, preferred) or CLOUDFLARE_API_KEY + CLOUDFLARE_EMAIL (Global key, fallback). Zone lookup: GET /zones?name=<apex> finds the zone ID. Record writes: GET-first by name+type, then PUT existing ID or POST new — never duplicate.

Apex resolver (cf_apex_for) handles co.uk-style 2nd-level TLDs (foo.co.uk → foo.co.uk) and strips proto/path/port.

Preferences schema additions

The new bin reads project-level config from $PREFS_PATH under marketing.projects.<key>:

jsonc
{
  "marketing": {
    "projects": {
      "myapp": {
        "domain": "example.com",

        // Outbound email service provider (DKIM + SPF includes)
        "esp": {
          "provider": "resend", // "resend" | "postmark" | "ses"
          "credentials": "doppler:prd:RESEND_API_KEY", // cred-ref: "env:VAR" | "doppler:CFG:KEY"
          "spf_includes": ["_spf.resend.com", "_spf.klaviyo.com"], // optional; sensible defaults applied
          "spf_policy": "-all", // "-all" (strict) | "~all" (soft-fail)
        },

        // Inbound mail (MX)
        "inbound": {
          "provider": "google-workspace", // "google-workspace" | "resend-inbound" | "ses"
          "region": "us-east-1", // only used by resend-inbound / ses
        },

        // DMARC policy
        "dmarc": {
          "policy": "quarantine", // "none" | "quarantine" | "reject"
          "rua": "mailto:dmarc@example.com", // defaults to mailto:dmarc@<apex>
        },

        // Optional Cloudflare account override (for accounts that own multiple zones)
        "dns": {
          "cloudflare_account_id": "<your-cf-account-id>",
        },

        // Apple Pay domain registration
        "apple_pay": {
          "enabled": true,
          "mode": "static-file", // default; "stripe-dns" registers via Stripe
        },

        // Cred-refs for individual rows
        "stripe": {
          "secret_key": "env:STRIPE_SECRET_KEY", // legacy DNS provisioner key
          "api_key": "env:STRIPE_API_KEY", // P3: used by ops-marketing-autopilot stripe ROAS gate
          "account_id": "acct_<id>", // optional, only when calling on behalf of a connected acct
        },
        "meta": { "access_token": "env:META_ACCESS_TOKEN" },
        "klaviyo": {
          "private_key": "doppler:prd:KLAVIYO_API_KEY", // legacy DNS row
          "api_key": "doppler:prd:KLAVIYO_API_KEY", // P3: used by gather_klaviyo_metrics
          "account_id": "<klaviyo-account-id>", // P3: optional
          "sending_subdomain": "em.example.com",
        },
      },
    },
  },
}

Defaults are applied bash-side via ${var:-default}, so all values are optional except domain (required by audit and provision-all).

P3 — perf-data wiring (autopilot)

bin/ops-marketing-autopilot reads four perf-data sources per pass and persists them to ${OPS_DATA_DIR}/state/autopilot/<project>-{ga4-conversions,gsc-signal,klaviyo,stripe}.json:

SourcePrefs pathHelperPurpose
GA4 conversionsmarketing.projects.<key>.ga4.{property_id, sa_key_file_ref}gather_ga4_conversionssource/medium/campaign rows for the blended bandit reward
GSC searchmarketing.projects.<key>.gsc.site_urlgather_gsc_signalrescue + ad-copy-hook candidate buckets
Klaviyomarketing.projects.<key>.klaviyo.{api_key, account_id}gather_klaviyo_metricsPlaced Order revenue + flow inventory
Stripemarketing.projects.<key>.stripe.{api_key, account_id}gather_stripe_revenueUTM-attributed revenue per source/medium/campaign and per ad_id — ground-truth ROAS denominator + pause-rescue gate

Env knobs:

EnvDefaultEffect
OPS_BANDIT_SOURCEblendedmeta → meta-only reward (legacy), ga4 → GA4 attribution only, blended → (meta + ga4)/2
OPS_PAUSE_ROAS_FLOOR1.0An ad with stripe_revenue ≥ floor × meta_spend is kept despite Meta CPL/CTR pause criteria
OPS_KLAVIYO_REVENUE_RATIO_FLAG0.5When klaviyo_revenue / paid_spend > flag, surface "email channel underweighted" in the daily report (no auto-shift)

UTM enforcement: every create_object campaign … call runs utm_validate (from scripts/lib/utm-validate.sh) on the derived (utm_source, utm_medium, utm_campaign) triple before any API mutation. Non-conforming names escalate + stage-only.

Quick examples
bash
# Dry-run every row for a project
OPS_DRY_RUN=1 ops-dns-provision provision-all myapp

# Single row, ad-hoc domain (no prefs needed)
ops-dns-provision dmarc myapp example.com

# JSON audit for CI healthcheck
ops-dns-provision audit myapp --json
# → {"project":"myapp","domain":"example.com","zone":"...","rows":{"gsc":"present","spf":"present","dmarc":"present","mx":"present","meta_aem":"absent","dkim":"unknown"}}

# Skip rows that need provider-specific manual setup first
ops-dns-provision provision-all myapp --skip dkim,klaviyo-sending
Show full SKILL.md (330 more words)Show less

Quick start — autonomous mode

Run /ops:marketing <project> to point-and-go:

  1. ops-marketing-provision status --project <project> — what's missing
  2. For each missing channel, run ops-marketing-provision provision-<channel> --project <project> (interactive only if OAuth/keys missing; otherwise idempotent)
  3. Verify with ops-marketing-dash --project <project>
  4. If autopilot not yet enabled, enable: ops-marketing-autopilot --project <project> --first-run-dry

Provision a brand-new project end-to-end:

bash
# One-shot: GA4 + GSC + Instagram + Google Ads — sequential, idempotent
ops-marketing-provision provision-all --project <project>

# Iterate every project in prefs
ops-marketing-provision provision-all --all-projects

# Or individually:
ops-marketing-provision provision-ga4         --project <project> \
  --domain <domain> --account-id <YOUR_GA4_ACCOUNT_ID>
ops-marketing-provision provision-gsc         --project <project> --site https://<domain>/
ops-marketing-provision provision-instagram   --project <project>   # auto-resolves via Meta token
ops-marketing-provision provision-google-ads  --project <project>   # 4-step OAuth flow

# Check results
ops-marketing-provision status --project <project> --json
ops-marketing-dash --project <project>

provision-instagram requires marketing.projects.<key>.meta.access_token (and optional meta.app_secret for appsecret_proof signing — required when the app's "Require App Secret" setting is on, which is the default for all system-user tokens). The verb is fully idempotent: smoke-tests an existing instagram.account_id before making any API calls; pass --force to re-resolve.

provision-google-ads is a 4-step flow (each step is a no-op if the credential already exists):

  1. Developer token — scans env + Doppler. If missing, writes a pending-state JSON at ${OPS_DATA_DIR}/state/marketing-provision/<project>-google-ads-pending.json and exits 1. Apply at https://ads.google.com/aw/apicenter (24–48h approval) then re-run.
  2. OAuth client — scans env + Doppler. If missing, prints Cloud Console URL for creating a Desktop OAuth client.
  3. Refresh token — launches a localhost HTTP server on :8080 (120s timeout), opens the Google consent URL, captures the auth code, exchanges for refresh_token, writes to Doppler as GOOGLE_ADS_<PROJECT_UPPER>_REFRESH_TOKEN.
  4. Customer ID — calls v24/customers:listAccessibleCustomers, auto-detects MCC manager accounts (sets login_customer_id), writes customer_id to prefs.

Pass --skip-if-pending to skip when a dev-token application is in-flight (used by provision-all to keep the chain unblocked).

Set OPS_MARKETING_DRY_RUN=1 to print planned API calls without executing.

Runtime Context

Before executing, load available context:

  1. Preferences: Read ${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json

    • timezone — display all timestamps correctly
    • klaviyo_private_key, meta_ads_token, meta_ad_account_id, ga4_property_id, google_search_console_site — check userConfig keys before env vars
    • google_ads_developer_token, google_ads_client_id, google_ads_client_secret, google_ads_refresh_token, google_ads_customer_id, google_ads_login_customer_id — Google Ads credentials
  2. Daemon health: Read ${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.json

    • If action_needed is not null → surface it before running any channel queries
  3. Secrets: Resolve API keys via userConfig → env vars → Doppler MCP (mcp__doppler__*) → Doppler CLI fallback (see Credential Resolution section below)

Additional resources

Channel, CLI, and edge-case detail lives in references/ next to this skill. Read those files before acting on a matching channel or sub-command. Do not skip them.

© 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

Files

SKILL.md and 1 other file (references) in claude-ops/skills/ops-marketing of Lifecycle-Innovations-Limited/claude-ops.

  • SKILL.md
  • references/details.md

Open the folder on GitHubat commit 996d61a

Compare with similar skills

Ops Marketing 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.

Ops Marketing compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ops Marketing this skillLifecycle-Innovations-Limited/claude-ops542—~3.5kAutomated safety check: NotesMIT
Email Sequencefreekmurze/dotfiles1k19 repos~2kAutomated safety check: PassNone
Emailscoreyhaines31/marketingskills54k1 repos~2.8kAutomated safety check: PassMIT
Email SequenceLeoYeAI/openclaw-marketing-skills1k2 repos~2.1kAutomated safety check: PassCustom licence
Onboarding Crofreekmurze/dotfiles1k16 repos~1.6kAutomated safety check: PassNone
Marketing OsYuzzyuk/marketing-os540—~2.5kAutomated safety check: PassMIT

Similar skills

  • Email Sequence

    freekmurze/dotfiles

    When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program.

    1k GitHub starsUsed in 19 repos~2k tokens
    Marketing & SEOAuto-check passed
  • Emails

    coreyhaines31/marketingskills

    When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program.

    54k GitHub starsUsed in 1 repo~2.8k tokens
    Marketing & SEOAuto-check passed
  • Email Sequence

    LeoYeAI/openclaw-marketing-skills

    When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program.

    1k GitHub starsUsed in 2 repos~2.1k tokens
    Marketing & SEOAuto-check passed
  • Onboarding Cro

    freekmurze/dotfiles

    When the user wants to optimize post-signup onboarding, user activation, first-run experience, or time-to-value.

    1k GitHub starsUsed in 16 repos~1.6k tokens
    Marketing & SEOAuto-check passed
  • Marketing Os

    Yuzzyuk/marketing-os

    A complete marketing department in one skill. An agent skill from Yuzzyuk/marketing-os.

    540 GitHub stars~2.5k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check passed
  • Onboarding

    Nexus-JPF/note-companion

    When the user wants to optimize post-signup onboarding, user activation, first-run experience, or time-to-value.

    870 GitHub starsUsed in 4 repos~1.6k tokens
    Marketing & SEOAuto-check passed

More from Lifecycle-Innovations-Limited/claude-ops

All 67 skills in this repo
  • Ops Dash

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "ops dashboard", "pixel HQ", or…

    542 GitHub stars~4.7k tokensUpdated today
    Auto-check: notes
  • Ops Gtm

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "go to market", "GTM plan", or…

    542 GitHub stars~3.7k tokensUpdated today
    Auto-check: notes
  • Ops Socials

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "tweet", "post to linkedin", or…

    542 GitHub stars~3.6k tokensUpdated today
    Auto-check: notes
  • Ops Yolo

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "yolo mode", "run the business today"…

    542 GitHub stars~4k tokensUpdated today
    Auto-check: notes
  • Ops Monitor

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "datadog", "APM alerts", or…

    542 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check: notes
  • Setup

    Lifecycle-Innovations-Limited/claude-ops

    OPS on-demand: This skill should be used when the user asks to "/ops:setup", "configure ops", or…

    542 GitHub stars~4.2k tokensUpdated today
    Auto-check: notes

Categories

Questions about Ops Marketing

What does Ops Marketing do?

OPS on-demand: This skill should be used when the user asks to "klaviyo", "ads spend", or…. Ops Marketing is an agent skill from Lifecycle-Innovations-Limited/claude-ops.

When should I use Ops Marketing?

Ops Marketing fits situations like: asks to klaviyo; tasks that involve Email marketing.

How do I install Ops Marketing in Claude Code?

Run `npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-marketing -a claude-code`. Or copy the skill folder (claude-ops/skills/ops-marketing in Lifecycle-Innovations-Limited/claude-ops) into .claude/skills/ops-marketing in your project. Claude Code loads it when a task matches its description.

How do I install Ops Marketing in Codex?

Run `npx skills add Lifecycle-Innovations-Limited/claude-ops --skill ops-marketing -a codex`. Or copy the skill folder (claude-ops/skills/ops-marketing in Lifecycle-Innovations-Limited/claude-ops) into .agents/skills/ops-marketing in your project. Codex loads it when a task matches its description.

Can I use Ops Marketing in Cursor, Gemini CLI or GitHub Copilot?

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-marketing -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-marketing, .gemini/skills/ops-marketing, .github/skills/ops-marketing and .opencode/skills/ops-marketing in your project.

What does Ops Marketing need to run?

Going by SKILL.md and its folder, Ops Marketing needs credentials named CLOUDFLARE_API_TOKEN, CLOUDFLARE_API_KEY, KLAVIYO_API_KEY and RESEND_API_KEY. Our summary lists: A credential in CLOUDFLARE_API_TOKEN; A credential in CLOUDFLARE_API_KEY. Its frontmatter pre-approves these tools: Bash, Read, Write, Grep, Glob, Agent, TeamCreate, SendMessage, AskUserQuestion, WebFetch, WebSearch.

Does Ops Marketing access the network?

SKILL.md names 1 domain. As links in the text: ads.google.com. This is read from the text; nothing was executed.

Is Ops Marketing safe to install?

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.

What licence does Ops Marketing use?

Ops Marketing is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ops Marketing use?

About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 34k tokens, read only when the agent opens those files.

What are the alternatives to Ops Marketing?

Skills that share tags, products or a category with Ops Marketing: Email Sequence (freekmurze/dotfiles, 1k stars), Emails (coreyhaines31/marketingskills, 54k stars), Email Sequence (LeoYeAI/openclaw-marketing-skills, 1k stars) and Onboarding Cro (freekmurze/dotfiles, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ops Marketing?

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 10, 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.