This commit is contained in:
marcus hinz
2026-07-12 00:35:09 +02:00
parent ce4e48e311
commit b1a2291aef
4 changed files with 20 additions and 11 deletions
+4
View File
@@ -19,3 +19,7 @@ Nicht für normale Chat-Antworten, kurze Bestätigungen oder Code im laufenden D
1. `write_panel` mit dem vollständigen Entwurf als Argument `text` aufrufen (Markdown-Rohtext, das Panel rendert ihn). Das Panel blendet sich beim Schreiben automatisch ein.
2. Den Text **nicht** zusätzlich als Fließtext in den Chat schreiben — im Chat nur kurz bestätigen (z. B. „Entwurf im Panel.").
3. Ist das Tool nicht verfügbar (Terminal außerhalb von ai-control), den Text normal im Chat ausgeben.
## Panel leer öffnen
Soll das Panel ohne konkreten Inhalt geöffnet werden („mach das Panel auf", „Panel öffnen"), `write_panel` mit dem neutralen Platzhalter `Panel` aufrufen — leerer Text blendet das Panel nicht ein. Keinen erklärenden, werbenden oder ausgedachten Einleitungstext erfinden.
+1 -2
View File
@@ -2344,8 +2344,6 @@ fn serve_popup_dbus(app: tauri::AppHandle) -> zbus::Result<()> {
/// Haupt-App: reine Tray-App ohne Dock-Eintrag.
fn main_builder() -> tauri::Builder<tauri::Wry> {
use tauri::Manager;
tauri::Builder::default()
.plugin(tauri_plugin_autostart::init(
tauri_plugin_autostart::MacosLauncher::LaunchAgent,
@@ -2417,6 +2415,7 @@ fn main_builder() -> tauri::Builder<tauri::Wry> {
#[cfg(not(target_os = "linux"))]
{
use tauri::tray::{MouseButton, MouseButtonState, TrayIconBuilder, TrayIconEvent};
use tauri::Manager;
#[cfg(target_os = "macos")]
let icon = tauri::image::Image::from_bytes(include_bytes!("../icons/trayTemplate.png"))?;
#[cfg(not(target_os = "macos"))]
+5 -3
View File
@@ -170,7 +170,8 @@ pub fn build_window(
/// Startet die PTY für das rufende Fenster: das konfigurierte Claude-Kommando
/// (settings.json: claudeCommand, Default claude) im Projektordner, mit dem
/// Pool-Verzeichnis als CLAUDE_CONFIG_DIR. zsh -i lädt die .zshrc (PATH, fnm).
/// Pool-Verzeichnis als CLAUDE_CONFIG_DIR. Die Login-Shell aus $SHELL (-l)
/// baut den PATH aus ihren Profil-Dateien auf — shell-agnostisch.
#[tauri::command]
pub fn term_start(
window: tauri::WebviewWindow,
@@ -195,8 +196,9 @@ pub fn term_start(
}
let _ = std::fs::write(&panel_path, "");
let mut cmd = CommandBuilder::new("/bin/zsh");
cmd.args(["-ic", &crate::claude_command(&paths)]);
let shell = std::env::var("SHELL").unwrap_or_else(|_| "/bin/sh".into());
let mut cmd = CommandBuilder::new(&shell);
cmd.args(["-lc", &crate::claude_command(&paths)]);
cmd.cwd(&cwd);
cmd.env("TERM", "xterm-256color");
cmd.env("AI_CONTROL_PANEL", &panel_path);