Files
music_library/.claude/settings.local.json
T
Claudio Ortolina 4a8af7be39 Move lint, precommit, shellcheck from mix aliases to mise scripts
Mix aliases should only compose mix tasks. Shell tool orchestration
(shellcheck, fd) belongs in mise scripts. This removes the mix cmd
escape hatch and makes the boundary clear: mix.exs for pure mix
composition, scripts/ for cross-toolchain orchestration.
2026-04-12 12:30:59 +01:00

98 lines
3.3 KiB
JSON

{
"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
}
]
}
]
}
}