Administration

# Environment Management

Manage development environments and configurations

⏳ Loading...
Filters the environment tabs by name.
🌍

## Select an Environment

Choose an environment from the tabs above to view and manage its configuration

## -

### Environment Information

Avatar
Initials Up to two characters shown on the environment's avatar. Leave blank to auto-generate from the name.
Color
Background color of the environment's avatar. Reset returns it to the auto-generated color.
Description Short summary of what this environment is for. Shown on the environment card and tab.
Default Agent
Agent used for new tasks in this environment unless a task or template chooses a different one.
Default Model
Inherits from server settings
Default Effort Level
Inherits from server settings
Default Task Sharing
When on, new tasks default to shared with env peers; when off, they default to private.
Skills
No skills assigned.
MCP Servers
No MCP servers configured.
Docker Image Name of the Docker image task containers are built from for this environment.
Timezone IANA timezone applied inside task containers, e.g. America/New_York.
Screen Render URL URL used to render IBM i Profound UI screens (Genie). Auto-filled from an interactive IBM i connection when one is configured.

### README

No README content yet.

📦
-
Repos
✅
-
Test Commands
📝
-
Templates
-
Deploy Profiles

#### Select a Repository

Select a repository from the sidebar to view details, or add a new one.

### App Server

When on, CoderFlow runs an application server for this environment's tasks using the start command, ports, and launch URLs configured below.

Server Name Display name for this application server, shown in task views and launch controls.
Start Command(s)
Shell commands to start the application server. Use multiple lines for complex startup sequences.
Proxy URL Optional upstream the server proxies requests to instead of running a local process.
QA URL Use `{{origin}}`, `{{host}}`, or `{{hostname}}` for dynamic resolution

#### Port-Specific QA URLs

