Commit Graph
112 Commits
Author SHA1 Message Date
Environment TestandClaude Opus 4.6 118d9b0e69 chore(claude): tighten gh workflow perms, consolidate /tmp grant, sort settings
- Split Bash(gh workflow *) into list/view (allow), run (ask), enable/disable (deny)
- Add Bash(break) to allow list
- Remove duplicate /tmp grant from permissions.additionalDirectories; rely on sandbox.filesystem.allowWrite
- Add AGENTS.md "Temporary Files" rule requiring agents to write transient files only under /tmp
- Reorder .claude/settings.json allow entries into logical sections (Git, GitHub CLI, Build, Python, Ansible, Docker, Shell, Read, Web)
- Document new gh workflow entries, break, and Temporary Files cross-link in docs/contributing/tools/agents/claude.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 16:10:39 +02:00
Environment TestandClaude Opus 4.6 27565e4332 chore(claude): allow direct script exec and chmod under scripts/
Adds `Bash(scripts/*)` so repository helper scripts can be invoked
directly by path (shebang-based), required by inner-loop workflows
such as the Playwright spec rerunner. Adds `Bash(chmod +x scripts/*)`
so newly added scripts can be made executable without approval prompts.

Documents both entries in docs/contributing/tools/agents/claude.md
next to the existing `bash scripts/*` and `source scripts/*` rows.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 00:24:55 +02:00
Environment TestandClaude Opus 4.6 31620bd827 chore(claude): allow pkill -f and pre-commit cache reads
Adds `Bash(pkill -f *)` to the allowlist so stuck background commands
(pre-commit hooks, `make test`, `git commit`) can be aborted without an
approval prompt. Broad wildcard consciously accepted — narrow per-pattern
entries required repeated allowlist edits for every new abort scenario.

Adds `Read(~/.cache/pre-commit/**)` so pre-commit's stashed patch files
can be reapplied via `git apply` after a manually killed hook run, and
uses `~` instead of a hardcoded username path.

Documents both entries in docs/contributing/tools/agents/claude.md,
including the explicit risk note that `pkill -f` with a regex can
terminate every user-owned process and should use the narrowest pattern
possible.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 00:24:55 +02:00
Environment TestandClaude Opus 4.6 7c9b9c7922 chore(claude): generalize awk permission, drop stale entries
Replaces two over-specific `Bash(awk ...)` allowlist entries (full paths
and exact patterns that would never match again) with a single
`Bash(awk*)` entry next to `jq*`, consistent with how `grep*`, `find*`,
and `sort*` are allowed. Removes the broken `Read(//var/lib/infinito/logs/**)`
entry: `/var/lib/infinito/` is a named Docker volume defined in
compose.yml and never exists on the host, so host-scoped read access
is meaningless (and the path had a double slash).

Documents the new `awk*` entry in docs/contributing/tools/agents/claude.md
with an explicit note that awk's `system()` and `"cmd" | getline` put
it in the same risk class as the already-allowed `find -exec`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 00:24:54 +02:00
Environment TestandClaude Opus 4.6 d6ca27d638 chore(claude): allow scripts/ source+bash, prefer make targets
Adds `Bash(bash scripts/*)` and `Bash(source scripts/*)` to the Claude
Code allowlist so repository helper scripts (e.g. env exports in
scripts/meta/env) can run without approval prompts, while still keeping
arbitrary paths scoped to review.

Documents both permissions in docs/contributing/tools/agents/claude.md,
including the caveat that `source` bypasses the allowlist for nested
commands.

Extends CLAUDE.md with an explicit rule that agents MUST prefer `make`
targets over direct docker/ansible/python/script invocations whenever
an equivalent target exists.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 00:24:54 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 2309ba8e11 chore(claude): allow Bash(wait*) for background task synchronization
Adds the shell built-in `wait` to the Claude Code allow-list so the agent
can block on background commands started via run_in_background without
prompting for operator approval. Documents the new entry in the Claude
Code settings reference.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 23:12:32 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 0fe7c5fd6f docs(claude): document settings permissions and restructure agent docs
- Extend .claude/settings.json with git mv, rm, cherry-pick, apply, gh run, gh api, bash -n
- Add make chmod-scripts target and document it in make.md
- Move docs/contributing/tools/agents.md to agents/common.md
- Add docs/contributing/tools/agents/README.md and claude.md with full permission reference in table format
- Fix relative links in common.md after directory move

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 20:56:37 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 9a068f0fd0 feat(config): allow act commands in Claude Code settings
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 20:23:40 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 8247c595b0 chore(settings): move git commit to ask permissions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 15:24:19 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 28bf195a2b chore: remove comments from settings.json and add docker exec permission
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 23:33:14 +01:00
kevinveenbirkenbachandClaude Sonnet 4.6 ad1327824a chore: allow Edit and Write permissions project-wide
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 21:20:19 +01:00
kevinveenbirkenbachandClaude Sonnet 4.6 d517b79c0e chore: add Claude Code project permissions settings
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 21:19:33 +01:00