Move project and host queries into native MCP with host-owned OAuth/context, while retaining memory, skills, actions and publication plugins. Add nearby-model queries and explicit chat/task/learning model defaults. Adopt Responses HTTP/SSE and native steer/queue inbox delivery, preserving scoped session ownership, pending input edits and investigation communication. Disable local-provider discovery: Server /health allowed native vLLM to probe /v1/models on port 8000. A native before/after regression prevents recurrence. Validation: 170 focused Bun tests; service/plugin typechecks; native discovery, provider-discovery and input-inbox smoke checks; no paid model inference.
318 lines
5.5 KiB
JSON
318 lines
5.5 KiB
JSON
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"default_agent": "instruction",
|
|
"websearch": {
|
|
"provider": "exa"
|
|
},
|
|
"permissions": [
|
|
{
|
|
"action": "*",
|
|
"resource": "*",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "browser",
|
|
"resource": "*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "browser_*",
|
|
"resource": "*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "external_directory",
|
|
"resource": "*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": ".env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": ".env.*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "*.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "**/.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "**/.env.*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "**/*.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "data/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "**/data/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "logs/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "read",
|
|
"resource": "**/logs/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "*",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": ".env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": ".env.*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "*.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "**/.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "**/.env.*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "**/*.env",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "data/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "**/data/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "logs/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "edit",
|
|
"resource": "**/logs/**",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "rm *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "rmdir *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "mv *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "chmod *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "chown *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "sudo *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "curl *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "wget *",
|
|
"effect": "ask"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*.env*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*data/*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "* data",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*/data",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*logs/*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "* logs",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "shell",
|
|
"resource": "*/logs",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "question",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "websearch",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "subagent",
|
|
"resource": "*",
|
|
"effect": "deny"
|
|
},
|
|
{
|
|
"action": "todo",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "todowrite",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "publish_execution_plan",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "publish_task_report",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "publish_task_progress",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "publish_task_presentation",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "propose_task_action",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "add_task_human_evidence",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "final_answer",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "present_answer",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "locate_features",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "zoom_to_map",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "show_chart",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "view_history",
|
|
"resource": "*",
|
|
"effect": "allow"
|
|
},
|
|
{
|
|
"action": "mcp_*",
|
|
"resource": "*",
|
|
"effect": "ask"
|
|
}
|
|
],
|
|
"mcp": {
|
|
"timeout": {
|
|
"startup": 10000,
|
|
"catalog": 10000,
|
|
"execution": 60000
|
|
},
|
|
"servers": {}
|
|
}
|
|
}
|