diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 00000000..303454fa --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,53 @@ +{ + "permissions": { + "allow": [ + "Bash(cat:*)", + "Bash(find:*)", + "Bash(gh issue:*)", + "Bash(gh label:*)", + "Bash(git show:*)", + "Bash(grep:*)", + "Bash(head:*)", + "Bash(ls:*)", + "Bash(mise generate:*)", + "Bash(mise run:*)", + "Bash(mise tasks:*)", + "Bash(mix *)", + "Bash(mkdir:*)", + "Bash(mv:*)", + "Bash(python3:*)", + "Bash(shellcheck:*)", + "Bash(sqlite3:*)", + "Bash(wc:*)", + "Bash(while read dir)", + "Bash(xargs sed:*)", + "WebFetch(domain:github.com)", + "WebFetch(domain:hex.pm)", + "WebFetch(domain:hexdocs.pm)", + "WebSearch", + "mcp__plugin_chrome-devtools-mcp_chrome-devtools", + "mcp__tidewave" + ] + }, + "enableAllProjectMcpServers": true, + "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 + } + ] + } + ] + } +} diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index e8df53cb..00000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "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 - } - ] - } - ] - } -}