pi-extensions 0.1.16 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.2 - 2026-02-02
4
+
5
+ ### Changed
6
+ - **BREAKING:** Changed `before_agent_start` handler to use `systemPrompt` instead of deprecated `systemPromptAppend` (Pi v0.39.0+)
7
+
3
8
  ## 0.1.0 - 2026-01-13
4
9
  - Initial release.
@@ -113,7 +113,7 @@ export default function agentGuidance(pi: ExtensionAPI) {
113
113
  const agentDir = path.join(process.env.HOME || "", ".pi", "agent");
114
114
  const config = loadConfig(agentDir);
115
115
 
116
- pi.on("before_agent_start", async (_event, ctx) => {
116
+ pi.on("before_agent_start", async (event, ctx) => {
117
117
  const provider = ctx.model?.provider;
118
118
  if (!provider) return;
119
119
 
@@ -142,6 +142,6 @@ export default function agentGuidance(pi: ExtensionAPI) {
142
142
  append += `## ${p}\n\n${content}\n\n`;
143
143
  }
144
144
 
145
- return { systemPromptAppend: append };
145
+ return { systemPrompt: event.systemPrompt + append };
146
146
  });
147
147
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tmustier/pi-agent-guidance",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Loads provider-specific context files (CLAUDE.md, CODEX.md, GEMINI.md) based on current model.",
5
5
  "license": "MIT",
6
6
  "author": "Thomas Mustier",
@@ -2,6 +2,11 @@
2
2
 
3
3
  All notable changes to this extension will be documented in this file.
4
4
 
5
+ ## [0.1.13] - 2026-02-02
6
+
7
+ ### Changed
8
+ - **BREAKING:** Renamed `/files` command to `/readfiles` to avoid conflict with Pi's new built-in `/files` command (Pi v0.50.2+)
9
+
5
10
  ## [0.1.11] - 2026-01-26
6
11
 
7
12
  ### Changed
@@ -20,7 +20,7 @@ export default function editorExtension(pi: ExtensionAPI): void {
20
20
  const requiredDeps = ["bat", "delta", "glow"] as const;
21
21
  const getMissingDeps = () => requiredDeps.filter((dep) => !hasCommand(dep));
22
22
 
23
- pi.registerCommand("files", {
23
+ pi.registerCommand("readfiles", {
24
24
  description: "Open file browser",
25
25
  handler: async (_args, ctx) => {
26
26
  const missing = getMissingDeps();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tmustier/pi-files-widget",
3
- "version": "0.1.12",
3
+ "version": "0.1.13",
4
4
  "description": "In-terminal file browser and viewer for Pi.",
5
5
  "license": "MIT",
6
6
  "author": "Thomas Mustier",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-extensions",
3
- "version": "0.1.16",
3
+ "version": "0.1.17",
4
4
  "private": false,
5
5
  "keywords": [
6
6
  "pi-package"
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.4 - 2026-02-02
4
+
5
+ ### Changed
6
+ - **BREAKING:** Updated tool execute signatures for Pi v0.51.0 compatibility (`signal` parameter now comes before `onUpdate`)
7
+ - **BREAKING:** Changed `before_agent_start` handler to use `systemPrompt` instead of deprecated `systemPromptAppend` (Pi v0.39.0+)
8
+
3
9
  ## 0.1.3 - 2026-01-26
4
10
  - Added note clarifying this is a flat version without subagents.
5
11
 
@@ -609,7 +609,7 @@ Examples:
609
609
  reflectEvery: Type.Optional(Type.Number({ description: "Reflect every N iterations" })),
610
610
  maxIterations: Type.Optional(Type.Number({ description: "Max iterations (default: 50)", default: 50 })),
611
611
  }),
612
- async execute(_toolCallId, params, _onUpdate, ctx) {
612
+ async execute(_toolCallId, params, _signal, _onUpdate, ctx) {
613
613
  const loopName = sanitize(params.name);
614
614
  const taskFile = path.join(RALPH_DIR, `${loopName}.md`);
615
615
 
@@ -654,7 +654,7 @@ Examples:
654
654
  label: "Ralph Iteration Done",
655
655
  description: "Signal that you've completed this iteration of the Ralph loop. Call this after making progress to get the next iteration prompt. Do NOT call this if you've output the completion marker.",
656
656
  parameters: Type.Object({}),
657
- async execute(_toolCallId, _params, _onUpdate, ctx) {
657
+ async execute(_toolCallId, _params, _signal, _onUpdate, ctx) {
658
658
  if (!currentLoop) {
659
659
  return { content: [{ type: "text", text: "No active Ralph loop." }], details: {} };
660
660
  }
@@ -726,7 +726,7 @@ Examples:
726
726
  instructions += `- Otherwise, call ralph_done tool to proceed to next iteration`;
727
727
 
728
728
  return {
729
- systemPromptAppend: `\n[RALPH LOOP - ${state.name} - Iteration ${iterStr}]\n\n${instructions}`,
729
+ systemPrompt: event.systemPrompt + `\n[RALPH LOOP - ${state.name} - Iteration ${iterStr}]\n\n${instructions}`,
730
730
  };
731
731
  });
732
732
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tmustier/pi-ralph-wiggum",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Long-running agent loops for iterative development in Pi.",
5
5
  "license": "MIT",
6
6
  "author": "Thomas Mustier",