Agent skill

Project Ops

by ericrisco in ericrisco/rsc-harness

A skill your agent uses when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary…

MITAuto-check passedProduct & Project Management

Install Project Ops

skills CLI
$ npx skills add ericrisco/rsc-harness --skill project-ops -a claude-code

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

GitHub CLI
$ gh skill install ericrisco/rsc-harness project-ops --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/ericrisco/rsc-harness.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/project-ops .claude/skills/project-ops && 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
project-ops
GitHub stars
167
Token cost
~2.4k tokens
SKILL.md length
1,142 words
Files
6 (incl. scripts, references)
Skills in repo
227
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary…

  • An operator wants to run a small
  • SKILL.md covers The artifact comes first, Milestone discipline, RAG status from rules, not vibes and Slippage and the critical path, plus 4 more sections
  • Runs Shell scripts from its folder
  • Mid-sized project from a flat file instead of standing up Jira

What it does

Project Ops is an agent skill from ericrisco/rsc-harness. Use when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary done-test, rule-driven RAG status, a RAID log, slippage detection, and a two-minute weekly status report. NOT sequencing the engineering work inside one approved plan (that is tasks).

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including scripts and reference files (for example `evals/README.md`, `evals/cases.yaml` and `references/raid-and-rag.md`).

It sits in Product & Project Management, covering Project management, Internal communications and CSV and tabular files. It works with Asana and Jira. The repository describes itself as: Your agent invents things because it has no memory, and can't touch your database because it has no arms. rsc is the meta-harness that gives it both, plus the trade to know the… The licence is MIT.

When your agent uses it

  • An operator wants to run a small
  • Mid-sized project from a flat file instead of standing up Jira
  • Asana — dated milestones each with one named owner and a binary done-test
  • Rule-driven RAG status

Example prompts

  • “/project-ops”

Requirements

  • A Bash shell

What it can do on your machine

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

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

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

  • Network

    No URLs in SKILL.md.

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

Project Ops loads about 2.4k tokens when it runs, and up to ~4.2k if it reads all its reference files. Until then it costs about 93 tokens; SKILL.md has 1,142 words of instructions outside code blocks.

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

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 passed

The automated check found no risky patterns in SKILL.md.

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); the scripts in this folder are not scanned.

SKILL.md

The full file from ericrisco/rsc-harness at commit e3d5b33, republished under its MIT licence (© ericrisco). 1,142 words, ~2,429 tokens.

Download SKILL.mdSave it as .claude/skills/project-ops/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
project-ops
description
Use when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary done-test, rule-driven RAG status, a RAID log, slippage detection, and a two-minute weekly status report. NOT sequencing the engineering work inside one approved plan (that is `tasks`).
tags
project-management, milestones, status-tracking
recommends
tasks, decision-records, meeting-notes, sop-builder, dashboard
origin
risco

project-ops

You run a project from one flat file, not a PM tool. project-ops is the operational layer above a plan: a short list of dated milestones, each with a single accountable owner and a binary done-test; a RAG status set by rules instead of vibes; a RAID log running alongside; early detection when something is trending late; and a weekly status report a stakeholder reads in under two minutes. Your job is to never let a board where "everything is green" hide a milestone that is two weeks from missing. You do not sequence engineering tasks (that is ../tasks/SKILL.md) and you do not write the architecture plan (that is ../plan/SKILL.md) — you keep the whole project honest above both.

The artifact comes first

Before any process, there is one file. Everything else updates it. A milestone table:

markdown
| id | milestone | owner | target | status | done_test | depends_on |
|----|-----------|-------|--------|--------|-----------|------------|
| M1 | Pricing copy approved | @ana | 2026-06-10 | done | Final copy signed off in doc | |
| M2 | Pricing page built | @ben | 2026-06-18 | amber | URL returns 200 with new copy | M1 |
| M3 | Page live in prod | @ben | 2026-06-24 | green | prod URL 200, analytics firing | M2 |

Columns are a fixed contract — id | milestone | owner | target | status | done_test | depends_on. CSV with the same header is equivalent and is what scripts/verify.sh lints. This file is the single source of truth; the status report is a view of it, never a second copy that drifts.

