Agent Watch: Workspace-Modus außerhalb eines Repos (CWD als Root, Config per c/a) #46

Closed
opened 2026-07-12 17:28:56 +02:00 by frank · 1 comment
Owner

Zusammenfassung

Wenn forge agent watch außerhalb eines Git-Repositories gestartet wird, soll das aktuelle Arbeitsverzeichnis als Agent-Workspace dienen: dort liegt die agent.yaml, und darunter werden die Bare-Repos angelegt. In der Watch-TUI soll die Konfiguration zur Laufzeit editierbar sein.

Motivation

Aktuell landen Bare-Repos standardmäßig unter ~/.config/forge/repos/ (bzw. repo_cache_dir), und die Config liegt in ./.forge/agent.yaml oder ~/.config/forge/agent.yaml. Für einen dedizierten Watcher-Workspace (Ordner nur für Agent-Orchestrierung, kein Checkout) fehlt ein klarer, verzeichnisbezogener Modus — plus schnelle Hotkeys in der laufenden TUI.

Anforderungen

1. Workspace-Root = CWD (außerhalb eines Repos)

  • Wird forge agent watch in einem Verzeichnis gestartet, das kein Git-Repo ist:
    • dieses Verzeichnis ist der Workspace-Root
    • agent.yaml liegt in diesem Verzeichnis (nicht zwingend unter .forge/)
    • Bare-Repos werden ab diesem Verzeichnis angelegt (statt unter dem globalen Default-Cache), sofern nicht anders konfiguriert
  • Wird innerhalb eines Repos gestartet, bleibt das bisherige Verhalten erhalten (Projekt-.forge/agent.yaml, Cache wie bisher).

2. Config in der Watch-TUI mit c

  • Im Agent-Dashboard (Watch-TUI) öffnet c die Config-Ansicht (analog zu forge agent config)
  • Änderungen an der Config wirken auf die Laufzeitparameter des laufenden Watchers (nicht erst nach Neustart)
  • Persistenz: Speichern in die Workspace-agent.yaml

