Skip to content

enzuguri/understudy

v0.2.0

Context-firewall skills and custom agents for Cursor and Claude Code

boundaries

Abstraction-boundary principles — what must not leak across a port, leak smells, port design, trade-offs. Load when judging whether a change leaks across a boundary or designing a port. Discovery of a repo's boundaries is discover-boundaries.

context-management

Orchestration playbook — context budgets, when and how to delegate, and routing rules the agent and skill descriptions don't state. Load before delegating to a subagent, coordinating several agents, or starting a session expected to run long; invoke /context-management to force it at session start. Not needed for one-shot tasks.

coordination-artifact

Schema and protocol for the shared contract.md that multiple agents coordinate through, plus long-lived worker rotation and handoff. Load when more than one agent works the same task, or across repos.

discover-boundaries

Discovers a repo's abstraction boundaries — adapter files that wrap I/O libraries, the ports consumers actually import, and cross-boundary leaks — and caches the result at .agents/context/boundaries.md. Invoke before designing a port or checking boundary integrity when that cache is missing or stale. Repo-level and cached; for the principles (smells, port design, trade-offs) load the boundaries skill instead.

discover-project-tools

One-time discovery of a project's verification, dev-loop, and project-specific commands. Reads CI workflows, README, and build manifests, then writes .agents/context/project-tools.md as the canonical reference. Invoke when starting work in an unfamiliar repo or when the existing project-tools.md is stale.

discover-repo-map

Builds a repo-level orientation map — runtime and build system, frameworks, entry points, conventions (naming, imports, error handling, logging, tests), hotspots from git history, and repo-wide gotchas — and caches it at .agents/context/repo-map.md. Invoke on first work in an unfamiliar repo or when that cache is stale. Repo-level and cached; task-specific orientation ("where do I change X?") is orient-agent, which reads this cache.

failure-modes

Catalogue of silent-degradation shapes and flaky-infrastructure signatures. Load when a run reported success but did less than it claimed, or an intermittent failure is being treated as deterministic.

hypothesis-handling

Protocol for beliefs crossing a delegation boundary: callers label hypotheses and attach reasoning; agents answer CONFIRMED / REFUTED / PARTIALLY / UNPROVABLE-HERE with file:line evidence, refutations first. Load when writing a dispatch that carries a belief, or when answering one.

pr-authoring

Mechanics for creating a PR through git-agent plus an optional PR-body renderer, and when to hand the whole flow to a wholesale PR skill instead. Load when executing PR creation.

review-routing

Choosing a code-review route other than the default review-agent firewall — fan-out, side-effecting, or wholesale review flows — and how presentation voice is applied separately. Load when the default firewall review doesn't fit.

revoice

Re-renders existing text (review findings, a summary, notes) in a named voice without changing its content, inside the read-only re-voicer sandbox. Pass the voice name, then the source text verbatim. Voices are bundled in references/voices/ (currently gentry). Relay the result to the user verbatim — summarising it destroys the value.

session-start

Session-start instructions. Hosts with plugin hooks inject this skill's body automatically. On hosts without hooks, load this skill at the start of a session.

slack-insights

Peer interest mining, channel digest, and period rollup. Fetches Slack messages and produces daily reports, or synthesises existing reports into a period summary — no Slack access needed for rollups.

trace-symbol

Traces one named symbol (function, class, hook, type, route handler) through the codebase behind a context firewall — its definition, re-exports, every importer, call sites grouped by usage pattern, and what it depends on. Use when the question is about a specific symbol ("what calls X", "where is X used", "what does X depend on"); for general orientation before a change, use orient-agent.

types

Type design — brands for proof, parse-don't-validate at I/O boundaries, capability composition. Load when designing a new type or port.