diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 5853ae8b..19291d8b 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -19,13 +19,26 @@ "Bash(git config:*)", "Bash(gh auth:*)", "Bash(brew bundle:*)", - "mcp__slack__slack_list_channels", - "mcp__slack__slack_post_message", - "mcp__filesystem__list_allowed_directories", "Bash(claude config get:*)", "Bash(bash:*)", "Bash(./script/export.sh:*)" ], "deny": [] + }, + "env": { + "CLAUDE_CODE_PROJECT_NAME": "keito4/config" + }, + "hooks": { + "Stop": [ + { + "matcher": "", + "hooks": [ + { + "type": "command", + "command": "curl -X POST http://host.docker.internal:5678/webhook/notify -H \\\"Content-Type: application/json\\\" -d '{\\\"project_name\\\":\\\"keito4/config\\\",\\\"task_name\\\":\\\"${CLAUDE_TASK}\\\",\\\"request_detail\\\":\\\"${CLAUDE_REQUEST}\\\"}'" + } + ] + } + ] } -} \ No newline at end of file +} diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 3a428736..fa30b88e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -38,6 +38,9 @@ RUN echo "alias gco='git checkout'" >> /home/vscode/.bashrc \ RUN mkdir -p /home/vscode/.claude /home/vscode/.cursor \ && chown -R vscode:vscode /home/vscode/.claude /home/vscode/.cursor +# Copy default Claude settings +COPY --chown=vscode:vscode .devcontainer/claude-settings.json /home/vscode/.claude/settings.json + # Change default shell to bash RUN chsh -s /bin/bash vscode @@ -48,5 +51,4 @@ RUN echo 'source ~/.bashrc' >> /home/vscode/.bash_profile \ # Husky用の設定 COPY package.json package-lock.json /tmp/ COPY .husky /tmp/.husky/ -COPY commitlint.config.js /tmp/ RUN cd /tmp && npm ci && npm run prepare || true diff --git a/.devcontainer/claude-settings.json b/.devcontainer/claude-settings.json new file mode 100644 index 00000000..8d26ce50 --- /dev/null +++ b/.devcontainer/claude-settings.json @@ -0,0 +1,45 @@ +{ + "permissions": { + "allow": [ + "Bash(ls:*)", + "Bash(cat:*)", + "Bash(find:*)", + "Bash(grep:*)", + "Bash(rg:*)", + + "Bash(gh issue list:*)", + "Bash(gh issue view:*)", + "Bash(gh repo view:*)", + + "Bash(kubectl get:*)", + "Bash(kubectl describe:*)", + "Bash(kubectl logs:*)", + "Bash(kubectl top:*)", + "Bash(kubectl wait:*)", + "Bash(kubectl rollout status:*)", + + "Bash(helm list:*)", + "Bash(helm status:*)", + + "Bash(gcloud container operations list:*)", + + "Bash(DISPLAY=:99 xwininfo -root -tree)", + "Bash(DISPLAY=:99 xrandr)", + + "Bash(supabase status:*)", + "Bash(claude config get:*)", + "Bash(git status:*)", + "Bash(git diff:*)", + "Bash(git add:*)", + "Bash(git commit:*)", + "Bash(git push:*)", + + "WebFetch(domain:github.com)", + "WebFetch(domain:docs.n8n.io)", + "WebFetch(domain:community.n8n.io)", + "WebFetch(domain:raw.githubusercontent.com)", + "WebFetch(domain:www.green-japan.com)" + ], + "deny": [] + } +} diff --git a/commitlint.config.js b/commitlint.config.js new file mode 100644 index 00000000..936c7cbd --- /dev/null +++ b/commitlint.config.js @@ -0,0 +1,9 @@ +module.exports = { + extends: ['@commitlint/config-conventional'], + rules: { + 'subject-case': [2, 'never', ['sentence-case', 'start-case', 'pascal-case', 'upper-case']], + 'subject-empty': [2, 'never'], + 'type-empty': [2, 'never'], + 'scope-empty': [0] + } +}; \ No newline at end of file diff --git a/supabase/.temp/cli-latest b/supabase/.temp/cli-latest index 19a5f69d..a73e44b6 100644 --- a/supabase/.temp/cli-latest +++ b/supabase/.temp/cli-latest @@ -1 +1 @@ -v2.31.4 \ No newline at end of file +v2.31.8 \ No newline at end of file