@normful/picadillo 4.0.0 → 5.0.0

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## [5.0.0] - 2026-02-17
2
+
3
+ ### 🚀 Features
4
+
5
+ - *(overstory)* Ensure extension runs only in an Overstory git repository
1
6
  ## [4.0.0] - 2026-02-17
2
7
 
3
8
  ### 🚀 Features
@@ -11,6 +16,7 @@
11
16
  ### ⚙️ Miscellaneous Tasks
12
17
 
13
18
  - Shorten package.json description, fix overstory repo URL
19
+ - Release 4.0.0
14
20
  ## [3.0.0] - 2026-02-17
15
21
 
16
22
  ### 🚀 Features
@@ -177,7 +177,30 @@ export async function handleSessionShutdown(
177
177
  await Promise.all([logSessionEnd(execFn), mulchLearn(execFn)]);
178
178
  }
179
179
 
180
- export default function (pi: ExtensionAPI) {
180
+ export async function isOverstoryRepo(
181
+ execFn: ExtensionAPI["exec"],
182
+ ): Promise<boolean> {
183
+ try {
184
+ // Get the git repo root directory (fails if not in a git repo)
185
+ const gitRootResult = await execFn("git", ["rev-parse", "--show-toplevel"]);
186
+ const gitRoot = gitRootResult.stdout.trim();
187
+
188
+ // Check if .overstory directory exists in the git repo root
189
+ const overstoryDirResult = await execFn("ls", ["-d", `${gitRoot}/.overstory`]);
190
+ if (overstoryDirResult.code !== 0) {
191
+ return false; // No .overstory directory
192
+ }
193
+ return true;
194
+ } catch (e) {
195
+ return false; // Not in a git repo or other error
196
+ }
197
+ }
198
+
199
+ export default async function (pi: ExtensionAPI) {
200
+ if (!(await isOverstoryRepo(pi.exec))) {
201
+ return;
202
+ }
203
+
181
204
  pi.on("session_start", async (_event, _ctx) => {
182
205
  await handleSessionStart(pi.exec, pi.sendMessage);
183
206
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@normful/picadillo",
3
- "version": "4.0.0",
3
+ "version": "5.0.0",
4
4
  "private": false,
5
5
  "description": "pi agent skills & extensions: run-in-tmux, parrot, mulch, overstory",
6
6
  "keywords": [