Something went wrong. Try again.
fork of prime agent with changes i want but are not upstreamable probqbly (and some fixes)
Something went wrong. Try again.
1.0 kB · 41 lines
TypeScript
at main
123456789101112131415161718192021222324252627282930313233343536373839404142/** * File Trigger Extension * * Watches a trigger file and injects its contents into the conversation. * Useful for external systems to send messages to the agent. * * Usage: * echo "Run the tests" > /tmp/agent-trigger.txt */
import * as fs from "node:fs";import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
export default function (pi: ExtensionAPI) { pi.on("session_start", async (_event, ctx) => { const triggerFile = "/tmp/agent-trigger.txt";
fs.watch(triggerFile, () => { try { const content = fs.readFileSync(triggerFile, "utf-8").trim(); if (content) { pi.sendMessage( { customType: "file-trigger", content: `External trigger: ${content}`, display: true, }, { triggerTurn: true }, // triggerTurn - get LLM to respond ); fs.writeFileSync(triggerFile, ""); // Clear after reading } } catch { // File might not exist yet } });
if (ctx.hasUI) { ctx.ui.notify(`Watching ${triggerFile}`, "info"); } });}