@introspection-ai/recipes 0.25.0 → 0.26.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.
Files changed (101) hide show
  1. package/dist/mcp-chunks/{auth-command-4WFRNU2I.js → auth-command-JBYNHHMV.js} +23 -27
  2. package/dist/mcp-chunks/call-arguments-S4EGFKUQ.js +15 -0
  3. package/dist/mcp-chunks/{call-command-JBIKXOGC.js → call-command-467BVXTE.js} +32 -33
  4. package/dist/mcp-chunks/{chunk-IPNSPKQK.js → chunk-3Q2Q7SBU.js} +12 -14
  5. package/dist/mcp-chunks/chunk-66P5FXP3.js +31 -0
  6. package/dist/mcp-chunks/{chunk-TF2YTYE4.js → chunk-6DVS7RBO.js} +1 -1
  7. package/dist/mcp-chunks/{chunk-IME7DGLJ.js → chunk-AK5ZEDEF.js} +2 -2
  8. package/dist/mcp-chunks/{chunk-OP3IW2V6.js → chunk-AP5VHS73.js} +2 -2
  9. package/dist/mcp-chunks/{chunk-B2LNXGAP.js → chunk-AS27BTCS.js} +1 -1
  10. package/dist/mcp-chunks/{chunk-MOEZ43ZL.js → chunk-BC2HDCYV.js} +1 -1
  11. package/dist/mcp-chunks/{chunk-RSTKSBVF.js → chunk-BSCNF4NY.js} +2 -2
  12. package/dist/mcp-chunks/chunk-BTU34BUG.js +1182 -0
  13. package/dist/mcp-chunks/{chunk-HN7WPMCA.js → chunk-CN5YF3IQ.js} +21042 -3688
  14. package/dist/mcp-chunks/{chunk-G6OMDUNG.js → chunk-CZ43ZITK.js} +1 -1
  15. package/dist/mcp-chunks/{chunk-JG4TRUPF.js → chunk-D2P2IV4H.js} +1 -1
  16. package/dist/mcp-chunks/{chunk-3R2WK3NB.js → chunk-DMBE47LM.js} +6 -6
  17. package/dist/mcp-chunks/{chunk-WTMJMM3B.js → chunk-EP22XMWK.js} +3 -30
  18. package/dist/mcp-chunks/{chunk-ITCCROID.js → chunk-EUDC3ICZ.js} +5 -5
  19. package/dist/mcp-chunks/{chunk-FX5NYWBH.js → chunk-G4H535MI.js} +3 -21
  20. package/dist/mcp-chunks/{chunk-HCOKLSOB.js → chunk-GA4ZYSRX.js} +4 -4
  21. package/dist/mcp-chunks/{chunk-C2KNLFZR.js → chunk-GEVQ2GJW.js} +2 -2
  22. package/dist/mcp-chunks/{chunk-WYLHHXI6.js → chunk-GK4LA4E6.js} +26 -11
  23. package/dist/mcp-chunks/{chunk-QZUC2T72.js → chunk-GL4AA5QV.js} +2 -2
  24. package/dist/mcp-chunks/{chunk-KW3ANJ36.js → chunk-HBN3ESMH.js} +4 -4
  25. package/dist/mcp-chunks/{chunk-ELA77TDC.js → chunk-HKZZGSDV.js} +4 -4
  26. package/dist/mcp-chunks/{chunk-36VIJRYY.js → chunk-HTXQPQPB.js} +4 -4
  27. package/dist/mcp-chunks/{chunk-3JGS7LQB.js → chunk-I7JR2GIC.js} +2 -2
  28. package/dist/mcp-chunks/{chunk-AIKLVBYU.js → chunk-IO2IMWYS.js} +2 -2
  29. package/dist/mcp-chunks/{chunk-RD7NHCRK.js → chunk-J2WP6ERZ.js} +39 -42
  30. package/dist/mcp-chunks/{chunk-HLRCUHNO.js → chunk-KJNNO5Z6.js} +1 -1
  31. package/dist/mcp-chunks/{chunk-4ZNBWL65.js → chunk-L2LGMX5P.js} +2 -2
  32. package/dist/mcp-chunks/chunk-LG3GLOSA.js +513 -0
  33. package/dist/mcp-chunks/{chunk-CZKDJZER.js → chunk-LTR626QF.js} +1 -1
  34. package/dist/mcp-chunks/{chunk-FS5JIKT6.js → chunk-LYWEATXZ.js} +6 -6
  35. package/dist/mcp-chunks/{chunk-YIRGLKDA.js → chunk-M62ESEOY.js} +45 -14
  36. package/dist/mcp-chunks/{chunk-V5AYEKSL.js → chunk-MJHMXYMO.js} +52 -81
  37. package/dist/mcp-chunks/{chunk-7WOKCV6Q.js → chunk-N7ZWX3WW.js} +1 -1
  38. package/dist/mcp-chunks/chunk-NTABJCUL.js +123 -0
  39. package/dist/mcp-chunks/{chunk-EPT4MYOF.js → chunk-OABFKFSL.js} +11 -11
  40. package/dist/mcp-chunks/{chunk-SCOMDV54.js → chunk-OB256NMD.js} +1 -1
  41. package/dist/mcp-chunks/{chunk-IYWYVHHD.js → chunk-OZQTZWW4.js} +1 -1
  42. package/dist/mcp-chunks/{chunk-ITR7FQM3.js → chunk-QIBGY4IX.js} +2 -2
  43. package/dist/mcp-chunks/{chunk-ZOAQDFAO.js → chunk-REEFOL44.js} +1 -1
  44. package/dist/mcp-chunks/{chunk-ED2WN5BI.js → chunk-SUNOYTQJ.js} +3 -3
  45. package/dist/mcp-chunks/{chunk-Y3EDWN2P.js → chunk-TFU4NKFJ.js} +1 -1
  46. package/dist/mcp-chunks/{chunk-EMSNQHZZ.js → chunk-TGPIW6F6.js} +1 -1
  47. package/dist/mcp-chunks/{chunk-SNKXMWDB.js → chunk-UCJ7YDFN.js} +1 -1
  48. package/dist/mcp-chunks/{chunk-TPHPAEDH.js → chunk-WUEDIOR5.js} +1 -1
  49. package/dist/mcp-chunks/{chunk-FAJPJTOC.js → chunk-XCNWICLD.js} +1 -1
  50. package/dist/mcp-chunks/{chunk-6YZW3XAE.js → chunk-XFQSUC7T.js} +5 -5
  51. package/dist/mcp-chunks/{chunk-GQ6NSIDS.js → chunk-Y3L5LWBY.js} +3037 -747
  52. package/dist/mcp-chunks/{chunk-53NRFMB3.js → chunk-YI5SMRFH.js} +46 -25
  53. package/dist/mcp-chunks/{chunk-GUXMP7QB.js → chunk-YPTN46JQ.js} +2 -2
  54. package/dist/mcp-chunks/{chunk-I5GI2A2D.js → chunk-YVH36MGQ.js} +2 -2
  55. package/dist/mcp-chunks/{chunk-ASG4OY3M.js → chunk-Z6QEOUMK.js} +22 -23
  56. package/dist/mcp-chunks/{cli-XU26MUCN.js → cli-TN6JTLTS.js} +108 -77
  57. package/dist/mcp-chunks/client-G33HPQAC.js +29 -0
  58. package/dist/mcp-chunks/{config-command-UQMMIK2U.js → config-command-LICU56ZH.js} +27 -28
  59. package/dist/mcp-chunks/daemon-command-JLVHGWHB.js +29 -0
  60. package/dist/mcp-chunks/{dist-DM2RXZMU.js → dist-MFAWSKGH.js} +80 -46
  61. package/dist/mcp-chunks/{emit-ts-command-KAOL6DAN.js → emit-ts-command-FVX3JMSN.js} +18 -18
  62. package/dist/mcp-chunks/{generate-cli-runner-AK6XNRTK.js → generate-cli-runner-L2L7VMCA.js} +53 -51
  63. package/dist/mcp-chunks/generated-daemon-runtime-DC6IL7E7.js +29 -0
  64. package/dist/mcp-chunks/{inspect-cli-command-6FVJO7H2.js → inspect-cli-command-Y5D3GRE2.js} +9 -10
  65. package/dist/mcp-chunks/{launch-EIT73HX4.js → launch-ZFY6CM2A.js} +1 -1
  66. package/dist/mcp-chunks/{lifecycle-QH4TUI3K.js → lifecycle-H7DIW5DM.js} +1 -1
  67. package/dist/mcp-chunks/{list-command-UOB2XZK7.js → list-command-55LCLW4S.js} +34 -35
  68. package/dist/mcp-chunks/{output-utils-6YXH23T7.js → output-utils-YYHI637S.js} +3 -3
  69. package/dist/mcp-chunks/{prompt-CH6TK0bC-ZB6RFAXR.js → prompt-CH6TK0bC-DZLFAAPK.js} +1 -1
  70. package/dist/mcp-chunks/{record-command-FO5TTERC.js → record-command-PWIBYC5J.js} +5 -5
  71. package/dist/mcp-chunks/{replay-command-SCBPCGQ7.js → replay-command-QHZZZMXF.js} +6 -6
  72. package/dist/mcp-chunks/{resource-command-S2J7XEMV.js → resource-command-HMR2KXWK.js} +9 -10
  73. package/dist/mcp-chunks/{result-utils-OME6HGS6.js → result-utils-UGCQSRJ4.js} +3 -4
  74. package/dist/mcp-chunks/runtime-ZNFPZXKE.js +36 -0
  75. package/dist/mcp-chunks/runtime-wrapper-I4B3OROR.js +10 -0
  76. package/dist/mcp-chunks/{serve-command-DDBZZSG6.js → serve-command-NTDI3YPN.js} +29 -34
  77. package/dist/mcp-chunks/{timeouts-HNGNKDQN.js → timeouts-35UDWFA7.js} +3 -3
  78. package/dist/mcp-chunks/{vault-command-TJZYS3YI.js → vault-command-D5QZL4FI.js} +4 -6
  79. package/dist/mcp-daemon.js +26 -31
  80. package/dist/mcp-run-worker.js +26 -31
  81. package/dist/pi-extension.d.ts.map +1 -1
  82. package/dist/pi-extension.js +27 -0
  83. package/dist/pi-extension.js.map +1 -1
  84. package/docs/pi-extension.md +1 -1
  85. package/docs/recipe-format.md +7 -3
  86. package/docs/recipe-templates.md +46 -0
  87. package/package.json +14 -14
  88. package/dist/mcp-chunks/call-arguments-4DWPBLQP.js +0 -15
  89. package/dist/mcp-chunks/chunk-3Z7MFS6K.js +0 -86
  90. package/dist/mcp-chunks/chunk-AD3FQ73K.js +0 -39
  91. package/dist/mcp-chunks/chunk-BWW4XRUC.js +0 -1931
  92. package/dist/mcp-chunks/chunk-DTZHEVKC.js +0 -12
  93. package/dist/mcp-chunks/chunk-H3JCYHGS.js +0 -1018
  94. package/dist/mcp-chunks/chunk-IRTJXFWA.js +0 -28
  95. package/dist/mcp-chunks/chunk-NTHUNCXJ.js +0 -526
  96. package/dist/mcp-chunks/chunk-OD3MSMXY.js +0 -15
  97. package/dist/mcp-chunks/chunk-PZ323CXI.js +0 -17394
  98. package/dist/mcp-chunks/client-OT34CKRH.js +0 -21
  99. package/dist/mcp-chunks/daemon-command-YCIOZGPZ.js +0 -35
  100. package/dist/mcp-chunks/runtime-QIPMLIJI.js +0 -39
  101. package/dist/mcp-chunks/runtime-wrapper-X4YFKMJI.js +0 -16
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@introspection-ai/recipes",
3
- "version": "0.25.0",
3
+ "version": "0.26.0",
4
4
  "description": "The open format for vertical agents, built on Pi.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -84,21 +84,21 @@
