PuPu: Skill for Codex

.agents/skills/issue-feature-audit/SKILL.md

issue-feature-audit is a skill for Codex from haoxiang-xu/PuPu. It costs 94 tokens per session (2,547 once invoked), scanned A, original, Apache-2.0.

A consistency audit for a completed PuPu feature before its ticket is marked done. It checks the feature and its surrounding impact, and can also scan the whole project for missing translation keys.

In plain words
What is it for?
Use it to audit a finished feature, review its related code and effects, or check internationalisation files for untranslated keys.
Why use it?
It catches mismatches and missing pieces after implementation, before the work is treated as complete. Findings are reported with locations so a maintainer can decide what to fix.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: mentions subagents; installed under .agents/ (shared by several agents).

This is haoxiang-xu/PuPu's own configuration. It tells Codex how to work on PuPu itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything PuPu configures →

Reuse

Borrowing it

Nothing to install: this file belongs to haoxiang-xu/PuPu. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/haoxiang-xu/PuPu/main/.agents/skills/issue-feature-audit/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/haoxiang-xu/PuPu

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for issue-feature-audit

README.md
[![agentmods](https://agentmods.dev/badge/skills/haoxiang-xu/pupu/issue-feature-audit/github.svg)](https://agentmods.dev/skills/haoxiang-xu/pupu/issue-feature-audit)
Your own site
<a href="https://agentmods.dev/skills/haoxiang-xu/pupu/issue-feature-audit"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/issue-feature-audit/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for issue-feature-audit

Your own site · 80×15
<a href="https://agentmods.dev/skills/haoxiang-xu/pupu/issue-feature-audit"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/issue-feature-audit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 94 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,547 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00094 $0.02547
Opus 5.5 $0.00038 $0.01019
Sonnet 5.5 $0.00019 $0.00509
Haiku 4.5 $0.00009 $0.00255

Measured 1mo ago against content hash 5e02a8a9e69b, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

issue-feature-audit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

The scan reads SKILL.md. This mod also ships 8 executable files (scripts/apply.mjs, scripts/apply.test.mjs, scripts/audit.mjs, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.agents/skills/issue-feature-audit/SKILL.md · 153 lines

How it starts

The opening of the file, as written. The whole thing — 153 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Issue: Feature Audit

Five consistency checks against one completed feature. Run before a direct Release sub-issue is marked Done; close-sprint treats an unaudited new feature as not-done-yet. Scope = the feature's diff and its blast radius, not the whole repo — except i18n, which is always a full scan (cheap, script-driven).

Findings are report-first: list violations with file:line, propose the fix, let the project maintainer/implementer decide. Only i18n missing-key auto-fill applies changes directly (rule inherited from the old i18n-coverage skill).

Retired workflow exclusions

Do not read, request, or validate implementation-owner confirmations, Quorum or court records, cases, proposals, rulings, handoffs, HS/RS/AT records, or any other retired authorization artifact. Their presence or absence must never affect PASS/FAIL. For cross-boundary work, use only the current Release issue or direct Plan plus the technical BC/SEQ/AC and immutable artifact evidence below.

Release membership

For a ticket audit, first resolve the ticket's direct Size=Release parent and verify its Project item. The Parent issue and Sub-issues progress Project fields are views; GitHub's issue relationship is authoritative. A ticket without a Release parent may receive a standalone audit report, but it does not change release state. Every ticket labelled new feature needs a fresh audit PASS bound to its delivered candidate digest, or an explicit maintainer waiver, before its parent Release can close.

Plumbing: before reading or changing a Project field, follow the shared board rules: run the project-scope preflight, discover the current fields, and verify the child's Project item.

Check 1 — i18n coverage (full scan, scripts in this directory)

en.json is the source of truth; runtime silently falls back to English, so gaps are invisible without this.

  1. node .agents/skills/issue-feature-audit/scripts/audit.mjs --root <repo-root> > /tmp/i18n-report.json (add --strict only on request — noisy). Report contains per-locale missing/orphan/placeholderMismatch + code.missingInEn/deadKeys/dynamicCount.
  2. Auto-fill missing (the ONLY auto-apply): translate each missing key's en value (preserve {placeholder} tokens verbatim), write flat JSON map, then node .agents/skills/issue-feature-audit/scripts/apply.mjs --root <repo-root> --locale <name> --translations /tmp/<name>.json. Never overwrites existing values.
  3. Report for confirmation: orphan/dead-key deletions, placeholder-mismatch edits, missingInEn bugs (raw key shows in UI), and the dynamicCount blind spot. Deletions/edits need explicit OK. Never commit.

Read the full file on GitHub · 153 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 153 lines · 94 tokens per session scan A 5e02a8a9e69b

Subscribe to this mod's changes

issue-feature-audit is a skill published in the GitHub repository haoxiang-xu/PuPu (36 stars, last pushed 3d ago), licensed Apache-2.0. It adds 94 tokens to every session and 2,547 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-21.

Related

Other skills, from other repositories

humanizer

Rewrite AI-generated copy in Spanish and English so it sounds direct, concrete and human while preserving meaning, facts and numbers exactly. Use when drafts feel robotic, verbose or translated and need short active sentences without em-dashes.

waybarrios/opencode-power-pack · 47 tokens

review-all

Multi-agent code review for diffs (project-agnostic). Covers standards, bugs, security, DRY, smells, perf, tests, API contracts, a11y/i18n. Verifies each finding to eliminate false positives. Use for /review-all, pre-PR/pre-commit review, or auditing uncommitted/staged changes.

ncoevoet/claude-review-all · 74 tokens

i18n-rtl-audit

Audit a page for internationalization readiness — layout breaks under long translations (pseudo-localization), RTL rendering issues, hardcoded UI strings, and missing lang/dir attributes. Playwright MCP only, no signup.

Quality-Max/free-qa-skills · 50 tokens

fec-drawio-studio

An editable workflow for making technical diagrams in draw.io (also called diagrams.net), with the original .drawio file saved alongside exported images or documents. It covers architecture, database, UML, sequence, flow, machine-learning, and code-structure diagrams.

bovinphang/frontend-craft · 154 tokens

fec-nextjs-project-standard

A development guide for Next.js 14 and newer projects using App Router, Next.js’s file-based routing system. It covers server-rendered pages, layouts, data loading, middleware, metadata, and server actions.

bovinphang/frontend-craft · 86 tokens

fec-state-management

A guide for deciding where an application's changing information should live, such as inside a component, in the URL, in a form, in a browser cache, or in a shared store. A store is a shared place for client-side information used across parts of an app.

bovinphang/frontend-craft · 102 tokens