Skip to content
cccskills
FreePublished on GitHub

whiteboard-defense

Use when a person wants to be questioned about a system they shipped, says "defend <feature>" or "whiteboard me on <subsystem>", or wants to be ready to explain and defend a design to anyone who pulls them aside. Hard questions on the system and on its stack, open-book. Produces a defense report: the gaps, the reading that closes them, and the architecture leads the questions turned up. Not a review of the code, not a test of the person, not a quiz on names and lines, and it changes nothing in the repository.

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13 stars(GitHub 13 + cccskills 0)

Run score Not tested

See how to install

Files included (1)

  • SKILL.md5.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Whiteboard defense

The goal is readiness: anyone can pull the person aside and ask how a system they shipped works and why it is built that way, and they can answer and defend it. The session is the study, the questions are its curriculum, the code is the textbook. It ends when the person says so.

Open-book. The person goes and reads before answering: the code, the plan, the board, the stack's documentation. What is tested is the model they come back with, not recall. Function names, line numbers and implementation detail are out of scope; where a guarantee holds and why it holds there is in scope.

Scope

One subsystem or feature per session, named by the person. Before the first question, read it: its code, its history, and its documents in the data home through the aiview skill. Build the answer key from that reading and keep it out of chat.

A resuming session reads the previous report first and does not re-ask what was defended solid.

Two tracks

The system. In the order a sceptical reviewer pushes:

  1. Shape: the parts and what each owns.
  2. Flow: one real request or event start to finish, where state lives, who changes it.
  3. Decisions: why this and not the obvious alternative, and what was given up.
  4. Failure: what breaks first under load, bad input or a dependency outage, and how it would be found out.
  5. Change: where the cut goes if a requirement changed, and what must not be touched.

The stack. What the languages, frameworks, runtimes and stores the system rests on offer at a senior level, used by the system or not: the runtime's concurrency model, the store's isolation and locking, the framework's lifecycle, the features an experienced engineer on this stack reaches for. Every stack question is tied to a place in the system where the answer would matter. When the person answers "we don't use that", the follow-up is "should you, here?"; the answer either way is learned. Research the stack question from the official source before asking it, as the interview skill researches a claim.

The questions

  • One question per message, as the interview skill asks its decisions, then the follow-ups a sceptic would make: the timeout, the second retry, the concurrent write, the deploy halfway through.
  • No question answerable from one file. Every question tests a connection: two parts of the system, or the system and a property of the stack. Name the connection to yourself before asking; without one, drop the question.
  • Advanced only. The level is a staff engineer interviewing for their own team: a question the person could fail, that a correct answer needs the stack's semantics for and not its API. Never a definition, a module's name restated, a "what does X do", or a question whose answer is in the question. If the answer comes back solid at once, the next question goes deeper on the same connection until it does not.
  • Check the answer against the reading, then say what the code says where it differs. An answer is marked solid, vague, wrong, or inherited: a decision the code holds that no person made, which is the first kind to learn, since it will be asked anyway.
  • The mark ends the message; the next question waits. After a mark the person may ask back, contest it, or go and read; the discussion runs until they say "next" or ask for the next question. A mark revised in that discussion is revised in the report. The next question is never asked in the message that marks.
  • No edits to the repository. A question is never proved by rewriting the code, and a lead is never followed in-session.

The report

YYYY-MM-DD-<subsystem>.defense.report.md through the aiview skill, kind report, tags = subsystem + defense, written as each answer lands. In this order:

  • Readiness: per layer of the system track and per stack topic, solid, vague, wrong or inherited, with the count of each.
  • Gaps: each question not defended solid, what the person said, what the code says, and the reading that closes it: the files, the document, the stack's source.
  • Inherited decisions: what the code decided without the person, where, and the alternative it silently rejected.
  • Improvement leads: a stack feature or design the system does not use, the place it would apply, the trade-off. Leads, not findings: one that is worth pursuing goes through the brainstorm or write-plan skill like any other change.
  • Log: every question, the answer as given, the mark.

Close in chat with the readiness line and what the next session should start from.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

aiview

Free

Use whenever a document is produced for the user to read and react to while it evolves: a brainstorm board, a plan, a design language, a prototype, a PR analysis, a review report, a live PDF. Also when a document must be registered, opened, listed, moved or retired, or a prototype's bindings checked. Not for code, tests or configuration, or any file nobody opens in a browser.

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

Use when a person wants to think an idea through and keep the discussion: a feature, a tool choice, an architecture question, before a plan or without one, with the agent through an interview. Produces a board in aiview holding the decisions, the diagrams and what was investigated. Not for a swarm of seats working it (brainswarm), not for an implementation plan and not for bug fixes.

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

Use when a person wants a swarm of role seats to work a topic on the swarm board under a chosen protocol: a brainstorm (ideas before any judgment), a debate (questions argued to decisions, a skeptic endorsing) or an editorial (one text drafted, read by seats standing for its readers, revised), a protocol or template the project keeps as a `protocol-<name>` skill (or an older `brainswarm-<name>` one), or a custom protocol recommended for the person's intent, or a seat's brief names a brainswarm protocol. Produces the run's record in aiview, written by the orchestrator alone. Not for one person thinking aloud with the agent (brainstorm, interview) and not for a plan's slices (execute-plan).

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

Use when dispatched to cold-read a plan, as an agent that was not in the conversation that wrote it, to say whether it can be carried out from the document alone. Produces what the reader would build, its questions, and a verdict, ready or not ready, repeated as the writer fixes the plan. Not for judging the design (interview, pr-review), not for the mechanical checks (aiview plan check, tracker check), and not for writing the plan (write-plan).

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

Use when code is hard to follow and is to be audited or reworked: long if/else or switch chains, cascades of type checks or parse attempts, kind fields compared to strings, flag parameters, deep nesting, a function hard to read. Also for complexity guardrails, or one long conditional function pasted. Produces a ranked audit of families, one family reworked behind characterization tests, or the guardrails.

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

Use when a page is wanted to work on something with the person during development, fed the project's real data (comparing model answers, walking an agent call by call, measuring an output against its template), when such a workbench has to change, be reworked or its feed broke, or mid-session when turns went into aligning with the person on how to do a kind of work that recurs and real project data could show it. Produces the page in aiview, kind `workbench`, and the project's `workbench-<bench>` skill with its feed and operating steps. Not for designing a product screen (design-prototype) or verifying user stories (verification-skill-create).

The English summary is being prepared. Showing the original description.

Ovich/swarmstorm13Updated Oct 29, 2026

See all skills by Ovich

Report a problem with this skill