Skip to main content
ContextLayer is a platform for building software around the way you work. You write TypeScript, React Router, and SQL in your editor, with your coding agent. Your software lives in a slate: an app, agents, MCP tools, and declarations of the resources they need, kept together in one Git repository. Develop the slate locally, then push to deploy it. The repository holds code and resource declarations; connected-account credentials, secret values, and database contents live outside Git.

What is in a slate

A slate brings together several ways to use the same software:
  • The app is the browser interface people use to view information and take actions. It is built with React Router.
  • Agents are named sets of standing instructions that run as hosted jobs, on demand or on a schedule.
  • MCPs expose tools and views to clients that support the Model Context Protocol.
  • Resources are the connections, databases, and secrets the app and agents use. Each app or agent declares its requirements in a slate.json file.
For example, a customer-support slate might have a browser app for reviewing requests, an agent that prepares a daily summary, and an MCP tool that formats request details supplied by another assistant.

Connections, accounts, and assignments

These three terms describe different parts of connecting a slate to an external service:
  • A connection declares what the slate needs, such as a Gmail connection named inbox.
  • An account is a connected account, such as your Gmail account. It belongs to a person or organization independently of any slate.
  • An assignment selects the account that satisfies a connection.
Declaring inbox says that the slate needs Gmail access. Assigning your connected Gmail account to inbox tells ContextLayer which account to use. See Connections and assignments for how this works locally and after deployment.

Owners and viewers

An Owner is the personal or organization identity that owns a slate or resource. A viewer is a person using the slate. Ownership and viewing access answer different questions: who manages the slate, and who can use it. A declared resource’s mode selects whose resource the hosted slate uses: One slate can combine both modes. Everyone can work with the same request database while each person uses their own inbox. See Owners and viewers for access rules and resource ownership.

Where to go

Quickstart

Create a slate, run it locally, push it, open the deployed result.

Core concepts

Slates, Owners and viewers, accounts, and resources.

Build an agent

Write standing instructions, declare resources, and run a hosted job.

API reference

Inspect platform requests and responses, starting with slate visibility.

Working with a coding agent

The same documentation is available to you and your coding agent:
  • Read a page as Markdown. Add .md to its URL, as in the quickstart’s Markdown view.
  • Find relevant pages. The documentation index lists pages and descriptions.
  • Install the ContextLayer skill. Give your agent the product’s capabilities and workflows with the skills CLI: