Find the guide for a task
This page maps each task to the page that covers it, and says which to read first where two pages cover one task. Each guide opens with a prompt that starts its task, lists what your tool does and which platform tools it uses, and shows what a successful run looks like.
Each guide's Refusals section lists the refusals its task can receive. The Refusals page lists every refusal the platform returns.
Where a step fails or a response looks wrong, the Troubleshooting pages start from what you see: Setup, Deploys, Secrets, and Status and logs.
Tasks and their guides
| Task | Guide |
|---|---|
| Connect Claude Code, the Claude app, or Codex to the platform, sign in (an emailed code is one of the ways), and remove the connection | Connect your tool, in Getting started |
| Deploy an application: create it, declare its manifest, upload the artifact, and deploy to production, or turn on a development environment and promote from it | Deploy an application, in Getting started |
| Serve a web client beside the backend: its page, script, and stylesheet at the application's own address | Web client, in step 3 of Deploy an application |
| Start a new service from a template: a hello-world service, a database-backed service, or a service with a scheduled job | Starting a new service, in The turnzero-cloud command |
| Roll back production, read the version history, halt and resume an environment, or rename an application | Manage versions and environments |
| Run the application locally | Run locally in Deploy an application first, for the environment file and settings (environment variables). Then Test your application locally for the tests. Applications and environments compares the local run, a deployed development copy, and the tests. |
Write the development credentials into the environment file for a run on your machine, with the line that submit_manifest returns for a local run |
Running on your machine, in The turnzero-cloud command |
| Turn on a development environment, to test each version before you promote it to production | Turn on a development environment in Deploy an application |
| Promote a version from development to production | Promote to production in Deploy an application |
| Delete the development environment or an application, with its browser approval | Manage versions and environments, sections Delete the development environment and Delete the application |
| Store or replace a secret by name, and list the stored names | Store a secret, in Getting started |
| Write or change the manifest, submit it, and find each problem a refusal reports by its path in the manifest | Author the manifest |
| Run work on a schedule | Run scheduled work in Author the manifest first, for the declaration and the runs. Then the Schedule package page, for what the handler receives and must do. |
| Build a service that keeps its data in the database, from an empty folder to production: the project's layout, the package, the migration, the health path, and the manifest | Build a database-backed service first, in Getting started, for the whole service. Then Add a database, which states the rules for the database's actions. |
| Add a database, connect to it, keep the schema as migration files, and rotate the production credential | Add a database |
| Store files: declare storage areas, put and fetch files, write conditionally, and issue transfer grants for a browser | Store files |
| Call an external application programming interface (API) through the gateway with a key you stored, or call a host that needs no key | Call an external API with an API key |
| Call an AI model with no provider key of your own, under the plan's included AI allowance | AI Allowance, in Backend feature packages |
| Read logs and counters, check liveness and readiness, and erase records before their retention period ends | Read logs and counters |
| Let your application's users sign in with Google, GitHub, passkeys, an emailed code, or a work account, and choose open or invitation-only sign-up | Add sign-in to your app |
| Show an application's pages only to invited people while it is in beta, with a notice page for everyone else | Add sign-in to your app, sections Choose who may sign up and A private beta: a notice page of your own |
| Manage an application's end users: invite, list, suspend, reinstate, and delete them, change the realm's settings, and revoke its signing keys | Manage end users. Add sign-in to your app first, where sign-in is not set up yet. |
| Verify an end user's session from the backend | Manage end users, section Verify a session from the backend. Verifying an end user explains the token and the keys. |
| Build a mobile app's backend with no web client: the accounts service, declaring the app on the realm, signing in from a development build, and reading the versions in use before a release | Build a mobile app's backend, in Getting started |
| Sign in the users of a mobile or desktop app: declare the app on the realm, run the sign-in, exchange the code, refresh the session, and call the backend with the bearer token | Sign in from a native app |
| Reject old versions of a mobile app: send the version header, read the versions in use, raise the minimum version, and read which backend version handled a request | Keep installed clients compatible |
| Send push notifications to a mobile app's users: store the provider credentials, declare the service, register devices from the app, and send from the backend | Send push notifications |
| Mint, list, and revoke a token for a script, a pipeline, or a contractor's tool | Mint a token |
| Find a library entry, take it into the project, install its compiled code, and update to a newer version | Use the library |
| Change an application's plan, read its usage, and see what stops while it is over a quota | Plan and usage |
| Read your account: which account your tool acts for, its identities and products, whether it is active or suspended, and what the signed-in site shows | Your account |
| Link a second sign-in, register and remove passkeys, and read passkey notices | Identities and passkeys |
| Export your account, or delete it | Export or delete your account |
| File a report about the platform, read the report's status, and record a rating | Feedback and ratings |
| Run the application's tests fast, offline, and repeatably on the test doubles the backend packages ship | Test your application locally |
| Find out why an application loads on one network and not another, and what to ask the network's administrator | Diagnose a network that blocks the platform |
| See what each release changed for you, and which library package versions it moved | What changed, in Getting started |
Files or a database for a list of records
A list of records can be stored as a JSON file in a storage area or as rows in the database. Choose by how the application uses the list:
- A file suits a small list the application reads and writes whole, such as its settings or a scheduled handler's state. Each change rewrites the file with a conditional put, so one writer never silently overwrites another writer's change.
- The database suits a list that grows, that the application searches, sorts, or pages through, or that several requests change at once. Each record is a row, a change is one statement, and a query reads only the rows it needs.
- Files also suit content the application sends unchanged, such as images, uploads, and exports.
Store files covers the areas and the conditional put. Add a database covers the database, which the manifest declares and the migration files define.
How these actions usually happen
Every guide opens with a prompt you can give word for word. Usually, though, the action happens inside a larger prompt about your application, and your tool does the platform's part itself. For example, you say:
Let's let our web site visitors search our parts catalog.
Your tool plans the feature. It chooses the library's database package, declares the database service in the manifest, and resubmits the manifest. It takes the package into the project, writes the migrations and the search route, and deploys. Each of those steps has a guide listed on this page, and you wrote none of their prompts.
On a new application the deploy reaches production, so the feature reaches your users at once. Where you turned on a development environment, the deploy reaches development only, and the feature reaches the production hostname only after a promote. Read the guides to see what your tool did, to ask for one action on its own, and to check a step when something looks wrong.
The skills
A skill is a ready sequence of actions that the platform offers as a Model Context Protocol (MCP) prompt. A client that supports prompts may show each skill as a slash command. A client that lists no prompts reads a skill with read_context, id skill:<name>. The skills are store-key, delete-account, deploy, schedule, manifest-author, add-service, diagnose, release, move-existing-app, develop-then-promote, cost-review, add-library-entry, update-library, mobile-backend, and use-ai-allowance. A sixteenth, platform-admin, is offered only to platform staff. MCP resources and prompts lists each skill with the actions it uses.
A short skill is one page. A long skill has a first page with its steps and rules, and a page of the reasons behind the rules: deploy, mobile-backend, and schedule are long. The deploy skill also has a page for each case, such as an application with a database. On any skill, a few rules may say on their own line when they apply. Each first page lists the skill's other pages by id.