34
.claude/README.md
Normal file
34
.claude/README.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# .claude/ — Harness-Config fürs Multi-Agent-System
|
||||
|
||||
`settings.json` ist **committed** (team-weit): jede Leader- wie Worker-Session in
|
||||
diesem Repo bekommt dieselben Permissions. Persönliche Abweichungen gehören in
|
||||
`settings.local.json` (gitignored).
|
||||
|
||||
## Was die Permissions tun
|
||||
- **`defaultMode: acceptEdits`** — Datei-Edits/Writes laufen ohne Prompt (Worker
|
||||
schreiben Code in ihrem Paket frei). Ownership-Verstöße fängt das Ownership-Gate
|
||||
beim Commit, nicht der Prompt.
|
||||
- **allow** — die Gate-Skripte, git read+workflow (inkl. `git worktree`), `bash -n`,
|
||||
`pytest`, `dvc`, `ollama`, `curl` (Gitea-API für PRs) und gängige Read-Utils.
|
||||
- **deny** — `git push --force`/`-f`, `git clean -fd(x)`, `sudo rm`, katastrophale
|
||||
`rm -rf /`/`~`. Hart blockiert, nicht nur Prompt. Alles übrige (z. B. ein
|
||||
einzelnes `git reset --hard`) ist *nicht* allow-gelistet → es fragt nach.
|
||||
|
||||
## Parallel arbeiten mit tmux + git worktree (empfohlen)
|
||||
Ein Worker pro Paket in **eigenem Worktree + eigener tmux-Pane** — so kollidiert
|
||||
nichts, und das Ownership-Gate hält die Grenzen sauber:
|
||||
|
||||
```bash
|
||||
# je Worker einen Worktree auf seinem Branch
|
||||
git worktree add ../$(basename "$PWD")-W2 -b feat/w2-profiles main
|
||||
git worktree add ../$(basename "$PWD")-W3 -b feat/w3-exporter main
|
||||
# … dann in je einer tmux-Pane:
|
||||
cd ../<repo>-W2 && claude # Inhalt von session-prompts/W2.md einfügen
|
||||
```
|
||||
|
||||
Der **Leader** bleibt im Haupt-Checkout (Branch `main`/`integrate/*` → vom
|
||||
Ownership-Gate ausgenommen), integriert die Worker-PRs und löst Konflikte.
|
||||
Nach dem Mergen: `git worktree remove ../<repo>-W2`.
|
||||
|
||||
> Optional global (persönlich, nicht hier): `teammateMode: "tmux"` in
|
||||
> `~/.claude/settings.json`, falls du Claudes native Teammate-Spawns nutzt.
|
||||
Reference in New Issue
Block a user