32ae17cc9f
Reduce .env to just REPOS_HOST_PATH (the projects root); runtime bootstrap moves to compose/defaults. Projects are the subdirectories of the single root — removed the project-directories feature (store table, service methods, /api/config/project-dirs, Settings section). Each project's forge is derived from its git remote (matched to a configured forge, else the bare host) and shown as a pill next to its name (State.Forge via scanner ForgeFor + svc.ForgeDisplay). Removed first-run .env seeding; forges + identity are managed in Settings. Added forge.HostOf. AGENT.md updated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
settings-panel
Intent
The UI for the config store (AGENT.md §1.5) — manage forge hosts + tokens and the
git commit identity, replacing hand-editing .env for domain config. Projects
themselves are the subdirectories of the single root set in .env, and each
project's forge is derived from its git remote (not configured here). Served at
/settings.
Public surface
- Tag:
<settings-panel> - Fetches:
GET /api/config/forges,GET /api/config/identity. - Writes:
- Forges:
POST /api/config/forges(add),DELETE /api/config/forges/:id. - Identity:
PUT /api/config/identity.
- Forges:
- Reports: results via
toastCustomEvents (needs<toast-host>on the page).
History
- 2026-09-22: created — settings UI for the SQLite config store (forges, project dirs, git identity).
- 2026-09-22: removed the Project directories section — projects are now the
subdirectories of the single
.envroot; only Forges + Git identity remain.
Notes / gotchas
- Tokens are write-only from the client: the server returns only
hasToken, never the value. Removing + re-adding a forge is how you rotate a token. - Adding/removing a forge reapplies git auth (the server sets an
http.extraheaderper forge); changes take effect immediately.