Agent skill

Find Project Anomalies

by penpot in penpot/penpot

Check a GitHub milestone against the Main project board, report the five anomaly types to tmp/<MILESTONE-ANOMALIES.md, and fix missing milestone assignments on request.

MPL-2.0Auto-check passedProduct & Project Management

Install Find Project Anomalies

skills CLI
$ npx skills add penpot/penpot --skill find-project-anomalies -a claude-code

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

GitHub CLI
$ gh skill install penpot/penpot find-project-anomalies --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/penpot/penpot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/find-project-anomalies .claude/skills/find-project-anomalies && 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
find-project-anomalies
GitHub stars
61k
Token cost
~1.2k tokens
SKILL.md length
674 words
Files
1
Skills in repo
24
Repo updated
First seen
Licence
MPL-2.0

At a glance

Check a GitHub milestone against the Main project board, report the five anomaly types to tmp/<MILESTONE-ANOMALIES.md, and fix missing milestone assignments on request.

  • Works in 4 steps: Resolve the version (see above), then… → Read the report and judge each anomaly → Fix missing milestone assignments (only… → …
  • Tasks that involve Project management
  • SKILL.md covers Getting the version ($ARGUMENTS), When to Use, Prerequisites and Workflow, plus 1 more section
  • Calls python3 and gh

What it does

Find Project Anomalies is an agent skill from penpot/penpot. Check a GitHub milestone against the Main project board, report the five anomaly types to tmp/<MILESTONE-ANOMALIES.md, and fix missing milestone assignments on request.

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

It sits in Product & Project Management, covering Project management and OKRs and executive reporting. It works with GitHub. The repository describes itself as: Penpot: The open-source design platform for Product teams that need scalable collaboration. The licence is MPL-2.0.

When your agent uses it

  • Tasks that involve Project management
  • Tasks that involve OKRs and executive reporting

Example prompts

  • “/find-project-anomalies”

Requirements

  • Python 3

Workflow steps

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

  1. Resolve the version (see above), then run the check
  2. Read the report and judge each anomaly
  3. Fix missing milestone assignments (only these, only on confirmation)
  4. Re-run until clean

What it can do on your machine

Read from SKILL.md and the folder at commit 10955f1. 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

    Shell commands in SKILL.md call:

    • python3
    • gh

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

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    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

Find Project Anomalies loads about 1.2k tokens when it runs. Until then it costs about 48 tokens; SKILL.md has 674 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~48
When it runs · the whole SKILL.md, loaded when a task matches
~1.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); files beside SKILL.md are not scanned.

SKILL.md

The full file from penpot/penpot at commit 10955f1, republished under its MPL-2.0 licence (© penpot). 674 words, ~1,230 tokens.

