{
  "permissions": {
    "allow": [
      "mcp__tidewave__get_ecto_schemas",
      "Bash(mix test:*)",
      "Bash(mix test)",
      "Bash(mix test *)",
      "mcp__tidewave__get_source_location",
      "WebFetch(domain:hexdocs.pm)",
      "mcp__tidewave__execute_sql_query",
      "Bash(mix ecto.gen.migration:*)",
      "Bash(mkdir:*)",
      "Bash(mix ecto.migrate:*)",
      "Bash(grep:*)",
      "Bash(mix ecto.rollback:*)",
      "Bash(mix format)",
      "Bash(mix credo:*)",
      "Bash(mix do:*)",
      "Bash(mix gettext.extract:*)",
      "Bash(mv:*)",
      "Bash(mix compile)",
      "Bash(mix phx.routes:*)",
      "Bash(mix assets.deploy:*)",
      "mcp__tidewave__get_logs",
      "mcp__tidewave__project_eval",
      "Bash(mix format:*)",
      "Bash(mise run dev:static-checks:*)",
      "Bash(find:*)",
      "Bash(xargs sed:*)",
      "Bash(git show:*)",
      "Bash(head:*)",
      "Bash(cat:*)",
      "Bash(mise tasks:*)",
      "Bash(mix run:*)",
      "Bash(sqlite3:*)",
      "WebSearch",
      "Bash(mix compile:*)",
      "mcp__tidewave__get_docs",
      "mcp__tidewave__search_package_docs",
      "Bash(wc:*)",
      "Bash(python3:*)",
      "Bash(MIX_ENV=test mix ecto.migrate:*)",
      "WebFetch(domain:api-dashboard.search.brave.com)",
      "WebFetch(domain:api.search.brave.com)",
      "Bash(while read dir)",
      "Bash(MIX_ENV=dev mix run:*)",
      "Bash(mix deps.get:*)",
      "Bash(ls:*)",
      "WebFetch(domain:raw.githubusercontent.com)",
      "WebFetch(domain:github.com)",
      "WebFetch(domain:hex.pm)",
      "Bash(gh issue:*)",
      "Bash(mise run:*)",
      "Bash(gh label:*)",
      "Bash(mix sobelow:*)",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__list_pages",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__navigate_page",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__take_screenshot",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__take_snapshot",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__fill",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__click",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__evaluate_script",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__new_page",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__select_page",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__list_network_requests",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__get_network_request",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__list_console_messages",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__get_console_message",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__hover",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__press_key",
      "mcp__plugin_chrome-devtools-mcp_chrome-devtools__wait_for",
      "Bash(mise generate:*)",
      "Bash(shellcheck:*)"
    ]
  },
  "enableAllProjectMcpServers": false,
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/format-elixir.sh",
            "timeout": 30
          },
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/gettext-extract.sh",
            "timeout": 30,
            "async": true
          }
        ]
      }
    ]
  }
}
