> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Framework primitives

> How Veryfront Code apps, agents, tools, skills, prompts, resources, tasks, workflows, runs, integrations, MCP, sandbox, and extensions fit together.

Veryfront Code uses primitives to separate responsibility. A primitive is an
ownership boundary: it names what kind of work is happening, what lifecycle owns
that work, and where the runtime boundary sits.

The goal is not to use every primitive. The goal is to pick the smallest one
that explains the work clearly.

## Primitives

| Primitive                                         | Owns                                            |
| ------------------------------------------------- | ----------------------------------------------- |
| [App](/code/concepts/app)                         | User-facing routes, APIs, data, and rendering.  |
| [Agent](/code/concepts/agent)                     | Model reasoning, messages, tools, and output.   |
| [Tool](/code/concepts/tool)                       | One callable capability.                        |
| [Skill](/code/concepts/skill)                     | Reusable agent instructions and tool policy.    |
| [Prompt](/code/concepts/prompt)                   | Reusable instruction templates.                 |
| [Resource](/code/concepts/resource)               | Readable project data for MCP.                  |
| [Work](/code/concepts/work)                       | Business process outcomes and criteria.         |
| [Task](/code/concepts/task)                       | A background work target.                       |
| [Workflow](/code/concepts/workflow)               | Multi-step coordination.                        |
| [Run](/code/concepts/run)                         | Durable execution of work.                      |
| [Schedule](/code/concepts/schedule)               | Scheduled run creation.                         |
| [Integration](/code/concepts/integration)         | External service capabilities.                  |
| [MCP server](/code/concepts/mcp-server)           | Assistant-facing tools, prompts, and resources. |
| [Sandbox](/code/concepts/sandbox)                 | Isolated command and file execution.            |
| [Extensions](/code/concepts/framework-extensions) | Replaceable runtime infrastructure.             |

## How primitives combine

Features can combine primitives, but one primitive should own the triggering
event and primary lifecycle.

For example, an app route can receive a webhook. A workflow can coordinate the
response. A task can run slow background work. An agent can reason about a
user-facing decision. A skill can give the agent task-specific instructions.

This keeps the project understandable. The app owns entry points. Agents own
model decisions. Tools own deterministic actions. Work owns business process
state. Workflows own automation logic. Runs own durable execution. Extensions
own replaceable runtime infrastructure.

For task-focused selection, see [Choose a primitive](/code/guides/choose-a-primitive).
For exact agent runtime APIs, see
[veryfront/agent](/code/api-reference/veryfront/agent).
