Skip to content

Config format

An optional manifest at a team’s root.

{
"name": "my-team",
"description": "What this team does.",
"runtimeVersion": "^0.2"
}

runtimeVersion is checked against the installed runtime at validate/run time — a mismatch surfaces as a runtime-version-mismatch warning rather than a hard failure, so an older team doesn’t silently misbehave on a newer runtime.

See Tools & policies for the full walkthrough. Shape:

{
"defaultPolicy": "auto | ask | deny",
"builtins": "readonly | none",
"tools": [
{ "name": "string", "policy": "auto | ask | deny", "description": "string" }
],
"mcpServers": { "serverName": { "transport": "stdio | http | sse" } },
"env": ["ENV_VAR_NAME"]
}

ravel validate can report these non-fatal warnings:

Code Meaning
memory-write A tool writes to memory without a declared scope
env-missing A declared env var has no value available
env-undeclared An env var is used but not declared in env
unknown-tool A tool referenced isn’t registered (checked at serve time)
runtime-version-mismatch ravel.json’s runtimeVersion doesn’t match the installed runtime