ShrubberyDocs
Sign in

Squire

Definition

The AI extraction layer that turns unstructured text into a structured commitment candidate during the Smart Paste flow. The Squire is not a user role — it is the server-side AI component behind /api/gather.

Avoid: AI assistant, bot, agent, copilot.

Role

The Squire's job is narrow: receive raw text, return a single structured candidate with three fields — objective, suggested assignee, and deadline. It does not send the commitment to the Knight, does not score anything, and does not make decisions. The Lead reviews and confirms every Squire output before a Draft row is created.

The Squire runs using the Lead's BYOK provider key, resolved at call time by resolveProviderAndKey(). If no BYOK key is present, the Squire does not run and /api/gather returns an error directing the Lead to settings. There is no platform fallback.

When the Squire is uncertain about a field, it returns the candidate anyway with a confidence indicator. The Lead sees this and can correct before saving. The Squire never omits low-confidence results — a partial extraction is more useful than no extraction.

The Squire's output is the starting point, never the endpoint. Human review is structurally required.

Lifecycle

Not a stateful concept. The Squire is a call-and-return service.

  1. Lead pastes text into the Capture surface.
  2. Squire receives text via POST /api/gather with the Lead's BYOK key.
  3. Squire returns structured candidate (objective, assignee, deadline).
  4. Lead reviews → saves → Draft row created. Squire's involvement ends here.

Last updated: 22 June 2026