OPS on-demand: This skill should be used when the user asks to "sentry issues", "triage github", or…

MITAuto-check: notes

Install Ops Triage

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

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

GitHub CLI
$ gh skill install Lifecycle-Innovations-Limited/claude-ops ops-triage --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-triage .claude/skills/ops-triage && 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-triage
GitHub stars
542
Token cost
~2.7k tokens
SKILL.md length
796 words
Files
1
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 "sentry issues", "triage github", or…

  • Works in 4 steps: Gather issues in parallel → Cross-reference against code → Confirm and resolve fixed issues → …
  • Asks to sentry issues
  • SKILL.md covers Runtime Context, CLI/API Reference, Agent Teams support and Phase 1 — Gather issues in…, plus 7 more sections
  • Calls gh, curl and jq; reaches sentry.io and api.linear.app; needs SENTRY_AUTH_TOKEN and CLAIM_KEY

What it does

Ops Triage is an agent skill from Lifecycle-Innovations-Limited/claude-ops. OPS on-demand: This skill should be used when the user asks to "sentry issues", "triage github", or…

Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with GitHub, Model Context Protocol and Sentry. 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 sentry issues

Example prompts

  • “sentry issues”
  • “triage github”
  • “/ops-triage”

Requirements

  • A credential in SENTRY_AUTH_TOKEN
  • A credential in LINEAR_API_KEY
  • Pre-approved tools (allowed-tools): Bash, Read, Grep, Glob, Skill, Agent, AskUserQuestion, TeamCreate, SendMessage, TaskCreate, TaskUpdate, TaskList, WebFetch, WebSearch, LSP, mcp__plugin_sentry_sentry__search_issues, mcp__plugin_sentry_sentry__get_sentry_resource, mcp__linear__list_issues, mcp__linear__update_issue, mcp__linear__get_issue, mcp__linear__list_teams

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Gather issues in parallel
  2. Cross-reference against code
  3. Confirm and resolve fixed issues
  4. Present triage board

What it can do on your machine

Read from SKILL.md and the folder at commit ee9c784. 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
    • Grep
    • Glob
    • Skill
    • Agent
    • AskUserQuestion
    • TeamCreate
    • SendMessage
    • TaskCreate

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

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • curl
    • jq
    • git

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • sentry.io
    • api.linear.app

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

  • Credentials

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

    • SENTRY_AUTH_TOKEN
    • CLAIM_KEY
    • LINEAR_API_KEY
    • GITHUB_TOKEN

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

Context cost

Ops Triage loads about 2.7k tokens when it runs. Until then it costs about 28 tokens; SKILL.md has 796 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~28
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

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, Grep, Glob, Skill, Agent, AskUserQuestion, TeamCreate, SendMessage, TaskCreate, TaskUpda

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 ee9c784, republished under its MIT licence (© Lifecycle-Innovations-Limited). 796 words, ~2,680 tokens.

