On this page

skryba score

Measure one text with the configured detector ensemble.

Invocation

skryba [GLOBAL OPTIONS] score [INPUT]

INPUT is a UTF-8 file path or - for stdin; it defaults to -. Global options must appear before score. The relevant global options are --detectors <NAMES> and --detector-interval-ms <MILLISECONDS>. With no --detectors, Skryba infers providers from configured detector API keys.

printf 'Text to score.\n' | skryba score -

Output and state

Stdout is one JSON object with the unweighted mean ai_probability and a detectors array containing each detector name, normalized probability, and cache-hit flag. Scores are read from or written to the revision-aware score cache in Skryba's fleet database. The command does not call Brama and does not modify the input.

Refusals

  • Empty explicit detector selection: --detectors must contain at least one detector name.
  • No inferred credential: no detector credentials found; configure GPTZERO_API_KEY, WINSTON_API_KEY, ORIGINALITY_API_KEY, or SAPLING_API_KEY.
  • Unknown detector: unknown detector "<name>"; available detectors: gptzero, originality, sapling, winston.
  • Missing selected provider key: <KEY> is required for <name>.
  • Empty input: <detector> cannot score empty text.
  • A failure to reach the fleet database names its step; see skryba database check.
  • An unreadable file is reported as reading <INPUT> with its underlying filesystem error. Provider HTTP, JSON, or probability-shape failures are returned rather than converted into a score.

Maintained as part of the website-owned Skryba documentation corpus.