Rules for the contract, each with its why:

  • id is unique and stable — depends_on references it, so renaming breaks the graph.
  • owner is exactly one person, with an @handle — "accountability without a named owner defaults to no accountability." Never a team (@marketing) or two people.
  • target is an ISO date (YYYY-MM-DD) — so "trending late" is arithmetic, not opinion.
  • status is one of {green, amber, red, done} — a closed set the report and the linter both trust.
  • done_test is binary and verifiable — you can point at it and say yes/no, no "improve" or "work on".
  • depends_on is a comma-separated list of real ids — the dependency edges that reveal the critical path.

Milestone discipline

A milestone is a checkpoint that marks a significant achievement — it has a target date but no duration. The smaller actionable steps that get you there are tasks; track milestones at the project level, not every task. Each milestone proves a SMART-shaped goal (the done-test is the "Measurable").

Bad → Good, because most plans fail right here:

text
Bad:  "Marketing improvements"          (no owner, no date, not testable)
Good: | M7 | Landing page live | @ana | 2026-06-15 | green | prod URL returns 200 with new hero | M6 |

Bad:  "Ben & Ana own the launch"        (accountability split = no accountability)
Good: owner @ben on M2; @ana is named in done_test as reviewer if needed — still one A.

Bad:  done_test = "page is better"       (not binary — never finishable)
Good: done_test = "Lighthouse perf >= 90 on /pricing, checked in CI"

If the operator hands you a loose goal, decompose it into 3–8 milestones with one owner and a binary done-test each, then draw depends_on edges. More than ~10 milestones means you are tracking tasks — push those down to ../tasks/SKILL.md.

RAG status from rules, not vibes

Set status by the table below and write the reason next to any non-green item. Re-evaluate every milestone at each update.

ConditionStatus
On track; on or ahead of date; dependencies metgreen
Trending late: days of slip accumulating, OR a blocking depends_on has shifted, OR past ~halfway to target with little visible progressamber
Missed its target, OR critically late with no credible recovery, OR a hard blocker with no owner-driven mitigationred
Done-test satisfied and verifieddone

Two rules that do the real work:

  • Amber is an early warning, not a soft red. Flag amber before the due date passes — the whole point is to course-correct while there is still time. A milestone that only turns red on its due date was mis-tracked.
  • All-green is a smell. A board that is always green means you are either not tracking closely or not being honest. On any real project at least one item is usually amber. If everything is genuinely green, say so explicitly so it is a claim, not a default.

Slippage and the critical path

The critical path is the longest chain of depends_on edges that sets the finish date — its milestones have zero buffer, so any slip there slips the whole project. Mark which milestones are on it. Watch near-critical paths too: a small slip there can promote them onto the critical path.

At every update: re-confirm which milestones are critical (the path moves as dates change), track days of slip per milestone (today minus target for anything late), and surface any milestone whose amber rule just tripped. The full early-warning decision table and a worked slippage example live in references/raid-and-rag.md.

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

RAID log

Run a RAID log alongside the milestone table from project initiation. Four buckets — keep them distinct, because the confusion between a risk and an issue is where projects rot:

  • Risk — might happen; plan a mitigation ahead of time. (likelihood × impact)
  • Assumption — believed true but unverified; if it breaks, a milestone breaks.
  • Issue — already happening, needs action now (a risk that materialized).
  • Dependency — a handoff or relationship that can bottleneck (often the cross-team depends_on edges).

Each item carries: description, likelihood, impact/severity, owner, and a review date. Review the log at least weekly and at every phase transition — phase boundaries are exactly when hidden risks surface and old assumptions break. Example rows and the RACI-on-milestones note are in references/raid-and-rag.md.

The weekly status report

A status report is scannable in under 2 minutes and takes you under 15 minutes to write. It is a delta view, not a re-dump of the plan. Structure:

markdown
## Status — Pricing launch — week of 2026-06-02
**Overall: AMBER** — M2 slipped 3 days; recovery in place, finish date still 2026-06-24.

### Hit this week
- M1 Pricing copy approved (@ana) — done, signed off.

### Next steps
- M2 Pricing page built — @ben — due 2026-06-18 (was 06-15; +3 days)
- M3 Page live — @ben — due 2026-06-24

