Run tests when resetting pi, so we do not forget to run tests

This commit is contained in:
Willem van den Ende 2026-07-07 13:18:04 +01:00
parent 6b5329bd75
commit 716bfb4b12

View File

@ -0,0 +1,37 @@
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
export default function (pi: ExtensionAPI) {
pi.on("session_start", async (_event, ctx) => {
try {
const { stdout, stderr, code } = await pi.exec("make", ["test"]);
const output = stdout + stderr;
if (code === 0) {
ctx.ui.notify("make test passed", "info");
} else {
ctx.ui.notify(`make test failed (exit ${code})`, "error");
}
// Also send the output as a message so it's visible in the session
pi.sendMessage({
customType: "run-make-test",
content: [
{
type: "text",
text: `Here's the result of running \`make test\`:\n\n\`\`\`\n${output}\`\`\``,
},
],
display: true,
}, { deliverAs: "followUp" });
} catch (error) {
const message = error instanceof Error ? error.message : String(error);
pi.sendMessage({
customType: "run-make-test",
content: [
{ type: "text", text: `Error running make test: ${message}` },
],
display: true,
}, { deliverAs: "followUp" });
}
});
}