@diegopetrucci/pi-extensions 0.1.33 → 0.1.35

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.
Files changed (42) hide show
  1. package/.pi-fleet-tested-version +1 -0
  2. package/README.md +1 -3
  3. package/extensions/agent-workflow-audit/.pi-fleet-tested-version +1 -0
  4. package/extensions/agent-workflow-audit/package.json +11 -3
  5. package/extensions/brrr/.pi-fleet-tested-version +1 -0
  6. package/extensions/brrr/package.json +10 -3
  7. package/extensions/confirm-destructive/.pi-fleet-tested-version +1 -0
  8. package/extensions/confirm-destructive/package.json +9 -3
  9. package/extensions/context-cap/.pi-fleet-tested-version +1 -0
  10. package/extensions/context-cap/package.json +9 -3
  11. package/extensions/context-inspector/.pi-fleet-tested-version +1 -0
  12. package/extensions/context-inspector/package.json +10 -3
  13. package/extensions/dirty-repo-guard/.pi-fleet-tested-version +1 -0
  14. package/extensions/dirty-repo-guard/package.json +9 -3
  15. package/extensions/gnosis/.pi-fleet-tested-version +1 -0
  16. package/extensions/gnosis/package.json +11 -3
  17. package/extensions/inline-bash/.pi-fleet-tested-version +1 -0
  18. package/extensions/inline-bash/package.json +10 -3
  19. package/extensions/librarian/.pi-fleet-tested-version +1 -0
  20. package/extensions/librarian/README.md +1 -1
  21. package/extensions/librarian/index.ts +2 -2
  22. package/extensions/librarian/package.json +11 -3
  23. package/extensions/minimal-footer/.pi-fleet-tested-version +1 -0
  24. package/extensions/minimal-footer/package.json +9 -3
  25. package/extensions/notify/.pi-fleet-tested-version +1 -0
  26. package/extensions/notify/package.json +9 -3
  27. package/extensions/openai-fast/.pi-fleet-tested-version +1 -0
  28. package/extensions/openai-fast/package.json +10 -3
  29. package/extensions/oracle/.pi-fleet-tested-version +1 -0
  30. package/extensions/oracle/index.ts +8 -16
  31. package/extensions/oracle/package.json +10 -3
  32. package/extensions/permission-gate/.pi-fleet-tested-version +1 -0
  33. package/extensions/permission-gate/package.json +9 -3
  34. package/extensions/quiet-tools/.pi-fleet-tested-version +1 -0
  35. package/extensions/quiet-tools/package.json +10 -3
  36. package/extensions/review/.pi-fleet-tested-version +1 -0
  37. package/extensions/review/package.json +11 -3
  38. package/extensions/todo/.pi-fleet-tested-version +1 -0
  39. package/extensions/todo/package.json +10 -3
  40. package/extensions/triage-comments/.pi-fleet-tested-version +1 -0
  41. package/extensions/triage-comments/package.json +11 -3
  42. package/package.json +12 -2
@@ -0,0 +1 @@
1
+ 0.76.0
package/README.md CHANGED
@@ -2,8 +2,6 @@
2
2
 
