Skip to content
Back to skills

Best Practices One Shot

ASecurity

Best practices for Ask one-shot runs: the same question to N seats concurrently, answers returned per seat with no consensus, no judge, and no quorum. Use when a user asks several models one question and wants to read each answer, when partial answers are still useful, or when deciding whether a request is a one-shot, a roundtable, or a competition.

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 11, 2026
researchrustnode

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add grahama1970/agent-skills --skill best-practices-one-shot --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Best Practices One Shot?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Best Practices One Shot
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/grahama1970-best-practices-one-shot/badge)](https://www.skillsdirectory.com/skills/grahama1970-best-practices-one-shot)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: best-practices-one-shot
description: >
  Best practices for Ask one-shot runs: the same question to N seats
  concurrently, answers returned per seat with no consensus, no judge, and no
  quorum. Use when a user asks several models one question and wants to read
  each answer, when partial answers are still useful, or when deciding whether
  a request is a one-shot, a roundtable, or a competition.
triggers:
  - one-shot best practices
  - ask one-shot
  - per-seat answers
  - ask several models one question
  - no consensus panel
  - independent answers
provides:
  - one-shot-contract
  - deliverable-driven-mode-routing
  - honesty-vs-readiness-split
composes:
  - ask
  - best-practices-tau-dag
  - agentic-evals
complies:
  - best-practices-skills
  - best-practices-tau-dag
taxonomy:
  - orchestration
  - querying
disciplines:
  - engineering-standards
  - agentic-orchestration
---

# Best Practices: One-Shot

A one-shot asks N seats the same question concurrently and returns N
independent answers. The human reads the answers; nothing synthesizes them.
It is the correct mode when the deliverable is perspectives, not a decision.

## Core Rule

Never manufacture agreement from one-shot answers.

The moment you summarize the answers into "the models agree that..." you have
run a roundtable without its equal-packet, quorum, and attributed-dissent
guarantees. The moment you pick "the best answer" you have run a competition
without isolation or an independent judge. If the user wants either, recompile
in the right mode; do not upgrade a one-shot in prose.

## Contract

`skills/ask/run.sh one-shot "<question>" --handler <a> --handler <b> ...`

- **Independence is structural.** Each seat runs as its own single-call Tau
  DAG. There is no shared node, so one seat's failure cannot reach another
  lane even in principle — stronger isolation than a roundtable's join-gate.
- **Nonce-bound answers.** The prompt embeds a fresh token the answer must
  echo; a response without this run's nonce is `STALE_OR_UNBOUND`, never an
  answer. A stale artifact can never be graded as this run's result.
- **Honesty and readiness are separate verdicts.** Per seat: `ANSWERED`,
  `NAMED_BLOCKER` (non-empty failure_code), or `DISHONEST` (neither). Run
  level: exit 0 at or above `--min-answered`, exit 3 when every lane was
  honest but answers fell below the floor, exit 1 only for dishonest lanes.
  1/3 answers is a usable result, not a failure.
- **Receipts per seat.** Every lane leaves its own run dir with
  `response.md`, `node-receipt.json`, `dag-chart.initial.txt`, and
  `dag-chart.final.txt`; the run writes `one-shot-verdict.json`. Report from
  these artifacts, never from memory of the stdout.

## Choosing the mode (deliverable-driven)

| The user wants | Mode |
| --- | --- |
| To read N perspectives themselves | one-shot |
| One deliberated position with dissent attributed | roundtable (`$best-practices-roundtable`) |
| One winner chosen on evidence from isolated attempts | compete (`$best-practices-competition`) |
| One answer from one model | `$ask` single handler |

Cues in the request: "ask A and B and C <question>" with no synthesis verb is
a one-shot. "Discuss / debate / recommend" is a roundtable. "Each implement /
pick a winner / judge" is a competition.

## Charts are part of the run

Before executing, show the human the compiled DAG chart
(`dag-chart.initial.txt`, printed at compile). After the run, read and report
the final verdict chart (`dag-chart.final.txt`) — per-node PASS / FAIL /
NAMED_BLOCKER / NO_RECEIPT — so what succeeded and failed is visible without
trusting prose. The final chart is also the project agent's self-correction
instrument: every non-PASS node is a work item to read, fix, rerun, or name
before reporting. Both artifacts are eval-enforced in `$ask`.

## Fail-Closed Rules

| Condition | Behavior |
| --- | --- |
| Answer missing this run's nonce | `STALE_OR_UNBOUND`, lane fails |
| No answer and no failure_code | `DISHONEST`, run exits 1 |
| Zero answers, all blockers named | honest but `NOT_READY`, exit 3 |
| Caller summarizes answers into consensus | wrong mode; recompile as roundtable |
| Caller ranks answers and declares a winner | wrong mode; recompile as compete |

## Common Failure Modes

| Failure mode | Required correction |
| --- | --- |
| Consensus prose over independent answers | Report per seat, or rerun as roundtable |
| "Best answer" selection without a judge | Rerun as compete with `--judge-handler` |
| Treating a named blocker as a failure | It is honest; count it against readiness only |
| Treating an all-blocked run as a pass | Exit 3 NOT_READY is the contract |
| Reporting from stdout memory | Read `one-shot-verdict.json` and lane receipts |

## Agentic Evals

The live contract is proven by `skills/ask/fixtures/agentic_eval_live.json`
case `live-one-shot-asks-mixed-seats-and-returns-per-seat-answers` (runner
level, two trials), with the verdict machinery red-teamed by the ladder and
judge-audit adversarial cases. Do not add deterministic-only proof for live
behavior; extend the live fixture instead.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.