Skip to content

Search documentation

Search across every goat product

Core concepts

Understand agents, coding sessions, providers, channels, integrations, and memory.

On this page

One local runtime

goat combines its agent and coding experiences in one local runtime. The daemon coordinates work, the database stores operational state, and files under ~/.goat/ hold user data.

goat code starts the daemon on demand. goat daemon start runs it independently when an agent needs to stay connected to channels or execute scheduled work.

Agents and code

An agent is an autonomous actor with memory, integrations, and one or more chat channels. It can run scheduled work and delegate multi-step coding tasks.

Code is the terminal coding engine. It works in project directories, supports isolated worktrees, and keeps full conversations while streaming delegated progress back to the agent.

goat agent add
goat agent list
goat code
goat code worktree

Providers

Providers supply models to both agents and coding sessions. goat supports hosted providers, subscription coding plans, aggregators, local runtimes, and custom OpenAI-compatible endpoints.

Models from a custom provider are addressed as <provider>/<model>.

Channels and integrations

A channel is where people talk to an agent. Discord and Slack channels run under their own bot identities.

An integration lets an agent access another product on your behalf. Channel and integration credentials are separate. For example, a Slack channel uses bot credentials, while the Slack integration uses a user token to search and read workspace history.

Memory

Long-term memory starts as Markdown under ~/.goat/memory/. goat also maintains structured facts and rebuildable search indexes. Scheduled sleep jobs distill activity into notes, extract facts, and record changes over time.