3
3
  A collection of [pi](https://github.com/earendil-works/pi-mono) agent extensions I made.
4
4
 
5
- **License note:** This root collection package is mixed-licensed: most of it is MIT, while [`extensions/review`](./extensions/review) is Apache-2.0 and includes its own [LICENSE](./extensions/review/LICENSE).
6
-
7
5
  - [`agent-workflow-audit`](./extensions/agent-workflow-audit): Adds `/agent-workflow-audit`, which runs an isolated repo workflow audit subagent and returns only the final distilled report to the main session.
8
6
  - [`brrr`](./extensions/brrr): Sends brrr push notifications when pi finishes an agent turn and is ready for input, with optional macOS idle gating.
9
7
  - [`confirm-destructive`](./extensions/confirm-destructive): Confirms before destructive session actions like clear, switch, and fork.
@@ -12,7 +10,7 @@ A collection of [pi](https://github.com/earendil-works/pi-mono) agent extensions
12
10
  - [`dirty-repo-guard`](./extensions/dirty-repo-guard): Prompts before new sessions, session switches, or forks when the current git repo has uncommitted changes.
13
11
  - [`gnosis`](./extensions/gnosis): Exposes the `gn` repo-local knowledge base CLI as an agent tool for searching and recording durable project decisions, constraints, and intent.
14
12
  - [`inline-bash`](./extensions/inline-bash): Expands `!{command}` snippets in user prompts by running them through bash before the prompt reaches the agent.
15
- - [`librarian`](./extensions/librarian): Adds a GitHub research scout with a local repo checkout cache enabled by default under the OS user cache directory, toggleable with `/librarian-cache`, with cached repos expiring after 30 days of non-use.
13
+ - [`librarian`](./extensions/librarian): Adds a GitHub research scout with a local repo checkout cache enabled by default under the OS user cache directory, toggleable with `/librarian-cache`, with cached repos expiring after 7 days of non-use.
16
14
  - [`minimal-footer`](./extensions/minimal-footer): Replaces pi's built-in footer with a minimal configurable two-line layout: branch/repo on the first line, context/model on the second, optional `DUMB ZONE`, plus OpenAI Codex 5-hour and 7-day usage when available.
17
15
  - [`notify`](./extensions/notify): Sends configurable terminal, desktop, bell, and sound notifications when pi finishes and is ready for input.
18
16
  - [`openai-fast`](./extensions/openai-fast): Adds `/fast` to enable OpenAI Codex Fast mode for ChatGPT-auth GPT-5.4 and GPT-5.5 by injecting the priority service tier.
@@ -1,8 +1,15 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-agent-workflow-audit",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that runs an isolated repo workflow audit and returns only the final report to the main session.",
5
- "keywords": ["pi-package", "pi", "agents", "workflow", "audit", "subagent"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "agents",
9
+ "workflow",
10
+ "audit",
11
+ "subagent"
12
+ ],
6
13
  "license": "MIT",
7
14
  "repository": {
8
15
  "type": "git",
@@ -11,7 +18,8 @@
11
18
  },
12
19
  "files": [
13
20
  "index.ts",
14
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
15
23
  ],
16
24
  "publishConfig": {
17
25
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-brrr",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that sends brrr push notifications when pi is ready for input.",
5
- "keywords": ["pi-package", "pi", "brrr", "notification", "push"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "brrr",
9
+ "notification",
10
+ "push"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -12,7 +18,8 @@
12
18
  "files": [
13
19
  "index.ts",
14
20
  "README.md",
15
- "brrr.example.json"
21
+ "brrr.example.json",
22
+ ".pi-fleet-tested-version"
16
23
  ],
17
24
  "publishConfig": {
18
25
  "access": "public"
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-confirm-destructive",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A pi extension that confirms destructive session actions.",
5
- "keywords": ["pi-package", "pi", "session", "safety"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "session",
9
+ "safety"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -11,7 +16,8 @@
11
16
  },
12
17
  "files": [
13
18
  "index.ts",
14
- "README.md"
19
+ "README.md",
20
+ ".pi-fleet-tested-version"
15
21
  ],
16
22
  "publishConfig": {
17
23
  "access": "public"
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-context-cap",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that caps effective model context windows at 200k tokens for earlier auto-compaction.",
5
- "keywords": ["pi-package", "pi", "context", "compaction"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "context",
9
+ "compaction"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -11,7 +16,8 @@
11
16
  },
12
17
  "files": [
13
18
  "index.ts",
14
- "README.md"
19
+ "README.md",
20
+ ".pi-fleet-tested-version"
15
21
  ],
16
22
  "publishConfig": {
17
23
  "access": "public"
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-context-inspector",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that opens a local HTML dashboard explaining where the current session context is going.",
5
- "keywords": ["pi-package", "pi", "context", "tokens", "html"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "context",
9
+ "tokens",
10
+ "html"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -11,7 +17,8 @@
11
17
  },
12
18
  "files": [
13
19
  "index.ts",
14
- "README.md"
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
15
22
  ],
16
23
  "publishConfig": {
17
24
  "access": "public"
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-dirty-repo-guard",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that prompts before session changes when the current git repo has uncommitted changes.",
5
- "keywords": ["pi-package", "pi", "git", "safety"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "git",
9
+ "safety"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -11,7 +16,8 @@
11
16
  },
12
17
  "files": [
13
18
  "index.ts",
14
- "README.md"
19
+ "README.md",
20
+ ".pi-fleet-tested-version"
15
21
  ],
16
22
  "publishConfig": {
17
23
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -1,8 +1,15 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-gnosis",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that exposes the gnosis repo-local knowledge base CLI as an agent tool.",
5
- "keywords": ["pi-package", "pi", "gnosis", "memory", "knowledge-base", "tool"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "gnosis",
9
+ "memory",
10
+ "knowledge-base",
11
+ "tool"
12
+ ],
6
13
  "license": "MIT",
7
14
  "repository": {
8
15
  "type": "git",
@@ -11,7 +18,8 @@
11
18
  },
12
19
  "files": [
13
20
  "index.ts",
14
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
15
23
  ],
16
24
  "publishConfig": {
17
25
  "access": "public"
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-inline-bash",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that expands inline bash commands in user prompts.",
5
- "keywords": ["pi-package", "pi", "bash", "input", "prompt"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "bash",
9
+ "input",
10
+ "prompt"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -11,7 +17,8 @@
11
17
  },
12
18
  "files": [
13
19
  "index.ts",
14
- "README.md"
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
15
22
  ],
16
23
  "publishConfig": {
17
24
  "access": "public"
@@ -37,7 +37,7 @@ Then reload pi:
37
37
  - Uses `gh` for GitHub search/API access
38
38
  - Uses cached local checkouts by default
39
39
  - Toggle cache behavior for future calls with `/librarian-cache on | off | toggle | status`
40
- - Cached repos are removed lazily after 30 days without use
40
+ - Cached repos are removed lazily after 7 days without use
41
41
 
42
42
  ## Commands
43
43
 
@@ -21,7 +21,7 @@ const MAX_TURNS = 10;
21
21
  const MAX_TOOL_CALLS_TO_KEEP = 80;
22
22
  const DEFAULT_BASH_TIMEOUT_SECONDS = 60;
23
23
  const MAX_RUN_MS = 10 * 60 * 1000;
24
- const CACHE_TTL_DAYS = 30;
24
+ const CACHE_TTL_DAYS = 7;
25
25
  const CACHE_TTL_MS = CACHE_TTL_DAYS * 24 * 60 * 60 * 1000;
26
26
  const CACHE_METADATA_FILE = ".pi-librarian-cache.json";
27
27
  const CACHE_MARKER_FILE = ".pi-librarian-cache-used";
@@ -560,7 +560,7 @@ export default function librarianExtension(pi: ExtensionAPI) {
560
560
  name: "librarian",
561
561
  label: "Librarian",
562
562
  description:
563
- "GitHub research scout for coding and personal-assistant tasks. Use when the answer likely lives in GitHub repos, exact repo/path locations are unknown, or you'd otherwise do exploratory gh search/tree probes plus local rg/read inspection. Librarian uses an optional 30-day local checkout cache by default; toggle it with /librarian-cache.",
563
+ "GitHub research scout for coding and personal-assistant tasks. Use when the answer likely lives in GitHub repos, exact repo/path locations are unknown, or you'd otherwise do exploratory gh search/tree probes plus local rg/read inspection. Librarian uses an optional 7-day local checkout cache by default; toggle it with /librarian-cache.",
564
564
  promptSnippet:
565
565
  "Research GitHub repositories with evidence-first path and line citations; local checkout cache is enabled by default and user-toggleable with /librarian-cache.",
566
566
  promptGuidelines: [
@@ -1,8 +1,15 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-librarian",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "A pi GitHub research scout with a toggleable local repo checkout cache under the user's OS cache directory.",
5
- "keywords": ["pi-package", "pi", "github", "research", "subagent", "cache"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "github",
9
+ "research",
10
+ "subagent",
11
+ "cache"
12
+ ],
6
13
  "license": "MIT",
7
14
  "repository": {
8
15
  "type": "git",
@@ -11,7 +18,8 @@
11
18
  },
12
19
  "files": [
13
20
  "*.ts",
14
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
15
23
  ],
16
24
  "publishConfig": {
17
25
  "access": "public"
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-minimal-footer",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "A minimal custom footer for pi.",
5
- "keywords": ["pi-package", "pi", "terminal", "footer"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "terminal",
9
+ "footer"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -13,7 +18,8 @@
13
18
  "index.ts",
14
19
  "openai-usage.ts",
15
20
  "minimal-footer.example.json",
16
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
17
23
  ],
18
24
  "publishConfig": {
19
25
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-notify",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "A pi extension that sends a notification when the agent is ready for input.",
5
- "keywords": ["pi-package", "pi", "notification", "terminal"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "notification",
9
+ "terminal"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -12,7 +17,8 @@
12
17
  "files": [
13
18
  "index.ts",
14
19
  "README.md",
15
- "notify.example.json"
20
+ "notify.example.json",
21
+ ".pi-fleet-tested-version"
16
22
  ],
17
23
  "publishConfig": {
18
24
  "access": "public"
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-openai-fast",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A pi extension that enables OpenAI Codex Fast mode for ChatGPT-auth GPT-5.4 and GPT-5.5 by injecting the priority service tier.",
5
- "keywords": ["pi-package", "pi", "openai", "codex", "fast"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "openai",
9
+ "codex",
10
+ "fast"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -12,7 +18,8 @@
12
18
  "files": [
13
19
  "index.ts",
14
20
  "openai-fast.example.json",
15
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
16
23
  ],
17
24
  "publishConfig": {
18
25
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -3,7 +3,7 @@ import { existsSync } from "node:fs";
3
3
  import * as fs from "node:fs/promises";
4
4
  import * as path from "node:path";
5
5
  import { StringEnum } from "@earendil-works/pi-ai";
6
- import { getAgentDir, getMarkdownTheme, type ExtensionAPI } from "@earendil-works/pi-coding-agent";
6
+ import { getAgentDir, getMarkdownTheme, type ExtensionAPI, type ExtensionContext } from "@earendil-works/pi-coding-agent";
7
7
  import { Container, Markdown, Spacer, Text } from "@earendil-works/pi-tui";
8
8
  import { Type } from "typebox";
9
9
 
@@ -668,7 +668,7 @@ function appendThinkingLevelClampReason(
668
668
  }
669
669
 
670
670
  async function findAvailableModel(
671
- ctx: { model?: PiModel; modelRegistry: { getAvailable(): Promise<PiModel[]> } },
671
+ ctx: { model?: PiModel; modelRegistry: { getAvailable(): PiModel[] | Promise<PiModel[]> } },
672
672
  modelRef: string,
673
673
  ): Promise<PiModel | undefined> {
674
674
  const available = await ctx.modelRegistry.getAvailable();
@@ -696,7 +696,7 @@ async function findAvailableModel(
696
696
  }
697
697
 
698
698
  async function selectOracleModel(
699
- ctx: { model?: PiModel; modelRegistry: { getAvailable(): Promise<PiModel[]> } },
699
+ ctx: { model?: PiModel; modelRegistry: { getAvailable(): PiModel[] | Promise<PiModel[]> } },
700
700
  thinkingLevelOverride?: ThinkingLevel,
701
701
  ): Promise<{ ok: true; selection: OracleSelection } | { ok: false; error: string }> {
702
702
  const available = await ctx.modelRegistry.getAvailable();
@@ -752,14 +752,7 @@ async function selectOracleModel(
752
752
  };
753
753
  }
754
754
 
755
- function updateOracleUi(ctx: Parameters<ExtensionAPI["registerCommand"]>[1]["handler"] extends (
756
- args: any,
757
- ctx: infer T,
758
- ) => any
759
- ? T
760
- : never,
761
- activeRuns: Map<string, OracleUiRun>,
762
- ): void {
755
+ function updateOracleUi(ctx: ExtensionContext, activeRuns: Map<string, OracleUiRun>): void {
763
756
  if (!ctx.hasUI) return;
764
757
  const theme = ctx.ui.theme;
765
758
  if (activeRuns.size === 0) {
@@ -1193,7 +1186,6 @@ export default function oracleExtension(pi: ExtensionAPI) {
1193
1186
  durationMs: 0,
1194
1187
  cwd: params.cwd ?? ctx.cwd,
1195
1188
  },
1196
- isError: true,
1197
1189
  };
1198
1190
  }
1199
1191
  selection = selectionResult.selection;
@@ -1213,7 +1205,6 @@ export default function oracleExtension(pi: ExtensionAPI) {
1213
1205
  return {
1214
1206
  content: [{ type: "text", text: result.error }],
1215
1207
  details: result.details,
1216
- isError: true,
1217
1208
  };
1218
1209
  }
1219
1210
 
@@ -1244,7 +1235,8 @@ export default function oracleExtension(pi: ExtensionAPI) {
1244
1235
  const body = result.content[0]?.type === "text" ? result.content[0].text : "(no output)";
1245
1236
  if (!details) return new Text(body, 0, 0);
1246
1237
 
1247
- const icon = result.isError ? theme.fg("error", "✗") : theme.fg("success", "✓");
1238
+ const isError = (details.exitCode ?? 0) !== 0;
1239
+ const icon = isError ? theme.fg("error", "✗") : theme.fg("success", "✓");
1248
1240
  const header = `${icon} ${theme.fg("toolTitle", theme.bold("oracle "))}${theme.fg("accent", details.modelRef || "(auto)")}`;
1249
1241
  const subheader = [
1250
1242
  details.thinkingLevel !== "off" ? details.thinkingLevel : undefined,
@@ -1260,7 +1252,7 @@ export default function oracleExtension(pi: ExtensionAPI) {
1260
1252
  if (subheader) text += `\n${theme.fg("dim", subheader)}`;
1261
1253
  text += `\n\n${theme.fg("toolOutput", renderCollapsedText(body))}`;
1262
1254
  if (usage) text += `\n\n${theme.fg("dim", usage)}`;
1263
- if (result.isError && details.stderr) text += `\n${theme.fg("error", renderCollapsedText(details.stderr, 4))}`;
1255
+ if (isError && details.stderr) text += `\n${theme.fg("error", renderCollapsedText(details.stderr, 4))}`;
1264
1256
  text += `\n${theme.fg("muted", "(Ctrl+O to expand)")}`;
1265
1257
  return new Text(text, 0, 0);
1266
1258
  }
@@ -1283,7 +1275,7 @@ export default function oracleExtension(pi: ExtensionAPI) {
1283
1275
  container.addChild(new Spacer(1));
1284
1276
  container.addChild(new Text(theme.fg("muted", "stderr"), 0, 0));
1285
1277
  container.addChild(
1286
- new Text(result.isError ? theme.fg("error", details.stderr) : theme.fg("dim", details.stderr), 0, 0),
1278
+ new Text(isError ? theme.fg("error", details.stderr) : theme.fg("dim", details.stderr), 0, 0),
1287
1279
  );
1288
1280
  }
1289
1281
  return container;
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-oracle",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "description": "An Amp-style oracle extension for pi that consults the strongest reasoning model on your current provider.",
5
- "keywords": ["pi-package", "pi", "oracle", "reasoning", "subagent"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "oracle",
9
+ "reasoning",
10
+ "subagent"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -11,7 +17,8 @@
11
17
  },
12
18
  "files": [
13
19
  "index.ts",
14
- "README.md"
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
15
22
  ],
16
23
  "publishConfig": {
17
24
  "access": "public"
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-permission-gate",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A pi extension that prompts before dangerous bash commands.",
5
- "keywords": ["pi-package", "pi", "security", "bash"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "security",
9
+ "bash"
10
+ ],
6
11
  "license": "MIT",
7
12
  "repository": {
8
13
  "type": "git",
@@ -11,7 +16,8 @@
11
16
  },
12
17
  "files": [
13
18
  "index.ts",
14
- "README.md"
19
+ "README.md",
20
+ ".pi-fleet-tested-version"
15
21
  ],
16
22
  "publishConfig": {
17
23
  "access": "public"
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-quiet-tools",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A pi extension that visually compacts collapsed built-in tool rows in the TUI without changing tool results sent to the model.",
5
- "keywords": ["pi-package", "pi", "tools", "terminal", "tui"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "tools",
9
+ "terminal",
10
+ "tui"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -11,7 +17,8 @@
11
17
  },
12
18
  "files": [
13
19
  "index.ts",
14
- "README.md"
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
15
22
  ],
16
23
  "publishConfig": {
17
24
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -1,8 +1,15 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-review",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A standalone pi extension that adds /review and /end-review commands adapted from mitsuhiko/agent-stuff.",
5
- "keywords": ["pi-package", "pi", "review", "code-review", "git", "github"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "review",
9
+ "code-review",
10
+ "git",
11
+ "github"
12
+ ],
6
13
  "license": "Apache-2.0",
7
14
  "repository": {
8
15
  "type": "git",
@@ -12,7 +19,8 @@
12
19
  "files": [
13
20
  "index.ts",
14
21
  "README.md",
15
- "LICENSE"
22
+ "LICENSE",
23
+ ".pi-fleet-tested-version"
16
24
  ],
17
25
  "publishConfig": {
18
26
  "access": "public"
@@ -0,0 +1 @@
1
+ 0.76.0
@@ -1,8 +1,14 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-todo",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A pi extension that adds a branch-aware todo tool and /todos viewer.",
5
- "keywords": ["pi-package", "pi", "todo", "tool", "session"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "todo",
9
+ "tool",
10
+ "session"
11
+ ],
6
12
  "license": "MIT",
7
13
  "repository": {
8
14
  "type": "git",
@@ -11,7 +17,8 @@
11
17
  },
12
18
  "files": [
13
19
  "index.ts",
14
- "README.md"
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
15
22
  ],
16
23
  "publishConfig": {
17
24
  "access": "public"
@@ -1,8 +1,15 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-triage-comments",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A pi extension that adds /triage-comments and a read-only triage_comments subagent tool for review-comment triage.",
5
- "keywords": ["pi-package", "pi", "triage", "comments", "review", "subagent"],
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "triage",
9
+ "comments",
10
+ "review",
11
+ "subagent"
12
+ ],
6
13
  "license": "MIT",
7
14
  "repository": {
8
15
  "type": "git",
@@ -11,7 +18,8 @@
11
18
  },
12
19
  "files": [
13
20
  "index.ts",
14
- "README.md"
21
+ "README.md",
22
+ ".pi-fleet-tested-version"
15
23
  ],
16
24
  "publishConfig": {
17
25
  "access": "public"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-extensions",
3
- "version": "0.1.33",
3
+ "version": "0.1.35",
4
4
  "description": "A collection of pi extensions for context management, workflow audits, review-comment triage, notifications, brrr push alerts, safety guards, GitHub research, repo-local knowledge, todos, tool rendering, and model/provider helpers.",
5
5
  "keywords": [
6
6
  "pi-package",
@@ -17,7 +17,8 @@
17
17
  "extensions",
18
18
  "assets",
19
19
  "README.md",
20
- "LICENSE"
20
+ "LICENSE",
21
+ ".pi-fleet-tested-version"
21
22
  ],
22
23
  "workspaces": [
23
24
  "extensions/*"
@@ -53,5 +54,14 @@
53
54
  "./extensions/triage-comments/index.ts"
54
55
  ],
55
56
  "image": "https://raw.githubusercontent.com/diegopetrucci/pi-extensions/main/assets/oracle-preview.svg"
57
+ },
58
+ "devDependencies": {
59
+ "@earendil-works/pi-ai": "^0.76.0",
60
+ "@earendil-works/pi-coding-agent": "^0.76.0",
61
+ "@earendil-works/pi-tui": "^0.76.0",
62
+ "@types/node": "^25.9.1",
63
+ "husky": "^9.1.7",
64
+ "typebox": "^1.1.38",
65
+ "typescript": "^6.0.3"
56
66
  }
57
67
  }