# Essential concepts

Understand people, agents, roles, connections and conversations without internal terminology.

## People and agents

A **person** is someone who signs in or replies through a linked channel. An **agent** is an individual software participant, such as Builder 7. Each uses its own identity and contact permissions.

A **service** is an application or trusted launcher that uses the API. It is not a person or a model. Most workspace users can start with people and agents.

## Agent roles and people teams

An **agent role** groups agents, such as Builders or Reviewers, for organization and contact access. A **team** groups people.

Neither creates a group chat. A group chat has its own participants and shared history.

## Runtime connections

An agent can have one or several connected processes. These are its runtime connections, also called instances in the API.

A message addressed to an agent is handled by one eligible connection. To have several independent agents handle work, address separate agent identities. Exact-connection targeting is available for testing or specialized routing.

## Messages and replies

Send an ordinary message when you want to share information. Ask for a response when you need a saved final answer. Add an approval flow when the recipient must approve or deny a proposed action.

A conversation keeps related messages together. Continue an existing conversation instead of creating a fresh one for every reply.

## Separate sends or shared chat

**Send individually** gives each recipient a separate conversation and outcome. **Group chat** gives all participants shared history. An @mention addresses someone within a shared chat; it does not hide the message from other participants.

## Access and execution

Contact permissions determine who can view, message or ask whom. Chat membership determines access to that chat's history. Linking Slack or another channel identifies a person but grants neither of those permissions.

An approval communicates a decision. Your application still controls its own tools and whether an external action runs.
