Update Pi package imports

Amolith created

Pi packages moved from the @mariozechner scope to @earendil-works.
Update the extension imports and peer dependencies so the workspace
resolves against the current packages.

Change summary

bun.lock                                   | 20 ++++++++++----------
packages/answer/package.json               |  6 +++---
packages/answer/src/QnAComponent.ts        |  2 +-
packages/answer/src/extract.ts             |  4 ++--
packages/answer/src/index.ts               |  6 +++---
packages/answer/src/prompt.ts              |  2 +-
packages/handoff/package.json              |  6 +++---
packages/handoff/src/handoff-command.ts    |  4 ++--
packages/handoff/src/handoff-extraction.ts |  4 ++--
packages/handoff/src/handoff-tool.ts       |  4 ++--
packages/handoff/src/index.ts              |  6 +++---
packages/handoff/src/model-utils.ts        |  2 +-
packages/handoff/src/session-analysis.ts   |  2 +-
packages/handoff/src/session-query-tool.ts |  6 +++---
packages/personas/package.json             |  2 +-
packages/personas/src/index.ts             |  2 +-
packages/questionnaire/package.json        |  4 ++--
packages/questionnaire/src/index.ts        |  4 ++--
18 files changed, 43 insertions(+), 43 deletions(-)

Detailed changes

bun.lock 🔗

@@ -12,9 +12,9 @@
       "name": "@amolith/pi-answer",
       "version": "0.1.0",
       "peerDependencies": {
-        "@mariozechner/pi-ai": ">=0.65.0",
-        "@mariozechner/pi-coding-agent": ">=0.65.0",
-        "@mariozechner/pi-tui": ">=0.65.0",
+        "@earendil-works/pi-ai": ">=0.65.0",
+        "@earendil-works/pi-coding-agent": ">=0.65.0",
+        "@earendil-works/pi-tui": ">=0.65.0",
         "@sinclair/typebox": ">=0.34.0",
       },
     },
@@ -22,9 +22,9 @@
       "name": "@amolith/pi-handoff",
       "version": "0.1.0",
       "peerDependencies": {
-        "@mariozechner/pi-ai": ">=0.65.0",
-        "@mariozechner/pi-coding-agent": ">=0.65.0",
-        "@mariozechner/pi-tui": ">=0.65.0",
+        "@earendil-works/pi-ai": ">=0.65.0",
+        "@earendil-works/pi-coding-agent": ">=0.65.0",
+        "@earendil-works/pi-tui": ">=0.65.0",
         "@sinclair/typebox": ">=0.34.0",
       },
     },
@@ -32,15 +32,15 @@
       "name": "@amolith/pi-personas",
       "version": "0.1.0",
       "peerDependencies": {
-        "@mariozechner/pi-coding-agent": ">=0.65.0",
+        "@earendil-works/pi-coding-agent": ">=0.65.0",
       },
     },
     "packages/questionnaire": {
       "name": "@amolith/pi-questionnaire",
       "version": "0.1.0",
       "peerDependencies": {
-        "@mariozechner/pi-coding-agent": ">=0.65.0",
-        "@mariozechner/pi-tui": ">=0.65.0",
+        "@earendil-works/pi-coding-agent": ">=0.65.0",
+        "@earendil-works/pi-tui": ">=0.65.0",
         "@sinclair/typebox": ">=0.34.0",
       },
     },
@@ -54,7 +54,7 @@
 
     "@amolith/pi-questionnaire": ["@amolith/pi-questionnaire@workspace:packages/questionnaire"],
 
-    "@anthropic-ai/sdk": ["@anthropic-ai/sdk@0.73.0", "", { "dependencies": { "json-schema-to-ts": "^3.1.1" }, "peerDependencies": { "zod": "^3.25.0 || ^4.0.0" }, "optionalPeers": ["zod"], "bin": { "anthropic-ai-sdk": "bin/cli" } }, "sha512-URURVzhxXGJDGUGFunIOtBlSl7KWvZiAAKY/ttTkZAkXT9bTPqdk2eK0b8qqSxXpikh3QKPnPYpiyX98zf5ebw=="],
+    "@anthropic-ai/sdk": ["@anthropic-ai/sdk@0.91.1", "", { "dependencies": { "json-schema-to-ts": "^3.1.1" }, "peerDependencies": { "zod": "^3.25.0 || ^4.0.0" }, "optionalPeers": ["zod"], "bin": { "anthropic-ai-sdk": "bin/cli" } }, "sha512-LAmu761tSN9r66ixvmciswUj/ZC+1Q4iAfpedTfSVLeswRwnY3n2Nb6Tsk+cLPP28aLOPWeMgIuTuCcMC6W/iw=="],
 
     "@aws-crypto/crc32": ["@aws-crypto/crc32@5.2.0", "", { "dependencies": { "@aws-crypto/util": "^5.2.0", "@aws-sdk/types": "^3.222.0", "tslib": "^2.6.2" } }, "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg=="],
 
