Skip to content

Apps & the App Store#

Couldn't be extended by anyone but us. The platform used to do only what Positronic built into it. Now partners and their customers ship apps and skills onto the workplace under their own name, from a store they control, without a release from us.

What an app is#

An app is a package with up to three parts:

  • A web component — the screen. It opens in a panel beside chat on the server and the desktop, named by an app.yaml manifest.
  • A SKILL.md — what the agent knows how to do, in the same skill format as everything else.
  • Optional orchestrations and backend functions — a batch job that runs for minutes, or a small function the screen calls that must run as the user. Most apps need neither.

Install puts the package into the data directory, in the layout the platform already reads. The app shows in the launcher; the skill reaches the agent on its next session. The package format is the directory layout.

The split matters. The agent does the work because the skill taught it how, and gets better every time the model does. The screen is where people read and act on what the agent produced.

A GitHub repo is the store#

Adding a store is pasting a repository URL and a read-only token into desktop settings. A Store panel then lists the repo's packages: name, description, what is installed against what is available, and one Install / Update button per app.

Install pulls the package folder into place. Update compares the installed commit against the repo's current one and offers the button again when they differ. Nothing is automatic; a person clicks. Data the app has written on that machine, its reports and requests, is never overwritten by an update.

Versioning, hosting, authentication and the audit trail are the repository's. Who published what, when, and what changed is git log; publishing is git push. Where a firewall blocks GitHub, the store can be a plain HTTPS index on the partner's own domain.

A partner typically runs one shared store every customer subscribes to and one private store per customer. Entitlement is repo membership: giving a customer an app is pushing to their repo; revoking a customer is revoking one token. A desktop can subscribe to several stores, and a package only updates from the store it came from.

This is v1 and desktop-first: the Store panel lives in the desktop, and the desktop's sidecar does the fetching and placement. Signed packages, automatic updates and an uninstall button are not there yet.

Worked example: Alms Guide#

JovAI, our first partner, built Alms Guide for one of their customers. JovAI's own developer wrote it; it is published from JovAI's store and installed on the customer's desktop with one click. Positronic never touched it.

The package is three parts. The web component is the review screen and the report library. The SKILL.md teaches the agent the customer's review method and the exact shape of the report. The orchestration runs that method over a spreadsheet of cases.

What the human sees: they open Alms Guide, ask in chat for a case or a spreadsheet of cases to be reviewed, and watch reports appear in the library as they are written. The screen is a viewer; nobody fills in a form.

What the agent does: reads the skill, applies the method to each case in a fresh context, writes a report file per case, and records which model ran and what it cost. The batch is a platform orchestration the agent starts from chat; the app watches the files and renders them. Nothing in that flow is Alms-specific on the platform side.

Apps and integrations#

Some apps connect the agent to a system outside the workplace. The platform provides a generic OAuth framework for that: an app declares a callback handler in its manifest, the platform signs the state, receives the provider's redirect and runs the handler as the user, so the token lands in that user's own storage. The app then wires the matching MCP server into the agent. Google Workspace is the first app on it: one Connect button, and the agent reads your mail and searches your Drive as you. Which integrations and MCP servers a team may connect is a policy decision; deny wins.

Why this matters for partners#

A partner owns the app, the store and the customer. The customer sees the partner's name on the package and the partner's engineer on the call. Positronic ships the platform the app runs on, and it gets more capable every time a partner pushes to a repo we never see.

Partners → Skills & Apps →