@zihanw/pi-forge 0.4.0-beta.1 → 0.4.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 (186) hide show
  1. package/CHANGELOG.md +37 -1
  2. package/PUBLIC_API.md +3 -26
  3. package/README.md +90 -601
  4. package/README.zh-CN.md +86 -585
  5. package/SUBAGENT_ADAPTER_CONTRACT.md +3 -197
  6. package/dist/forge-config.d.ts +80 -0
  7. package/dist/forge-config.d.ts.map +1 -1
  8. package/dist/forge-config.js +268 -18
  9. package/dist/forge-config.js.map +1 -1
  10. package/dist/index.d.ts +1 -4
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +29 -4
  13. package/dist/index.js.map +1 -1
  14. package/dist/lifecycle.js +1 -1
  15. package/dist/profile-service.d.ts +1 -1
  16. package/dist/profile-service.d.ts.map +1 -1
  17. package/dist/profile-service.js +10 -5
  18. package/dist/profile-service.js.map +1 -1
  19. package/dist/runtime/subagent-runtime.d.ts +23 -8
  20. package/dist/runtime/subagent-runtime.d.ts.map +1 -1
  21. package/dist/runtime/subagent-runtime.js +283 -62
  22. package/dist/runtime/subagent-runtime.js.map +1 -1
  23. package/dist/storage.d.ts +1 -0
  24. package/dist/storage.d.ts.map +1 -1
  25. package/dist/storage.js +15 -1
  26. package/dist/storage.js.map +1 -1
  27. package/dist/subagent/canonical.d.ts +19 -7
  28. package/dist/subagent/canonical.d.ts.map +1 -1
  29. package/dist/subagent/canonical.js +19 -47
  30. package/dist/subagent/canonical.js.map +1 -1
  31. package/dist/subagent/contract.d.ts +1 -2
  32. package/dist/subagent/contract.d.ts.map +1 -1
  33. package/dist/subagent/contract.js +1 -2
  34. package/dist/subagent/contract.js.map +1 -1
  35. package/dist/subagent/index.d.ts +4 -3
  36. package/dist/subagent/index.d.ts.map +1 -1
  37. package/dist/subagent/index.js +4 -3
  38. package/dist/subagent/index.js.map +1 -1
  39. package/dist/subagent/plan.d.ts +5 -1
  40. package/dist/subagent/plan.d.ts.map +1 -1
  41. package/dist/subagent/plan.js +28 -31
  42. package/dist/subagent/plan.js.map +1 -1
  43. package/dist/subagent/types.d.ts +62 -178
  44. package/dist/subagent/types.d.ts.map +1 -1
  45. package/dist/subagent/types.js +1 -1
  46. package/dist/subagent/types.js.map +1 -1
  47. package/dist/subagent/validation.d.ts +14 -14
  48. package/dist/subagent/validation.d.ts.map +1 -1
  49. package/dist/subagent/validation.js +52 -238
  50. package/dist/subagent/validation.js.map +1 -1
  51. package/dist/subagent-command.d.ts.map +1 -1
  52. package/dist/subagent-command.js +109 -16
  53. package/dist/subagent-command.js.map +1 -1
  54. package/dist/subagent-host.d.ts.map +1 -1
  55. package/dist/subagent-host.js +1 -0
  56. package/dist/subagent-host.js.map +1 -1
  57. package/dist/subagent-profile-tool.d.ts +25 -2
  58. package/dist/subagent-profile-tool.d.ts.map +1 -1
  59. package/dist/subagent-profile-tool.js +39 -8
  60. package/dist/subagent-profile-tool.js.map +1 -1
  61. package/dist/subagent-tool.d.ts +6 -3
  62. package/dist/subagent-tool.d.ts.map +1 -1
  63. package/dist/subagent-tool.js +85 -14
  64. package/dist/subagent-tool.js.map +1 -1
  65. package/dist/web-editor/client-script.generated.d.ts +1 -1
  66. package/dist/web-editor/client-script.generated.d.ts.map +1 -1
  67. package/dist/web-editor/client-script.generated.js +1 -1
  68. package/dist/web-editor/client-script.generated.js.map +1 -1
  69. package/dist/web-editor/client-styles.d.ts +2 -0
  70. package/dist/web-editor/client-styles.d.ts.map +1 -0
  71. package/dist/web-editor/client-styles.generated.d.ts +2 -0
  72. package/dist/web-editor/client-styles.generated.d.ts.map +1 -0
  73. package/dist/web-editor/client-styles.generated.js +3 -0
  74. package/dist/web-editor/client-styles.generated.js.map +1 -0
  75. package/dist/web-editor/client-styles.js +2 -0
  76. package/dist/web-editor/client-styles.js.map +1 -0
  77. package/dist/web-editor/page.d.ts +2 -0
  78. package/dist/web-editor/page.d.ts.map +1 -1
  79. package/dist/web-editor/page.js +11 -73
  80. package/dist/web-editor/page.js.map +1 -1
  81. package/dist/web-editor/server.d.ts.map +1 -1
  82. package/dist/web-editor/server.js +148 -0
  83. package/dist/web-editor/server.js.map +1 -1
  84. package/dist/web-editor/styles.d.ts.map +1 -1
  85. package/dist/web-editor/styles.js +60 -3
  86. package/dist/web-editor/styles.js.map +1 -1
  87. package/dist/web-editor/types.d.ts +79 -0
  88. package/dist/web-editor/types.d.ts.map +1 -1
  89. package/dist/web-host.d.ts +13 -2
  90. package/dist/web-host.d.ts.map +1 -1
  91. package/dist/web-host.js +301 -0
  92. package/dist/web-host.js.map +1 -1
  93. package/docs/README.md +41 -0
  94. package/docs/concepts/agent-profiles.md +60 -0
  95. package/docs/concepts/prompt-stacks.md +90 -0
  96. package/docs/design/README.md +17 -0
  97. package/docs/design/roadmap-0.4-archive.md +216 -0
  98. package/docs/design/subagents/design-review.md +220 -0
  99. package/docs/design/subagents/interface-design.md +274 -0
  100. package/docs/design/subagents/sdk-spike-findings.md +117 -0
  101. package/docs/development/complexity-review.md +86 -0
  102. package/docs/development/release.md +31 -0
  103. package/docs/development/roadmap.md +42 -0
  104. package/docs/development/setup.md +75 -0
  105. package/docs/getting-started.md +93 -0
  106. package/docs/guides/custom-macros-and-slots.md +68 -0
  107. package/docs/guides/debugging.md +39 -0
  108. package/docs/guides/delegation.md +99 -0
  109. package/docs/guides/sillytavern-import.md +47 -0
  110. package/docs/guides/use-cases.md +65 -0
  111. package/docs/guides/web-editor.md +75 -0
  112. package/docs/reference/commands.md +60 -0
  113. package/docs/reference/configuration.md +64 -0
  114. package/docs/reference/features.md +279 -0
  115. package/docs/reference/macros-and-slots.md +82 -0
  116. package/docs/reference/public-api.md +28 -0
  117. package/docs/reference/stack-schema.md +167 -0
  118. package/docs/reference/subagent-adapter.md +204 -0
  119. package/docs/zh-CN/README.md +37 -0
  120. package/docs/zh-CN/concepts/agent-profiles.md +44 -0
  121. package/docs/zh-CN/concepts/prompt-stacks.md +40 -0
  122. package/docs/zh-CN/getting-started.md +79 -0
  123. package/docs/zh-CN/guides/delegation.md +66 -0
  124. package/docs/zh-CN/guides/web-editor.md +45 -0
  125. package/docs/zh-CN/reference/commands.md +58 -0
  126. package/package.json +28 -14
  127. package/dist/subagent/backend-registry.d.ts +0 -75
  128. package/dist/subagent/backend-registry.d.ts.map +0 -1
  129. package/dist/subagent/backend-registry.js +0 -463
  130. package/dist/subagent/backend-registry.js.map +0 -1
  131. package/dist/subagent/diagnostics.d.ts +0 -3
  132. package/dist/subagent/diagnostics.d.ts.map +0 -1
  133. package/dist/subagent/diagnostics.js +0 -5
  134. package/dist/subagent/diagnostics.js.map +0 -1
  135. package/dist/subagent/pi-model-runtime.d.ts +0 -8
  136. package/dist/subagent/pi-model-runtime.d.ts.map +0 -1
  137. package/dist/subagent/pi-model-runtime.js +0 -22
  138. package/dist/subagent/pi-model-runtime.js.map +0 -1
  139. package/dist/subagent/pi-sdk-backend.d.ts +0 -23
  140. package/dist/subagent/pi-sdk-backend.d.ts.map +0 -1
  141. package/dist/subagent/pi-sdk-backend.js +0 -383
  142. package/dist/subagent/pi-sdk-backend.js.map +0 -1
  143. package/dist/subagent/pi-subprocess-backend.d.ts +0 -72
  144. package/dist/subagent/pi-subprocess-backend.d.ts.map +0 -1
  145. package/dist/subagent/pi-subprocess-backend.js +0 -756
  146. package/dist/subagent/pi-subprocess-backend.js.map +0 -1
  147. package/dist/subagent/subprocess-bridge.d.ts +0 -21
  148. package/dist/subagent/subprocess-bridge.d.ts.map +0 -1
  149. package/dist/subagent/subprocess-bridge.js +0 -87
  150. package/dist/subagent/subprocess-bridge.js.map +0 -1
  151. package/dist/subagent/subprocess-report.d.ts +0 -4
  152. package/dist/subagent/subprocess-report.d.ts.map +0 -1
  153. package/dist/subagent/subprocess-report.js +0 -55
  154. package/dist/subagent/subprocess-report.js.map +0 -1
  155. package/dist/subagent-contract.d.ts +0 -8
  156. package/dist/subagent-contract.d.ts.map +0 -1
  157. package/dist/subagent-contract.js +0 -8
  158. package/dist/subagent-contract.js.map +0 -1
  159. package/dist/web-editor/client/api.d.ts +0 -9
  160. package/dist/web-editor/client/api.d.ts.map +0 -1
  161. package/dist/web-editor/client/api.js +0 -26
  162. package/dist/web-editor/client/api.js.map +0 -1
  163. package/dist/web-editor/client/dom.d.ts +0 -13
  164. package/dist/web-editor/client/dom.d.ts.map +0 -1
  165. package/dist/web-editor/client/dom.js +0 -30
  166. package/dist/web-editor/client/dom.js.map +0 -1
  167. package/dist/web-editor/client/inspector.d.ts +0 -22
  168. package/dist/web-editor/client/inspector.d.ts.map +0 -1
  169. package/dist/web-editor/client/inspector.js +0 -226
  170. package/dist/web-editor/client/inspector.js.map +0 -1
  171. package/dist/web-editor/client/main.d.ts +0 -2
  172. package/dist/web-editor/client/main.d.ts.map +0 -1
  173. package/dist/web-editor/client/main.js +0 -1468
  174. package/dist/web-editor/client/main.js.map +0 -1
  175. package/dist/web-editor/client/policy-editor.d.ts +0 -16
  176. package/dist/web-editor/client/policy-editor.d.ts.map +0 -1
  177. package/dist/web-editor/client/policy-editor.js +0 -330
  178. package/dist/web-editor/client/policy-editor.js.map +0 -1
  179. package/dist/web-editor/client/regex-editor.d.ts +0 -19
  180. package/dist/web-editor/client/regex-editor.d.ts.map +0 -1
  181. package/dist/web-editor/client/regex-editor.js +0 -281
  182. package/dist/web-editor/client/regex-editor.js.map +0 -1
  183. package/dist/web-editor/client/types.d.ts +0 -60
  184. package/dist/web-editor/client/types.d.ts.map +0 -1
  185. package/dist/web-editor/client/types.js +0 -2
  186. package/dist/web-editor/client/types.js.map +0 -1
