{ "version": 2, "contexts": { "example-context": { "enabled": true, "label": "Example environment", "description": "One deployment environment: its Gitea plus non-Gitea services.", "default_owner": "Example-Org", "gitea": { "enabled": true, "kind": "gitea", "base_url": "https://gitea.example.invalid" }, "services": { "jenkins": { "enabled": true, "kind": "jenkins", "label": "Example Jenkins", "base_url": "https://jenkins.example.invalid", "auth": { "type": "keychain", "id": "example-jenkins-token" }, "capabilities": ["read"] }, "glitchtip": { "enabled": false, "kind": "glitchtip", "label": "Example GlitchTip (disabled: defined but unavailable)", "base_url": "", "auth": { "type": "keychain", "id": "example-glitchtip-token" }, "capabilities": ["read"], "allow_raw_events": false } } } }, "profiles": { "example-author": { "enabled": true, "context": "example-context", "role": "author", "username": "author-user", "execution_profile": "example-author", "audit_label": "example-author", "auth": { "type": "keychain", "id": "example-gitea-author-token" }, "allowed_operations": ["read", "branch", "commit", "push", "open_pr", "comment"], "forbidden_operations": ["approve", "request_changes", "merge"] }, "example-reviewer": { "enabled": true, "context": "example-context", "role": "reviewer", "username": "reviewer-user", "execution_profile": "example-reviewer", "audit_label": "example-reviewer", "auth": { "type": "keychain", "id": "example-gitea-reviewer-token" }, "allowed_operations": ["read", "review", "comment", "approve", "request_changes", "merge"], "forbidden_operations": ["branch", "commit", "push", "open_pr"] } }, "projects": { "/absolute/path/to/local/repo": { "enabled": true, "context": "example-context", "default_owner": "Example-Org", "default_repo": "Example-Repo", "default_author_profile": "example-author", "default_reviewer_profile": "example-reviewer" } }, "rules": { "disabled_behavior": "Defined but unavailable for action. MCP tools may report disabled entries during audits, but must not use them automatically.", "no_silent_fallback": true, "tokens_in_json": false, "token_storage": "keychain", "identity_must_match_task": true, "same_username_cannot_review_own_pr": true, "hide_service_urls_from_llm": true, "hide_keychain_ids_from_llm": true, "mcp_resolves_endpoints": true } }