Amplifier Module
Self-describing terminal titles, zero LLM overhead
amplifier-module-auto-title makes each tab say what it's actually doing, so you never click tab-to-tab guessing again.
First: is this a real, shipped thing? →
A single-author project by Ken Chau — 12 commits, in active use as of its last commit — ships with a unit-test suite that all passes.
So what's the pain it earns the right to solve? →
One session in one terminal is trivial to track. Open several and they all show the same shell default — so you fly blind, clicking tab to tab to rediscover which is which.
The fix: give every tab a title that describes itself. →
The format is '[dir-name] | [session name]'. At a glance you read the project and exactly what that session is doing.
But how does it stay free of extra model calls? →
The hook fires at priority 200 — after hooks-session-naming at 100 — so the session name is already in metadata.json. It emits an ANSI OSC0 escape. No separate LLM call.
This clean form wasn't the first attempt. →
Skill-driven bash first, then a fire-and-forget delegate, then the tested prompt:complete hook that writes to /dev/tty (piped-safe) and de-dupes redundant updates.
The result: clarity you install once. →
A global app bundle auto-composes with every session — no per-project config. Every tab becomes '[project] | [task]', with no extra LLM call. The wall of terminals reads itself.
And there's a pattern worth keeping. →
The cheapest UX win is surfacing data you already have — not calling the model again. Auto-title turned a name it already had into instant clarity, for free.
Data as of: last commit 2026-03-30 (corpus snapshot)
Feature status: Shipped and in active use · bundle/behavior v2.0.0, hook package v1.0.0
Repository: kenotron-ms/amplifier-module-auto-title (default branch main)
Commands run:
git clone …/amplifier-module-auto-title.git; git shortlog -sne --all — sole author Ken Chau across four identitiesgit rev-list --count HEAD; gh api commits?per_page=100 --jq length — 12 commits, 2026-02-26 → 2026-03-30git log --pretty='%h|%ad|%s' --date=short — three approaches: 96c98e4 → 2e94692 → 0ce6837gh api repos/…/pulls?state=all; gh pr list --state all — 0 PRs, 0 issuesgrep -rn 'printf' . — ANSI OSC0 escape in README.md, SKILL.md, scripts/set_title.shgrep -c 'def test_' tests/test_hook.py; uv run … pytest tests/ -q — 14 tests, 14 passedmodules/hooks-auto-title/…/__init__.py — prompt:complete, priority 200, /dev/tty, dedup guardGaps: No numeric CPU/latency figure claimed — "zero overhead" means "no extra LLM call" (verified in code/docs). The "5 tabs / zsh" scenario is illustrative framing (README.md:11), not verbatim. hooks-session-naming's own repo was not inspected this pass.
Primary contributor: Ken Chau (sole author, 12/12 commits).