Download SKILL.mdSave it as .claude/skills/ops-triage/SKILL.md (or your agent's skills folder).
name
ops-triage
description
OPS on-demand: This skill should be used when the user asks to "sentry issues", "triage github", or…
allowed-tools
Bash, Read, Grep, Glob, Skill, Agent, AskUserQuestion, TeamCreate, SendMessage, TaskCreate, TaskUpdate, TaskList, WebFetch, WebSearch, LSP, mcp__plugin_sentry_sentry__search_issues, mcp__plugin_sentry_sentry__get_sentry_resource, mcp__linear__list_issues, mcp__linear__update_issue, mcp__linear__get_issue, mcp__linear__list_teams
argument-hint
[project-alias|sentry|linear|github|all]
effort
high
maxTurns
40

Runtime Context

Before triaging, load:

  1. Preferences: cat ${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json — read project registry for repo paths
  2. Daemon health: cat ${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.json — ensure services healthy
  3. Secrets: Resolve via Doppler MCP (mcp__doppler__*) → env → Doppler CLI fallback → password manager: SENTRY_AUTH_TOKEN, LINEAR_API_KEY, GITHUB_TOKEN
  4. Ops memories: Check ${CLAUDE_PLUGIN_DATA_DIR}/memories/topics_active.md for issue context

OPS ► CROSS-PLATFORM TRIAGE

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

CLI/API Reference

gh CLI (GitHub)
CommandUsageOutput
gh issue list --state open --json number,title,body,labels,assignees,createdAt,url --limit 50Open issuesJSON array
gh issue list --repo <owner/repo> --state open --json number,title,labels,createdAt --limit 20Repo issuesJSON array
gh pr list --state merged --search "#<N>"PRs referencing issueJSON array
gh issue close <N> --comment "<msg>"Close issueConfirmation
sentry-cli / Sentry API
CommandUsageOutput
sentry-cli issues list --project <slug> --status unresolvedUnresolved issuesIssue list
curl -H "Authorization: Bearer $SENTRY_AUTH_TOKEN" "https://sentry.io/api/0/projects/<org>/<proj>/issues/?query=is:unresolved"API fallback when MCP unavailableJSON array
Linear GraphQL (fallback when MCP unavailable)
CommandUsageOutput
curl -X POST https://api.linear.app/graphql -H "Authorization: $LINEAR_API_KEY" -H "Content-Type: application/json" -d '{"query":"{ issues(filter: {state: {type: {in: [\"started\",\"unstarted\"]}}}) { nodes { id title state { name } priority assignee { name } } } }"}'Active issuesJSON

Agent Teams support

If CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 is set, use Agent Teams when dispatching fix agents for multiple issues. This enables:

  • Fix agents can share findings (e.g., agent fixing Sentry error discovers the same root cause as a Linear issue)
  • You can redirect agents if cross-referencing reveals duplicate issues
  • Agents report progress and you can prioritize which fix to merge first

Team setup (only when flag is enabled, Phase 4 dispatch):

TeamCreate("triage-fixers")
Agent(team_name="triage-fixers", name="fix-[issue-id]", subagent_type="ops:triage-agent", ...)

Use broadcast(content="Root cause found: missing index on users.email — check if your issue is related") to share discoveries.

If the flag is NOT set, fall back to standard parallel subagents.

Phase 1 — Gather issues in parallel

Run all of these simultaneously:

GitHub Issues
bash
gh issue list --state open --json number,title,body,labels,assignees,createdAt,url --limit 50 2>/dev/null
GitHub Issues (registry-driven)
bash
REGISTRY="${CLAUDE_PLUGIN_ROOT}/scripts/registry.json"
[ -f "$REGISTRY" ] || REGISTRY="${CLAUDE_PLUGIN_ROOT}/scripts/registry.example.json"
for repo in $(jq -r '.projects[] | select(.gsd == true) | .repos[]' "$REGISTRY" 2>/dev/null); do
  echo "=== $repo ==="
  gh issue list --repo "$repo" --state open --json number,title,labels,createdAt --limit 20 2>/dev/null
done
Sentry

If Sentry MCP is connected, fetch unresolved issues for all projects. Otherwise run: echo "Sentry MCP not available"

Linear

Use mcp__linear__list_teams to get team IDs, then mcp__linear__list_issues with filter: {state: {type: {in: ["unstarted", "started"]}}} for each team.


Phase 2 — Cross-reference against code

For each Sentry issue, check if it's already fixed:

  1. Extract the error message, file path, and line number from the Sentry event.
  2. grep for the relevant code in the affected repo.
  3. Check git log: git log --oneline --all -- [file] 2>/dev/null | head -20
  4. If the fix is merged and deployed (check ECS deploy timestamps), mark as resolved.

For each GitHub Issue:

  • Check if any merged PR references the issue number (gh pr list --state merged --search "#[N]")
  • If referenced and merged, mark as potentially resolved

Show full SKILL.md (344 more words)Show less

Phase 3 — Confirm and resolve fixed issues

For issues confirmed fixed in code AND deployed, show the full list and use AskUserQuestion:

Found N issues confirmed fixed and deployed:

  [Sentry] [title] — fix in [commit], deployed [time ago]
  [Linear] [title] — fix in [commit], deployed [time ago]
  [GitHub] #[N] [title] — referenced in merged PR #[M]

  [Resolve all N]  [Review each one]  [Skip — don't auto-resolve]

If user picks "Review each one", show each issue individually with [Resolve] / [Skip] via AskUserQuestion.

For confirmed issues:

  • Sentry: use Sentry MCP to resolve the issue
  • Linear: use mcp__linear__update_issue with state: "Done"
  • GitHub: gh issue close [N] --comment "Auto-closed: fix confirmed deployed"

Log all resolutions.


Phase 4 — Present triage board

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 OPS ► TRIAGE — [date]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

AUTO-RESOLVED (already fixed)
 ✓ [Sentry] [title] — fix in [commit]
 ✓ [Linear] [title] — closed
 ✓ [GitHub] #[N] [title] — closed

ACTIVE ISSUES (needs work)
 CRITICAL  [source] [title] [age] [assigned?]
 HIGH      [source] [title] [age] [assigned?]
 MEDIUM    [source] [title] [age] [assigned?]

──────────────────────────────────────────────────────

Use batched AskUserQuestion calls (max 4 options each):

AskUserQuestion call 1:

  [Dispatch agent for [top critical issue]]
  [Dispatch agent for [second issue]]
  [Assign issue to sprint (Linear)]
  [More...]

AskUserQuestion call 2 (only if "More..."):

  [Bulk-assign all HIGH to current sprint]
  [Done]

Superpowers Integration

During this command's execution, invoke the following superpower skill at the specified checkpoint:

  • Checkpoint: When diagnosing an active issue before proposing a fix (root-cause investigation during Phase 2 cross-reference or Phase 4 agent dispatch brief).
  • Skill: superpowers:systematic-debugging
  • Why: Enforces hypothesis-driven root-cause analysis so fix agents target the real defect, not the symptom.

Dispatch fix agent

When dispatching for an issue, spawn an Agent using agents/triage-agent.md with:

  • Full issue context (error, stack trace, affected code)
  • Instruction to create feature branch, fix, and open PR
  • Report back on completion or if blocked

Filter to $ARGUMENTS project/source if specified.


Native tool usage

Tasks — triage progress

Use TaskCreate for each issue being investigated. Update with TaskUpdate as issues are resolved/dispatched/skipped. Gives the user a live triage checklist.

WebFetch — Sentry/GitHub enrichment

When Sentry MCP hits quota limits, fall back to WebFetch with https://sentry.io/api/0/projects/<org>/<project>/issues/?query=is:unresolved (using SENTRY_AUTH_TOKEN header). Same for GitHub issue details when gh is slow.

WebSearch — error context

Use WebSearch to find known solutions for recurring errors (e.g., "AWS RDS connection reset", "ECS task stopped reason"). Include findings in the triage board as context.

LSP — code navigation for fix agents

When dispatching fix agents, use LSP to find symbol definitions, references, and call hierarchies. This helps agents navigate unfamiliar codebases faster than grep.


Ledger Integration

CLAIM_KEY by issue type:

  • Sentry: sentry:issue:<short_id>
  • GitHub issue: gh:pr:<owner>/<repo>#<number> (reused for issues when no PR exists)
  • Infra alert: ci:run:<repo>:<run_id>
Pre-flight skip-check
bash
CLAIM_KEY="sentry:issue:<short_id>"   # adjust per issue type
ledger query --claim-key "$CLAIM_KEY" --since=-PT24H

Skip issues with in_progress or done. Present awaiting_user issues at the top of the triage board as "needs your decision."

Claim + resolve
bash
# Claim when opening a triage pass on an issue
ledger write \
  --claim-key "$CLAIM_KEY" \
  --kind "fix" \
  --status "in_progress" \
  --title "Triage: <issue title>" \
  --ttl-sec 7200

# Resolve after fix dispatched or issue escalated
ledger write \
  --claim-key "$CLAIM_KEY" \
  --kind "fix" \
  --status "done" \
  --title "Triage: <issue title>" \
  --context "fix dispatched|escalated|snoozed: <reason>"

© 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

Just SKILL.md in claude-ops/skills/ops-triage of Lifecycle-Innovations-Limited/claude-ops.

Open the folder on GitHubat commit ee9c784

Compare with similar skills

Ops Triage 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 Triage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ops Triage this skillLifecycle-Innovations-Limited/claude-ops542—~2.7kAutomated safety check: NotesMIT
Dotagentsgetsentry/sentry-wizard295—~900Automated safety check: PassCustom licence
MCP ServersPostHog/code179—~1.9kAutomated safety check: PassMIT
Superset Integration Toolssuperset-sh/superset15k—~1.6kAutomated safety check: WarnCustom licence
Ops Triagedavepoon/buildwithclaude3.6k—~2kAutomated safety check: NotesMIT
ComposioComposioHQ/composio30k1 repos~1.7kAutomated safety check: PassMIT

Similar skills

  • Dotagents

    getsentry/sentry-wizard

    Official

    Manage agent skill dependencies with dotagents. An agent skill from getsentry/sentry-wizard.

    295 GitHub stars~900 tokensUpdated 3 days ago
    Agent WorkflowsAuto-check passed
  • MCP Servers

    PostHog/code

    Official

    Install, configure, authenticate, and troubleshoot MCP (Model Context Protocol) servers for this agent.

    179 GitHub stars~1.9k tokensUpdated 2 mo ago
    Agent WorkflowsAuto-check passed
  • Superset Integration Tools

    superset-sh/superset

    Lists and calls the tools of connected integrations such as Linear, GitHub, Sentry or Notion through the superset mcp command, without storing a token on the machine.

    15k GitHub stars~1.6k tokensUpdated today
    Agent WorkflowsAuto-check: warnings
  • Ops Triage

    davepoon/buildwithclaude

    Cross-platform issue triage. An agent skill from davepoon/buildwithclaude.

    3.6k GitHub stars~2k tokensUpdated 2 days ago
    DevelopmentAuto-check: notes
  • Composio

    ComposioHQ/composio

    Route and complete Composio work across Composio For You and Composio Platform.

    30k GitHub starsUsed in 1 repo~1.7k tokens
    Productivity & AutomationAuto-check passed
  • Prepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.

    80k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-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 Marketing

    Lifecycle-Innovations-Limited/claude-ops

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

    542 GitHub stars~3.5k 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

Questions about Ops Triage

What does Ops Triage do?

OPS on-demand: This skill should be used when the user asks to "sentry issues", "triage github", or…. Ops Triage is an agent skill from Lifecycle-Innovations-Limited/claude-ops.

When should I use Ops Triage?

Ops Triage fits situations like: asks to sentry issues.

How do I install Ops Triage in Claude Code?

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

How do I install Ops Triage in Codex?

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

Can I use Ops Triage 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-triage -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-triage, .gemini/skills/ops-triage, .github/skills/ops-triage and .opencode/skills/ops-triage in your project.

What does Ops Triage need to run?

Going by SKILL.md and its folder, Ops Triage needs the command-line tools its instructions call (gh, curl, jq and git) and credentials named SENTRY_AUTH_TOKEN, CLAIM_KEY, LINEAR_API_KEY and GITHUB_TOKEN. Our summary lists: A credential in SENTRY_AUTH_TOKEN; A credential in LINEAR_API_KEY. Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob, Skill, Agent, AskUserQuestion, TeamCreate, SendMessage, TaskCreate, TaskUpdate, TaskList, WebFetch, WebSearch, LSP, mcp__plugin_sentry_sentry__search_issues, mcp__plugin_sentry_sentry__get_sentry_resource, mcp__linear__list_issues, mcp__linear__update_issue, mcp__linear__get_issue, mcp__linear__list_teams.

Does Ops Triage access the network?

SKILL.md names 2 domains. In commands or code: sentry.io and api.linear.app; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Ops Triage 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 Triage use?

Ops Triage 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 Triage use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ops Triage?

Skills that share tags, products or a category with Ops Triage: Dotagents (getsentry/sentry-wizard, 295 stars), MCP Servers (PostHog/code, 179 stars), Superset Integration Tools (superset-sh/superset, 15k stars) and Ops Triage (davepoon/buildwithclaude, 3.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ops Triage?

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.