Configuration
Project Configuration (downcity.json)
Most-used project-level fields and practical cautions
Project Configuration (downcity.json)
downcity.json is the project runtime entrypoint.
{
"name": "my-agent",
"execution": {
"type": "api",
"modelId": "quality"
},
"start": {
"host": "127.0.0.1",
"port": 5314
}
}Cautions
- A project now must declare
execution, and the mode is fixed toapi. execution.modelIdmust exist in the console model pool.start.host/start.portaffects default CLI routing.- Keep project-level config in
downcity.json, includingpluginsand execution behavior. - Local shell / CLI commands now always run inside a sandbox. Top-level
sandboxonly adjusts the boundary.
Execution Modes
If you want to use the console-global model pool:
{
"execution": {
"type": "api",
"modelId": "default"
}
}Shell Sandbox
In the current version, shell / CLI commands always run inside a sandbox. Project-level sandbox only adjusts the boundary:
{
"sandbox": {
"networkMode": "off",
"writablePaths": [".", ".downcity"],
"envAllowlist": ["PATH", "LANG", "TERM", "SHELL"]
}
}Current behavior:
- Affects both the shell plugin path and
kind=scripttask execution - Current first-class backend is macOS using built-in
sandbox-exec - Sandbox cannot be disabled and shell execution does not fall back to an unrestricted host process
- Host paths not mounted into the sandbox are not visible
writablePathsmust stay inside the project root- Network is open by default; omitting the field behaves like
networkMode="full" networkMode="off"blocks network accessnetworkMode="restricted"is currently handled the same as open networknetworkMode="full"allows network access from shell commands
Common commands
studio config get
studio config get execution
studio config set start.port 3100