Skip to content

Run configs reference

The .cate/run-configs.json file defines named launch configurations for your project. Each configuration is a group of commands that launch together in parallel sub-tabs. See Set up run configs for a guide to creating these via the Cate interface.

{
"configurations": [
{
"id": "unique-uuid",
"name": "Configuration Name",
"commands": [
{
"id": "unique-uuid",
"name": "Tab Name",
"command": "shell command"
}
]
}
]
}
FieldTypeDescription
configurationsarrayList of run configurations
FieldTypeDescription
idstringUnique UUID. Use UUIDv7 if possible; UUIDv4 is acceptable. Must be lowercase.
namestringDisplay name shown in the launcher dropdown
commandsarrayList of commands to run in parallel
FieldTypeDescription
idstringUnique UUID. Same format requirements as configuration id.
namestringDisplay name shown as the sub-tab label
commandstringShell command to execute. The shell handles pipes, environment variables, etc.
  • All id fields must be unique across the entire file.
  • Every configuration must have at least one command.
  • When editing an existing file, preserve existing IDs for configurations and commands you aren’t changing. This ensures stable identity across updates.
{
"configurations": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000001",
"name": "Dev Server",
"commands": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000002",
"name": "Server",
"command": "npm run dev"
}
]
}
]
}

Launches one sub-tab running npm run dev.

{
"configurations": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000010",
"name": "Full Stack Dev",
"commands": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000011",
"name": "Database",
"command": "docker compose up"
},
{
"id": "019e1a2b-3c4d-7000-8000-000000000012",
"name": "API",
"command": "./gradlew bootRun"
},
{
"id": "019e1a2b-3c4d-7000-8000-000000000013",
"name": "Frontend",
"command": "npm run dev"
}
]
}
]
}

Launches three sub-tabs simultaneously. Each sub-tab label (“Database”, “API”, “Frontend”) appears in the tab bar.

{
"configurations": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000020",
"name": "Development",
"commands": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000021",
"name": "API",
"command": "npm run dev:api"
},
{
"id": "019e1a2b-3c4d-7000-8000-000000000022",
"name": "Frontend",
"command": "npm run dev:web"
}
]
},
{
"id": "019e1a2b-3c4d-7000-8000-000000000030",
"name": "Staging",
"commands": [
{
"id": "019e1a2b-3c4d-7000-8000-000000000031",
"name": "API",
"command": "npm run staging:api"
},
{
"id": "019e1a2b-3c4d-7000-8000-000000000032",
"name": "Frontend",
"command": "npm run staging:web"
}
]
}
]
}

Two configurations appear as separate entries in the launcher dropdown. Select which environment to launch before clicking run.