Seshat AIDocumentation

Documentation / Concepts

Runtime modes

Three separate ideas that are easy to mix up: how you reach Seshat, how it executes, and who approves its actions.

When people talk about “modes” they usually mean one of three different things. Seshat keeps them separate.

QuestionSettingValues
How do I reach the runtime?Entry surfaceTerminal (CLI), Go SDK, gRPC server
How does it behave?Execution modeexecute, plan, pair_programming
Who approves what it does?Permission modeonRequest, acceptEdits, auto, never, granular, bypass

You can combine them freely: for example, plan mode with onRequest approvals through the SDK.

Entry surfaces

All surfaces drive the same runtime, so the same sessions, tools and providers are behind each of them.

  • Terminal: seshat chat and seshat run, for your own work.
  • Go SDK: sdk.NewClient, to embed an agent in an application.
  • gRPC server: cmd/grpc, to run the agent as a service for other programs. The gRPC surface is experimental and partial: one service, SeshatService, with Query, QueryStream, skills, MCP, models and health methods. See the gRPC API.

Execution modes

ModeWhat it does
executeThe default. Tools run normally
planTools are described but not run. Use it to review what the agent intends to do before it does it
pair_programmingCollaborative: the agent works alongside you with more feedback and suggestions than autonomous execution

Permission modes

These decide who approves the agent’s actions, not what it does. The full table is in Using the CLI.

Updated on 2026-10-07