### Blockers / escalations
- M2: design assets arrived 2 days late (dependency). Mitigation: @ben cut scope of v1 hero. No decision needed.

### RAID changes
- New RISK: analytics tag may not fire on prod CDN (owner @ben, review 06-16).
- Moved to ISSUE: staging deploy flaky → now blocking M2 testing.

The honesty rule, non-negotiable: name at least one amber/red item with its mitigation, and if a milestone slipped, lead with it and the recovery plan. Stakeholders who discover problems late lose trust permanently; a credible report surfaces the bad news first. The fill-in template and a fully worked example are in references/status-report-template.md.

Anti-patterns

Anti-patternWhy it failsDo instead
Owner is a team (@marketing) or two peopleAccountability splits to nobody; nobody chases the slipExactly one named @owner per milestone
Status set by gut feelTwo people disagree; amber never trips earlyApply the RAG rule table; write the reason
Tracking every task as a milestoneThe board becomes a to-do list, signal drowns3–8 milestones; tasks go to ../tasks/SKILL.md
done_test = "improve X" / "work on Y"Never binary, so never finishableA yes/no check: "URL 200", "signed off in doc"
Board is always greenYou are not tracking, or not honestExpect ≥1 amber; state "all green" explicitly if true
Only flag red on the due dateToo late to recoverTrip amber early on the trending-late rule
RAID created once, never reviewedStale risks, broken assumptions go unseenReview weekly + at every phase transition
Status report re-dumps the whole planNobody reads 3 pages; the delta is buriedReport deltas only: hit / next / blockers / RAID changes
depends_on points at a deleted idCritical path is wrong; slip propagation invisibleKeep ids stable; verify.sh catches dangling refs

References

  • references/status-report-template.md — the fill-in weekly report, a worked Good example, and the artifact column contract verify.sh enforces.
  • references/raid-and-rag.md — RAID bucket definitions with example rows, the full RAG + early-warning decision table, and the RACI-on-milestones note for teams that need it.

Run scripts/verify.sh against the milestone file to lint structure (unique ids, one owner, parseable date, allowed status, non-empty done-test, resolvable depends_on) and to audit the status-report honesty rule. It is a structural lint, never a judgement of whether the plan is good.

© ericrisco, 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 5 other files (scripts, references) in skills/project-ops of ericrisco/rsc-harness.

  • SKILL.md
  • evals/README.md
  • evals/cases.yaml
  • references/raid-and-rag.md
  • references/status-report-template.md
  • scripts/verify.sh

Open the folder on GitHubat commit e3d5b33

Compare with similar skills

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

Project Ops compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Project Ops this skillericrisco/rsc-harness167—~2.4kAutomated safety check: PassMIT
Decision Trigger Mapperrevfactory/harness-1001.3k—~1.2kAutomated safety check: PassApache-2.0
Jira Natural Language Interfacejjmartres/opencode1333 repos~1.7kAutomated safety check: PassMIT
Tidycroffasia/itsaplan903—~2.8kAutomated safety check: PassAGPL-3.0
JiraRightNow-AI/openfang18k—~694Automated safety check: PassApache-2.0
Project ManagerRightNow-AI/openfang18k—~960Automated safety check: PassApache-2.0

Similar skills

  • Decision Trigger Mapper

    revfactory/harness-100

    A specialized skill for designing decision trigger maps and strategy option portfolios within scenario response strategies.

    1.3k GitHub stars~1.2k tokensUpdated 6 mo ago
    Product & Project ManagementAuto-check passed
  • Lets an agent view, create, update and transition Jira issues in natural language, automatically choosing between the jira CLI and Atlassian MCP tools.

    133 GitHub starsUsed in 3 repos~1.7k tokens
    Product & Project ManagementAuto-check passed
  • Tidy

    croffasia/itsaplan

    Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality.

    903 GitHub stars~2.8k tokensUpdated today
    Product & Project ManagementAuto-check passed
  • Jira

    RightNow-AI/openfang

    Jira project management expert for issues, sprints, workflows, and reporting

    18k GitHub stars~694 tokensUpdated 3 mo ago
    Product & Project ManagementAuto-check passed
  • Project Manager

    RightNow-AI/openfang

    Project management expert for Agile, estimation, risk management, and stakeholder communication

    18k GitHub stars~960 tokensUpdated 3 mo ago
    Product & Project ManagementAuto-check passed
  • Pm Skills

    alirezarezvani/claude-skills

    A skill your agent uses when coordinating project-delivery work across the 8 project-management sub-skills — sprint/velocity analytics, portfolio health, Jira/JQL, Confluence, Atlassian admin…

    28k GitHub stars~2.6k tokensUpdated 1 mo ago
    Product & Project ManagementAuto-check passed