84
84
  "@introspection-sdk/introspection-pi": "^0.23.0",
85
85
  "@opentelemetry/api": "^1.9.1",
86
86
  "ajv": "^8.20.0",
87
- "mcporter": "0.13.8",
87
+ "mcporter": "0.13.10",
88
88
  "yaml": "^2.9.0"
89
89
  },
90
90
  "peerDependencies": {
91
- "@earendil-works/pi-agent-core": ">=0.82.0 <0.85.0",
92
- "@earendil-works/pi-ai": ">=0.82.0 <0.85.0",
93
- "@earendil-works/pi-coding-agent": ">=0.82.0 <0.85.0",
94
- "@earendil-works/pi-tui": ">=0.82.0 <0.85.0",
91
+ "@earendil-works/pi-agent-core": ">=0.86.1",
92
+ "@earendil-works/pi-ai": ">=0.86.1",
93
+ "@earendil-works/pi-coding-agent": ">=0.86.1",
94
+ "@earendil-works/pi-tui": ">=0.86.1",
95
95
  "typebox": "*"
96
96
  },
97
97
  "devDependencies": {
98
- "@earendil-works/pi-agent-core": "0.84.4",
99
- "@earendil-works/pi-ai": "0.84.4",
100
- "@earendil-works/pi-coding-agent": "0.84.4",
101
- "@earendil-works/pi-tui": "0.84.4",
98
+ "@earendil-works/pi-agent-core": "0.86.1",
99
+ "@earendil-works/pi-ai": "0.86.1",
100
+ "@earendil-works/pi-coding-agent": "0.86.1",
101
+ "@earendil-works/pi-tui": "0.86.1",
102
102
  "@types/node": "^26.1.2",
103
103
  "esbuild": "^0.28.1",
104
104
  "typebox": "^1.0.56",
@@ -106,10 +106,10 @@
106
106
  "vitest": "^4.0.18"
107
107
  },
