bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
Agent skill that checks how well you understand your current codebase — one question at a time, graded against the real code. Claude Code & Codex.
SkillsPythonGitHub @WooHey-PSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Installable projects can be verified without a deployment domain. Use GitHub sign-in for a personal repository, or the repository verification file above for an organization repository.
Ask about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗An agent skill that checks how well you understand your current codebase — by asking
you one question at a time about real behavior, grading your answer against the actual
code with file:line evidence, and re-checking the idea in a different situation when
something was missed.
Useful when an AI agent wrote much of your code and you want to know what you can actually predict about it — before you ship it, maintain it, or explain it to someone.
Replay of a recorded run (Claude Code, synthetic project in tests/fixtures/book-rental).
The text is the agent's actual output; only formatting was simplified.
It reads code only. It does not edit files, run your code, or run Git commands, and it does not save anything.
# Current project, for the agents you choose
npx skills add WooHey-P/code-understanding-coach
# All your projects
npx skills add WooHey-P/code-understanding-coach -g
# Pick agents explicitly, no prompts
npx skills add WooHey-P/code-understanding-coach -a claude-code codex -y
skills is the open-source skills CLI from
Vercel Labs (not an Anthropic or OpenAI tool) and needs Node.js. It finds the skill in this
repository's skills/ folder and installs it into .claude/skills/ (Claude Code) and
.agents/skills/ (Codex), or the ~/ equivalents with -g. By default it keeps one copy
in .agents/skills/ and symlinks it for Claude Code (pass --copy for separate copies),
and records the install in a skills-lock.json file in your project.
Then, in your project, ask: "Check my understanding of this project" or "Quiz me on
<feature>". You can also invoke it explicitly with /code-understanding-coach (Claude
Code) or $code-understanding-coach (Codex).
The skill is one folder, skills/code-understanding-coach/. Copy it into your agent's
skills directory.
git clone https://github.com/WooHey-P/code-understanding-coach.git
| Agent | All your projects | One project |
|---|---|---|
| Claude Code | ~/.claude/skills/ | <project>/.claude/skills/ |
| Codex | ~/.agents/skills/ | <project>/.agents/skills/ |
# Claude Code, all projects
mkdir -p ~/.claude/skills
cp -R code-understanding-coach/skills/code-understanding-coach ~/.claude/skills/
# Codex, all projects
mkdir -p ~/.agents/skills
cp -R code-understanding-coach/skills/code-understanding-coach ~/.agents/skills/
Claude Code and Codex read different directories, so install into each agent you use.
npx skills update (add -g for global installs). npx skills check lists
available updates.git pull in your clone, then copy the folder again.npx skills remove code-understanding-coach (add -g for global installs).code-understanding-coach folder from the skills directory.[[skills.config]] entry with
enabled = false to ~/.codex/config.toml and restart Codex.| Agent | Status |
|---|---|
| Claude Code (tested with 2.1.310) | Tested — 15 conversation scenarios, one run each, on the synthetic project. See Verification |
| Codex CLI (tested with 0.160.1) | Tested — the same 15 scenarios, one run each. Three scenarios that fell short in the first run were re-run after a skill fix and passed. Codex runs could not be isolated from the tester's global agent instructions |
| Other agents, claude.ai | Not tested |
The skill follows the Agent Skills specification
(only name, description, license in the frontmatter).
The skill sends nothing anywhere by itself. Your code and answers go only to the coding
agent you are already using, under that agent's terms. It does not open .env files, keys,
or credential stores, and does not write records.
Inspired by Sphinx (MIT), which checks your
understanding of a change when you git push, using a separate evaluator model.
This project borrows assessment ideas — commit to a minimum answer before asking, re-check
the question before grading, ask a transfer question after a miss, treat code and answers
as untrusted data — but no code or text, and works differently:
| Sphinx | Code Understanding Coach | |
|---|---|---|
| Starts | Git hook on push/commit | You ask, in plain language |
| Scope | The change being pushed | The current code: whole project or one feature |
| Grader | Separate model via CLI or API | The agent you are talking to |
| Interface | Browser page or terminal | Your agent conversation |
| Install | npm package, hooks, config | Copy one folder |
This repository has no runtime code, so verification is about behavior:
python3 scripts/check.py # spec frontmatter, file references, personal-info scan
python3 tests/scenarios/run.py --agent claude --scenario all --jobs 4 # real model calls
tests/scenarios/ replays multi-turn conversations against an agent on a synthetic project,
with a simulated developer answering correctly, partially, or wrongly. A script checks that
the skill triggered, that nothing was written or executed, and that a planted secret never
leaked; a human checks question and grading quality with
CHECKLIST.md. See
tests/scenarios/README.md.