Panel: Entwürfe archivieren, Titel aus Überschrift, Titel-Edit

- Archiv pro Projekt: Panel-Button „Archivieren" und MCP-Tool archive_panel
  legen den Entwurf als <YYYY-MM-DD_HHMM>-<slug>.md mit Frontmatter im
  Archiv-Ordner ab. Ordner in ai-control.json (archiveDir) + als
  additionalDirectories/Edit in .claude/settings.json (scanbar). Kein Ordner:
  Panel öffnet Ordner-Dialog, Zuruf nutzt Argument dir.
- Panel-Titel zeigt die erste Überschrift des Entwurfs (Inline-Markdown
  gestrippt), Fallback „Entwurf"; Bleistift-Button macht ihn editierbar,
  schreibt die Überschrift via panel_set zurück.
- Panel-Kopf zweizeilig: Titel + Edit oben, Aktionen rechtsbündig darunter.
- AI_CONTROL_PROJECT als PTY-Env für den MCP-Server.
This commit is contained in:
marcus.hinz
2026-07-11 13:40:17 +02:00
parent 8aa758ae64
commit e2e9992b1c
8 changed files with 508 additions and 44 deletions
+38 -10
View File
@@ -212,11 +212,10 @@
}
.panel-head {
flex: none;
height: 36px;
display: flex;
align-items: center;
gap: 6px;
padding: 0 8px 0 12px;
flex-direction: column;
gap: 2px;
padding: 6px 8px 8px 12px;
border-bottom: 1px solid #313244;
font:
500 12px/1 -apple-system,
@@ -225,10 +224,33 @@
user-select: none;
-webkit-user-select: none;
}
.panel-titlerow {
display: flex;
align-items: center;
gap: 2px;
min-width: 0;
}
.panel-actions {
display: flex;
align-items: center;
justify-content: flex-end;
gap: 2px;
}
.panel-title {
margin-right: auto;
flex: 0 1 auto;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #a6adc8;
}
.panel-title[contenteditable="true"] {
overflow: visible;
text-overflow: clip;
outline: none;
color: inherit;
cursor: text;
}
.panel-btn {
border: none;
background: transparent;
@@ -345,11 +367,17 @@
<div id="splitter" hidden></div>
<aside id="panel" hidden>
<div class="panel-head">
<span class="panel-title">Entwurf</span>
<button class="panel-btn" id="panel-mode" title="Rohtext / gerendert">MD</button>
<button class="panel-btn" id="panel-copy" title="In die Zwischenablage">Kopieren</button>
<button class="panel-btn" id="panel-detach" title="In eigenes Fenster ablösen"></button>
<button class="panel-btn" id="panel-hide" title="Panel ausblenden"></button>
<div class="panel-titlerow">
<span class="panel-title">Entwurf</span>
<button class="panel-btn panel-edit" id="panel-title-edit" title="Titel bearbeiten"></button>
</div>
<div class="panel-actions">
<button class="panel-btn" id="panel-mode" title="Rohtext / gerendert">MD</button>
<button class="panel-btn" id="panel-copy" title="In die Zwischenablage">Kopieren</button>
<button class="panel-btn" id="panel-archive" title="In den Archiv-Ordner speichern">Archivieren</button>
<button class="panel-btn" id="panel-detach" title="In eigenes Fenster ablösen"></button>
<button class="panel-btn" id="panel-hide" title="Panel ausblenden"></button>
</div>
</div>
<div id="panel-content" class="md"></div>
</aside>