pi-atelier.json: modernise to the current schema (0.7+/0.8 keys)

The config was written against pi-atelier's pre-0.7 vocabulary and had drifted
behind upstream. It still LOADED — 0.7.x/0.8.0 keep reading the old keys — but
only through compatibility shims, and it was missing every sidebar control that
pi-atelier has added since:

  - `segments` (flat id list)  -> `segmentLayout` (ordered, explicit per-segment
    `visible`). Upstream routes the old key through `parseLegacySegments()` and
    treats it as non-authoritative.
  - `ornament: "none"`         -> `{"id":"brand","visible":false}`. types.ts calls
    Ornament "legacy menu vocabulary ... translated to Brand visibility".
  - `showExtensionStatuses`    -> `{"id":"statuses","visible":true}`. Upstream
    maps it onto statuses visibility; the README states Brand and Statuses
    rendering "is controlled only by this normalized layout".
  - added `showSidebarAgent`, `showSidebarTodos`, `showSidebarOnStartup` — the
    last of which did not exist when this file was written (added in 0.8.0).

Every deliberate choice in the old file is preserved exactly: editorial preset,
alt+a, compact density, 60/85 context thresholds (earlier than upstream's
70/90), 3 currency decimals, session actions on, sidebar tool names on,
completion notifications off (desktop toasts are noise in a container). The two
segments the old `segments` list omitted — brand and performance — are now
explicitly hidden rather than implicitly absent.

Verified by loading both the old and new file through pi-atelier 0.8.0's own
`loadConfig()`: zero warnings from each, and identical EFFECTIVE config
(same visible segments, density, thresholds, panels) — so this is a pure
schema modernisation with no behaviour change.

`sidebarPanelLayout` is deliberately NOT set. Declaring it makes the user file
authoritative for the panel set, which would freeze it as upstream adds panels
(its README notes Subagents/Skills are "intentionally not implemented" — i.e.
plausibly coming). Omitting it keeps the product default, currently all eight
panels.

Context: pi-devbox v1.7.0 vendors pi-atelier into the image at a pinned tag, so
this file goes from "config for a thing you hand-installed" to the default
every container gets.
This commit is contained in:
2026-08-07 21:31:06 +02:00
parent 4b4b76e80e
commit 0e1369e6b4
2 changed files with 21 additions and 5 deletions
+7 -2
View File
@@ -11,8 +11,13 @@
# (e.g. "read the pi-extensions skill at session start"). # (e.g. "read the pi-extensions skill at session start").
# - settings.example.json : template for ~/.pi/agent/settings.json so pi # - settings.example.json : template for ~/.pi/agent/settings.json so pi
# starts without --provider/--model. Copy + edit. # starts without --provider/--model. Copy + edit.
# - pi-atelier.json : default Status Rail config for the pi-atelier # - pi-atelier.json : default Status Rail + Sidebar config for the
# extension (cp'd, not symlinked — see below). # pi-atelier extension (cp'd, not symlinked — see below).
# Written in pi-atelier's CURRENT schema (segmentLayout
# with explicit per-segment visibility, plus the
# showSidebar* toggles), not the pre-0.7 compatibility
# keys (`segments`, `ornament`, `showExtensionStatuses`),
# which upstream still reads but only as legacy inputs.
# #
# No dependency on MemPalace. For the palace bridge see # No dependency on MemPalace. For the palace bridge see
# https://gitea.jordbo.se/joakimp/mempalace-toolkit (optional). # https://gitea.jordbo.se/joakimp/mempalace-toolkit (optional).
+14 -3
View File
@@ -1,14 +1,25 @@
{ {
"preset": "editorial", "preset": "editorial",
"shortcut": "alt+a", "shortcut": "alt+a",
"segments": ["activity", "metrics", "context", "model", "git", "statuses", "menu"],
"density": "compact", "density": "compact",
"ornament": "none", "segmentLayout": [
{ "id": "brand", "visible": false },
{ "id": "activity", "visible": true },
{ "id": "metrics", "visible": true },
{ "id": "performance", "visible": false },
{ "id": "context", "visible": true },
{ "id": "model", "visible": true },
{ "id": "git", "visible": true },
{ "id": "statuses", "visible": true },
{ "id": "menu", "visible": true }
],
"contextWarning": 60, "contextWarning": 60,
"contextDanger": 85, "contextDanger": 85,
"currencyDecimals": 3, "currencyDecimals": 3,
"showExtensionStatuses": true,
"showSessionActions": true, "showSessionActions": true,
"showSidebarToolNames": true, "showSidebarToolNames": true,
"showSidebarAgent": true,
"showSidebarTodos": true,
"showSidebarOnStartup": true,
"completionNotifications": false "completionNotifications": false
} }