More from ericrisco/rsc-harness

All 227 skills in this repo
  • Ab Testing

    ericrisco/rsc-harness

    A skill your agent uses when designing or analyzing a controlled experiment — falsifiable hypothesis, sample size from an MDE, reading significance/CI/power, CUPED, or rescuing tests that won't go…

    167 GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Accessibility

    ericrisco/rsc-harness

    A skill your agent uses when making a web UI conform to WCAG 2.2 Level AA — axe-core or Lighthouse a11y violations, keyboard operability, focus management, ARIA roles/names/live regions, contrast…

    167 GitHub stars~3.4k tokensUpdated today
    Auto-check passed
  • Ads

    ericrisco/rsc-harness

    A skill your agent uses when running or fixing paid acquisition on Google or Meta — campaign structure (Performance Max, Demand Gen, Search, Advantage+), platform-fit creative, budget/scaling rules…

    167 GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Agent Eval

    ericrisco/rsc-harness

    A skill your agent uses when measuring whether an LLM or agent system actually got better and gating merges on it: golden sets, fixing an inflated LLM-as-judge, scoring RAG (faithfulness, contextual…

    167 GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • AI Media

    ericrisco/rsc-harness

    A skill your agent uses when a creative goal must become a finished media file: pick and order generative-media models per modality — AI voiceover, image-to-video clips, score — then glue them with…

    167 GitHub stars~3.3k tokensUpdated today
    Auto-check passed
  • Analytics

    ericrisco/rsc-harness

    A skill your agent uses when instrumenting product or web analytics — GA4/PostHog SDK wiring, event taxonomy, funnels, double-counted events, consent gating, PII scrubbing.

    167 GitHub stars~2.8k tokensUpdated today
    Auto-check passed

Works with

Questions about Project Ops

What does Project Ops do?

A skill your agent uses when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary…. Project Ops is an agent skill from ericrisco/rsc-harness. Use when an operator wants to run a small or mid-sized project from a flat file instead of standing up Jira or Asana — dated milestones each with one named owner and a binary done-test, rule-driven RAG status, a RAID log, slippage detection, and a two-minute weekly status report.

When should I use Project Ops?

Project Ops fits situations like: an operator wants to run a small; mid-sized project from a flat file instead of standing up Jira; asana — dated milestones each with one named owner and a binary done-test; rule-driven RAG status.

How do I install Project Ops in Claude Code?

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

How do I install Project Ops in Codex?

Run `npx skills add ericrisco/rsc-harness --skill project-ops -a codex`. Or copy the skill folder (skills/project-ops in ericrisco/rsc-harness) into .agents/skills/project-ops in your project. Codex loads it when a task matches its description.

Can I use Project Ops 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 ericrisco/rsc-harness --skill project-ops -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/project-ops, .gemini/skills/project-ops, .github/skills/project-ops and .opencode/skills/project-ops in your project.

What does Project Ops need to run?

Going by SKILL.md and its folder, Project Ops needs a shell for the scripts in its folder. Our summary lists: A Bash shell.

Does Project Ops access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Project Ops safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Project Ops use?

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

About 2.4k tokens (SKILL.md is roughly 9.7k 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 1.7k tokens, read only when the agent opens those files.

What are the alternatives to Project Ops?

Skills that share tags, products or a category with Project Ops: Decision Trigger Mapper (revfactory/harness-100, 1.3k stars), Jira Natural Language Interface (jjmartres/opencode, 133 stars), Tidy (croffasia/itsaplan, 903 stars) and Jira (RightNow-AI/openfang, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Project Ops?

ericrisco (a GitHub user) maintains it in ericrisco/rsc-harness, which has 167 GitHub stars. The repository holds 227 skills in this directory. The repository was last updated on October 7, 2026.

Source: ericrisco/rsc-harness on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.