# Install firm os

> Set up firm os in your firm's own Cloudflare account, with an invite. One Allow, on a Cloudflare page, then about two minutes.

The form at https://firmos.railblocks.com/install asks for the firm's name, the email domains whose people may sign in, and the people to let in (each an email, a role, and whether they administer firm os). It makes a plan and an Install link; a person signed in to Cloudflare opens the link, picks the account and presses Allow.

## What it needs

- A Cloudflare account on the Workers Paid plan ($5 a month, paid to Cloudflare).
- A person who can press Allow in that account.
- The emails of the people who should get in: 50 at most, at least one of them an admin.

## For agents

- [How does an agent work with firm os for a firm?](https://firmos.railblocks.com/docs/for-agents.md): Where an agent reads about firm os, how it prepares a firm's install and follows it, and what only a person at the firm does.
- To install for a firm: post the plan to https://firmos.railblocks.com/plans, give the Install link to a person, follow https://firmos.railblocks.com/installs/{id}/status.
- An agent never presses Allow and never types Cloudflare sign-in details or email codes.

Every address an agent reads:

- [/index.md](https://firmos.railblocks.com/index.md): the front page's words as Markdown. https://firmos.railblocks.com/ asked for with `Accept: text/markdown` answers the same.
- [/llms.txt](https://firmos.railblocks.com/llms.txt): what firm os is, its key facts, and every address here, in plain text.
- [/llms-full.txt](https://firmos.railblocks.com/llms-full.txt): every docs page in one file.
- [/docs.md](https://firmos.railblocks.com/docs.md): the docs, each page by its Markdown address.
- [/docs/{page}.md](https://firmos.railblocks.com/docs/{page}.md): each docs page as Markdown. A page asked for with `Accept: text/markdown` answers the same.
- [/install.md](https://firmos.railblocks.com/install.md): what installing asks for and does.
- [/openapi.json](https://firmos.railblocks.com/openapi.json): the install API, as OpenAPI 3.1: post a plan to https://firmos.railblocks.com/plans, follow https://firmos.railblocks.com/installs/{id}/status.
- [/.well-known/api-catalog](https://firmos.railblocks.com/.well-known/api-catalog): where the install API's description and the agents' guide are (RFC 9727).
- [/.well-known/agent-skills/index.json](https://firmos.railblocks.com/.well-known/agent-skills/index.json): the skills index (Agent Skills Discovery): one skill, firm-os-install, with the SHA-256 of its SKILL.md.
- [/.well-known/agent-skills/firm-os-install/SKILL.md](https://firmos.railblocks.com/.well-known/agent-skills/firm-os-install/SKILL.md): the agents' guide as a skill, to keep.
- [/sitemap.xml](https://firmos.railblocks.com/sitemap.xml): every page, for search engines.
- [/robots.txt](https://firmos.railblocks.com/robots.txt): what crawlers may read, and the Content Signals.

More: [Install, in the docs](https://firmos.railblocks.com/docs/install.md) ⬩ [Security](https://firmos.railblocks.com/docs/security.md) ⬩ [Cost](https://firmos.railblocks.com/docs/cost.md)