108
108
  "optionalDependencies": {
109
- "@introspection-ai/mcp-client-linux-x64": "0.25.0",
110
- "@introspection-ai/mcp-client-linux-arm64": "0.25.0",
111
- "@introspection-ai/mcp-client-darwin-arm64": "0.25.0",
112
- "@introspection-ai/mcp-client-darwin-x64": "0.25.0"
109
+ "@introspection-ai/mcp-client-linux-x64": "0.26.0",
110
+ "@introspection-ai/mcp-client-linux-arm64": "0.26.0",
111
+ "@introspection-ai/mcp-client-darwin-arm64": "0.26.0",
112
+ "@introspection-ai/mcp-client-darwin-x64": "0.26.0"
113
113
  },
114
114
  "scripts": {
115
115
  "build": "pnpm build:ts && pnpm build:native",
@@ -1,15 +0,0 @@
1
- import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
2
- import {
3
- parseCallArguments
4
- } from "./chunk-EPT4MYOF.js";
5
- import "./chunk-CZKDJZER.js";
6
- import "./chunk-AIKLVBYU.js";
7
- import "./chunk-MOEZ43ZL.js";
8
- import "./chunk-G6OMDUNG.js";
9
- import "./chunk-Y3EDWN2P.js";
10
- import "./chunk-I5GI2A2D.js";
11
- import "./chunk-WTMJMM3B.js";
12
- import "./chunk-LRKZP7DJ.js";
13
- export {
14
- parseCallArguments
15
- };
@@ -1,86 +0,0 @@
1
- import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
2
- import {
3
- normalizeTimeout
4
- } from "./chunk-I5GI2A2D.js";
5
-
6
- // node_modules/.pnpm/mcporter@0.13.8/node_modules/mcporter/dist/daemon/protocol.js
7
- var DAEMON_PROTOCOL_VERSION = 2;
8
- var DAEMON_OPERATION_TIMEOUT_CODE = "operation_timeout";
9
- var DAEMON_OAUTH_FLOW_ERROR_CODE = "oauth_flow_error";
10
- var DAEMON_PROGRESS_INTERVAL_MS = 250;
11
- var MIN_DAEMON_PROGRESS_INTERVAL_MS = 25;
12
- var DAEMON_PROGRESS_SCHEDULING_SLACK_MS = MIN_DAEMON_PROGRESS_INTERVAL_MS;
13
- function resolveProgressInterval(requestedIntervalMs) {
14
- if (requestedIntervalMs >= DAEMON_PROGRESS_INTERVAL_MS)
15
- return DAEMON_PROGRESS_INTERVAL_MS;
16
- if (requestedIntervalMs >= 100)
17
- return 100;
18
- if (requestedIntervalMs >= 50)
19
- return 50;
20
- return MIN_DAEMON_PROGRESS_INTERVAL_MS;
21
- }
22
- function resolveProgressTiming(requestedIdleTimeoutMs) {
23
- const idleTimeoutMs = normalizeTimeout(requestedIdleTimeoutMs) ?? DAEMON_PROGRESS_INTERVAL_MS * 3 + DAEMON_PROGRESS_SCHEDULING_SLACK_MS;
24
- const progressIntervalMs = resolveProgressInterval(Math.floor(idleTimeoutMs / 3));
25
- return {
26
- progressIntervalMs,
27
- // Keep three frame opportunities plus scheduler slack inside the socket idle budget.
28
- idleTimeoutMs: Math.max(idleTimeoutMs, progressIntervalMs * 3 + DAEMON_PROGRESS_SCHEDULING_SLACK_MS)
29
- };
30
- }
31
- function isDaemonProgressFrame(frame) {
32
- return frame.type === "progress";
33
- }
34
- function encodeDaemonFrame(frame) {
35
- return `${JSON.stringify(frame)}
36
- `;
37
- }
38
- var DaemonFrameDecoder = class {
39
- buffer = "";
40
- sawMalformedLine = false;
41
- push(chunk) {
42
- this.buffer += chunk;
43
- const frames = [];
44
- let newlineIndex = this.buffer.indexOf("\n");
45
- while (newlineIndex !== -1) {
46
- const line = this.buffer.slice(0, newlineIndex);
47
- this.buffer = this.buffer.slice(newlineIndex + 1);
48
- this.collect(line, frames);
49
- newlineIndex = this.buffer.indexOf("\n");
50
- }
51
- return frames;
52
- }
53
- /** Flushes a final bare frame written by a protocol-v1 daemon. */
54
- flush() {
55
- const remainder = this.buffer;
56
- this.buffer = "";
57
- const frames = [];
58
- this.collect(remainder, frames);
59
- return frames;
60
- }
61
- get malformed() {
62
- return this.sawMalformedLine;
63
- }
64
- collect(line, frames) {
65
- const trimmed = line.trim();
66
- if (!trimmed) {
67
- return;
68
- }
69
- try {
70
- frames.push(JSON.parse(trimmed));
71
- } catch {
72
- this.sawMalformedLine = true;
73
- }
74
- }
75
- };
76
-
77
- export {
78
- DAEMON_PROTOCOL_VERSION,
79
- DAEMON_OPERATION_TIMEOUT_CODE,
80
- DAEMON_OAUTH_FLOW_ERROR_CODE,
81
- resolveProgressInterval,
82
- resolveProgressTiming,
83
- isDaemonProgressFrame,
84
- encodeDaemonFrame,
85
- DaemonFrameDecoder
86
- };
@@ -1,39 +0,0 @@
1
- import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
2
-
3
- // node_modules/.pnpm/mcporter@0.13.8/node_modules/mcporter/dist/network-family-autoselection.js
4
- import net from "node:net";
5
- var NODE_DEFAULT_ATTEMPT_TIMEOUT_MS = 250;
6
- var MCPORTER_ATTEMPT_TIMEOUT_MS = 1500;
7
- var NODE_OPTION = "--network-family-autoselection-attempt-timeout";
8
- function configureAutoSelectFamilyAttemptTimeout(defaults = net, nodeOptions = process.env.NODE_OPTIONS) {
9
- if (hasExplicitNodeOption(nodeOptions))
10
- return false;
11
- if (defaults.getDefaultAutoSelectFamilyAttemptTimeout() !== NODE_DEFAULT_ATTEMPT_TIMEOUT_MS)
12
- return false;
13
- defaults.setDefaultAutoSelectFamilyAttemptTimeout(MCPORTER_ATTEMPT_TIMEOUT_MS);
14
- return true;
15
- }
16
- function hasExplicitNodeOption(nodeOptions) {
17
- if (!nodeOptions)
18
- return false;
19
- let offset = 0;
20
- while (offset < nodeOptions.length) {
21
- const index = nodeOptions.indexOf(NODE_OPTION, offset);
22
- if (index === -1)
23
- return false;
24
- const before = nodeOptions[index - 1];
25
- const after = nodeOptions[index + NODE_OPTION.length];
26
- if (isNodeOptionBoundary(before) && (after === "=" || isNodeOptionBoundary(after))) {
27
- return true;
28
- }
29
- offset = index + NODE_OPTION.length;
30
- }
31
- return false;
32
- }
33
- function isNodeOptionBoundary(character) {
34
- return character === void 0 || character === "'" || character === '"' || /\s/u.test(character);
35
- }
36
-
37
- export {
38
- configureAutoSelectFamilyAttemptTimeout
39
- };