Repository navigation
feat: Update DevContainer Claude settings with Elu-co-jp common configurations #189
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
d760dba
f7e90ad
675bee8
988257a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,68 +1,270 @@ | ||
| { | ||
| "$schema": "https://json.schemastore.org/claude-code-settings.json", | ||
| "permissions": { | ||
| "allow": [ | ||
| "WebSearch", | ||
| "WebFetch(domain:supabase.com)", | ||
| "WebFetch(domain:github.com)", | ||
| "WebFetch(domain:docs.github.com)", | ||
| "WebFetch(domain:npmjs.com)", | ||
| "WebFetch(domain:www.npmjs.com)", | ||
| "WebFetch(domain:docs.recall.ai)", | ||
| "WebFetch(domain:docs.smith.langchain.com)", | ||
| "WebFetch(domain:docs.langchain.com)", | ||
| "WebFetch(domain:docs.n8n.io)", | ||
| "WebFetch(domain:community.n8n.io)", | ||
| "WebFetch(domain:raw.githubusercontent.com)", | ||
| "WebFetch(domain:artifacthub.io)", | ||
| "WebFetch(domain:developers.notion.com)", | ||
| "mcp__ide__getDiagnostics", | ||
| "Bash(ls:*)", | ||
| "Bash(cat:*)", | ||
| "Bash(find:*)", | ||
| "Bash(grep:*)", | ||
| "Bash(rg:*)", | ||
| "Bash(sed:*)", | ||
| "Bash(awk:*)", | ||
| "Bash(mkdir:*)", | ||
| "Bash(touch:*)", | ||
| "Bash(cp:*)", | ||
| "Bash(mv:*)", | ||
| "Bash(rm:*)", | ||
| "Bash(chmod:*)", | ||
| "Bash(ln:*)", | ||
| "Bash(curl:*)", | ||
| "Bash(wget:*)", | ||
| "Bash(zip:*)", | ||
| "Bash(unzip:*)", | ||
| "Bash(tar:*)", | ||
| "Bash(tree:*)", | ||
| "Bash(du:*)", | ||
| "Bash(host:*)", | ||
| "Bash(lsof:*)", | ||
| "Bash(pkill:*)", | ||
| "Bash(kill:*)", | ||
| "Bash(echo:*)", | ||
| "Bash(printf:*)", | ||
| "Bash(export:*)", | ||
| "Bash(source:*)", | ||
| "Bash(env:*)", | ||
| "Bash(bash:*)", | ||
| "Bash(true)", | ||
| "Bash(node:*)", | ||
|
|
||
| "Bash(git status:*)", | ||
| "Bash(git diff:*)", | ||
| "Bash(python3:*)", | ||
| "Bash(deno:*)", | ||
| "Bash(deno test:*)", | ||
| "Bash(deno fmt:*)", | ||
| "Bash(deno lint:*)", | ||
| "Bash(deno check:*)", | ||
| "Bash(deno run:*)", | ||
| "Bash(npm:*)", | ||
| "Bash(npm install:*)", | ||
| "Bash(npm uninstall:*)", | ||
| "Bash(npm ci:*)", | ||
| "Bash(npm ls:*)", | ||
| "Bash(npm view:*)", | ||
| "Bash(npm update:*)", | ||
| "Bash(npm run:*)", | ||
| "Bash(npm run dev:*)", | ||
| "Bash(npm run build:*)", | ||
| "Bash(npm run lint:*)", | ||
| "Bash(npm run type-check:*)", | ||
| "Bash(npm run typecheck:*)", | ||
| "Bash(npm run format:*)", | ||
| "Bash(npm run format:check:*)", | ||
| "Bash(npm run ci:check:*)", | ||
| "Bash(npm run test:*)", | ||
| "Bash(npm test:*)", | ||
| "Bash(npm audit:*)", | ||
| "Bash(npm outdated:*)", | ||
| "Bash(npm pack:*)", | ||
| "Bash(npm exec:*)", | ||
| "Bash(pnpm:*)", | ||
| "Bash(pnpm add:*)", | ||
| "Bash(pnpm run lint:*)", | ||
| "Bash(pnpm tsc:*)", | ||
| "Bash(pnpm run build:*)", | ||
| "Bash(npx:*)", | ||
| "Bash(npx tsc:*)", | ||
| "Bash(npx tsx:*)", | ||
| "Bash(npx eslint:*)", | ||
| "Bash(npx prettier:*)", | ||
| "Bash(npx next:*)", | ||
| "Bash(npx next lint:*)", | ||
| "Bash(npx vitest:*)", | ||
| "Bash(npx vitest run:*)", | ||
| "Bash(npx vitest list:*)", | ||
| "Bash(npx playwright:*)", | ||
| "Bash(npx playwright test:*)", | ||
| "Bash(npx husky:*)", | ||
| "Bash(npx husky init:*)", | ||
| "Bash(npx npm-check-updates:*)", | ||
| "Bash(npx complexity-report:*)", | ||
| "Bash(timeout:*)", | ||
| "Bash(timeout 10 npm start)", | ||
| "Bash(timeout 10s npm run dev)", | ||
| "Bash(timeout 60 npx vitest:*)", | ||
| "Bash(timeout 90 npm run:*)", | ||
| "Bash(timeout 90 npx vitest run:*)", | ||
| "Bash(timeout 120 npm run build:*)", | ||
| "Bash(git:*)", | ||
| "Bash(git add:*)", | ||
| "Bash(git commit:*)", | ||
| "Bash(git push:*)", | ||
| "Bash(git checkout:*)", | ||
| "Bash(git pull:*)", | ||
| "Bash(git fetch:*)", | ||
| "Bash(git merge:*)", | ||
| "Bash(git checkout:*)", | ||
| "Bash(git reset:*)", | ||
| "Bash(git restore:*)", | ||
| "Bash(git stash:*)", | ||
| "Bash(git rm:*)", | ||
|
|
||
| "Bash(gh issue list:*)", | ||
| "Bash(gh issue view:*)", | ||
| "Bash(gh repo view:*)", | ||
| "Bash(gh pr create:*)", | ||
| "Bash(git status:*)", | ||
| "Bash(git diff:*)", | ||
| "Bash(git remote set-url:*)", | ||
| "Bash(git cherry-pick:*)", | ||
| "Bash(git branch:*)", | ||
| "Bash(git rebase:*)", | ||
| "Bash(git clone:*)", | ||
| "Bash(git tag:*)", | ||
| "Bash(git rev-parse:*)", | ||
| "Bash(git check-ignore:*)", | ||
| "Bash(gh:*)", | ||
| "Bash(gh pr:*)", | ||
| "Bash(gh pr list:*)", | ||
| "Bash(gh pr view:*)", | ||
| "Bash(gh pr diff:*)", | ||
| "Bash(gh pr create:*)", | ||
| "Bash(gh pr edit:*)", | ||
| "Bash(gh pr merge:*)", | ||
| "Bash(gh pr checkout:*)", | ||
| "Bash(gh pr checks:*)", | ||
| "Bash(gh run view:*)", | ||
| "Bash(gh issue list:*)", | ||
| "Bash(gh issue view:*)", | ||
| "Bash(gh issue create:*)", | ||
| "Bash(gh issue edit:*)", | ||
| "Bash(gh repo view:*)", | ||
| "Bash(gh run list:*)", | ||
|
|
||
| "Bash(gh run view:*)", | ||
| "Bash(gh run watch:*)", | ||
| "Bash(gh workflow:*)", | ||
| "Bash(gh workflow run:*)", | ||
| "Bash(gh release view:*)", | ||
| "Bash(gh auth:*)", | ||
| "Bash(gh api:*)", | ||
| "Bash(gh repo set-default:*)", | ||
| "Bash(gh repo fork:*)", | ||
| "Bash(supabase:*)", | ||
| "Bash(supabase status:*)", | ||
| "Bash(supabase start:*)", | ||
| "Bash(supabase stop:*)", | ||
| "Bash(supabase db:*)", | ||
| "Bash(supabase db reset:*)", | ||
| "Bash(supabase migration:*)", | ||
| "Bash(supabase seed:*)", | ||
| "Bash(supabase secrets:*)", | ||
| "Bash(supabase secrets list:*)", | ||
| "Bash(supabase functions:*)", | ||
| "Bash(supabase functions serve:*)", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Critical conflict: deny rule blocks allowed Line 166 explicitly allows If 🔎 Proposed fix to allow serve while blocking other functions operationsOption 1: Make deny rules more specific (if serve should be allowed) - "Bash(supabase functions)",
- "Bash(supabase functions:*)",
+ "Bash(supabase functions deploy)",
+ "Bash(supabase functions deploy:*)",
+ "Bash(supabase functions delete)",
+ "Bash(supabase functions delete:*)",Option 2: Remove the allow rule (if no functions operations should be allowed) "Bash(supabase secrets list:*)",
- "Bash(supabase functions serve:*)",
"Bash(supabase logs:*)",Also applies to: 286-287 🤖 Prompt for AI Agents |
||
| "Bash(supabase logs:*)", | ||
| "Bash(supabase projects api-keys:*)", | ||
| "Bash(npx supabase:*)", | ||
| "Bash(npx supabase db reset:*)", | ||
| "Bash(npx supabase db push:*)", | ||
|
coderabbitai[bot] marked this conversation as resolved.
Resolved
|
||
| "Bash(npx supabase db describe:*)", | ||
| "Bash(npx supabase db remote:*)", | ||
| "Bash(npx supabase migration:*)", | ||
| "Bash(npx supabase migration up:*)", | ||
| "Bash(npx supabase gen types typescript:*)", | ||
| "mcp__plugin_supabase-toolkit_supabase__list_tables", | ||
| "mcp__plugin_supabase-toolkit_supabase__get_project_url", | ||
| "Bash(psql:*)", | ||
| "Bash(PGPASSWORD=postgres psql:*)", | ||
| "Bash(docker:*)", | ||
| "Bash(docker build:*)", | ||
| "Bash(docker exec:*)", | ||
| "Bash(docker logs:*)", | ||
| "Bash(docker-compose:*)", | ||
| "Bash(kubectl:*)", | ||
| "Bash(kubectl get:*)", | ||
| "Bash(kubectl describe:*)", | ||
| "Bash(kubectl logs:*)", | ||
| "Bash(kubectl exec:*)", | ||
| "Bash(kubectl top:*)", | ||
| "Bash(kubectl delete pods:*)", | ||
| "Bash(kubectl delete pod:*)", | ||
| "Bash(kubectl wait:*)", | ||
| "Bash(kubectl rollout restart:*)", | ||
| "Bash(kubectl rollout status:*)", | ||
|
|
||
| "Bash(kubectl patch:*)", | ||
| "Bash(kubectl run:*)", | ||
| "Bash(helm:*)", | ||
| "Bash(helm list:*)", | ||
| "Bash(helm status:*)", | ||
|
|
||
| "Bash(helm uninstall:*)", | ||
| "Bash(helm upgrade:*)", | ||
| "Bash(helm show chart:*)", | ||
| "Bash(helm show values:*)", | ||
| "Bash(helm repo add:*)", | ||
| "Bash(minikube image load:*)", | ||
| "Bash(terraform:*)", | ||
| "Bash(terraform apply:*)", | ||
| "Bash(aws:*)", | ||
| "Bash(aws s3:*)", | ||
| "Bash(aws sts:*)", | ||
| "Bash(aws iam list-users:*)", | ||
| "Bash(aws iam list-groups:*)", | ||
| "Bash(aws iam get-user:*)", | ||
| "Bash(aws iam list-groups-for-user:*)", | ||
| "Bash(aws iam list-attached-user-policies:*)", | ||
| "Bash(aws sso-admin:*)", | ||
| "Bash(aws sso-admin list-instances:*)", | ||
| "Bash(aws identitystore list-users:*)", | ||
| "Bash(aws organizations list-organizational-units-for-parent:*)", | ||
| "Bash(aws organizations list-accounts:*)", | ||
| "Bash(aws events list-rules:*)", | ||
| "Bash(aws logs:*)", | ||
| "Bash(az account:*)", | ||
| "Bash(az account show:*)", | ||
| "Bash(az ad app show:*)", | ||
| "Bash(az ad app permission admin-consent:*)", | ||
| "Bash(az ad app permission list:*)", | ||
| "Bash(az ad sp show:*)", | ||
| "Bash(gcloud:*)", | ||
| "Bash(gcloud config list:*)", | ||
| "Bash(gcloud config get-value project)", | ||
| "Bash(gcloud config get-value account)", | ||
| "Bash(gcloud config set project:*)", | ||
| "Bash(gcloud auth list:*)", | ||
| "Bash(gcloud auth activate-service-account:*)", | ||
| "Bash(gcloud auth application-default set-quota-project:*)", | ||
| "Bash(gcloud projects list)", | ||
| "Bash(gcloud projects create:*)", | ||
| "Bash(gcloud beta billing accounts list)", | ||
| "Bash(gcloud beta billing projects link:*)", | ||
| "Bash(gcloud secrets versions access:*)", | ||
| "Bash(gcloud container operations list:*)", | ||
|
|
||
| "Bash(npm install)", | ||
| "Bash(npm install:*)", | ||
| "Bash(npm run dev:*)", | ||
| "Bash(npm run lint)", | ||
| "Bash(npm run lint:*)", | ||
| "Bash(npm run format:*)", | ||
| "Bash(npm run type-check:*)", | ||
| "Bash(npm run ci:check:*)", | ||
| "Bash(npx:*)", | ||
| "Bash(gcloud container clusters:*)", | ||
| "Bash(gcloud container clusters get-credentials:*)", | ||
| "Bash(gcloud compute machine-types describe:*)", | ||
| "Bash(vercel:*)", | ||
| "Bash(vercel env:*)", | ||
| "Bash(wscat:*)", | ||
|
|
||
| "WebSearch", | ||
| "WebFetch(domain:github.com)", | ||
| "WebFetch(domain:raw.githubusercontent.com)" | ||
| "Bash(openssl rand:*)", | ||
| "Bash(uv run:*)", | ||
| "Bash(uv sync:*)", | ||
| "Bash(supervisorctl:*)", | ||
| "Bash(supervisorctl stop:*)", | ||
| "Bash(supervisord:*)", | ||
| "Bash(act:*)", | ||
| "Bash(afplay:*)" | ||
| ], | ||
| "deny": [ | ||
| "Bash(npx supabase db push)", | ||
| "Bash(npx supabase db push:*)", | ||
| "Bash(npx supabase migration squash)", | ||
| "Bash(npx supabase migration squash:*)" | ||
| ], | ||
| "deny": [], | ||
| "ask": [] | ||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Expand deny rules to protect against additional destructive rm patterns.
While lines 290-291 deny
rm -rf /andrm -rf /*, the broadBash(rm:*)permission still allows highly destructive patterns such as:rm -rf .(deletes current directory)rm -rf *(deletes all files in current directory)rm -rf ../*(deletes parent directory contents)Consider adding explicit deny rules for these patterns to prevent accidental data loss.
🔎 Suggested additional deny rules
Add these entries to the
denyarray:"Bash(rm -rf /)", "Bash(rm -rf /*)" + "Bash(rm -rf .)", + "Bash(rm -rf *)", + "Bash(rm -rf ../*)", + "Bash(rm -rf .*)" ],📝 Committable suggestion
🤖 Prompt for AI Agents