Download SKILL.mdSave it as .claude/skills/find-project-anomalies/SKILL.md (or your agent's skills folder).
name
find-project-anomalies
description
Check a GitHub milestone against the Main project board, report the five anomaly types to tmp/<MILESTONE>-ANOMALIES.md, and fix missing milestone assignments on request.

Skill: find-project-anomalies

Check every issue and PR in a given GitHub milestone against the Main project board. Report the five anomaly types below, then fix the ones a human confirms.

Getting the version ($ARGUMENTS)

The milestone version comes from the skill arguments ($ARGUMENTS), the same way other skills receive theirs. Accept 2.17.0, v2.17.0, milestone 2.17.0, or any text clearly containing one X.Y.Z version.

If no version is given and none can be deduced from the arguments or the conversation context, stop and ask the user which milestone to check. Do not guess, do not default to the latest release.

When to Use

  • Before a release, to catch board/milestone drift while there is still time to fix it
  • After triage sessions, to verify every milestone item is tracked, owned, and correctly assigned
  • Whenever someone asks "is milestone X.Y.Z clean on Main?"

Prerequisites

  • gh CLI authenticated (gh auth status)
  • Python 3.8+
  • scripts/gh.py for GitHub queries, scripts/project-anomalies.py for detection and reporting (python3 scripts/project-anomalies.py check --help)

Workflow

1. Resolve the version (see above), then run the check
bash
python3 scripts/project-anomalies.py check "2.17.0"
# explicit path:
python3 scripts/project-anomalies.py check "2.17.0" --output tmp/2.17.0-ANOMALIES.md

This fetches milestone issues and PRs in bulk (one GraphQL call per 50 items), resolves outsiders the same way, and overwrites tmp/<MILESTONE>-ANOMALIES.md. Every number renders as a full [#N](https://github.com/penpot/penpot/issues/N) or [#N](https://github.com/penpot/penpot/pull/N) link.

2. Read the report and judge each anomaly

The five types, in report order:

  1. OPEN issue with a MERGED PR — the fix landed but the issue never closed (or it reopened). Fix: close the issue, or move it out of the milestone if the fix did not actually land here.
  2. Milestone issue, PR elsewhere or issue off Main — a merged closing PR in another milestone (or none), or the issue itself not on the Main board. An unmerged PR's milestone means nothing (it landed nowhere), so it never triggers this type. Fix: align the milestones (see step 3), or add the issue to Main.
  3. Milestone PR, issue elsewhere or off Main — the mirror view over merged PRs only: a PR released here closes an issue tracked elsewhere (or nowhere on Main). Unmerged PRs never trigger this type — their milestone means nothing yet. Fix: align the milestones (see step 3), or add the issue to Main.
  4. MERGED PR on a needs triage issue — landed without triage. Only a human can triage; never auto-remove the label.
  5. MERGED PR on an unassigned, non-community issue — no owner and no community contribution label (checked on both issue and PR). Either assign an owner or confirm it is community work. Never invent an owner.

Scope notes (deliberate, not bugs):

  • Project membership is checked on the issue side only. PRs are not the unit tracked on Main, so an unprojected PR alone is never an anomaly.
  • An issue with no milestone closed by a milestone PR is reported here (type 3): unlike the changelog flow, this pairing always needs a human look.
Show full SKILL.md (199 more words)Show less
3. Fix missing milestone assignments (only these, only on confirmation)

The only mechanical fix in this skill is assigning a missing milestone. The report already prints the exact command next to each such case:

bash
gh pr edit <PR> --milestone "<MILESTONE>"
gh issue edit <ISSUE> --milestone "<MILESTONE>"

Rules:

  • Apply only when one side lacks a milestone. When both sides have different milestones, a human decides which one moves — never pick a side yourself.
  • Confirm each fix (or each small batch) with the user before running it. Read back what the command will change.
  • Everything else (closing issues, triaging, assigning owners, adding items to the Main board) is human work: point at it, do not do it.
4. Re-run until clean

After fixes land, re-run step 1 and confirm the report shows zero anomalies. The tmp/ report is scratch output (gitignored): quote or paste entries into chat when reporting back, do not commit it.

Key Principles

  • No version, no run. Stop and ask when the milestone is unknown.
  • Report first, touch nothing. No board or milestone changes without explicit per-item confirmation.
  • Milestone gaps auto-fix; judgment calls do not. Only a missing milestone is mechanical. triage, ownership, and close/reopen decisions belong to humans.
  • Every number clickable. The report is useless without full GitHub links.

© penpot, MPL-2.0. 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 .agents/skills/find-project-anomalies of penpot/penpot.

Open the folder on GitHubat commit 10955f1

Compare with similar skills

Find Project Anomalies 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.

Find Project Anomalies compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Find Project Anomalies this skillpenpot/penpot61k—~1.2kAutomated safety check: PassMPL-2.0
Notion Pmborghei/Claude-Skills891—~1.7kAutomated safety check: PassMIT
CCPM Project Managementautomazeio/ccpm8.4k—~1.1kAutomated safety check: PassMIT
Project Managerpwrdrvr/openclaw-codex-app-server265—~1.5kAutomated safety check: PassMIT
PublishQ00/ouroboros6.2k—~2.7kAutomated safety check: PassMIT
Gh Read Inspectoreclipse-rdf4j/rdf4j420—~950Automated safety check: PassBSD-3-Clause

Similar skills

  • Notion Pm

    borghei/Claude-Skills

    Notion expert for product management workflows. An agent skill from borghei/Claude-Skills.

    891 GitHub stars~1.7k tokensUpdated 3 days ago
    Product & Project ManagementAuto-check passed
  • Runs a spec-driven workflow from PRD to epic to GitHub issues to parallel agents, with status, standup and blocked-work reports from bundled scripts.

    8.4k GitHub stars~1.1k tokensUpdated 6 mo ago
    Product & Project ManagementAuto-check passed
  • Project Manager

    pwrdrvr/openclaw-codex-app-server

    Manage GitHub issues and the GitHub Project board for the current repository, while keeping the local tracker in sync.

    265 GitHub stars~1.5k tokensUpdated 1 mo ago
    Product & Project ManagementAuto-check passed
  • Publish

    Q00/ouroboros

    Publish Seed specification as GitHub Issues for team-based project management

    6.2k GitHub stars~2.7k tokensUpdated 3 days ago
    Product & Project ManagementAuto-check passed
  • Gh Read Inspector

    eclipse-rdf4j/rdf4j

    Retrieve GitHub issues, pull requests, and milestones with read-only, whitelisted gh commands only.

    420 GitHub stars~950 tokensUpdated yesterday
    Product & Project ManagementAuto-check passed
  • Manages GitHub issues and project boards with swarm coordination: issue creation and triage, issue-to-task conversion, progress tracking and stale issue cleanup.

    817 GitHub starsUsed in 6 repos~7.1k tokens
    Product & Project ManagementAuto-check passed

More from penpot/penpot

All 24 skills in this repo
  • Hardens code against vulnerabilities. An agent skill from penpot/penpot.

    61k GitHub starsUsed in 6 repos~4.7k tokens
    Auto-check: notes
  • Create PR

    penpot/penpot

    PR flow — open a new PR for the current task branch (validates base branch, commits, issue and push state) or update an existing PR's title or description to match Penpot conventions.

    61k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • Bat Cat

    penpot/penpot

    A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.

    61k GitHub starsUsed in 2 repos~1.1k tokens
    Auto-check passed
  • Local CI

    penpot/penpot

    Run local CI-style checks with ./scripts/ci (lint, tests, format) per monorepo module.

    61k GitHub stars~822 tokensUpdated yesterday
    Auto-check passed
  • Ste

    penpot/penpot

    Write or rewrite text in ASD-STE100 Simplified Technical English.

    61k GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Code review criteria — the five review axes, core principles, severity format, and verdict for reviewing code changes.

    61k GitHub stars~3.6k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Find Project Anomalies

What does Find Project Anomalies do?

Check a GitHub milestone against the Main project board, report the five anomaly types to tmp/<MILESTONE-ANOMALIES.md, and fix missing milestone assignments on request. Find Project Anomalies is an agent skill from penpot/penpot.md, and fix missing milestone assignments on request.

When should I use Find Project Anomalies?

Find Project Anomalies fits situations like: tasks that involve Project management; tasks that involve OKRs and executive reporting.

How do I install Find Project Anomalies in Claude Code?

Run `npx skills add penpot/penpot --skill find-project-anomalies -a claude-code`. Or copy the skill folder (.agents/skills/find-project-anomalies in penpot/penpot) into .claude/skills/find-project-anomalies in your project. Claude Code loads it when a task matches its description.

How do I install Find Project Anomalies in Codex?

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

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

What does Find Project Anomalies need to run?

Going by SKILL.md and its folder, Find Project Anomalies needs the command-line tools its instructions call (python3 and gh). Our summary lists: Python 3.

Does Find Project Anomalies access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Find Project Anomalies 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. Review the folder before installing.

What licence does Find Project Anomalies use?

Find Project Anomalies is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Find Project Anomalies use?

About 1.2k tokens (SKILL.md is roughly 4.9k 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 Find Project Anomalies?

Skills that share tags, products or a category with Find Project Anomalies: Notion Pm (borghei/Claude-Skills, 891 stars), CCPM Project Management (automazeio/ccpm, 8.4k stars), Project Manager (pwrdrvr/openclaw-codex-app-server, 265 stars) and Publish (Q00/ouroboros, 6.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Find Project Anomalies?

penpot (a GitHub organization) maintains it in penpot/penpot, which has 60,869 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 9, 2026.

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