Git Teacher Status
fivetaku/gptaku-plugins-codex
Translates current Git status into plain-language explanations for non-developers.
Audits the user-facing terminal copy changed over a git range for factual truth rather than readability, by fanning out reviewers partitioned by evidence source and triaging what survives.
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-audit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/copy-audit .claude/skills/copy-audit && rm -rf skills-srcUse ~/.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/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .claude/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-auditType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/copy-audit .agents/skills/copy-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .agents/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/copy-audit .cursor/skills/copy-audit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .cursor/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git --path .claude/skills/copy-audit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/copy-audit .gemini/skills/copy-audit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .gemini/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-auditInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/copy-audit .github/skills/copy-audit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .github/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install antoinecellerier/speaker-tuning-to-easyeffects copy-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antoinecellerier/speaker-tuning-to-easyeffects.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/copy-audit .opencode/skills/copy-audit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "copy-audit" agent skill from https://github.com/antoinecellerier/speaker-tuning-to-easyeffects/tree/master/.claude/skills/copy-audit into .opencode/skills/copy-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "copy-audit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
copy-auditAudits the user-facing terminal copy changed over a git range for factual truth rather than readability, by fanning out reviewers partitioned by evidence source and triaging what survives.
Copy Audit is an agent skill from antoinecellerier/speaker-tuning-to-easyeffects. Audits the user-facing terminal copy changed over a git range for factual truth rather than readability, by fanning out reviewers partitioned by evidence source and triaging what survives. Use before a release, after a batch of messaging work, or when the user asks to "check the messages are accurate", "verify what we're telling people", "audit the output for correctness", or doubts a claim a run prints. Complements /user-review, which asks whether a first-time reader can act on a message; this asks whether the…
Its SKILL.md is about 2.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 Writing & Content, covering Plain language and style rules. It works with Git. The repository describes itself as: Convert OEM Dolby Atmos speaker tuning data to EasyEffects presets or PipeWire filter-chains for Linux. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 37cf91b. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
python3pytestFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Copy Audit loads about 2.2k tokens when it runs. Until then it costs about 161 tokens; SKILL.md has 1,091 words of instructions outside code blocks.
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.
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.
The full file from antoinecellerier/speaker-tuning-to-easyeffects at commit 37cf91b, republished under its MIT licence (© antoinecellerier). 1,091 words, ~2,231 tokens.
.claude/skills/copy-audit/SKILL.md (or your agent's skills folder).This skill runs with context: fork, in a fresh subagent. Nothing from the
conversation reaches it, so everything it needs is stated here or in its
arguments. It returns one thing: the triaged report of step 4. It does
not fix anything: step 5 is the maintainer's choice, made in the main
conversation from that report.
a..b. Otherwise
origin/master..HEAD, the unpushed work. Step 2's --since is the
range's base.localresearch/copy_audit/<YYYY-MM-DD>/, which is
gitignored. If the argument names a directory that already holds the
step-1 files, that directory is the evidence dir: reuse its files and
regenerate only what is missing.cd that fails leaves the
shell elsewhere for every later call.model: opus, because this is
truth-checking, not comprehension. Give each one slice and one evidence
source, as §3 says./user-review grades comprehension, and a false sentence can score
perfectly there. That loop's own fixes were the biggest single source of
untrue statements, because simplifying a hedged sentence is how a
hypothesis becomes an assertion.
This audit walks a git range and checks each claim against the evidence its
type demands. The claim-type checklist it applies, with examples of a
dropped qualifier, is .claude/rules/claims.md ("What each claim rests on").
Non-expert phrasing is the design goal and is never a finding. A reviewer reporting that copy is informal, imprecise or jargon-free has misunderstood the task. Only FALSE, UNSUPPORTED, or TRUE-ONLY-FOR-SOME-DEVICES counts.
Copy this checklist and track progress:
Copy audit:
- [ ] 1. Prepare the evidence (corpus sweep, renders, system probe)
- [ ] 2. Build the claim inventory
- [ ] 3. Fan out reviewers, one slice and one evidence source each
- [ ] 4. Re-check every finding yourself; discard what doesn't survive
- [ ] 5. Fix, grouped by topic, then verifyEvery reviewer reads files, and none re-runs a tool. That is the whole cost control: the audit is affordable because the expensive work happens once.
python3 tools/corpus_audit.py > <out>/corpus_audit.txt
python3 tools/preview_output.py --full --examples 3 --width 80 > <out>/renders/findings_all.txt
python3 tools/render_forced_conditions.py --out-dir <out>/renders--examples 3 is load-bearing: the same message rendered for three different
devices is what exposes a sentence true only for the one it was written from.
render_forced_conditions.py covers what preview_output.py structurally
cannot: messages whose trigger value never occurs in the corpus, so no real
device can show them. Those are exactly the messages nobody has ever read.
Then render the conditions that need flags rather than XML values: a
SOUNDWIRE_* file against an HDA one, a simplified-schema file,
--all-profiles, -v, each --disable name, and a
dolby_to_pipewire.py --no-activate --dry-run. Probe the live system too,
because several claims are about other people's software:
easyeffects --version, pw-cli ls Node | grep alsa_output, pw-link -l,
command -v lv2info.
python3 tools/extract_claims.py --since <rev> --out-dir <out>It writes claims.md and the per-reviewer slices. Only CHANGED rows are
targets. Unchanged strings stay in the file so a claim can be read against
the run it prints in.
It reports two totals, so compare the distinct count, which counts sentences rather than sites. A refactor that collapses a string written at two sites legitimately shrinks the row count, while the run prints the same words.
Give each reviewer one slice and one evidence source. Partitioning by evidence rather than by file keeps each context small. The reviewer checking corpus figures never loads the wrapper's source, and the one checking the wrapper never loads the docs.
| Slice | Evidence | Hunts |
|---|---|---|
slice_numbers.md | corpus_audit.txt + cross-device-findings.md, plus targeted corpus greps | stale figures, universals the corpus contradicts, "rare"/"typical" with nothing behind it |
| renders/ | the rendered runs + corpus_audit.txt | sentences true only for the device they were written from; hardcoded Hz/band counts/profile names; contradictions inside one run |
slice_generator.md | the generator's source | copy vs what the code does: flag effects, what was written, -v gating, gates broader or narrower than the sentence |
slice_generator.md | reference.md "Validated vs unvalidated mappings" + design-notes.md and docs/research/ | unvalidated mappings asserted as fact; a leading hypothesis stated as Dolby's intent |
slice_wrapper_docs.md | wrapper/converter source + the live system | restart and undo instructions, command output shapes, WirePlumber/EasyEffects behaviour, package names |
slice_changelog.md | the code each entry describes | ## Unreleased entries that misstate what ships |
slice_all_changed.md | the sources themselves | CHANGELOG vs what ships, README vs the menus, one fact worded two incompatible ways |
Each returns a fixed schema, worst first, and no restated copy:
ID | SEVERITY | <=10-word quote | what is actually true | evidence file:line | confidenceCRITICAL false and it changes what the user does · HIGH false but low consequence, or an unvalidated hypothesis stated as fact · MEDIUM true only for some triggering devices · LOW stale figure, no user consequence.
Tell every reviewer: a finding must name the true statement. "This seems wrong" without a replacement is not a finding, and will be discarded.
Also tell them the settled decisions from /user-review, so they don't
relitigate copy that survived eleven rounds. Those reopen only on proof that
one is false, not awkward.
Do not forward reviewer output. Re-check every finding yourself against the code, a real run, or the system. Reviewers misread: this audit's first run produced two claims that didn't survive, one of them a plain misreading of a distributive sentence.
Two bars before anything ships: it names what is actually true, and it cites evidence. Then rank, and let the user choose.
Ask what population a statistic is drawn from before believing it. The reviewer failure mode that mirrors the writers' is a selection effect read as a refutation. One reviewer reported that 23 of 23 XMLs declaring a default profile contradict the tool's assumption. But Dolby only writes that field when they don't want the default, so those 23 are exactly where a difference is expected.
Group the fixes into one commit per topic, and put a code change and its CHANGELOG or README line in the same commit. A merged group lands at its last member's position, because a later commit may introduce what an earlier member patches.
Re-derive corpus figures as .claude/rules/claims.md "What each claim rests
on" says.
Verify after: pytest tests/, and check that tests/test_golden_preset.py
did not move. A copy-only fix that shifts the golden digest touched
behaviour, so investigate before re-recording. Re-run preview_output.py and
diff against the step-1 renders: only the lines a finding named may have
changed.
State these in the report.
© antoinecellerier, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/copy-audit of antoinecellerier/speaker-tuning-to-easyeffects.
Open the folder on GitHubat commit 37cf91b
Copy Audit 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Copy Audit this skillantoinecellerier/speaker-tuning-to-easyeffects | 144 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Git Teacher Statusfivetaku/gptaku-plugins-codex | 128 | — | ~1k | Automated safety check: Pass | MIT | |
| Jgrepkeltokhy/jgrep | 136 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Codflow Updatebighadj22/codflow | 354 | — | ~6.2k | Automated safety check: Notes | Apache-2.0 | |
| ReviewSethGammon/Citadel | 924 | — | ~2.1k | Automated safety check: Pass | MIT | |
| Viewing FilesSebastienDegodez/copilot-instructions | 198 | — | ~1k | Automated safety check: Pass | Apache-2.0 |
fivetaku/gptaku-plugins-codex
Translates current Git status into plain-language explanations for non-developers.
keltokhy/jgrep
Filter text, records, code functions, or complete diff hunks by a plain-English description using Jev.
bighadj22/codflow
Update runbook for a self-hosted CodFlow install — an AI agent following it fetches the latest code from the CodFlow GitHub repo, merges it into an EXISTING checkout, syncs the gitignored…
SethGammon/Citadel
5-pass structured code review — correctness, security, performance, readability, consistency
SebastienDegodez/copilot-instructions
A skill your agent uses when viewing source files or documentation with syntax highlighting, previewing files with Git integration, or when enhanced readability would improve code review
fivetaku/gptaku-plugins-codex
Commits changed files to Git, explained in plain language for non-developers.
antoinecellerier/speaker-tuning-to-easyeffects
Audits the instruction files (CLAUDE.md, .claude/rules, .claude/skills, tools/measuredax/CLAUDEWINDOWS.md) for accuracy and bloat against .claude/rules/instructions.md, and proposes a concrete edit…
antoinecellerier/speaker-tuning-to-easyeffects
Reviews the user-facing docs — README.md and the user guides under docs/README.md "Using it" — by running them past subagent reviewers role-playing fixed personas: a first-time visitor, a user…
antoinecellerier/speaker-tuning-to-easyeffects
Guides triaging GitHub issues and drafting or posting replies in this repo.
antoinecellerier/speaker-tuning-to-easyeffects
Guides triaging a kernel-sound-watch hit comment on the "Kernel sound-tree watch" issue (40) — the weekly workflow's per-tag report of .github/kernel-watchlist.txt grep hits against a new…
antoinecellerier/speaker-tuning-to-easyeffects
Reviews the scripts' user-facing terminal output by running it past subagent reviewers role-playing a first-time user, then reports severity-ranked findings.
antoinecellerier/speaker-tuning-to-easyeffects
Validates a change to the audio output path against measured on-device ground truth.
Works with
Categories
Audits the user-facing terminal copy changed over a git range for factual truth rather than readability, by fanning out reviewers partitioned by evidence source and triaging what survives. Copy Audit is an agent skill from antoinecellerier/speaker-tuning-to-easyeffects. Audits the user-facing terminal copy changed over a git range for factual truth rather than readability, by fanning out reviewers partitioned by evidence source and triaging what survives.
Copy Audit fits situations like: asks to check the messages are accurate; verify what were telling people; audit the output for correctness; doubts a claim a run prints.
Run `npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a claude-code`. Or copy the skill folder (.claude/skills/copy-audit in antoinecellerier/speaker-tuning-to-easyeffects) into .claude/skills/copy-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a codex`. Or copy the skill folder (.claude/skills/copy-audit in antoinecellerier/speaker-tuning-to-easyeffects) into .agents/skills/copy-audit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add antoinecellerier/speaker-tuning-to-easyeffects --skill copy-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/copy-audit, .gemini/skills/copy-audit, .github/skills/copy-audit and .opencode/skills/copy-audit in your project.
Going by SKILL.md and its folder, Copy Audit needs the command-line tools its instructions call (python3 and pytest). Our summary lists: Python 3.
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.
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.
Copy Audit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Copy Audit: Git Teacher Status (fivetaku/gptaku-plugins-codex, 128 stars), Jgrep (keltokhy/jgrep, 136 stars), Codflow Update (bighadj22/codflow, 354 stars) and Review (SethGammon/Citadel, 924 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
antoinecellerier (a GitHub user) maintains it in antoinecellerier/speaker-tuning-to-easyeffects, which has 144 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 9, 2026.
Source: antoinecellerier/speaker-tuning-to-easyeffects on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.