.agents/skills/tinybird-cli-guidelines/rules/development-workflows.md
Tinybird supports three development workflows. Choose based on your team size, infrastructure, and iteration speed needs.
| Workflow | Best for | Requires | Data |
|---|---|---|---|
Local (dev_mode=local) | Solo dev, fast iteration, offline work | Docker | Fixtures or manually appended |
Branch (dev_mode=branch) | Team collaboration, production-like testing | Cloud workspace | Optional copy from production |
| Cloud direct | Simple projects, quick prototyping | Cloud workspace | Production data |
For most projects, use dev_mode=branch. It provides isolated environments backed by Tinybird Cloud, with optional access to production data.
{
"dev_mode": "branch"
}
tb dev — a Cloud branch is created automatically from the git branch name, file changes are watched and auto-rebuilttb endpoint data <pipe_name>tb --cloud deploy --checktb --cloud deploySee rules/branch-development.md for details on branch tokens and --last-partition.
Use dev_mode=local for fast iteration without network dependencies. Good for developing SQL logic and testing with fixture data.
{
"dev_mode": "local"
}
tb local starttb dev in a new terminal — watches files and auto-rebuildstb datasource append <name> --file fixtures/<name>.ndjsontb endpoint data <pipe_name>tb --cloud deploySee rules/local-development.md for Tinybird Local commands and troubleshooting.
For simple projects or quick prototyping, you can work directly against Cloud. Use tb --cloud deploy to deploy, or the two-step process for explicit confirmation:
tb --cloud deployment create --wait
tb --cloud deployment promote
Or the combined shorthand:
tb --cloud deploy
tb --cloud deploy for production. See rules/ci-cd.md.Use tb endpoint data to test endpoint output:
tb endpoint data my_endpoint
tb endpoint data my_endpoint --start_date 2024-01-01 --end_date 2024-01-31
Use tb endpoint data, not tb pipe data. The endpoint data command calls the endpoint as an API consumer would, including parameter validation and output formatting.