Sandboxes pela CLI
Os comandos ficam em coda sandbox (apelidos sandboxes e sbx) e usam o projeto do contexto atual (--project troca).
coda sandbox create --image python-3.13 --ttl 1800 --network pypi-only --var DEBUG=1
coda sandbox ls # ativas; --ended inclui as encerradas
coda sandbox exec <id> -- python -c 'print(42)'
coda sandbox exec <id> --shell 'pip install --user requests && python app.py'
coda sandbox cp ./app <id>:/workspace/app # envia (diretório vira .tar.gz)
coda sandbox cp <id>:/workspace/out.csv ./ # baixa
coda sandbox port <id> 8000 # URL com token, 1 h
coda sandbox port <id> 8000 --visibility PUBLIC # só em planos com porta pública
coda sandbox port <id> 8000 --close
coda sandbox pause <id> && coda sandbox resume <id>
coda sandbox shell <id> # terminal interativo, sem gravação
coda sandbox rm <id>
exectransmite a saída em tempo real e sai com o código do comando (exit 3na sandbox vira$? = 3).createaceita--vcpu,--memory(MiB),--disk(MiB) e--var K=Vrepetido; acima do teto do plano a CLI sai com o código 6 (plan.limit_exceeded).- Os códigos de saída seguem a CLI: 3 não encontrado, 5 proibido (inclusive recurso fora do plano), 6 limite ou quota, 7 conflito (sandbox pausada).