psyclaw 0.27.0 → 0.27.4

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 +1 @@
1
- {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../src/branding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../src/branding.ts"],"names":[],"mappings":"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"}
package/dist/src/chat.js CHANGED
@@ -6,7 +6,6 @@ import { fileURLToPath } from "node:url";
6
6
  import { acknowledgeBundledPiChangelog, ensurePsyClawTheme, ensureQuietStartup, PSYCLAW_IDENTITY_PROMPT, } from "./branding.js";
7
7
  import { resolvePsyClawManifest } from "./updates/manifest.js";
8
8
  import { PROVIDER_PRESETS, readMacOsLaunchctlCredential } from "./setup.js";
9
- import { enabledRecommendedSkillPaths } from "./skills/recommended.js";
10
9
  /** Package root of the installed psyclaw package (dist/src/chat.js -> root). */
11
10
  function packageRoot() {
12
11
  return join(dirname(fileURLToPath(import.meta.url)), "..", "..");
@@ -68,12 +67,10 @@ export async function launchChat(options = {}) {
68
67
  identityPrompt = `${identityPrompt}\n\n${supplement}`;
69
68
  }
70
69
  catch { /* no user supplement */ }
71
- const enabledSkills = await enabledRecommendedSkillPaths(cwd);
72
70
  const args = [
73
71
  "--extension", extensionPath,
74
72
  "--extension", panelExtensionPath,
75
73
  "--skill", skillsPath,
76
- ...enabledSkills.paths.flatMap((path) => ["--skill", path]),
77
74
  "--tools", toolAllowlist,
78
75
  "--append-system-prompt", identityPrompt,
79
76
  ...(options.args ?? []),
@@ -113,8 +110,6 @@ export async function launchChat(options = {}) {
113
110
  catch {
114
111
  delete spawnEnv.PSYCLAW_PET;
115
112
  }
116
- for (const warning of enabledSkills.warnings)
117
- process.stderr.write(`PsyClaw Skill: ${warning}\n`);
118
113
  return new Promise((resolve, reject) => {
119
114
  const child = (options.spawnProcess ?? spawn)(process.execPath, [piCli, ...args], {
120
115
  cwd,
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/chat.ts"],"names":[],"mappings":"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"}
package/dist/src/cli.js CHANGED
File without changes
@@ -2,7 +2,7 @@ import { spawn } from "node:child_process";
2
2
  /**
3
3
  * Word document conversion via Pandoc. Pandoc is already part of psyclaw's DOCX
4
4
  * export path; if it is unavailable, the caller should fall back to the
5
- * markitdown skill (read) or report the failure (write).
5
+ * external MarkItDown tool (read) or report the failure (write).
6
6
  */
7
7
  function runPandoc(args) {
8
8
  return new Promise((resolve, reject) => {
@@ -14,7 +14,7 @@ function runPandoc(args) {
14
14
  let errorText = "";
15
15
  child.stdout?.on("data", (chunk) => { output += String(chunk); });
16
16
  child.stderr?.on("data", (chunk) => { errorText += String(chunk); });
17
- child.on("error", (error) => reject(new Error(`pandoc unavailable (${error.message}); install Pandoc or use the markitdown skill`)));
17
+ child.on("error", (error) => reject(new Error(`pandoc unavailable (${error.message}); install Pandoc or use the external MarkItDown tool`)));
18
18
  child.on("close", (code) => {
19
19
  if (code === 0)
20
20
  resolve(output);
@@ -1 +1 @@
1
- {"version":3,"file":"docx.js","sourceRoot":"","sources":["../../../src/core/docx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C;;;;GAIG;AACH,SAAS,SAAS,CAAC,IAAc;IAC/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE;YAClC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;SACpC,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,+CAA+C,CAAC,CAAC,CAAC,CAAC;QACrI,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,IAAI,KAAK,CAAC;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;gBAC3B,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,IAAI,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/H,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,YAAoB,EAAE,UAAkB,EAAE,YAAqB;IAClG,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IAC7D,IAAI,YAAY;QAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;IAC7D,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"docx.js","sourceRoot":"","sources":["../../../src/core/docx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C;;;;GAIG;AACH,SAAS,SAAS,CAAC,IAAc;IAC/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE;YAClC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;SACpC,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,uDAAuD,CAAC,CAAC,CAAC,CAAC;QAC7I,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,IAAI,KAAK,CAAC;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;gBAC3B,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,IAAI,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/H,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,YAAoB,EAAE,UAAkB,EAAE,YAAqB;IAClG,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IAC7D,IAAI,YAAY;QAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;IAC7D,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC"}
@@ -71,7 +71,9 @@ export default function psyclawPanelExtension(pi) {
71
71
  }
72
72
  try {
73
73
  if (server === undefined || workbenchUrl === undefined) {
74
- const next = createPanelServer(ctx.cwd, { assistant: async (message) => {
74
+ const next = createPanelServer(ctx.cwd, { installSkill: async (task) => {
75
+ pi.sendUserMessage(task, ctx.isIdle() ? {} : { deliverAs: "followUp" });
76
+ }, assistant: async (message) => {
75
77
  if (!assistant) {
76
78
  assistant = new PiRpcClient({
77
79
  cwd: ctx.cwd,
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../src/panel/extension.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,wBAAwB,GAAG;IAC/B,iDAAiD;IACjD,6FAA6F;IAC7F,oFAAoF;IACpF,gHAAgH;CACjH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,SAAS,YAAY,CAAC,QAA4B;IAChD,MAAM,OAAO,GAAG,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChN,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvE,OAAO,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,aAAa,CAAC,MAAsC;IAC3D,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,KAAK,EAAE,IAAI,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YAAE,SAAS;QACnG,MAAM,OAAO,GAAI,KAAK,CAAC,OAAiC,CAAC,OAAO,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAA0C,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAK,IAA2B,CAAC,IAAI,KAAK,MAAM,IAAI,OAAQ,IAA2B,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpQ,IAAI,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,MAAc,EAAE,IAAY;IAChD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IACjC,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IAC3G,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3F,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnC,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAAgB;IAC5D,IAAI,MAA0B,CAAC;IAC/B,IAAI,YAAgC,CAAC;IACrC,IAAI,SAAkC,CAAC;IAEvC,MAAM,KAAK,GAAG,KAAK,IAAmB,EAAE;QACtC,MAAM,OAAO,GAAG,MAAM,CAAC;QACvB,MAAM,GAAG,SAAS,CAAC;QACnB,YAAY,GAAG,SAAS,CAAC;QACzB,MAAM,gBAAgB,GAAG,SAAS,CAAC;QACnC,SAAS,GAAG,SAAS,CAAC;QACtB,MAAM,gBAAgB,EAAE,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC;IAEF,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE;QAC1B,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YAC3B,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACvB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,MAAM,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBACvD,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;4BACrE,IAAI,CAAC,SAAS,EAAE,CAAC;gCACf,SAAS,GAAG,IAAI,WAAW,CAAC;oCAC1B,GAAG,EAAE,GAAG,CAAC,GAAG;oCACZ,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;oCAC9E,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;oCAC/D,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC;oCACtC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;oCACrC,YAAY,EAAE,wBAAwB;iCACvC,CAAC,CAAC;gCACH,IAAI,CAAC;oCACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gCAC1B,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oCAC9C,SAAS,GAAG,SAAS,CAAC;oCACtB,MAAM,KAAK,CAAC;gCACd,CAAC;4BACH,CAAC;4BACD,MAAM,OAAO,GAAG,SAAS,CAAC;4BAC1B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;4BACpD,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,MAAwC,CAAC,EAAE,CAAC;wBAC3E,CAAC,EAAC,CAAC,CAAC;oBACJ,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACzC,MAAM,GAAG,IAAI,CAAC;oBACd,YAAY,GAAG,oBAAoB,UAAU,EAAE,CAAC;gBAClD,CAAC;gBACD,aAAa,CAAC,YAAY,CAAC,CAAC;gBAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,SAAS,CAAC;gBACnB,YAAY,GAAG,SAAS,CAAC;gBACzB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../src/panel/extension.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ export interface PanelServerOptions {
31
31
  assistant?: (message: string) => Promise<{
32
32
  text: string;
33
33
  }>;
34
+ /** Queue an approved installation task into the current PsyClaw model session. */
35
+ installSkill?: (task: string) => Promise<void>;
34
36
  }
35
37
  /**
36
38
  * When the panel message references claims by id (e.g. the 追问此论断 flow),
@@ -30,11 +30,15 @@ export { verifyDoi } from "../core/doi.js";
30
30
  import { resumePlanWithPi } from "../orchestration/pi-executor.js";
31
31
  import { RunEventLog } from "./events.js";
32
32
  import { PSYCLAW_IDENTITY_PROMPT } from "../branding.js";
33
+ import { recommendedSkillTarget } from "../skills/recommended.js";
33
34
  const activePanelRuns = new Set();
34
35
  async function readRecommendationState(root) {
35
36
  try {
36
37
  const value = JSON.parse(await readFile(join(root, ".psyclaw", "recommendations.json"), "utf8"));
37
- return { schemaVersion: "psyclaw/recommendation-state/v1", skills: Array.isArray(value.skills) ? value.skills.filter((id) => typeof id === "string") : [], mcp: Array.isArray(value.mcp) ? value.mcp.filter((id) => typeof id === "string") : [] };
38
+ const skillScopes = value.skillScopes && typeof value.skillScopes === "object"
39
+ ? Object.fromEntries(Object.entries(value.skillScopes).filter((entry) => entry[1] === "project" || entry[1] === "user"))
40
+ : undefined;
41
+ return { schemaVersion: "psyclaw/recommendation-state/v1", skills: Array.isArray(value.skills) ? value.skills.filter((id) => typeof id === "string") : [], mcp: Array.isArray(value.mcp) ? value.mcp.filter((id) => typeof id === "string") : [], ...(skillScopes === undefined ? {} : { skillScopes }) };
38
42
  }
39
43
  catch {
40
44
  return { schemaVersion: "psyclaw/recommendation-state/v1", skills: [], mcp: [] };
@@ -393,6 +397,22 @@ function publicInstallPlan(plan) {
393
397
  const { projectRoot: _projectRoot, ...publicFields } = plan;
394
398
  return publicFields;
395
399
  }
400
+ function panelSkillInstallTask(root, item, scope) {
401
+ const id = String(item.id ?? "");
402
+ const name = String(item.name ?? id);
403
+ const sourceRef = String(item.sourceRef ?? "");
404
+ const target = recommendedSkillTarget(root, id, scope);
405
+ return [
406
+ `安装推荐 Skill:${name} (${id})。`,
407
+ `来源网址:${sourceRef}`,
408
+ `安装位置:${scope === "user" ? "系统目录(所有项目)" : "项目目录(仅当前项目)"}。`,
409
+ `唯一允许的最终目标目录:${target}`,
410
+ "请使用当前会话的工具检查来源仓库并完成安装。不要写入其他 Skill 目录,不要修改 data/raw、.git 或研究产物。",
411
+ "目标目录最终必须直接包含有效 SKILL.md(YAML frontmatter 至少包含 name 和 description),不得包含 .git、符号链接、凭据或二进制大文件。",
412
+ "如果仓库包含多个 Skill,只安装与此推荐项相符的部分;如果它不是 Skill 或无法合理适配,停止并说明原因,不要伪造 SKILL.md。",
413
+ "安装完成后检查目标目录结构,并提醒用户执行 /skills 启用该项,再执行 /reload。",
414
+ ].join("\n");
415
+ }
396
416
  /** Metadata-only catalog for the optional panel. No install or credential read. */
397
417
  async function panelCatalog(root) {
398
418
  const scans = await discoverAgents();
@@ -532,7 +552,15 @@ async function recommendedSkills() {
532
552
  for (const path of candidates) {
533
553
  try {
534
554
  const catalog = JSON.parse(await readFile(path, "utf8"));
535
- return { ...catalog, items: (catalog.items ?? []).map((item) => ({ ...item, slashCommand: `/skills enable ${String(item.id ?? "")}`, installCommand: `/install skill ${String(item.id ?? "")}` })) };
555
+ return {
556
+ ...catalog,
557
+ items: (catalog.items ?? []).filter((item) => item.kind === "skill").map((item) => ({
558
+ ...item,
559
+ slashCommand: `/skills enable ${String(item.id ?? "")}`,
560
+ installCommand: `/install skill ${String(item.id ?? "")}`,
561
+ })),
562
+ externalTools: (catalog.externalTools ?? []).filter((item) => item.kind === "external-tool"),
563
+ };
536
564
  }
537
565
  catch { /* try package layout */ }
538
566
  }
@@ -817,6 +845,8 @@ export function createPanelServer(root, options = {}) {
817
845
  const state = await readRecommendationState(root);
818
846
  const disabled = await readDisabledCapabilities(root);
819
847
  const [skills, mcps] = await Promise.all([recommendedSkills(), recommendedMcps()]);
848
+ const skillIds = new Set((skills.items ?? []).map((item) => String(item.id ?? "")));
849
+ const mcpIds = new Set((mcps.items ?? []).map((item) => String(item.id ?? "")));
820
850
  const nameOf = (kind, id) => {
821
851
  const catalog = kind === "skill" ? skills : mcps;
822
852
  const item = (catalog.items ?? []).find((candidate) => candidate.id === id);
@@ -826,8 +856,8 @@ export function createPanelServer(root, options = {}) {
826
856
  response.end(JSON.stringify({
827
857
  schemaVersion: "psyclaw/enabled-capabilities/v1",
828
858
  coreSkills: CORE_SKILLS.map((skill) => ({ id: skill.id, name: skill.name, enabled: !disabled.coreSkills.includes(skill.id) })),
829
- skills: state.skills.map((id) => ({ id, name: nameOf("skill", id), enabled: true })),
830
- mcp: state.mcp.map((id) => ({ id, name: nameOf("mcp", id), enabled: true })),
859
+ skills: state.skills.filter((id) => skillIds.has(id)).map((id) => ({ id, name: nameOf("skill", id), enabled: true })),
860
+ mcp: state.mcp.filter((id) => mcpIds.has(id)).map((id) => ({ id, name: nameOf("mcp", id), enabled: true })),
831
861
  }));
832
862
  return;
833
863
  }
@@ -864,6 +894,7 @@ export function createPanelServer(root, options = {}) {
864
894
  const kind = body.kind === "skill" || body.kind === "mcp" ? body.kind : undefined;
865
895
  const id = String(body.id ?? "").trim();
866
896
  const approved = body.approved === true;
897
+ const scope = body.scope === "project" || body.scope === "user" ? body.scope : undefined;
867
898
  const actor = String(body.actor ?? "researcher").trim();
868
899
  if (!kind || !id || !approved || actor.length < 1)
869
900
  throw new Error("kind, id, approved and actor are required");
@@ -873,12 +904,37 @@ export function createPanelServer(root, options = {}) {
873
904
  response.end(JSON.stringify({ error: "unknown recommended item" }));
874
905
  return;
875
906
  }
876
- const command = typeof found.prep?.command === "string" && found.prep.command.trim() ? found.prep.command.trim() : undefined;
877
- if (!command) {
907
+ if (kind === "skill") {
908
+ if (!scope)
909
+ throw new Error("scope must be project or user for Skill installation");
910
+ if (options.installSkill === undefined) {
911
+ response.writeHead(503, { "content-type": "application/json" });
912
+ response.end(JSON.stringify({ error: "Skill 安装需要当前模型通道;请在 PsyClaw 对话中执行 /panel 后再安装。", reasonCode: "panel.skill-installer-unavailable" }));
913
+ return;
914
+ }
915
+ await options.installSkill(panelSkillInstallTask(root, found.item, scope));
916
+ const state = await readRecommendationState(root);
917
+ state.skillScopes = { ...(state.skillScopes ?? {}), [id]: scope };
918
+ await writeRecommendationState(root, state);
919
+ response.writeHead(202, { "content-type": "application/json" });
920
+ response.end(JSON.stringify({
921
+ schemaVersion: "psyclaw/model-install-task/v1",
922
+ ok: true,
923
+ queued: true,
924
+ id,
925
+ scope,
926
+ reloadHint: "/reload",
927
+ message: "安装任务已交给当前模型;模型完成后请启用 Skill 并执行 /reload。",
928
+ }));
929
+ return;
930
+ }
931
+ const shellCommand = typeof found.prep?.command === "string" && found.prep.command.trim() ? found.prep.command.trim() : undefined;
932
+ if (!shellCommand) {
878
933
  response.writeHead(400, { "content-type": "application/json" });
879
934
  response.end(JSON.stringify({ error: "no install command is available for this item", blockedReason: found.prep?.blockedReason ?? null }));
880
935
  return;
881
936
  }
937
+ const command = shellCommand;
882
938
  const startedAt = new Date().toISOString();
883
939
  const runId = `panel_${randomUUID().replaceAll("-", "")}`;
884
940
  const idempotencyKey = `panel:install:${sha256Text(`${kind}\u0000${id}\u0000${actor}`).slice(0, 24)}`;
@@ -894,7 +950,9 @@ export function createPanelServer(root, options = {}) {
894
950
  command,
895
951
  startedAt,
896
952
  };
897
- const { exitCode, output } = await runShellCommand(command, root);
953
+ let exitCode;
954
+ let output;
955
+ ({ exitCode, output } = await runShellCommand(command, root));
898
956
  receipt.ok = exitCode === 0;
899
957
  receipt.exitCode = exitCode;
900
958
  receipt.finishedAt = new Date().toISOString();
@@ -902,8 +960,7 @@ export function createPanelServer(root, options = {}) {
902
960
  await atomicWriteFile(receiptPath, `${JSON.stringify(receipt, null, 2)}\n`);
903
961
  if (receipt.ok) {
904
962
  const state = await readRecommendationState(root);
905
- const key = kind === "skill" ? "skills" : "mcp";
906
- state[key] = [...new Set([...state[key], id])];
963
+ state.mcp = [...new Set([...state.mcp, id])];
907
964
  await writeRecommendationState(root, state);
908
965
  }
909
966
  await appendJsonlIfMissing(projectPaths(root).audit, {