{
  "schema_version": "ecf-core.local-config.v1",
  "project_name": "example-local-agent",
  "scope": "local_project",
  "allow": [
    "README.md",
    "docs/**",
    "src/**",
    "schemas/**",
    "schema.sql",
    "openapi.yaml",
    "mcp.json"
  ],
  "block": [
    ".env",
    ".env.*",
    "secrets/**",
    "**/*.pem",
    "**/*.key",
    "**/*.secret",
    "node_modules/**",
    ".git/**",
    ".ecf-core/**",
    ".micro-ecf/**",
    "*.db",
    "*.sqlite",
    "*.sqlite3"
  ],
  "max_file_bytes": 65536,
  "adapters": {
    "filesystem": { "enabled": true },
    "markdown_docs": { "enabled": true },
    "sqlite_summary": { "enabled": true },
    "openapi": { "enabled": true },
    "mcp_context": { "enabled": true }
  },
  "context_index_providers": [
    {
      "provider_id": "ecf_core_local_context_index",
      "type": "page_index",
      "mode": "local_adapter",
      "capabilities": [
        "page_structure",
        "tree_search",
        "doc_search",
        "agentic_retrieval",
        "vectorless_retrieval"
      ],
      "outputs": [
        "page-index.json",
        "tree-index.json",
        "retrieval-plan.json"
      ]
    }
  ],
  "eval": {
    "queries": [
      "context policy",
      "agent os handoff",
      "openapi",
      "sqlite schema"
    ],
    "top_k": 3,
    "semantic_lite": true,
    "grounding_enabled": false,
    "grounding_required": true,
    "max_retries": 2,
    "rewrite_enabled": true,
    "unsupported_response": "I don't know based on the allowed context.",
    "grounding_queries": [
      "What context can this local agent use?",
      "Can this agent read production secrets?"
    ],
    "compression": {
      "enabled": true,
      "max_summary_chars": 96
    }
  },
  "tool_limits": {
    "max_calls": 10,
    "network_allowed": false,
    "write_allowed": false
  },
  "handoff": {
    "agent_os_preview_allowed": true,
    "live_deploy_allowed": false
  }
}