@@ -66,59 +66,65 @@
 
     "@aws-crypto/util": ["@aws-crypto/util@5.2.0", "", { "dependencies": { "@aws-sdk/types": "^3.222.0", "@smithy/util-utf8": "^2.0.0", "tslib": "^2.6.2" } }, "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ=="],
 

packages/answer/package.json 🔗

@@ -14,9 +14,9 @@
 		"typecheck": "tsc --noEmit"
 	},
 	"peerDependencies": {
-		"@mariozechner/pi-ai": ">=0.65.0",
-		"@mariozechner/pi-coding-agent": ">=0.65.0",
-		"@mariozechner/pi-tui": ">=0.65.0",
+		"@earendil-works/pi-ai": ">=0.65.0",
+		"@earendil-works/pi-coding-agent": ">=0.65.0",
+		"@earendil-works/pi-tui": ">=0.65.0",
 		"@sinclair/typebox": ">=0.34.0"
 	},
 	"type": "module"

packages/answer/src/QnAComponent.ts 🔗

@@ -13,7 +13,7 @@ import {
 	type TUI,
 	visibleWidth,
 	wrapTextWithAnsi,
-} from "@mariozechner/pi-tui";
+} from "@earendil-works/pi-tui";
 import { escapeXml } from "./extract.js";
 import type { ExtractedQuestion } from "./prompt.js";
 

packages/answer/src/extract.ts 🔗

@@ -3,8 +3,8 @@
 //
 // SPDX-License-Identifier: Apache-2.0
 
-import type { complete } from "@mariozechner/pi-ai";
-import type { ExtensionContext } from "@mariozechner/pi-coding-agent";
+import type { complete } from "@earendil-works/pi-ai";
+import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
 import type { ExtractedQuestion, ExtractionResult } from "./prompt.js";
 
 // Preferred model for extraction — lightweight is fine for structured JSON output.

packages/answer/src/index.ts 🔗

@@ -15,9 +15,9 @@
  * 4. Submits the compiled answers when done
  */
 
-import { complete, type UserMessage } from "@mariozechner/pi-ai";
-import type { ExtensionAPI, ExtensionContext } from "@mariozechner/pi-coding-agent";
-import { BorderedLoader } from "@mariozechner/pi-coding-agent";
+import { complete, type UserMessage } from "@earendil-works/pi-ai";
+import type { ExtensionAPI, ExtensionContext } from "@earendil-works/pi-coding-agent";
+import { BorderedLoader } from "@earendil-works/pi-coding-agent";
 import { parseToolCallResult, resolveExtractionModel } from "./extract.js";
 import { type ExtractionResult, QUESTION_EXTRACTION_TOOL, SYSTEM_PROMPT } from "./prompt.js";
 import { QnAComponent } from "./QnAComponent.js";

packages/answer/src/prompt.ts 🔗

@@ -3,7 +3,7 @@
 //
 // SPDX-License-Identifier: Apache-2.0
 
-import type { Tool } from "@mariozechner/pi-ai";
+import type { Tool } from "@earendil-works/pi-ai";
 import { Type } from "@sinclair/typebox";
 
 export interface ExtractedQuestion {

packages/handoff/package.json 🔗

@@ -14,9 +14,9 @@
 		"typecheck": "tsc --noEmit"
 	},
 	"peerDependencies": {
-		"@mariozechner/pi-ai": ">=0.65.0",
-		"@mariozechner/pi-coding-agent": ">=0.65.0",
-		"@mariozechner/pi-tui": ">=0.65.0",
+		"@earendil-works/pi-ai": ">=0.65.0",
+		"@earendil-works/pi-coding-agent": ">=0.65.0",
+		"@earendil-works/pi-tui": ">=0.65.0",
 		"@sinclair/typebox": ">=0.34.0"
 	},
 	"type": "module"

packages/handoff/src/handoff-command.ts 🔗

@@ -8,8 +8,8 @@ import type {
 	ExtensionCommandContext,
 	ExtensionContext,
 	SessionEntry,
-} from "@mariozechner/pi-coding-agent";
-import { BorderedLoader, convertToLlm, serializeConversation } from "@mariozechner/pi-coding-agent";
+} from "@earendil-works/pi-coding-agent";
+import { BorderedLoader, convertToLlm, serializeConversation } from "@earendil-works/pi-coding-agent";
 import { extractCandidateFiles, extractLoadedSkills, resolveExtractionModel } from "./session-analysis.js";
 import { type HandoffExtraction, assembleHandoffDraft, extractHandoffContext } from "./handoff-extraction.js";
 import { parseAndSetModelWithNotify } from "./model-utils.js";

packages/handoff/src/handoff-extraction.ts 🔗

@@ -3,8 +3,8 @@
 //
 // SPDX-License-Identifier: MIT
 
