PARELdocs
ConsoleHome
/

Philosophy

PAREL is a serverless runtime for AI agents. You deploy an agent spec; PAREL handles execution, optional durable state, model dispatch, runtime plugins, channels, policy, observability, and execution control.

# Serverless Agent State

An agent should behave like a cloud object, not a process you have to keep alive. It can run as a short job, as a resumable session, or as a durable agent whose transcript, plugin state, channel routes, costs, and execution timeline stay addressable while its compute sleeps.

Not every agent needs durable state. But when continuity matters, the runtime should be able to preserve state across messages, tool calls, approvals, webhooks, scheduled work, disconnects, restarts, and future branches.

# Agent-friendly Development

Developing an agent should be friendly to both people and coding agents. agent.yaml is the primary deployment contract: small, textual, diffable, and schema-validatable, and clear enough that one agent can safely edit, validate, and deploy another.

PrincipleMeaning
One specModel providers, plugins, secret references, channels, policies, and runtime limits are all visible in code.
Actionable validation errorsDoctor commands and API errors should tell a person or coding agent exactly what to fix.
Scriptable surfaceCLI and API flows should run in CI, coding-agent loops, and local development without hidden console steps.
Visible runtimeTranscripts, traces, logs, costs, and execution timelines keep deployed behavior inspectable.

# Kernel Dispatch, Capability Plugins

The kernel should stay small. It schedules turns, dispatches hooks, calls the model provider layer, executes tools through registered capabilities, and records events. Sandbox, memory, tools, security, budget, steering, channels, and system behavior come from runtime plugins.

# Provider-neutral Model Layer

Model providers are a first-class runtime subsystem, not incidental SDK calls inside the agent loop. PAREL makes provider choice explicit, isolates credentials, normalizes runtime events, and keeps the operational contract portable.

# Execution Is a Control Surface

Agent execution should stay inspectable and controllable after deployment. Turns, steps, model calls, tool calls, plugin events, channel events, pauses, approvals, snapshots, branches, and replays should together form one durable execution timeline.