tw93/wazaGit

Waza engineering practices

Turn disciplined engineering habits into repeatable AI development workflows.

Before you start

Inputs: Codebase, technical environment and acceptance criteria

  1. Check the original documentation for supported AI tools, models and runtime dependencies.
  2. Open the repository and follow the author’s installation instructions. Model APIs or external services may require separate accounts.
  3. Try your own material, then review the facts, layout and output files.
Read the original installation guide ↗

License: MIT

Source snapshot: 2026-09-15. README ↗

Original license & copyright
MIT License

Copyright (c) 2026 Tw93

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Try a task like this

Use Waza engineering practices with my own source material. Confirm the required inputs and available tools, then produce an editable result.

Waza

Engineering habits you already know, turned into skills AI agents can run.

LLM guide


Skills

Each engineering habit gets an installed skill. In Claude Code, type the slash command. In Codex, invoke the installed skill by name and follow the same playbook.

SkillWhenWhat it does
/thinkBefore building anything newChallenges the problem, pressure-tests the design, and produces a decision-complete plan another agent can implement.
/uiBuilding frontend interfacesProduces distinctive UI, including screenshot-driven aesthetic iteration, with a committed direction rather than generic defaults.
/checkAfter a task, before merging or releaseReviews the diff against project constraints, verifies the result, and handles approved release and maintainer actions.
/huntAny bug, regression, or unexpected behaviorSystematic debugging. Root cause confirmed before any fix is applied, especially when something used to work.
/writeWriting or editing proseRewrites prose to sound natural in Chinese and English. Cuts stiff, formulaic phrasing.
/learnDiving into an unfamiliar domainSix-phase research workflow: collect, digest, outline, fill in, refine, then self-review and publish.
/readAny URL or PDFReturns a concise summary, or clean Markdown for conversion, quotes, citations, saving, or further research.
/healthAuditing Agent HealthChecks Codex, Claude Code, project instructions, verifier output, and AI maintainability with a budget-aware summary pass before deep inspection.

Each skill is a folder with reference docs, helper scripts, and gotchas from real failures.

Install

Claude Code, Codex, Cursor, and other agents

npx skills add tw93/Waza -a claude-code codex cursor -g -y

One copy lands in ~/.agents/skills, the shared skills directory. Claude Code is symlinked in; Codex, Cursor, Gemini CLI, Copilot, Amp, Kimi Code CLI, and every other agent that reads that directory picks the eight skills up as /check, /think, and so on. Agents with a private skills directory take their id after -a (for example antigravity-cli or qwen-code). Update with npx skills update -g -y.

Host plugin, if you prefer the host's own update command (skills are namespaced, /waza:check)

# Claude Code (update: claude plugin update waza)
/plugin marketplace add tw93/Waza
/plugin install waza@waza

# Codex (update: codex plugin marketplace upgrade waza, then codex plugin add waza@waza)
codex plugin marketplace add tw93/Waza
codex plugin add waza@waza

Claude Desktop: download waza.zip, open Customize > Skills > "+" > Create skill, and upload the ZIP. To update, click "..." on the skill card, choose Replace, and upload the latest ZIP.

Pi: pi install npm:@tw93/waza, update with pi update npm:@tw93/waza.

Chaining Skills

You decide how skills chain together. Each skill stops at the requested outcome; an explicitly authorized workflow continues without asking you to approve every transition.

Common workflows:

  • Plan a feature: /think → approve → say "implement X" → /check → merge
  • Ship a fix: /hunt → fix → /check → release/publish/push/issue follow-through
  • Research and write: /read (fetch sources) → /learn (synthesize) → /write (polish)
  • Debug and verify: /hunt (find root cause) → fix → /check (review changes)

Project Context

Waza ships only generic engineering habits. /check becomes project-aware at runtime by reading the target repository's public context (READMEs, package manifests, Makefiles, CI workflows) and your task constraints, never private paths, credentials, or tokens. See skills/check/references/project-context.md for the review context template.

