Projekt-Identität und -Config neu: .ai-control/config.json mit UUID und Name
- Projekt-Config zieht von ai-control.json nach .ai-control/config.json um, das Icon liegt daneben und synct mit dem Projekt. - Jedes Projekt trägt eine UUID (id) und den Anzeigenamen (name) in der Config; die UUID ist Registry-Schlüssel und project-Parameter aller Commands, der Name reine Darstellung. - Pool-Zuordnung ist maschinenlokal und liegt in der projects.json-Registry, nicht mehr in der syncbaren Projekt-Config. - open_terminal prüft die ID im Ordner gegen die Registry (verschobene oder ersetzte Ordner scheitern laut). - Import übernimmt eine mitgebrachte ID, legt Arbeitsordner und Archiv-Home an und zieht die Archiv-Permission nach. - Migration beim App-Start: Alt-Datei umziehen, Pool in die Registry, Icons aus ~/.config/ai-control/icons ins Projekt, Registry auf UUIDs. - ProjectConfig reicht unbekannte Keys per serde(flatten) durch den Round-Trip (Regressionstest config_roundtrip_erhaelt_fremde_keys).
This commit is contained in:
@@ -22,7 +22,7 @@ Running Claude Code with multiple accounts or credential sets means hitting the
|
||||
The app ships an MCP stdio server (`ai-control --mcp-panel`, server key `text-panel`) and provisions it into every pool, including the tool permission — no per-pool setup:
|
||||
|
||||
- **`write_panel`** — Claude places a Markdown draft in the panel next to the terminal instead of printing it as chat prose.
|
||||
- **`archive_panel`** — saves the current draft as a Markdown file into the project's archive directory (`archiveDir` in the project's `ai-control.json`).
|
||||
- **`archive_panel`** — saves the current draft as a Markdown file into the project's archive directory (`archiveHome` in the project's `.ai-control/config.json`).
|
||||
|
||||
The panel docks into the terminal window and can be detached into its own window; the title is taken from the draft's first heading and can be edited, the content is editable too. Spell checking follows `spellcheckLang` (per-text override in the panel).
|
||||
|
||||
@@ -123,14 +123,18 @@ Prerequisites: Rust (stable), Node.js/npm. `dev.sh`/`build.sh` expect `CARGO_HOM
|
||||
```
|
||||
~/.config/ai-control/
|
||||
├── settings.json app settings (see below)
|
||||
├── projects.json project registry: name → directory
|
||||
├── projects.json project registry: project id → directory
|
||||
│ + pool assignment (machine-local)
|
||||
└── pools/<pool>/ one Claude config directory per pool
|
||||
└── pool.json name + credential type
|
||||
|
||||
<project directory>/ any path, mapped via the registry
|
||||
├── .claude/ Claude Code project configuration
|
||||
└── ai-control.json pool assignment, terminal settings,
|
||||
panel archive directory (archiveDir)
|
||||
└── .ai-control/ syncs with the project
|
||||
├── config.json project id (UUID) + display name,
|
||||
│ terminal settings, panel archive
|
||||
│ directory (archiveHome)
|
||||
└── icon.png project icon
|
||||
```
|
||||
|
||||
### settings.json
|
||||
|
||||
Reference in New Issue
Block a user