Chataway Developers
Publishing

Changelog

Changes to the Chataway app platform, the manifest, the SDK and these docs.

#2026-10-01 — Build in Chataway, local apps, connectors

Apps are no longer only store apps. New pages: Build in Chataway, Local apps, Isolation & permissions, Connectors, Instructions for every agent and Sharing via GitHub.

Building

  • App projects: Apps → + New app scaffolds a local or cloud app, links it in developer mode and starts a builder chat. The App strip shows status, version and reloads, with Inspector, Use in… and Share.
  • Builder tools for the agent (every provider that has app tools): app_status, app_reload, app_call_tool, app_inspect, app_validate, app_screenshot_panel. Load errors reach the agent's next turn by themselves.
  • Publish from Chataway: Share → Publish to store… uses the account the Mac is signed in with — publisher pick or create, store checks with Ask agent to fix, permission changes, version bump, build, pack, upload and review status. The CLI path is unchanged.

Local apps

  • server.ts with the kernel API (ctx.tools, cards, jobs, storage, settings, secrets, prompts, agentContext, actions, project, host.media, files, accounts).
  • Isolation: apps from GitHub run in their own process — always; your own with Run isolated. Files, child processes and signals limited; network only to network.domains with the network grant, through an egress proxy; the macOS sandbox on top. Every ctx call returns a promise across the boundary — await them.
  • exec is labelled full access to this Mac everywhere: programs inherit Chataway's macOS privacy permissions.

Sharing

  • Install from GitHub: owner/repo[@ref], GitHub URLs (incl. monorepo folders), npm: packages and MCP URLs. Pinned to one commit, labelled Unverified, optional agent check, updates with a diff and fresh consent for wider access, revocation by commit range, Open source to fork into an app project.
  • Push to GitHub from the App strip (private by default) and install links: chataway.co/install?repo=…&ref=….

Connectors and dependencies

  • Connectors: hosted MCP servers added by URL with MCP sign-in (protected resource metadata, dynamic client registration, PKCE + resource); Popular connectors (Canva, Notion, Linear, Sentry, Stripe); approval before tools that aren't read-only.
  • accounts[].auth: "mcp" for cloud apps whose MCP server does its own OAuth.
  • Dependencies: requires.apps, requires.connectors, requires.optional. Apps wait for required apps; a newly required dependency is a widening (human review, consent again).

Instructions

  • ctx.prompts, ctx.agentContext and skills reach Codex (developer instructions), OpenCode (system), Cursor and Grok (a first-message preamble, re-sent on change) as well as Claude — one block per chat, capped at 6,000 characters.

Under the hood

  • One install pipeline for every source (store, GitHub/npm, connector, folder, developer link): the same validation, install sheet, consent, update and uninstall steps, so every app page reads the same way.
  • One manifest definition: the JSON Schema, the SDK's types, the validator copies, these docs' tables and the App builder skill's reference are all generated from it.

#2026-09-30 — Chataway apps v1

The first public version of the app platform.

Platform

  • Cloud apps (Level 1): a manifest, a static panel and a remote MCP endpoint. The store accepts only cloud apps.
  • Manifest v3 (pluginApiVersion: 3): publisher, categories, branding, remote, accounts, tool files / confirm / account, and the cloud grants files:receive, files:return, host:media, project:write.
  • Remote app runner: tools come from your MCP server over Streamable HTTP; only declared tools are registered; 120 s per call, 50 MB per response, 60 calls per minute per app.
  • File hand-off with per-project consent, prepare, accept and maxBytes; files returned from tools land in your app's storage.
  • Host services: resize, crop, convert, compress, trim, frame, extract_audio, concat, probe.
  • Connected accounts: OAuth 2.1 authorization code + PKCE through https://chataway.co/apps/oauth/callback.
  • Cards: confirm approval cards, elicitation as form cards, notice and gallery result cards via _meta["chataway/card"].
  • Panels: sandboxed webview with a CSP from remote.domains, host-drawn views and badges, live theme tokens.

Store

  • Publishers with DNS domain verification, developer tokens and device sign-in.
  • Automated checks on every upload; human review for first versions, permission changes, unverified publishers and flagged checks; automatic approval otherwise.
  • Ed25519-signed versions and revocation list.

Tools

  • @chataway/apps 0.1: manifest types and validator, panel bridge with a mock host, theme.css, server helpers, and the chataway CLI (init, dev, validate, pack, login, logout, publish, status).
  • create-chataway-app 0.1.
  • JSON Schema at /schemas/app-manifest-v3.json.