better notifs

This commit is contained in:
2026-03-04 21:14:36 +00:00
parent d95cf0699c
commit c8a646ba3e
3 changed files with 16 additions and 12 deletions
@@ -6,12 +6,14 @@
*/
import type { ExtensionAPI, SessionBeforeSwitchEvent, SessionMessageEntry } from "@mariozechner/pi-coding-agent";
import { sendNotification } from "./notify.js";
export default function (pi: ExtensionAPI) {
pi.on("session_before_switch", async (event: SessionBeforeSwitchEvent, ctx) => {
if (!ctx.hasUI) return;
if (event.reason === "new") {
sendNotification("Clear session confirmation");
const confirmed = await ctx.ui.confirm(
"Clear session?",
"This will delete all messages in the current session.",
@@ -31,6 +33,7 @@ export default function (pi: ExtensionAPI) {
);
if (hasUnsavedWork) {
sendNotification("Switch session confirmation");
const confirmed = await ctx.ui.confirm(
"Switch session?",
"You have messages in the current session. Switch anyway?",
@@ -46,6 +49,7 @@ export default function (pi: ExtensionAPI) {
pi.on("session_before_fork", async (event, ctx) => {
if (!ctx.hasUI) return;
sendNotification("Fork session confirmation");
const choice = await ctx.ui.select(`Fork from entry ${event.entryId.slice(0, 8)}?`, [
"Yes, create fork",
"No, stay in current session",