Agent skill

Check Pua

by ayutaz in ayutaz/piper-plus

PUA テーブル / fixture / config の整合性を 1 コマンドで検査。pua.json を編集したり ɔɪ/œ̃/ɐ̃ のような multi-codepoint 音素を扱う前後に呼ぶ。docs/spec/pua-contract.toml の 4 不変条件を全部チェック。

MITAuto-check passedDevelopment

Install Check Pua

skills CLI
$ npx skills add ayutaz/piper-plus --skill check-pua -a claude-code

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

GitHub CLI
$ gh skill install ayutaz/piper-plus check-pua --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/ayutaz/piper-plus.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/check-pua .claude/skills/check-pua && 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
check-pua
GitHub stars
234
Token cost
~768 tokens
SKILL.md length
206 words
Files
1
Skills in repo
20
Repo updated
First seen
Licence
MIT

At a glance

PUA テーブル / fixture / config の整合性を 1 コマンドで検査。pua.json を編集したり ɔɪ/œ̃/ɐ̃ のような multi-codepoint 音素を扱う前後に呼ぶ。docs/spec/pua-contract.toml の 4 不変条件を全部チェック。

  • Works in 5 steps: Cross-runtime consistency → Inventory + fail-fast invariants (Python) → Pre-flight config validator → …
  • Development work in your project
  • SKILL.md covers 何をチェックするか, 実行ステップ, 失敗時の典型的な対応 and 関連リソース
  • Calls python, uv and cargo

What it does

Check Pua is an agent skill from ayutaz/piper-plus. PUA テーブル / fixture / config の整合性を 1 コマンドで検査。pua.json を編集したり ɔɪ/œ̃/ɐ̃ のような multi-codepoint 音素を扱う前後に呼ぶ。docs/spec/pua-contract.toml の 4 不変条件を全部チェック。

Its SKILL.md is about 770 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 Development. It works with Python and C++. The repository describes itself as: Multilingual neural TTS (6 languages: JA/EN/ZH/ES/FR/PT, code supports SV) — C++, C, Rust, Go, Python, npm (WASM). VITS + Prosody, streaming, CUDA/CoreML/DirectML. pip install…. The licence is MIT.

When your agent uses it

  • Development work in your project

Example prompts

  • “/check-pua”

Requirements

  • Python 3
  • Pre-approved tools (allowed-tools): Bash(python *), Bash(uv run *), Bash(cargo test *), Bash(go test *), Bash(node *), Bash(git diff *), Bash(git status *)

Workflow steps

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

  1. Cross-runtime consistency
  2. Inventory + fail-fast invariants (Python)
  3. Pre-flight config validator
  4. Fixture drift detection
  5. (任意) ランタイム別 PUA テーブルテスト

What it can do on your machine

