@roarpeng/graphflow 1.12.2 → 1.14.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 +43 -0
- package/README.md +7 -4
- package/README.zh.md +2 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +2 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/embedding-factory.d.ts.map +1 -1
- package/dist/config/embedding-factory.js +2 -1
- package/dist/config/embedding-factory.js.map +1 -1
- package/dist/config/embedding-model.d.ts +7 -0
- package/dist/config/embedding-model.d.ts.map +1 -0
- package/dist/config/embedding-model.js +10 -0
- package/dist/config/embedding-model.js.map +1 -0
- package/dist/core/types.d.ts +4 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/graph/context-slicer.d.ts.map +1 -1
- package/dist/graph/context-slicer.js +102 -0
- package/dist/graph/context-slicer.js.map +1 -1
- package/dist/graph/engineering-knowledge.d.ts +76 -0
- package/dist/graph/engineering-knowledge.d.ts.map +1 -0
- package/dist/graph/engineering-knowledge.js +170 -0
- package/dist/graph/engineering-knowledge.js.map +1 -0
- package/dist/graph/graph-compression.d.ts.map +1 -1
- package/dist/graph/graph-compression.js +3 -0
- package/dist/graph/graph-compression.js.map +1 -1
- package/dist/graph/graph-search.d.ts +26 -0
- package/dist/graph/graph-search.d.ts.map +1 -1
- package/dist/graph/graph-search.js +80 -0
- package/dist/graph/graph-search.js.map +1 -1
- package/dist/graph/memory-pack.d.ts +44 -1
- package/dist/graph/memory-pack.d.ts.map +1 -1
- package/dist/graph/memory-pack.js +134 -4
- package/dist/graph/memory-pack.js.map +1 -1
- package/dist/graph/snapshot-view.d.ts.map +1 -1
- package/dist/graph/snapshot-view.js +2 -0
- package/dist/graph/snapshot-view.js.map +1 -1
- package/dist/graph/team-governance.d.ts +48 -0
- package/dist/graph/team-governance.d.ts.map +1 -0
- package/dist/graph/team-governance.js +174 -0
- package/dist/graph/team-governance.js.map +1 -0
- package/dist/integrations/host-adapter.d.ts +14 -0
- package/dist/integrations/host-adapter.d.ts.map +1 -0
- package/dist/integrations/host-adapter.js +32 -0
- package/dist/integrations/host-adapter.js.map +1 -0
- package/dist/learning/dialogue-thread.d.ts +152 -0
- package/dist/learning/dialogue-thread.d.ts.map +1 -1
- package/dist/learning/dialogue-thread.js +439 -1
- package/dist/learning/dialogue-thread.js.map +1 -1
- package/dist/learning/embeddings.d.ts.map +1 -1
- package/dist/learning/embeddings.js +2 -1
- package/dist/learning/embeddings.js.map +1 -1
- package/dist/learning/episodic-memory.d.ts +4 -1
- package/dist/learning/episodic-memory.d.ts.map +1 -1
- package/dist/learning/episodic-memory.js +7 -1
- package/dist/learning/episodic-memory.js.map +1 -1
- package/dist/learning/evidence.d.ts +48 -0
- package/dist/learning/evidence.d.ts.map +1 -0
- package/dist/learning/evidence.js +112 -0
- package/dist/learning/evidence.js.map +1 -0
- package/dist/learning/turn-distillation.d.ts +24 -0
- package/dist/learning/turn-distillation.d.ts.map +1 -1
- package/dist/learning/turn-distillation.js +101 -0
- package/dist/learning/turn-distillation.js.map +1 -1
- package/dist/security/secure-store.d.ts +13 -0
- package/dist/security/secure-store.d.ts.map +1 -0
- package/dist/security/secure-store.js +42 -0
- package/dist/security/secure-store.js.map +1 -0
- package/dist/security/token-auth.d.ts +23 -0
- package/dist/security/token-auth.d.ts.map +1 -0
- package/dist/security/token-auth.js +86 -0
- package/dist/security/token-auth.js.map +1 -0
- package/dist/surfaces/cli/index.js +333 -3
- package/dist/surfaces/cli/index.js.map +1 -1
- package/dist/surfaces/cli/output.d.ts.map +1 -1
- package/dist/surfaces/cli/output.js +7 -2
- package/dist/surfaces/cli/output.js.map +1 -1
- package/dist/surfaces/cli/runtime/dialogue.d.ts +61 -0
- package/dist/surfaces/cli/runtime/dialogue.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/dialogue.js +121 -6
- package/dist/surfaces/cli/runtime/dialogue.js.map +1 -1
- package/dist/surfaces/cli/runtime/evidence.d.ts +34 -0
- package/dist/surfaces/cli/runtime/evidence.d.ts.map +1 -0
- package/dist/surfaces/cli/runtime/evidence.js +82 -0
- package/dist/surfaces/cli/runtime/evidence.js.map +1 -0
- package/dist/surfaces/cli/runtime/governance.d.ts +88 -0
- package/dist/surfaces/cli/runtime/governance.d.ts.map +1 -0
- package/dist/surfaces/cli/runtime/governance.js +245 -0
- package/dist/surfaces/cli/runtime/governance.js.map +1 -0
- package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/graph.js +36 -3
- package/dist/surfaces/cli/runtime/graph.js.map +1 -1
- package/dist/surfaces/cli/runtime/routing.d.ts +4 -1
- package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/routing.js +6 -2
- package/dist/surfaces/cli/runtime/routing.js.map +1 -1
- package/dist/surfaces/cli/runtime/types.d.ts +8 -0
- package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime.d.ts +3 -1
- package/dist/surfaces/cli/runtime.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime.js +23 -1
- package/dist/surfaces/cli/runtime.js.map +1 -1
- package/dist/surfaces/mcp/server.d.ts +7 -0
- package/dist/surfaces/mcp/server.d.ts.map +1 -1
- package/dist/surfaces/mcp/server.js +74 -5
- package/dist/surfaces/mcp/server.js.map +1 -1
- package/dist/surfaces/mcp/tool-definitions.d.ts.map +1 -1
- package/dist/surfaces/mcp/tool-definitions.js +8 -1
- package/dist/surfaces/mcp/tool-definitions.js.map +1 -1
- package/dist/surfaces/mcp/tool-handlers.d.ts.map +1 -1
- package/dist/surfaces/mcp/tool-handlers.js +22 -1
- package/dist/surfaces/mcp/tool-handlers.js.map +1 -1
- package/dsh/plugin.mjs +111 -6
- package/package.json +4 -1
- package/plugin.json +1 -1
- package/web/plugin.mjs +45 -2
package/web/plugin.mjs
CHANGED
|
@@ -66,10 +66,12 @@ export function hostHalf() {
|
|
|
66
66
|
try {
|
|
67
67
|
const wb = await runCli("graphflow workbench tree --json", workspaceRoot);
|
|
68
68
|
const dl = await runCli("graphflow dialogue list --json --limit 50", workspaceRoot);
|
|
69
|
+
const tr = await runCli("graphflow dialogue traces --json --limit 50", workspaceRoot);
|
|
69
70
|
return {
|
|
70
71
|
ok: true,
|
|
71
72
|
workbench: parseCliOut(wb),
|
|
72
73
|
dialogues: parseCliOut(dl),
|
|
74
|
+
traces: parseCliOut(tr),
|
|
73
75
|
};
|
|
74
76
|
} catch (error) {
|
|
75
77
|
return { ok: false, error: String(error && error.message ? error.message : error) };
|
|
@@ -248,8 +250,9 @@ function KnowledgePanel(props) {
|
|
|
248
250
|
? wbData.outlines
|
|
249
251
|
: [];
|
|
250
252
|
const dialogues = Array.isArray(data.dialogues) ? data.dialogues : [];
|
|
253
|
+
const traces = Array.isArray(data.traces) ? data.traces : [];
|
|
251
254
|
const sections = [];
|
|
252
|
-
if (outlines.length === 0 && dialogues.length === 0) {
|
|
255
|
+
if (outlines.length === 0 && dialogues.length === 0 && traces.length === 0) {
|
|
253
256
|
sections.push(
|
|
254
257
|
React.createElement(
|
|
255
258
|
"div",
|
|
@@ -270,6 +273,14 @@ function KnowledgePanel(props) {
|
|
|
270
273
|
if (dialogues.length > 0) {
|
|
271
274
|
const children = [React.createElement("div", { className: "gf-section-title" }, "对话记录")];
|
|
272
275
|
for (const turn of dialogues) {
|
|
276
|
+
const badges = [];
|
|
277
|
+
if (turn.jumped) badges.push(React.createElement("span", { key: "j", className: "gf-badge gf-badge-jump" }, "跳转"));
|
|
278
|
+
if (turn.supersedesTurnIds && turn.supersedesTurnIds.length > 0) {
|
|
279
|
+
badges.push(React.createElement("span", { key: "s", className: "gf-badge gf-badge-supersede" }, "修正过结论"));
|
|
280
|
+
}
|
|
281
|
+
if (turn.forkBoundary) {
|
|
282
|
+
badges.push(React.createElement("span", { key: "f", className: "gf-badge" }, "fork"));
|
|
283
|
+
}
|
|
273
284
|
children.push(
|
|
274
285
|
React.createElement(
|
|
275
286
|
"button",
|
|
@@ -288,7 +299,7 @@ function KnowledgePanel(props) {
|
|
|
288
299
|
{ className: "gf-node-label" },
|
|
289
300
|
clip(turn.title || turn.userQuery, 40)
|
|
290
301
|
),
|
|
291
|
-
|
|
302
|
+
badges
|
|
292
303
|
),
|
|
293
304
|
React.createElement(
|
|
294
305
|
"div",
|
|
@@ -304,6 +315,28 @@ function KnowledgePanel(props) {
|
|
|
304
315
|
}
|
|
305
316
|
sections.push(React.createElement("div", { key: "dialogues" }, children));
|
|
306
317
|
}
|
|
318
|
+
if (traces.length > 0) {
|
|
319
|
+
const children = [React.createElement("div", { className: "gf-section-title" }, "Agent 轨迹")];
|
|
320
|
+
for (const trace of traces.slice(0, 20)) {
|
|
321
|
+
children.push(
|
|
322
|
+
React.createElement(
|
|
323
|
+
"div",
|
|
324
|
+
{ key: trace.id, className: "gf-trace" },
|
|
325
|
+
React.createElement(
|
|
326
|
+
"span",
|
|
327
|
+
{ className: "gf-badge" + (trace.status === "failed" ? " gf-badge-jump" : "") },
|
|
328
|
+
trace.status === "failed" ? "失败" : trace.status === "start" ? "启动" : "完成"
|
|
329
|
+
),
|
|
330
|
+
React.createElement(
|
|
331
|
+
"span",
|
|
332
|
+
{ className: "gf-node-preview" },
|
|
333
|
+
`T#${trace.turnSeq} ${clip(trace.label, 48)} · ${new Date(trace.createdAt).toLocaleTimeString()}`
|
|
334
|
+
)
|
|
335
|
+
)
|
|
336
|
+
);
|
|
337
|
+
}
|
|
338
|
+
sections.push(React.createElement("div", { key: "traces" }, children));
|
|
339
|
+
}
|
|
307
340
|
body = React.createElement("div", { className: "gf-panel-body" }, sections);
|
|
308
341
|
}
|
|
309
342
|
|
|
@@ -424,6 +457,16 @@ export const PANEL_CSS = `
|
|
|
424
457
|
.gf-badge-active { background: var(--dsw-alias-brand-primary, #4a90d9); color: #fff; }
|
|
425
458
|
.gf-badge-pending { background: var(--dsw-alias-state-warn-primary, #e0a13c); color: #000; }
|
|
426
459
|
.gf-badge-jump { background: var(--dsw-alias-state-warn-primary, #e0a13c); color: #000; }
|
|
460
|
+
.gf-badge-supersede { background: var(--dsw-alias-state-ok-primary, #4caf7d); color: #000; }
|
|
461
|
+
.gf-trace {
|
|
462
|
+
display: flex;
|
|
463
|
+
align-items: center;
|
|
464
|
+
gap: 6px;
|
|
465
|
+
padding: 3px 8px;
|
|
466
|
+
margin: 2px 0;
|
|
467
|
+
border-radius: 8px;
|
|
468
|
+
background: rgba(128,128,128,.08);
|
|
469
|
+
}
|
|
427
470
|
.gf-node-preview {
|
|
428
471
|
color: var(--dsw-alias-label-secondary, #aaa);
|
|
429
472
|
font-size: 12px;
|