Extras

Statusline

A minimal statusline for Claude Code: context window, 5-hour quota, and 7-day quota. Color-coded by usage, no progress bars, no noise.

(
  set -e
  WAZA_STATUSLINE_SCRIPT="$(mktemp -t waza-statusline.XXXXXX)"
  trap 'rm -f "$WAZA_STATUSLINE_SCRIPT"' EXIT
  curl -fL https://github.com/tw93/Waza/releases/latest/download/setup-statusline.sh -o "$WAZA_STATUSLINE_SCRIPT"
  # review it first: less "$WAZA_STATUSLINE_SCRIPT"
  bash "$WAZA_STATUSLINE_SCRIPT"
)

Codex has native statusline items. Add to ~/.codex/config.toml:

[tui]
status_line = ["model-with-reasoning", "current-dir", "context-used", "five-hour-limit", "weekly-limit"]
status_line_use_colors = true

Codex shows remaining quota; the Claude Code statusline above shows used percentage (upstream does not yet expose five-hour-used / weekly-used).

Optional Rules

Three independent toggles. Copy the ones you want (swap claude-code for codex or antigravity-cli on those agents):

(
  set -e
  WAZA_RULE_SCRIPT="$(mktemp -t waza-rule.XXXXXX)"
  trap 'rm -f "$WAZA_RULE_SCRIPT"' EXIT
  curl -fL https://github.com/tw93/Waza/releases/latest/download/setup-rule.sh -o "$WAZA_RULE_SCRIPT"
  # review it first: less "$WAZA_RULE_SCRIPT"

  # English coaching: appends a short 😇 correction when your prompt has an English mistake
  bash "$WAZA_RULE_SCRIPT" english claude-code

  # Anti-patterns: always-on cross-skill guardrails (read before acting, no scope creep, no unsolicited summaries)
  bash "$WAZA_RULE_SCRIPT" anti-patterns claude-code

  # Routing hint: tells non-Claude hosts to prefer Waza skills when a request matches their triggers
  bash "$WAZA_RULE_SCRIPT" waza-routing claude-code
)

Curl URLs use the latest GitHub release asset. Set WAZA_REF=main before the command if you want bleeding-edge scripts.

Why

Waza (技, わざ) is a Japanese martial arts term for technique: a move practiced until it becomes instinct.

A good engineer does more than write code. They pressure-test requirements, debug to root cause, review their own diffs, and read primary sources. AI has the raw output for all of it, but without structure that output drifts into generic, imprecise work. Each Waza skill states the outcome, the red lines, and how the result gets verified, then steps back and lets the model choose the path. As models improve, that restraint pays compound interest.

Tools like Superpowers and gstack are powerful but heavy: too many skills, too much configuration. Waza stays small, eight skills for the habits that actually matter, each with one job and a clear trigger. Built from real projects and refined through 300+ sessions across 7 projects, every gotcha traces to a real failure. The /health skill grew from the six-layer Claude Code framework in this post.

Part of a trilogy: Kaku (書く) writes code, Waza (技) drills habits, Kami (紙) ships documents. Think of them as a family: Kaku is the dad, Waza the big sister, Kami the little sister.

Uninstall

npx skills remove tw93/Waza -g
rm -f ~/.claude/statusline.sh
rm -f ~/.claude/rules/english.md
rm -f ~/.claude/rules/anti-patterns.md
rm -f ~/.claude/rules/waza-routing.md

For Claude Desktop, delete Waza from Customize > Skills. For Codex rule installs, remove the marked Waza blocks from ~/.codex/AGENTS.md.

Support

  • The most direct way to support me is getting Mole for Mac, my paid Mac cleanup app.
  • If Waza helped you, give it a star, share it, or open an issue or PR.
  • I have two cats, TangYuan and Coke. If you think Waza delights your life, you can feed them canned food 🥩.
These lovely people already did 🐱

License

MIT License. Feel free to use Waza and contribute.