Projects and environments
Create a project for each website, follow its first reports and keep Production separate from Staging or development work.
A SiteOS Project represents one website or product. Its environments let you work on a development or staging website without changing the production configuration.
Create a project
Choose New project in the application. Guided setup has three steps: Website, Data and Repository. Enter the public website URL first; SiteOS suggests a name from the domain, which you can change.
Google Analytics, Google Tag Manager, Google Search Console and GitHub are optional; use Skip for now to continue without them. Provider consent opens in a separate window. A chosen resource is added to the Organization's shared resources without removing other projects' access, and connects only the service that uses it. Create project saves the project and its selections together, then opens the Production Overview.
Guided setup also connects SEO/GEO and prepares first reports: a technical site audit, a study of the homepage and key pages, competitor research and an AI Visibility sample on ChatGPT, Perplexity and Gemini. The research and AI sample use the Organization's SEO credits. Missing credits or an unavailable provider leave a report partial or unavailable without blocking the others. Preparation continues if you leave the page.
From the CLI or an agent, siteos project create --name <name> --slug <slug> --url <url> --organization <id> --json creates the project without starting reports or connecting services. Ask the agent when you want the same first reports; it uses the SEO workflow and explains their credit use. Creating a project never installs scripts or publishes configuration.
Read the Overview
Overview shows tiles for services connected in the selected environment that you can read, such as traffic, the site audit, monitoring, AI visibility, Google Search and competitors. Forms, Cookie, Trace and Search add compact tiles. The header summarizes what needs attention. During first-run preparation, tiles fill in as reports arrive.
Each tile opens its service. Missing observations are unknown, not zero. Overview does not connect services or start checks; connect a service from the project sidebar.
Sitemap in the project sidebar combines the SEO/GEO page inventory with page views from Analytics or Google Analytics in a Map, Structure or List view. You can also open it with Open site map in Site Audit. Its pages come from saved technical crawls; traffic only adds data to them. See Site audits.
Structure groups the pages into a URL tree with page counts. In SEO health, Highlight colors pages by Page health, Google index or Sitemap evidence, which shows whether a page is listed in your sitemap files; expected Google exclusions stay neutral. On the map, Expand all opens every branch and fits the whole tree, then becomes Collapse all, and open sections are framed with their URL segment and page count. Large websites show every page: zoomed far out, pages become small status shapes, and selecting one zooms to it.
Choose the environment first
Manage names and website URLs in Project settings. The environment selector determines which service configuration and data you are viewing. A project starts with Production; add another environment for a staging or development website.
Creating an environment does not clone production content, copy its API keys or publish a website integration. Configure the services you need for that environment and use its own installation details.
Bind repositories per environment
Connect selected repositories once through Services → GitHub for the organization. A Project environment then binds the repository it uses, so Production and Staging can point to different repositories. This shared provider connection is independent from the local CLI Project selection and does not enable a service automatically.
The current Pulse PR workflow configures that binding together with the target branch, preview environment and Check selection. With the CLI, siteos project repository show --json and siteos project repository save --input binding.json --json read and save the binding for the selected environment. Scheduled monitoring and PR checks have separate settings. A repository connection alone does not build or deploy a preview website.
Repository & deployments can suggest deployment settings from GitHub. Find deployments in GitHub lists the environments and URLs your hosting provider reported to GitHub; choose one for PR previews or for website updates, then review the draft before saving. Suggestions are never saved automatically. The optional Website deployment environment limits which GitHub environment can update this website's Pulse tests, and its deployed URL must match the website. From the CLI, start discovery with the installation and repository IDs from the shared GitHub connection, then repeat the command without --refresh until the list is ready:
Discovery needs permission to manage the Project and only reads GitHub. An empty list means no ready deployment was reported; see deployment evidence for builders that do not create GitHub Deployments.
Work with a development search index
- Add or select your development environment in Project settings and set its website URL.
- Open Search in that environment and complete setup if needed.
- Import development content and try queries in Playground.
- Connect the development website using that environment's Search delivery settings.
- Switch back to Production only when you intend to work on its index.
Production content, crawler settings and credentials stay separate. There is no automatic promotion or synchronization between the indexes.
Use the same selection from the CLI
To select an existing project, use its organization ID, project ID and environment slug:
This saves the selection for your repository without changing the global organization default or creating service resources. Two repositories can use different organizations through the same CLI session. Check the selected context and available environments:
Select an existing environment by its returned slug with siteos project environment use <slug>. The selection belongs to your local repository and is shared by service commands. Read project status again after switching repositories or projects.
Create an environment with siteos project environment create --name <name> --slug <slug> --url <url> --json, and change its address with siteos project environment update <slug> --url <url> --json. Set up a service in the selected environment with siteos project connect <service> --json.
Changing a website URL does not update code already installed on that website. Review the service's connection state; Cookie and Trace may require publication of the updated configuration.
Logo and deletion
Owners and admins can upload a project logo in Project settings (PNG, JPEG or WebP up to 2 MiB). Without one, SiteOS uses the Production website's icon.
Deleting a project is permanent. An owner or admin reviews its environments and services, then types the project name to confirm. SiteOS retires each service's public configuration and data in the background and shows progress; a failed step can be retried. Organization integrations and usage history remain.
Continue with Installation or Search connection.