Read from SKILL.md and the folder at commit 421d066. 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(python *)
    • Bash(uv run *)
    • Bash(cargo test *)
    • Bash(go test *)
    • Bash(node *)
    • Bash(git diff *)
    • Bash(git status *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python
    • uv
    • cargo
    • go
    • node

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

  • Network

    No URLs in SKILL.md. Its commands use uv, 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

Check Pua loads about 768 tokens when it runs. Until then it costs about 39 tokens; SKILL.md has 206 words of instructions outside code blocks.

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

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 ayutaz/piper-plus at commit 421d066, republished under its MIT licence (© ayutaz). 206 words, ~768 tokens.

Download SKILL.mdSave it as .claude/skills/check-pua/SKILL.md (or your agent's skills folder).
name
check-pua
description
PUA テーブル / fixture / config の整合性を 1 コマンドで検査。pua.json を編集したり ɔɪ/œ̃/ɐ̃ のような multi-codepoint 音素を扱う前後に呼ぶ。docs/spec/pua-contract.toml の 4 不変条件を全部チェック。
allowed-tools
Bash(python *), Bash(uv run *), Bash(cargo test *), Bash(go test *), Bash(node *), Bash(git diff *), Bash(git status *)
disable-model-invocation
false

PUA Consistency Check

PUA (Private Use Area) 関連の不変条件を一括検査します。pua.json を編集する PR や、新しい多コードポイント音素 (例: 韓国語の濃音、追加母音等) を追加する作業で必ず呼んでください。

何をチェックするか

docs/spec/pua-contract.toml の 4 不変条件:

  1. Cross-runtime consistency — pua.json と 6 ランタイム (Python/Rust/Go/JS/C#/C++) のテーブルが byte-for-byte 一致
  2. Inventory coverage — id_maps.py の language inventory に出てくる multi-codepoint token は全て pua.json に登録済み
  3. Generated id_map keys — phoneme_id_map の全 key が単一コードポイント (C++ runtime の制約)
  4. PUA_COMPAT_VERSION sync — 全ランタイムの compat version が pua.json の version 値と一致

加えて:

  1. Fixture drift — tests/fixtures/g2p/phoneme_test_cases.json の pua_map / pua_map_count が pua.json と一致 (PR #389 で踏んだバグ class)

実行ステップ

1. Cross-runtime consistency
bash
python scripts/check_pua_consistency.py --verbose --check-version

期待: OK: pua.json matches all 6 runtime tables で終了。

2. Inventory + fail-fast invariants (Python)
bash
cd src/python/g2p
uv sync --extra all --extra dev
uv run pytest tests/test_pua_invariants.py -v

期待: 全 PASS。

3. Pre-flight config validator
bash
cd src/python
uv sync --extra test
uv run pytest tests/test_update_model_config.py -v

期待: 全 PASS。

4. Fixture drift detection
bash
python scripts/regenerate_test_fixture.py --check

期待: OK: tests/fixtures/g2p/phoneme_test_cases.json already in sync with pua.json。

drift があれば python scripts/regenerate_test_fixture.py を引数なしで再実行して fixture を更新、commit。

5. (任意) ランタイム別 PUA テーブルテスト

時間がある時のみ:

bash
# Rust
cd src/rust && cargo test -p piper-plus-g2p --lib -- token_map

# Go
cd src/go && go test ./phonemize/... -run "TestFixedPUA"

# JS
cd src/wasm/g2p && node --test test/test-pua-map.js

失敗時の典型的な対応

失敗内容対応
Cross-runtime mismatch該当ランタイムの PUA テーブル (token_map.rs / pua.go / pua-map.js / OpenJTalkToPiperMapping.cs / phoneme_parser.cpp) を pua.json と一致させる
Inventory coverage fail失敗した token を src/python/g2p/piper_plus_g2p/data/pua.json の entries に追加 (codepoint range は docs/spec/pua-contract.toml の [ranges] セクション参照)
Fixture driftpython scripts/regenerate_test_fixture.py で fixture を更新
compat version mismatchpua.json の version を bump したら、src/python/g2p/piper_plus_g2p/encode/pua.py の PUA_COMPAT_VERSION と src/wasm/g2p/src/pua-map.js の PUA_COMPAT_VERSION と src/rust/piper-plus-g2p/src/token_map.rs の PUA_COMPAT_VERSION を全部同じ値に揃える

関連リソース

  • ルール定義: docs/spec/pua-contract.toml
  • 新音素追加手順: docs/guides/development/adding-pua-codepoint.md
  • CI gate: .github/workflows/pua-consistency.yml
  • 配布前検証: scripts/upload_model_to_hf.py (config) / scripts/check_onnx_inputs.py (onnx)

© ayutaz, 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/skills/check-pua of ayutaz/piper-plus.

Open the folder on GitHubat commit 421d066

Compare with similar skills

Check Pua 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.

Check Pua compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Check Pua this skillayutaz/piper-plus234—~768Automated safety check: PassMIT
pybind11 Release Preparationpybind/pybind1118k—~1.7kAutomated safety check: PassCustom licence
Paddle Eager GraphPaddlePaddle/Paddle24k—~562Automated safety check: PassApache-2.0
pybind11 Release Publicationpybind/pybind1118k—~2.5kAutomated safety check: PassCustom licence
ExecuTorch Build Guidepytorch/executorch5.1k—~2.3kAutomated safety check: NotesCustom licence
Ros2 Engineering Skillsdbwls99706/ros2-engineering-skills217—~3kAutomated safety check: PassApache-2.0

Similar skills

  • Opens the pybind11 release-preparation pull request: picking the release base, bumping the version in common.h and integrating the changelog, following docs/release.rst.

    18k GitHub stars~1.7k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Paddle Eager Graph

    PaddlePaddle/Paddle

    A skill your agent uses when navigating Paddle eager-mode (dynamic graph) source code, tracing forward/backward execution, debugging autograd issues, understanding PyLayer, or investigating…

    24k GitHub stars~562 tokensUpdated today
    DevelopmentAuto-check passed
  • Walks a maintainer through publishing a pybind11 release after the preparation PR merges, with preflight checks, confirmations before each push and a GitHub release.

    18k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • ExecuTorch Build Guide

    pytorch/executorch

    Builds ExecuTorch from source: the Python package, C++ runtime, model runners, Android and iOS cross-compilation and backend-specific builds, with environment checks.

    5.1k GitHub stars~2.3k tokensUpdated yesterday
    DevelopmentAuto-check: notes
  • Ros2 Engineering Skills

    dbwls99706/ros2-engineering-skills

    ROS 2 engineering: rclcpp/rclpy, colcon/ament, launch, QoS/DDS, tf2/URDF, ros2control, Nav2, MoveIt 2, sensors, runtime/artifact provenance, and hardware safety.

    217 GitHub stars~3k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Embedded Cpp14 Misra

    BlueAndi/Pixelix

    A skill your agent uses when writing, reviewing, or refactoring C/C++ firmware code in this repository (src/, lib/, test/) — creating or editing .h/.hpp/.cpp files, applying MISRA-oriented and…

    443 GitHub stars~2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from ayutaz/piper-plus

All 20 skills in this repo
  • Skill Health

    ayutaz/piper-plus

    .claude/skills//SKILL.md の frontmatter / referenced script 実在 / trigger 衝突 / .claude/hooks/.sh の executable+shebang を検査する meta-skill。

    234 GitHub stars~626 tokensUpdated yesterday
    Auto-check passed
  • Bump Deps

    ayutaz/piper-plus

    ORT / openjtalk / ruff のような cross-runtime に canonical sync が必要な依存関係を 1 コマンドで bump する read-mostly skill。

    234 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Check Cross Runtime

    ayutaz/piper-plus

    Python canonical (src/pythonrun/piperplus/, src/python/pipertrain/, src/python/g2p/piperplusg2p/) を変更した PR で、 ONNX I/O 以外の追随漏れ (phonemizer / config schema / CLI flag / data 形式 / API 変更) を 7 ランタイム +…

    234 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed
  • Check Loanword

    ayutaz/piper-plus

    ZH-EN code-switching loanword の同期と forward-compat を 1 コマンドで検査。zhenloanword.json を編集したり 5 ランタイムのいずれかに新規エントリを追加する前後に呼ぶ。Python source を canonical とし、Rust×2 / Go / C / WASM / C++ の 6 mirror + Python…

    234 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Check New Runtime Asset

    ayutaz/piper-plus

    新規データアセット (JSON/TOML) を追加した PR で「7 箇所の package metadata 更新が全て揃っているか」を 1 コマンドで確認。MANIFEST.in / pyproject package-data / Cargo features / npm files / C Content / Android assets / SPM resources の更新漏れを…

    234 GitHub stars~964 tokensUpdated yesterday
    Auto-check passed
  • Check PR Ready

    ayutaz/piper-plus

    PR 作成前の最終チェックリスト (lint/test/docs/CHANGELOG/未コミット確認)。/precheck の拡張版で、ドキュメント整合性も検証します。

    234 GitHub stars~687 tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Check Pua

What does Check Pua do?

PUA テーブル / fixture / config の整合性を 1 コマンドで検査。pua.json を編集したり ɔɪ/œ̃/ɐ̃ のような multi-codepoint 音素を扱う前後に呼ぶ。docs/spec/pua-contract.toml の 4 不変条件を全部チェック。. Check Pua is an agent skill from ayutaz/piper-plus.

When should I use Check Pua?

Check Pua fits situations like: development work in your project.

How do I install Check Pua in Claude Code?

Run `npx skills add ayutaz/piper-plus --skill check-pua -a claude-code`. Or copy the skill folder (.claude/skills/check-pua in ayutaz/piper-plus) into .claude/skills/check-pua in your project. Claude Code loads it when a task matches its description.

How do I install Check Pua in Codex?

Run `npx skills add ayutaz/piper-plus --skill check-pua -a codex`. Or copy the skill folder (.claude/skills/check-pua in ayutaz/piper-plus) into .agents/skills/check-pua in your project. Codex loads it when a task matches its description.

Can I use Check Pua 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 ayutaz/piper-plus --skill check-pua -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/check-pua, .gemini/skills/check-pua, .github/skills/check-pua and .opencode/skills/check-pua in your project.

What does Check Pua need to run?

Going by SKILL.md and its folder, Check Pua needs the command-line tools its instructions call (python, uv, cargo, go and node). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash(python *), Bash(uv run *), Bash(cargo test *), Bash(go test *), Bash(node *), Bash(git diff *), Bash(git status *).

Does Check Pua access the network?

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

Is Check Pua 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 Check Pua use?

Check Pua 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 Check Pua use?

About 768 tokens (SKILL.md is roughly 3.1k 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 Check Pua?

Skills that share tags, products or a category with Check Pua: pybind11 Release Preparation (pybind/pybind11, 18k stars), Paddle Eager Graph (PaddlePaddle/Paddle, 24k stars), pybind11 Release Publication (pybind/pybind11, 18k stars) and ExecuTorch Build Guide (pytorch/executorch, 5.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Check Pua?

ayutaz (a GitHub user) maintains it in ayutaz/piper-plus, which has 234 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on October 10, 2026.

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