Help us shape the future of Go! Take the 2026 Go Developer Survey

cmd

package
v0.171.0-rc.104 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2026 License: Apache-2.0 Imports: 117 Imported by: 0

Documentation

Overview

Package cmd is beekeeper's command line.

Index

Constants

View Source
const (
	// ExitGateQueued: the merge waits on for its turn, or for the GitHub
	// budget's reset, in a run of its own, which wakes its owner with the
	// outcome.
	ExitGateQueued = 76
	// ExitGateRefused: a hold, a GitHub budget unknown or an unreadable
	// installation; nothing is queued.
	ExitGateRefused = 77
	// ExitGateUnread: the GitHub budget read failed in transit on every try
	// (sysexits' EX_IOERR); the merge was neither judged nor queued, the same
	// command runs again once GitHub answers.
	ExitGateUnread = 74
	// ExitGateDuplicate: the pull request's merge already runs, devctl's
	// "not applicable".
	ExitGateDuplicate = 3
	// GatePrefix starts every line the gate prints.
	GatePrefix = "beekeeper gate: "
	// DefaultGateWait is a foreground merge's wait for its turn before it
	// waits on in a run of its own; the hook gives a background one
	// BackgroundGateWait.
	DefaultGateWait    = 2 * time.Minute
	BackgroundGateWait = 30 * time.Minute
)

The gate's own exit codes, apart from devctl's 1-9 and the busy machine's 75.

View Source
const (
	ExitError    = 1
	ExitUsage    = 2
	ExitRefused  = 3
	ExitRelieved = 4
	ExitVault    = 78
	ExitOutdated = 125
)

Exit codes: 0 done, 1 error, 2 usage, 3 refused (a lease held or not granted, a hold set, the budget under its floor, a platform part this build does not have, a save by a release older than the one that wrote the state), 4 relieved (supervisor status in the session a relay relieved), 69 central unreachable (ExitCentral: a central verb whose instance did not answer), 78 vault (ExitVault: beekeeper secret could not read the shared vault: none configured, no token, op failing or silent), 125 outdated (a newer release exists: self-update --check, the status devctl's version check and muster's self-update --check use).

View Source
const ExitCentral = 69

ExitCentral is a central verb refused because the central instance is unreachable: there is no local copy to act on instead.

Variables

This section is empty.

Functions

func Code

func Code(err error) int

Code returns the exit code err asks for.

func Main added in v0.4.0

func Main() int

Main runs the command line and returns the process exit code. An error without a message (a wrapped command's exit code) prints nothing.

func New

func New() *cobra.Command

New returns the root command.

Types

type Harness added in v0.171.0

type Harness interface {
	// Name is the harness's short name ("" for Claude Code, "omp", "agy", "codex").
	Name() string
	// HostPrefix prefixes a started session's HostSession ("local_", "omp_", "agy_", "codex_").
	HostPrefix() string
	// EnvAgent is the environment variable a started session's shell carries, "" for Claude Code.
	EnvAgent() string
	// Start starts sp on this harness.
	Start(ctx context.Context, a *app, sp agentStart) error
	// DryRun prints how Start would start sp without starting anything.
	DryRun(ctx context.Context, a *app, sp agentStart, gaps []string) error
	// Wake delivers msg from by to the registered agent ag started under id.
	Wake(a *app, by state.Party, ag state.Agent, id, msg string) error
	// Send writes msg to the inbox of the agent name started under id.
	Send(a *app, name, id, msg string) error
	// Stop stops the unit and removes the inbox of the agent started under id.
	Stop(ctx context.Context, a *app, id string) string
	// Discover lists the running sessions of this harness.
	Discover(cfg *config.Config, t *proc.Table, now time.Time) []*claude.Session
	// Ended lists the sessions of this harness active since that no process runs.
	Ended(cfg *config.Config, running []*claude.Session, since time.Time) []*claude.Session
	// Tail reads the last n conversation turns of a transcript.
	Tail(path string, n int) ([]claude.Turn, error)
	// Follow reads the last n turns of a transcript, including tool calls.
	Follow(path string, n int) ([]claude.Turn, error)
	// ReadTranscript reads the work and activity of a session's transcript window.
	ReadTranscript(a *app, s *claude.Session, now time.Time) (claude.Work, claude.Activity)
	// SpendTranscripts reads whole-transcript API requests in [from, to) for spend.
	SpendTranscripts(cfg *config.Config, from, to time.Time) ([]claude.SpendTranscript, error)
}

Harness is a coding agent harness beekeeper starts, lists, follows, wakes, stops and prices.

type ServeModeState added in v0.171.0

type ServeModeState struct {
	// Mode is the mode the reader last reported.
	Mode string `json:"mode,omitempty"`
	// Pending is the mode a switch waits to run into.
	Pending string `json:"pending,omitempty"`
	// Node is the constraint the pending switch waits for; empty once the
	// holder released and the request stands only for the watch to retry.
	Node string `json:"node,omitempty"`
	// Reason says why the switch waits.
	Reason string `json:"reason,omitempty"`
	// Since is when the desk asked for the pending switch.
	Since time.Time `json:"since,omitzero"`
	// At is when the machine was last reconciled.
	At time.Time `json:"at,omitzero"`
}

ServeModeState is a self-hosted provider's serving-mode machine: the mode the reader reported, the mode a switch waits to run into, the node whose constraint the drain waits for, and why the switch waits.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL