> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peepsai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Environments and projects

> Set up environments and their variables, rename an environment or make it the default, and create or rename projects.

Reading environments and projects needs only the **Read** permission. Every change needs **Edit** and the Contributor role or above, and your agent asks you first.

## Find your project

> Which Peeps project is this repository?

Your agent matches your checkout's git remote to a Peeps project. If none is linked, or more than one is, it lists the projects you can reach, each with its organization, and asks you which one. It never guesses.

## See your environments

> What environments does this project have?

You get each environment with its variables' names and types, which one is the default, and which ones are production. **Values are never shown**, for any type of variable.

### Check a value without revealing it

> Is STAGING's `API_URL` still `https://api.staging.example.com`?

Your agent can compare a value you give it with the stored one. Peeps answers **equal**, **different**, **unknown** or **absent**, and never shows the stored value. Production environments are never compared.

## Create an environment and set variables

> Create a QA environment with `BASE_URL` set to `https://qa.example.com`.

Your agent shows you the environment name and every variable — name, type and value — before it creates anything.

* **Every variable has a type.** `BASE_URL` is always a URL, and a URL must start with `http://` or `https://`.
* **Passwords and API keys use the password or API key type.** They are stored encrypted and can never be read back.
* **File variables are set in the Peeps web app.** Your agent can't set or delete them.
* **Names are stored in upper case.** An environment named `production` or `prod` is production, and your agent asks you to confirm it explicitly.

Before any test can run or be generated in an environment, it needs a `BASE_URL`.

You can set, change or delete one variable at a time:

> Change `ADMIN_EMAIL` in STAGING to [qa-admin@example.com](mailto:qa-admin@example.com).

Peeps refuses to delete the project's last definition of a variable that a test still uses, and says how many test cases use it.

<Note>
  After an environment changes, a run plan already approved against it is refused when used, and your agent asks you to approve a new one. Your organization's owners and admins are notified of each change a coding agent makes to an environment.
</Note>

## Rename an environment or change its default

> Rename QA to STAGING-EU and make it the default.

Your agent shows you the current and new name, description and default before it changes anything.

<Warning>
  Runs and script generations find an environment by its name. Peeps refuses to rename an environment while runs or generations are still using it, and a rename into or out of production needs your explicit confirmation. Schedules, PR checks and incoming webhooks follow the new name.
</Warning>

### Worked example: renaming an environment

> **You:** Rename our PREVIEW environment to STAGING and make it the default.

Your agent reads the project's environments and shows you:

> PREVIEW → STAGING
> Default: DEFAULT → STAGING
> Not production.
>
> Apply this?

> **You:** Yes.

Peeps renames the environment and makes it the default. Your organization's owners and admins are notified. If a run had still been queued against PREVIEW, Peeps would have refused the rename, and your agent would have told you to wait for it to finish.

## Create or rename a project

> Set up a Peeps project for this app.

* **Create a web project.** Your agent shows you the organization and the name first. Peeps picks the project's three-character identifier unless you choose one.
* **Rename a project or change its description.** Your agent shows you the current and new values first.

A new project starts with one empty environment named DEFAULT. Before anything can run, set its `BASE_URL`, which your agent can do once you approve the value.

A project's identifier and platform can't be changed after it is created. Mobile projects, and settings such as the timezone, auto-retry and auto-heal, are managed in the Peeps web app. No coding agent can delete a project.
