Skip to content

phpbotscout review

Shows each answer the bot composed, oldest first, exactly as it was or would have been posted, and records your verdict on it. Thirty reviewed answers to real questions are the gate between shadow mode and posting (spec 0023, for 0010 D12).

It reads the database serve writes, at index.path, and needs no forge or AI credentials. It can run while serve is running.

It reviews one server at a time. With one server configured, that server is implied. With several, name one with --server, so production is never judged by someone who believes it is stage. Every answer offered and every count is for that server alone (spec 0029 D4).

Usage

$ phpbotscout review

Answer 1 · plain · shadow · recorded 2026-09-24 08:54
Question: how do I make a flag beat an environment variable?
Thread:   go/config: flag precedence

It would have posted:
  Flags already beat environment variables: the store reads changed flags first.

  Sources:
  • Config › Precedence — https://config.go.phpboyscout.uk/explanation/precedence/

Citations:
  1. Config › Precedence
     https://config.go.phpboyscout.uk/explanation/precedence/
     phpboyscout/go/config docs/explanation/precedence.md at a1b2c3d4

Then, for each answer:

Question Choices
Was this answer correct? Yes · No · Skip it for now · Exclude it · Quit
Were its citations apt? Yes · No. Asked only when the answer has citations.
Note (optional) Free text. Anything that looks like a secret is removed before it is stored.

When nothing is left it says so and prints the tally.

What is offered

An answer whose text is still stored, in a plain, hedged or decline posture, with no verdict yet, whether it was posted or composed in shadow mode. Each is marked posted or shadow, and both count. Declines count towards the thirty: a decline is posted too, and can be wrong. An over-budget reply is never offered, because it says nothing about the question.

Answers come oldest first. One recorded while you are reviewing joins the end of the queue.

The choices

  • Yes / No record the verdict. Recording a verdict for an answer that already has one replaces it.
  • Skip it for now holds the answer back for the rest of this run. The next run offers it again, first if it is still the oldest.
  • Exclude it is for a question replayed from the benchmark or calibration sets, which do not count. The answer is never offered again and never counted. Your own questions on the test guild do count, as long as you did not copy them from those sets.
  • Quit stops and prints the tally. Nothing about the current answer is recorded.

Running it without a terminal

The prompts need someone to answer them. On a stdin that is not a terminal the command refuses:

$ echo | phpbotscout review
ERROR review: an interactive terminal is needed hints="Run it from a terminal, or set GTB_ACCESSIBLE=true to answer line by line on a piped stdin."

With GTB_ACCESSIBLE=true (or --accessible) each prompt reads one line: a number for a choice, text for the note. If the input runs out partway through an answer, the review stops with review: the input ended before a verdict was given and records nothing for that answer.

There are no flags that record a verdict. A verdict is a person reading an answer.

How long it is kept

A verdict is kept with its answer, and stays when the person it answered asks to be forgotten. A note may quote the answer, so it is cleared when the answer's text expires, after 120 days. The verdict itself stays: it is the count. See the policy.

Flags

Flag Meaning
--server <id> The server whose answers to review, by its discord.guilds[].space. Required when more than one server is configured, and implied when there is one.

Global flags (--config, --debug, --output, --ci, --accessible) are inherited from the root command.

Leaving --server out with several servers configured, or naming one that is not configured, is refused:

configured: [1531227937678954747 1519629968768897075]: review: more than one server is configured; name one with --server
123 (configured: [1531227937678954747 1519629968768897075]): review: that server is not configured

Subcommands

Command Description
review status Report how many shadow answers have been reviewed

See also