Override the default QA URL for specific ports (e.g., port 3001 → https://production.example.com)

#### Basic Authentication

Load HTTP Basic credentials from secrets (must have `available_for: ['tasks']`)

User Secret Name Name of a task-available secret holding the HTTP Basic username. Enter the secret's name, not the value.
Password Secret Name Name of a task-available secret holding the HTTP Basic password. Enter the secret's name, not the value.

#### Proxy Headers

#### Ports

#### Launch URLs

Mark one URL as Primary to open it when users click the Testing button in tasks.

#### Feedback Widget

Auto-refresh on task completion Automatically refresh the page when a task completes so the user sees the latest application UI.
Refresh Delay (ms) Milliseconds to wait before refreshing after task completion.

### Volume Mounts

Mount host directories into containers

### Standard Instructions

Appended to instructions at task startup
Output Requirements Appends instructions telling the agent to produce a task summary and commit message. View
Screenshot Guidelines Appends instructions telling the agent to save and reference screenshots in task output. View
IBM i Output Requirements Appends IBM i instructions to add the build library name and verification results to the task summary. View
IBM i Exploratory Verification Appends IBM i instructions for ad-hoc testing of interactive display file screens. View
IBM i Database and SQL Appends IBM i guidelines for querying database tables with SQL. View

### Custom Instructions

### Schedule

Enable Scheduled Rebuilds

Automatically rebuild this environment's Docker image on a schedule.

Rebuild Interval (hours) Hours between automatic rebuilds (1 to 168).

### Scripts

Advanced

Optional scripts for customizing the build and task lifecycle. Leave blank to use defaults.

Docker build instructions to run BEFORE repositories are cloned. Docker build instructions to run AFTER repositories are cloned. Shell script that runs when a task container starts. Shell script that runs when the task container is stopped (e.g. task deletion, manual stop, or inactivity cleanup).

### Build History

Build Output

Loading build history...

### Secrets

Show:
Filters the list to secrets available for the selected phase (build, tasks, or deploy).

No secrets configured.

Secrets can be referenced in builds, tasks, and deployment profiles and exposed as environment variables or mounted files.

### External Connections

No external connections configured.

Add connections to external servers (SQL Server, IBM i, SSH) to auto-configure containers with database access, SSH keys, and build tooling.

#### Select a Test

Select a test from the sidebar to view details, or add a new one.

#### Select a Template

Select a template from the sidebar to edit, or create a new one.

#### Select a Profile

#### Deploying:

Running 0:00

Select a deployment profile to view details, or add a new one.

Deployment profiles define scripts that can be run to deploy your application to different environments (e.g., QA, Production).

Description Short summary of what this deployment profile does, shown in the profile list.

##### Deployment Script

Reference secrets from the Secrets tab to expose as environment variables or mounted files.

User-provided values prompted when running this deployment.

### Agent Memory

Persistent context that carries across tasks. Agents accumulate memories during task execution.

### Memory Index (MEMORY.md)

### Memory Files

0 files

No memories yet. Agents will create memories as they work on tasks.

Name | Description | Attribution | Actions
--- | --- | --- | ---

Agent memory is disabled for this environment. Enable it above to let agents accumulate context across tasks.

### Automations

0 items
Loading automations

No automations configured for this environment.

Create one to run tasks on a recurring schedule or webhook trigger.

Name | Trigger | Enabled | Actions
--- | --- | --- | ---

####

Date | Trigger | Status | Result
--- | --- | --- | ---

### Webhooks

0 items
Loading webhooks
Ingress Listener Read-only status of the dedicated webhook ingress listener (host and port), shown only when one is configured via environment variables.

No webhooks configured for this environment.

Create a webhook to trigger automations from external services.

Name | URL | Linked Automations | Last Received | Enabled | Actions
--- | --- | --- | --- | --- | ---

####

Date | Status | Automations Triggered | Payload
--- | --- | --- | ---

## Create Automation

Create or edit an automation that runs a task on a schedule or webhook trigger.

#### General

Name Name for this automation, shown in the automations list.
Description Optional note describing what this automation does.

#### Schedule

Leave frequency as "None" if this automation is triggered only by a webhook.

Frequency
How often the automation runs on a schedule. Choose None to trigger it only by webhook.
Time
Time of day the automation runs, in the server's timezone.
Day of Week
Day of the week the automation runs.
Time
Time of day the automation runs, in the server's timezone.
Days of Month

Choose one or more days. Days 29-31 are excluded so monthly schedules stay valid in every month.

Time
Time of day the automation runs, in the server's timezone.
Every
How frequently the automation repeats throughout the day.
Between (optional)
to
Optional daily window to limit recurring runs to a start and end hour.
Days (optional)
Optional weekdays when this recurring automation is allowed to run.
Cron Expression Standard five-field cron expression defining when the automation runs.

Only run if branch changed When on, the automation polls the configured repository and only runs if the branch has new commits since the last run.
Provider
Git provider connection used to check the branch for changes.
Repository
Repository to poll for new commits.
Branch
Minimum interval Minimum seconds between branch checks (at least 60).

#### Agent

Agent
Agent that runs the automation's task.
Model
Model the automation uses. Leave on Inherit to fall back to the environment or server default.
Effort Level
Effort level the automation uses. Leave on Inherit to fall back to the environment or server default.
Reasoning Level
Reasoning level the automation uses. Leave on Inherit to fall back to the environment or server default.

#### Run Configuration

Task Name Template Name given to tasks this automation creates. Supports placeholders such as {{date}}.
Run Target
Custom instructions Task template Deployment profile
What the automation runs: free-form instructions, a saved task template, or a deployment profile.
Task Template
Saved task template this automation runs.
Deployment Profile
Deployment profile this automation runs.
Instructions Instructions the agent runs each time this automation fires.
Enabled When off, the automation is saved but will not run on its schedule or webhook.

## Create Webhook

Create or edit a webhook that triggers automations when an external service sends an HTTP POST.

#### General

Name Name for this webhook, shown in the webhooks list.
Description Optional note describing what this webhook is for.

#### Webhook URL

Send HTTP POST requests to this URL to trigger linked automations.

``

#### Signature Verification

Reject deliveries that are not signed by the sender. Required for public webhook endpoints that carry authentic data.

Scheme
How incoming deliveries are verified. Choose None to rely on the URL token alone.
Signing secret Secret shared with the sender, used to verify each delivery's signature. Stored securely and never displayed.

A signing secret is configured. Leave this field blank to keep it unchanged, or paste a new value to replace it.

#### Linked Automations

When this webhook receives a POST, the selected automations will be triggered. Use `{{webhook.payload}}`, `{{webhook.payloadPath}}`, or `{{webhook.fieldName}}` in automation task instructions to reference incoming data. For large payloads, `{{webhook.payloadPath}}` resolves to `/task-output/webhook-payload.json` so the task can read it from disk instead of bloating the prompt.

No automations available for this environment.

## Regenerate Webhook URL

Confirms regenerating this webhook's URL, which invalidates the current one.

The current URL will stop working immediately. Any external services using it will need to be updated.

## Commit Changes

Select changed files, write a message, and commit them to the environment's repository.

Committing as: <>
Select files to commit:
Select all

Toggles every changed file in the list on or off for this commit.
Commit message
Message describing the changes being committed.
Pull latest changes before committing (recommended) Pulls remote changes first to reduce conflicts before committing. Push to remote immediately Pushes the commit to the remote right after it is created.

## Uncommitted Changes

Lists files with uncommitted changes in the environment's repository.

The following files have uncommitted changes. Click a file to view its diff.

## ⚠️ Discard Changes

Permanently discards selected uncommitted changes in the environment's repository.

This will permanently discard the selected uncommitted changes.

This action cannot be undone. Deselect files you want to keep.

Select files to discard:
Select all

Toggles every listed file on or off for discarding.

## 📦 Build Environment

Confirms rebuilding this environment's Docker image.

Build environment ?

This will rebuild the Docker image with `--no-cache`. The build process typically takes a few minutes.

## Base Image Required

Explains that the environment cannot be built until its base image exists.

This environment cannot be built yet because no base image is available.

Build the base image first using Actions -> Build Images.

## Generated Dockerfile

This Dockerfile is automatically generated based on your environment configuration. It includes repository cloning, authentication handling, and your custom build commands.

## Build Base Image

This will rebuild the foundational image that all environment images are based on. The build typically takes several minutes.

Build without cache (--no-cache) Rebuilds every layer from scratch instead of reusing Docker's cache. Slower but avoids stale layers.
Build Output

#### Build History

Loading...

## Build Images

Rebuild the base image and/or environment images. Rebuilding the base image refreshes the foundation all environments are built on, so the environments below stay up to date.

Rebuild base image Also rebuild the shared base image that all environment images are built on. Build base without cache (--no-cache) Rebuilds the base image from scratch without reusing Docker's layer cache.

If the base image fails, environment builds are skipped.

#### Environment images

Loading environments…

Build Output

## Create New Environment

Create a new development environment, optionally seeded from a Git repository.

Environment Name * Unique identifier for the environment. Lowercase letters, numbers, and hyphens only.
Description Optional summary of what this environment is for.
Repository
None Enter URL manually Select from provider
Whether to start with no repository, a manually entered Git URL, or one picked from a connected provider.
Repository URL Will auto-configure Dockerfile, setup.sh, and agent instructions
Git Provider
Connected Git provider to browse repositories from.
Repository *
Credential Mode
For tasks and deployments. App: app/bot identity. User: personal Git account (requires connection).
Docker Image * Name of the Docker image task containers will be built from.
Default Agent *

## ⚠️ Delete Environment

Permanently deletes this environment and all of its configuration.

This will delete the entire environment directory.

All configuration files and uncommitted changes will be removed.

Environment to delete:

## Clone Environment

Creates a copy of this environment, including saved config, Dockerfile, AGENTS.md, task templates, secrets, and memory.

Source Environment Environment being copied. Read-only.
New Name * Name for the new copy. Lowercase letters, numbers, and hyphens only.

## Assign Skills

Search and select skills to make them available to agents in this environment.

Search skills
Filters the list of available skills by name or description.
Loading skills...

#### Selected Skills

0

No skills selected yet.

Manage Skills

## Rename Environment

Renames this environment.

Current Name The environment's current name. Read-only.
New Name * New name for the environment. Lowercase letters, numbers, and hyphens only.

## Add Repository

Add a Git repository to this environment, by URL or from a connected provider.

Repository
Enter URL manually Select from provider
Whether to add the repository by typing its Git URL or by picking one from a connected provider.
Git Provider
Connected Git provider to browse repositories from.
Repository
Credential Mode
For tasks and deployments. App: app/bot identity. User: personal Git account (requires connection).
Repository URL Clone URL of the Git repository to add to this environment.
Name Display name for the repository. Leave blank to derive it from the URL.
Branch
Allow Branch Selection When on, users can choose which branch to check out when starting a task.
Read-only in Tasks Agents are instructed not to edit this repository, and approvals are blocked if it changes.
Path Optional subdirectory within the environment to clone the repository into.
Description Optional note describing this repository.

## Delete Repository

Removes this repository's configuration from the environment.

Are you sure you want to remove this repository from the environment?

This will only remove the repository configuration, not delete any files.

## Add Test Command

Add a test command that agents can run to verify changes in this environment.

Test Name Name for this test command, shown in the tests list.
Description Optional note describing what this test checks.
Command(s) Shell commands to run for this test, one per line.

## Delete Test Command

Removes this test command from the environment.

Are you sure you want to remove this test command?

## Add Task Template

Create a reusable task template for this environment.

Title Title for the task template, shown when starting a task.
Description Optional summary of what this template is for.
Filename File the template is stored as. Leave blank to generate it from the title.

## Delete Template

Removes this task template from the environment.

Are you sure you want to remove this template?

## Add Deployment Profile

Create a deployment profile defining a script to deploy this environment's application.

Profile Name

Name for the deployment profile. Alphanumeric, hyphens, and underscores only.

Description Short summary of what this deployment profile does.

## Run Deployment:

Provide any parameters and run this deployment profile.

Dry run (validate only, don't execute) Validates the deployment and parameters without running the deploy script.

## Delete Deployment Profile

Deletes this deployment profile and its deployment script.

Are you sure you want to delete this deployment profile?

This will delete both the profile configuration and its deployment script.

## Add Secret

Add or edit a secret that can be exposed to builds, tasks, and deployments.

Secret Name * Identifier used to reference this secret in builds, tasks, and deployment profiles.
Description Optional note describing what this secret holds.
Source Type *
File on host Direct value
Whether the secret's contents come from a file on the host or a value entered here.
Available For *
Build Tasks Deploy
Which phases may use this secret: image builds, task containers, and/or deployments.
Expose As *
Environment Variable File (bind mount)
How the secret is provided to the container: as an environment variable or as a mounted file.
Variable Name * The environment variable name
Host File Path * Absolute path, or relative to the environment directory
Value *
Loads the secret value from a file on your computer into the value box.
Secret contents (for example an SSH private key or token). Stored securely and never displayed back.
Use as Git PAT (Personal Access Token) Use this secret as a PAT for authenticating with a Git host
Git Host *
Git host this token authenticates with when used as a Git PAT.
Custom Git Hostname * The hostname of your Git server (without https://)

## Delete Secret

Deletes this secret from the environment.

Are you sure you want to delete this secret?

Deployment profiles referencing this secret will need to be updated.

## Add MCP Server

Add or edit a Model Context Protocol server that tasks in this environment can use.

Server Name * Letters, numbers, hyphens, and underscores only. Must be unique within the environment.
Description Optional note describing what this MCP server provides.
URL * HTTP or HTTPS endpoint that speaks the Model Context Protocol.
Headers
No headers configured.
Enabled When off, this MCP server is saved but not made available to tasks.

## Delete MCP Server

Deletes this MCP server from the environment.

Are you sure you want to delete this MCP server?

Tasks launched after this change will no longer have access to this server.

## Add Connection

Add or edit a connection to an external server (SQL Server, IBM i, or SSH) for tasks and deployments.

Connection Name *
Identifier for this connection, used to reference it within the environment.
Description
Optional note describing this external connection.
Available For *
Tasks Deploy
Which phases can use this connection: task containers and/or deployments.
Type *
SQL Server IBM i SSH
Kind of external system this connects to. Cannot be changed after the connection is created.
Host *
Enter the fully qualified host name, e.g. myserver.mycompany.com
Database *
Name of the database to connect to on the SQL Server host.
User *
User name or profile used to authenticate to the host.
Password *
Password for the connection user. Stored securely and never displayed back.
How to set up IBM i user profile
IBM i Features *
SQL Build objects SSH Sync changes to source members Profound UI htdocs files Agentic Display Files Agent interactive sessions
Capabilities this IBM i connection grants tasks: database SQL, object builds, SSH, source-member sync, Profound UI htdocs deploys, agentic display files, and interactive sessions.

#### SQL Settings

Verify DB server certificate Disabling certificate verification exposes the connection to man-in-the-middle attacks. Only uncheck this if you understand the security implications.

#### Build Settings

Build Repo *
Repository where codermake runs
Build Directory Subdirectory within the repo (leave blank for repo root)
Build Library Name Prefix * Used as task build library name prefix

#### SSH Settings

SSH Private Key *
Loads an SSH private key from a file on your computer.
Private key used for SSH access. Paste it, import from a file, or generate a keypair. Stored securely and never displayed back.
SSH Public Key
Loads an SSH public key from a file on your computer.
Public key matching the private key, installed on the remote host to authorize access.

#### Sync / Deploy Settings

Sync / deploy credentials
Prompt — you will be prompted for a user profile and password each time you sync or deploy.
Connection — sync and deploy run using the SSH user and key configured on this connection.

#### Profound UI htdocs Settings

PUI htdocs Path *
Enter the base IBM i htdocs directory. Files under htdocs/profoundui are deployed beneath this path.

#### Agent Interactive Settings

PUI Base URL *
Enter the fully qualified URL, e.g. https://myibmi.mycompany.com:8080
PUI Render Path
Path appended to the PUI base URL to render display file screens (e.g. /profoundui/genie).
PUI Launch Path
Path appended to the PUI base URL to launch an authenticated interactive session (e.g. /profoundui/auth/genie).
Testing...

## ⚠️ IBM i Special Authorities Warning

Warns about elevated IBM i special authorities on this connection's user profile before saving.

⚠️

I acknowledge this warning and want to save the connection anyway. Confirms you accept the flagged IBM i special-authority risk and want to save the connection regardless.

## Delete Connection

Deletes this external connection from the environment.

Are you sure you want to delete this connection?

Containers will no longer have access to this external server.

## Install Public Key on Remote

Installs this connection's SSH public key on the remote host. Enter the password for the remote host. It will only be used to install the public key and will not be saved.

Password *
Remote host password, used only to install the public key. It is not saved.

## IBM i User Profile Setup

Shows the CL commands needed to set up an IBM i user profile for this connection.

Run the following CL commands on the IBM i system as a sys admin:

Notes:

- Configure the user's JOBD or initial program to set the appropriate library list
- For interactive sessions, make sure that PUISETENV is called as or from the user's initial program
- SSH public key installation is handled separately via the connection UI

## Add Secret to Profile

Attach an environment secret to this deployment profile.

Secret *
Select a secret defined in the Secrets tab (only secrets available for Deploy are shown)

## Configure Parameter

Define a parameter users are prompted for when running this deployment, test, or template.

Parameter Name * Will be available as environment variable when running
Display Label User-friendly label shown in the run dialog
Description Optional help text shown beneath this parameter in the run dialog.
Input Type *
How the user supplies this value: free text, a select list, a checkbox, options from a command, or a file browser.
Options *
Define the available choices. Use description for additional context.
Command * Shell command to run in container to generate choices
Output Parser
How the command's output is parsed into selectable choices.
Repositories Optional: specific repos to update before running command
Directory Path * Directory path relative to /workspace
Include
Whether the browser lists files, directories, or both.
Glob Pattern Optional file pattern filter
Repositories Optional: specific repos to update before listing
Allow multiple selections When on, the user can pick more than one value for this parameter.
Allow custom values When unchecked, users must select from the defined options
Default Value
Value pre-filled in the run dialog when the user has not chosen one.
Required field When on, the user must provide a value before the deployment can run.

## Git Connection Required

Prompts you to connect your account to the required Git provider before continuing. Connect your account to the following Git provider to continue:

## Edit Memory

Create or edit a memory entry that persists context across this environment's tasks.

Name Short descriptive name for this memory entry.
Description One-line summary of what this memory contains.
Filename File the memory is saved as. Leave blank to generate it from the name.
Content