-import { complete, type Message, type Tool } from "@mariozechner/pi-ai";
-import type { ExtensionContext } from "@mariozechner/pi-coding-agent";
+import { complete, type Message, type Tool } from "@earendil-works/pi-ai";
+import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
 import { Type } from "@sinclair/typebox";
 
 const SYSTEM_PROMPT = `You're helping transfer context between coding sessions. The next session starts fresh with no memory of this conversation, so extract what matters.

packages/handoff/src/handoff-tool.ts 🔗

@@ -3,8 +3,8 @@
 //
 // SPDX-License-Identifier: MIT
 
-import type { ExtensionAPI, SessionEntry } from "@mariozechner/pi-coding-agent";
-import { convertToLlm, serializeConversation } from "@mariozechner/pi-coding-agent";
+import type { ExtensionAPI, SessionEntry } from "@earendil-works/pi-coding-agent";
+import { convertToLlm, serializeConversation } from "@earendil-works/pi-coding-agent";
 import { Type } from "@sinclair/typebox";
 import { extractCandidateFiles, extractLoadedSkills, resolveExtractionModel } from "./session-analysis.js";
 import { type HandoffExtraction, assembleHandoffDraft, extractHandoffContext } from "./handoff-extraction.js";

packages/handoff/src/index.ts 🔗

@@ -3,9 +3,9 @@
 //
 // SPDX-License-Identifier: MIT
 
-import type { ExtensionAPI, ExtensionContext } from "@mariozechner/pi-coding-agent";
-import type { SessionManager } from "@mariozechner/pi-coding-agent";
-import { Key, matchesKey, parseKey } from "@mariozechner/pi-tui";
+import type { ExtensionAPI, ExtensionContext } from "@earendil-works/pi-coding-agent";
+import type { SessionManager } from "@earendil-works/pi-coding-agent";
+import { Key, matchesKey, parseKey } from "@earendil-works/pi-tui";
 import { registerHandoffCommand } from "./handoff-command.js";
 import { registerHandoffTool, type PendingHandoff } from "./handoff-tool.js";
 import { parseAndSetModelWithNotify } from "./model-utils.js";

packages/handoff/src/model-utils.ts 🔗

@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: MIT
 
-import type { ExtensionAPI, ExtensionContext } from "@mariozechner/pi-coding-agent";
+import type { ExtensionAPI, ExtensionContext } from "@earendil-works/pi-coding-agent";
 
 export type SetModelResult =
 	| { ok: true }

packages/handoff/src/session-analysis.ts 🔗

@@ -3,7 +3,7 @@
 //
 // SPDX-License-Identifier: MIT
 
-import type { ExtensionContext, SessionEntry } from "@mariozechner/pi-coding-agent";
+import type { ExtensionContext, SessionEntry } from "@earendil-works/pi-coding-agent";
 import * as path from "node:path";
 
 /**

packages/handoff/src/session-query-tool.ts 🔗

@@ -3,9 +3,9 @@
 //
 // SPDX-License-Identifier: MIT
 
-import { complete, type Message } from "@mariozechner/pi-ai";
-import type { ExtensionAPI, SessionEntry } from "@mariozechner/pi-coding-agent";
-import { SessionManager, convertToLlm, serializeConversation } from "@mariozechner/pi-coding-agent";
+import { complete, type Message } from "@earendil-works/pi-ai";
+import type { ExtensionAPI, SessionEntry } from "@earendil-works/pi-coding-agent";
+import { SessionManager, convertToLlm, serializeConversation } from "@earendil-works/pi-coding-agent";
 import { Type } from "@sinclair/typebox";
 import * as fs from "node:fs";
 import { getFallbackSessionsRoot, getSessionsRoot, normalizeSessionPath, sessionPathAllowed } from "./session-paths.js";

packages/personas/package.json 🔗

@@ -14,7 +14,7 @@
 		"typecheck": "tsc --noEmit"
 	},
 	"peerDependencies": {
-		"@mariozechner/pi-coding-agent": ">=0.65.0"
+		"@earendil-works/pi-coding-agent": ">=0.65.0"
 	},
 	"type": "module"
 }

packages/personas/src/index.ts 🔗

@@ -22,7 +22,7 @@
 import * as fs from "node:fs";
 import * as path from "node:path";
 import * as os from "node:os";
-import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
+import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
 
 const CLEAR_KEYWORDS = ["none", "unset", "clear"];
 

packages/questionnaire/package.json 🔗

@@ -14,8 +14,8 @@
 		"typecheck": "tsc --noEmit"
 	},
 	"peerDependencies": {
-		"@mariozechner/pi-coding-agent": ">=0.65.0",
-		"@mariozechner/pi-tui": ">=0.65.0",
+		"@earendil-works/pi-coding-agent": ">=0.65.0",
+		"@earendil-works/pi-tui": ">=0.65.0",
 		"@sinclair/typebox": ">=0.34.0"
 	},
 	"type": "module"

packages/questionnaire/src/index.ts 🔗

@@ -9,7 +9,7 @@
  * Multiple questions: tab bar navigation between questions
  */
 
-import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
+import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
 import {
 	Editor,
 	type EditorTheme,
@@ -18,7 +18,7 @@ import {
 	Text,
 	truncateToWidth,
 	wrapTextWithAnsi,
-} from "@mariozechner/pi-tui";
+} from "@earendil-works/pi-tui";
 import { Type } from "@sinclair/typebox";
 
 // Types