@@ -1,226 +0,0 @@
1
- import { attr, el, escapeHtml } from "./dom.js";
2
- export function createInspector(deps) {
3
- const { api, stackForSubmit, renderDiagnostics, renderItemList, setStatus } = deps;
4
- const selectedId = deps.getSelectedId;
5
- let payloadSnapshot = { status: "idle" };
6
- let previewCopyTexts = [];
7
- async function validateStack() {
8
- const stack = stackForSubmit();
9
- const data = await api("/api/stacks/" + encodeURIComponent(selectedId()) + "/validate", { method: "POST", body: { stack } });
10
- renderDiagnostics(data.diagnostics || []);
11
- renderItemList();
12
- hidePreview();
13
- setStatus("Validation complete", "success");
14
- }
15
- async function previewStack() {
16
- const stack = stackForSubmit();
17
- const data = await api("/api/stacks/" + encodeURIComponent(selectedId()) + "/preview", { method: "POST", body: { stack } });
18
- renderDiagnostics(data.diagnostics || []);
19
- renderItemList();
20
- renderPreviewInspector(data);
21
- setStatus("Preview rendered", "success");
22
- }
23
- async function refreshPayloadCapture(options = {}) {
24
- const previousCapturedAt = payloadSnapshot.status === "captured" ? payloadSnapshot.capture?.capturedAt : "";
25
- const data = await api("/api/payload");
26
- payloadSnapshot = data;
27
- updatePayloadButton();
28
- const nextCapturedAt = payloadSnapshot.status === "captured" ? payloadSnapshot.capture?.capturedAt : "";
29
- if (options.open || (options.autoOpen && nextCapturedAt && nextCapturedAt !== previousCapturedAt)) {
30
- renderPayloadInspector(payloadSnapshot);
31
- }
32
- }
33
- async function armPayloadCapture(showInspector = false) {
34
- const data = await api("/api/payload/arm", { method: "POST" });
35
- payloadSnapshot = data;
36
- updatePayloadButton();
37
- setStatus("Payload capture armed; send the next Pi prompt");
38
- if (showInspector)
39
- renderPayloadInspector(payloadSnapshot);
40
- }
41
- async function clearPayloadCapture() {
42
- const data = await api("/api/payload", { method: "DELETE" });
43
- payloadSnapshot = data;
44
- updatePayloadButton();
45
- hidePreview();
46
- setStatus("Payload capture cleared", "success");
47
- }
48
- async function openPayloadCapture() {
49
- await refreshPayloadCapture();
50
- if (payloadSnapshot.status === "captured" || payloadSnapshot.status === "armed") {
51
- renderPayloadInspector(payloadSnapshot);
52
- return;
53
- }
54
- await armPayloadCapture();
55
- }
56
- function updatePayloadButton() {
57
- const button = el("payloadBtn");
58
- if (!button)
59
- return;
60
- button.classList.remove("primary");
61
- if (payloadSnapshot.status === "armed") {
62
- button.textContent = "Payload armed";
63
- button.classList.add("primary");
64
- button.title = "Waiting for the next provider payload";
65
- return;
66
- }
67
- if (payloadSnapshot.status === "captured") {
68
- button.textContent = "View payload";
69
- button.title = "Open the latest captured provider payload";
70
- return;
71
- }
72
- button.textContent = "Arm payload";
73
- button.title = "Capture the next provider payload in this editor";
74
- }
75
- function hidePreview() {
76
- const pane = el("preview");
77
- pane.classList.remove("open");
78
- pane.innerHTML = "";
79
- previewCopyTexts = [];
80
- }
81
- function renderPreviewInspector(data) {
82
- const pane = el("preview");
83
- const preview = data.preview;
84
- if (!preview) {
85
- previewCopyTexts = [data.text || ""];
86
- pane.innerHTML = '<div class="preview-dialog" role="dialog" aria-modal="true" aria-label="Prompt preview">' +
87
- '<div class="preview-head"><div><div class="preview-title">Preview</div><div class="preview-meta">Plain text fallback</div></div>' +
88
- '<div class="preview-actions"><button class="preview-copy" data-copy-index="0" data-icon="□" title="Copy the full preview text">Copy</button><button data-preview-close="true" data-icon="×" title="Close the preview">Close</button></div></div>' +
89
- '<div class="preview-body"><pre class="preview-text">' + escapeHtml(data.text || "") + '</pre></div></div>';
90
- pane.classList.add("open");
91
- return;
92
- }
93
- const sections = [preview.system, ...(preview.messages || [])];
94
- previewCopyTexts = [data.text || "", ...sections.map((section) => section.content || "")];
95
- const sectionHtml = sections.map((section, index) => {
96
- const open = index === 0 ? " open" : "";
97
- const label = section.role ? section.role + " · " : "";
98
- return '<details class="preview-section"' + open + '>' +
99
- '<summary><span class="preview-title">' + escapeHtml(section.title || section.id) + '</span>' +
100
- '<span class="preview-meta">' + escapeHtml(label + formatCount(section.chars) + " chars · ~" + formatCount(section.approxTokens) + " tokens") + '</span>' +
101
- '<button class="preview-copy" data-copy-index="' + attr(index + 1) + '" data-icon="□" title="Copy this preview section" onclick="event.preventDefault()">Copy</button></summary>' +
102
- '<pre class="preview-text">' + escapeHtml(section.content || "") + '</pre>' +
103
- '</details>';
104
- }).join("");
105
- pane.innerHTML = '<div class="preview-dialog" role="dialog" aria-modal="true" aria-label="Prompt preview">' +
106
- '<div class="preview-head"><div><div class="preview-title">Prompt preview: ' + escapeHtml(preview.stackId || selectedId()) + '</div>' +
107
- '<div class="preview-meta">' + escapeHtml(formatCount(preview.totalChars) + " chars · ~" + formatCount(preview.approxTokens) + " tokens · " + (preview.messages || []).length + " messages") + '</div></div>' +
108
- '<div class="preview-actions"><button class="preview-copy" data-copy-index="0" data-icon="□" title="Copy the full prompt preview">Copy full</button><button data-preview-close="true" data-icon="×" title="Close the preview">Close</button></div></div>' +
109
- '<div class="preview-body">' + sectionHtml + '</div></div>';
110
- pane.classList.add("open");
111
- }
112
- function renderPayloadInspector(snapshot) {
113
- const pane = el("preview");
114
- if (snapshot.status === "idle") {
115
- previewCopyTexts = [];
116
- pane.innerHTML = '<div class="preview-dialog" role="dialog" aria-modal="true" aria-label="Provider payload capture">' +
117
- '<div class="preview-head"><div><div class="preview-title">Provider payload</div><div class="preview-meta">No payload captured.</div></div>' +
118
- '<div class="preview-actions"><button data-payload-arm="true" data-icon="◆" title="Capture the next provider payload">Arm next</button><button data-preview-close="true" data-icon="×" title="Close the payload inspector">Close</button></div></div>' +
119
- '<div class="preview-body"><div class="empty">Arm capture, then send the next prompt in Pi. The provider payload will appear here before it is sent.</div></div></div>';
120
- pane.classList.add("open");
121
- return;
122
- }
123
- if (snapshot.status === "armed") {
124
- const meta = snapshot.armedAt ? "Armed at " + snapshot.armedAt : "Waiting for next provider request";
125
- previewCopyTexts = [];
126
- pane.innerHTML = '<div class="preview-dialog" role="dialog" aria-modal="true" aria-label="Provider payload capture">' +
127
- '<div class="preview-head"><div><div class="preview-title">Payload capture armed</div><div class="preview-meta">' + escapeHtml(meta) + '</div></div>' +
128
- '<div class="preview-actions"><button class="danger" data-payload-clear="true" data-icon="×" title="Clear the armed payload capture">Clear</button><button data-preview-close="true" data-icon="×" title="Close the payload inspector">Close</button></div></div>' +
129
- '<div class="preview-body"><div class="empty">Send the next prompt in Pi. The exact provider payload will be captured here and redacted before display.</div></div></div>';
130
- pane.classList.add("open");
131
- return;
132
- }
133
- const capture = snapshot.capture || {};
134
- const sections = payloadSections(capture);
135
- previewCopyTexts = [capture.text || "", ...sections.map((section) => section.content || "")];
136
- const sectionHtml = sections.map((section, index) => {
137
- const open = index === 0 ? " open" : "";
138
- return '<details class="preview-section"' + open + '>' +
139
- '<summary><span class="preview-title">' + escapeHtml(section.title) + '</span>' +
140
- '<span class="preview-meta">' + escapeHtml(section.meta) + '</span>' +
141
- '<button class="preview-copy" data-copy-index="' + attr(index + 1) + '" data-icon="□" title="Copy this payload section" onclick="event.preventDefault()">Copy</button></summary>' +
142
- '<pre class="preview-text">' + escapeHtml(section.content || "") + '</pre>' +
143
- '</details>';
144
- }).join("");
145
- const metaParts = [
146
- formatCount(capture.chars) + " chars",
147
- "~" + formatCount(capture.approxTokens) + " tokens",
148
- capture.stackId ? "stack " + capture.stackId : undefined,
149
- capture.truncated ? "truncated" : undefined,
150
- ].filter(Boolean);
151
- pane.innerHTML = '<div class="preview-dialog" role="dialog" aria-modal="true" aria-label="Provider payload capture">' +
152
- '<div class="preview-head"><div><div class="preview-title">Provider payload</div>' +
153
- '<div class="preview-meta">' + escapeHtml(metaParts.join(" · ") + (capture.capturedAt ? " · " + capture.capturedAt : "")) + '</div></div>' +
154
- '<div class="preview-actions"><button class="preview-copy" data-copy-index="0" data-icon="□" title="Copy the full redacted payload">Copy full</button><button data-payload-arm="true" data-icon="◆" title="Capture the next provider payload">Arm again</button><button class="danger" data-payload-clear="true" data-icon="×" title="Clear the captured payload">Clear</button><button data-preview-close="true" data-icon="×" title="Close the payload inspector">Close</button></div></div>' +
155
- '<div class="preview-body">' + sectionHtml + '</div></div>';
156
- pane.classList.add("open");
157
- }
158
- function payloadSections(capture) {
159
- const value = capture.payload;
160
- if (value && typeof value === "object") {
161
- if (Array.isArray(value)) {
162
- return value.map((item, index) => payloadSection(String(index), item));
163
- }
164
- const entries = Object.entries(value);
165
- if (entries.length)
166
- return entries.map(([key, item]) => payloadSection(key, item));
167
- }
168
- return [{
169
- title: capture.error ? "Stringify error" : capture.truncated ? "Raw truncated payload" : "Raw payload",
170
- meta: formatCount((capture.text || "").length) + " chars",
171
- content: capture.text || "",
172
- }];
173
- }
174
- function payloadSection(title, value) {
175
- const rendered = JSON.stringify(value, null, 2);
176
- const content = rendered === undefined ? String(value) : rendered;
177
- const meta = describePayloadValue(value) + " · " + formatCount(content.length) + " chars";
178
- return { title, meta, content };
179
- }
180
- function describePayloadValue(value) {
181
- if (Array.isArray(value))
182
- return "array[" + value.length + "]";
183
- if (value && typeof value === "object")
184
- return "object{" + Object.keys(value).length + "}";
185
- if (value === null)
186
- return "null";
187
- return typeof value;
188
- }
189
- function formatCount(value) {
190
- return Number(value || 0).toLocaleString();
191
- }
192
- async function copyPreviewText(index) {
193
- const text = previewCopyTexts[index] || "";
194
- if (!text)
195
- return;
196
- await copyTextToClipboard(text);
197
- setStatus("Copied text", "success");
198
- }
199
- async function copyTextToClipboard(text) {
200
- if (navigator.clipboard && window.isSecureContext) {
201
- await navigator.clipboard.writeText(text);
202
- }
203
- else {
204
- const area = document.createElement("textarea");
205
- area.value = text;
206
- area.style.position = "fixed";
207
- area.style.left = "-9999px";
208
- document.body.appendChild(area);
209
- area.select();
210
- document.execCommand("copy");
211
- area.remove();
212
- }
213
- }
214
- return {
215
- validateStack,
216
- previewStack,
217
- refreshPayloadCapture,
218
- armPayloadCapture,
219
- clearPayloadCapture,
220
- openPayloadCapture,
221
- hidePreview,
222
- copyPreviewText,
223
- copyTextToClipboard,
224
- };
225
- }
226
- //# sourceMappingURL=inspector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inspector.js","sourceRoot":"","sources":["../../../src/web-editor/client/inspector.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=main.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/web-editor/client/main.ts"],"names":[],"mappings":""}