3. Repo hinzufügen mit a + HTTPS-URL

  • Im Agent-Dashboard (bzw. in der Config-Ansicht) öffnet a einen kurzen Dialog/Prompt
  • Eingabe: HTTPS-Link zum Repository (z. B. https://repository.hildebrandt.io/frank/forgecli.git)
  • Ergebnis: Repo wird in die Config aufgenommen, Bare-Clone wird angelegt/genutzt, Watcher nimmt das Repo in den Poll auf

Akzeptanzkriterien

  • mkdir ~/agent-ws && cd ~/agent-ws && forge agent watch nutzt ~/agent-ws/agent.yaml und legt Bare-Repos unter ~/agent-ws/… an
  • Taste c im Watch-Dashboard öffnet Config und ändert laufende Parameter nach Speichern
  • Taste a + HTTPS-URL fügt ein Repo hinzu und integriert es ohne manuellen YAML-Edit / Neustart
  • Wiki (Agent-Watch) und Help-Texte dokumentieren Workspace-Modus und Hotkeys
  • Bestehendes Verhalten innerhalb eines Repos / mit explizitem --config / repo_cache_dir bleibt kompatibel

Hinweise

  • Bestehend: forge agent config (eigene TUI), Bare-Mode ohne repos[].path, repo_cache_dir
  • Hotkeys im Dashboard heute u. a.: q, l, f, n/p, 1–9c und a sind frei bzw. nur in der Config-TUI belegt
## Zusammenfassung Wenn `forge agent watch` **außerhalb eines Git-Repositories** gestartet wird, soll das aktuelle Arbeitsverzeichnis als Agent-Workspace dienen: dort liegt die `agent.yaml`, und darunter werden die Bare-Repos angelegt. In der Watch-TUI soll die Konfiguration zur Laufzeit editierbar sein. ## Motivation Aktuell landen Bare-Repos standardmäßig unter `~/.config/forge/repos/` (bzw. `repo_cache_dir`), und die Config liegt in `./.forge/agent.yaml` oder `~/.config/forge/agent.yaml`. Für einen dedizierten Watcher-Workspace (Ordner nur für Agent-Orchestrierung, kein Checkout) fehlt ein klarer, verzeichnisbezogener Modus — plus schnelle Hotkeys in der laufenden TUI. ## Anforderungen ### 1. Workspace-Root = CWD (außerhalb eines Repos) - Wird `forge agent watch` in einem Verzeichnis gestartet, das **kein** Git-Repo ist: - dieses Verzeichnis ist der **Workspace-Root** - `agent.yaml` liegt **in diesem Verzeichnis** (nicht zwingend unter `.forge/`) - Bare-Repos werden **ab diesem Verzeichnis** angelegt (statt unter dem globalen Default-Cache), sofern nicht anders konfiguriert - Wird innerhalb eines Repos gestartet, bleibt das bisherige Verhalten erhalten (Projekt-`.forge/agent.yaml`, Cache wie bisher). ### 2. Config in der Watch-TUI mit `c` - Im Agent-Dashboard (Watch-TUI) öffnet **`c`** die Config-Ansicht (analog zu `forge agent config`) - Änderungen an der Config wirken auf die **Laufzeitparameter** des laufenden Watchers (nicht erst nach Neustart) - Persistenz: Speichern in die Workspace-`agent.yaml` ### 3. Repo hinzufügen mit `a` + HTTPS-URL - Im Agent-Dashboard (bzw. in der Config-Ansicht) öffnet **`a`** einen kurzen Dialog/Prompt - Eingabe: HTTPS-Link zum Repository (z. B. `https://repository.hildebrandt.io/frank/forgecli.git`) - Ergebnis: Repo wird in die Config aufgenommen, Bare-Clone wird angelegt/genutzt, Watcher nimmt das Repo in den Poll auf ## Akzeptanzkriterien - [x] `mkdir ~/agent-ws && cd ~/agent-ws && forge agent watch` nutzt `~/agent-ws/agent.yaml` und legt Bare-Repos unter `~/agent-ws/…` an - [x] Taste **`c`** im Watch-Dashboard öffnet Config und ändert laufende Parameter nach Speichern - [x] Taste **`a`** + HTTPS-URL fügt ein Repo hinzu und integriert es ohne manuellen YAML-Edit / Neustart - [x] Wiki (`Agent-Watch`) und Help-Texte dokumentieren Workspace-Modus und Hotkeys - [x] Bestehendes Verhalten innerhalb eines Repos / mit explizitem `--config` / `repo_cache_dir` bleibt kompatibel ## Hinweise - Bestehend: `forge agent config` (eigene TUI), Bare-Mode ohne `repos[].path`, `repo_cache_dir` - Hotkeys im Dashboard heute u. a.: `q`, `l`, `f`, `n`/`p`, `1–9` — `c` und `a` sind frei bzw. nur in der Config-TUI belegt
Author
Owner

🤖 forge agent started

  • Agent: cursor-agent
  • Model: (default)
  • Mode: pr
  • Trigger: assignee=agent
  • Open ToDos: 5

Agent Watch: Workspace-Modus außerhalb eines Repos (CWD als Root, Config per c/a) — Wenn forge agent watch außerhalb eines Git-Repositories gestartet wird, soll das aktuelle Arbeitsverzeichnis als Agent-Workspace dienen: dort liegt die agent.yaml, und darunter werden die…

🤖 **forge agent started** - Agent: `cursor-agent` - Model: `(default)` - Mode: `pr` - Trigger: `assignee=agent` - Open ToDos: 5 Agent Watch: Workspace-Modus außerhalb eines Repos (CWD als Root, Config per c/a) — Wenn `forge agent watch` **außerhalb eines Git-Repositories** gestartet wird, soll das aktuelle Arbeitsverzeichnis als Agent-Workspace dienen: dort liegt die `agent.yaml`, und darunter werden die…
frank closed this issue 2026-07-12 17:34:57 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
frank/forgecli#46
No description provided.