@roarpeng/graphflow 1.4.4 → 1.7.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.
Files changed (227) hide show
  1. package/AGENTS.md +1 -1
  2. package/CHANGELOG.md +72 -0
  3. package/CLAUDE.md +1 -1
  4. package/README.md +76 -50
  5. package/dist/agents/atp-schema.d.ts +59 -0
  6. package/dist/agents/atp-schema.d.ts.map +1 -0
  7. package/dist/agents/atp-schema.js +3 -0
  8. package/dist/agents/atp-schema.js.map +1 -0
  9. package/dist/agents/decision-engine.d.ts +55 -0
  10. package/dist/agents/decision-engine.d.ts.map +1 -0
  11. package/dist/agents/decision-engine.js +338 -0
  12. package/dist/agents/decision-engine.js.map +1 -0
  13. package/dist/agents/insight.d.ts +69 -2
  14. package/dist/agents/insight.d.ts.map +1 -1
  15. package/dist/agents/insight.js +420 -27
  16. package/dist/agents/insight.js.map +1 -1
  17. package/dist/agents/task-profile.d.ts +19 -0
  18. package/dist/agents/task-profile.d.ts.map +1 -0
  19. package/dist/agents/task-profile.js +64 -0
  20. package/dist/agents/task-profile.js.map +1 -0
  21. package/dist/agents/validator.js +1 -1
  22. package/dist/agents/validator.js.map +1 -1
  23. package/dist/config/defaults.d.ts.map +1 -1
  24. package/dist/config/defaults.js +4 -3
  25. package/dist/config/defaults.js.map +1 -1
  26. package/dist/config/discover-workspace.d.ts.map +1 -1
  27. package/dist/config/discover-workspace.js +13 -2
  28. package/dist/config/discover-workspace.js.map +1 -1
  29. package/dist/config/embedding-factory.d.ts.map +1 -1
  30. package/dist/config/embedding-factory.js +87 -8
  31. package/dist/config/embedding-factory.js.map +1 -1
  32. package/dist/config/loader.d.ts.map +1 -1
  33. package/dist/config/loader.js +10 -4
  34. package/dist/config/loader.js.map +1 -1
  35. package/dist/config/provider-env.d.ts +32 -0
  36. package/dist/config/provider-env.d.ts.map +1 -0
  37. package/dist/config/provider-env.js +51 -0
  38. package/dist/config/provider-env.js.map +1 -0
  39. package/dist/config/resolve.d.ts.map +1 -1
  40. package/dist/config/resolve.js +7 -2
  41. package/dist/config/resolve.js.map +1 -1
  42. package/dist/config/schema.d.ts +17 -3
  43. package/dist/config/schema.d.ts.map +1 -1
  44. package/dist/config/workspace-root.d.ts +0 -12
  45. package/dist/config/workspace-root.d.ts.map +1 -1
  46. package/dist/config/workspace-root.js +21 -5
  47. package/dist/config/workspace-root.js.map +1 -1
  48. package/dist/core/agent-delegation.d.ts +8 -1
  49. package/dist/core/agent-delegation.d.ts.map +1 -1
  50. package/dist/core/agent-delegation.js +233 -38
  51. package/dist/core/agent-delegation.js.map +1 -1
  52. package/dist/core/cancellation.d.ts +57 -0
  53. package/dist/core/cancellation.d.ts.map +1 -0
  54. package/dist/core/cancellation.js +195 -0
  55. package/dist/core/cancellation.js.map +1 -0
  56. package/dist/core/dag-engine.d.ts +6 -1
  57. package/dist/core/dag-engine.d.ts.map +1 -1
  58. package/dist/core/dag-engine.js +67 -9
  59. package/dist/core/dag-engine.js.map +1 -1
  60. package/dist/core/orchestrator-context.d.ts.map +1 -1
  61. package/dist/core/orchestrator-context.js +28 -3
  62. package/dist/core/orchestrator-context.js.map +1 -1
  63. package/dist/core/orchestrator-route.d.ts +1 -1
  64. package/dist/core/orchestrator-route.d.ts.map +1 -1
  65. package/dist/core/orchestrator-route.js.map +1 -1
  66. package/dist/core/orchestrator.js +6 -1
  67. package/dist/core/orchestrator.js.map +1 -1
  68. package/dist/core/runtime-controller.d.ts +19 -0
  69. package/dist/core/runtime-controller.d.ts.map +1 -0
  70. package/dist/core/runtime-controller.js +89 -0
  71. package/dist/core/runtime-controller.js.map +1 -0
  72. package/dist/core/types.d.ts +17 -0
  73. package/dist/core/types.d.ts.map +1 -1
  74. package/dist/graph/context-slicer-types.d.ts +2 -4
  75. package/dist/graph/context-slicer-types.d.ts.map +1 -1
  76. package/dist/graph/context-slicer-types.js.map +1 -1
  77. package/dist/graph/context-slicer.d.ts +1 -0
  78. package/dist/graph/context-slicer.d.ts.map +1 -1
  79. package/dist/graph/context-slicer.js +54 -18
  80. package/dist/graph/context-slicer.js.map +1 -1
  81. package/dist/graph/file-indexer-walker.d.ts +3 -0
  82. package/dist/graph/file-indexer-walker.d.ts.map +1 -1
  83. package/dist/graph/file-indexer-walker.js.map +1 -1
  84. package/dist/graph/file-indexer.d.ts +1 -0
  85. package/dist/graph/file-indexer.d.ts.map +1 -1
  86. package/dist/graph/file-indexer.js +14 -18
  87. package/dist/graph/file-indexer.js.map +1 -1
  88. package/dist/graph/file-watcher.d.ts.map +1 -1
  89. package/dist/graph/file-watcher.js +9 -2
  90. package/dist/graph/file-watcher.js.map +1 -1
  91. package/dist/graph/graph-utils.d.ts +6 -1
  92. package/dist/graph/graph-utils.d.ts.map +1 -1
  93. package/dist/graph/graph-utils.js +116 -2
  94. package/dist/graph/graph-utils.js.map +1 -1
  95. package/dist/graph/graphify-file-client.d.ts.map +1 -1
  96. package/dist/graph/graphify-file-client.js +2 -1
  97. package/dist/graph/graphify-file-client.js.map +1 -1
  98. package/dist/graph/hit-diversify.d.ts +31 -0
  99. package/dist/graph/hit-diversify.d.ts.map +1 -0
  100. package/dist/graph/hit-diversify.js +270 -0
  101. package/dist/graph/hit-diversify.js.map +1 -0
  102. package/dist/graph/language-indexers/go.d.ts.map +1 -1
  103. package/dist/graph/language-indexers/go.js +2 -3
  104. package/dist/graph/language-indexers/go.js.map +1 -1
  105. package/dist/graph/language-indexers/incremental-parse.d.ts +9 -0
  106. package/dist/graph/language-indexers/incremental-parse.d.ts.map +1 -0
  107. package/dist/graph/language-indexers/incremental-parse.js +114 -0
  108. package/dist/graph/language-indexers/incremental-parse.js.map +1 -0
  109. package/dist/graph/language-indexers/python.d.ts.map +1 -1
  110. package/dist/graph/language-indexers/python.js +2 -3
  111. package/dist/graph/language-indexers/python.js.map +1 -1
  112. package/dist/graph/language-indexers/rust.d.ts.map +1 -1
  113. package/dist/graph/language-indexers/rust.js +2 -3
  114. package/dist/graph/language-indexers/rust.js.map +1 -1
  115. package/dist/graph/language-indexers/tree-sitter-loader.d.ts +19 -3
  116. package/dist/graph/language-indexers/tree-sitter-loader.d.ts.map +1 -1
  117. package/dist/graph/language-indexers/tree-sitter-loader.js +24 -4
  118. package/dist/graph/language-indexers/tree-sitter-loader.js.map +1 -1
  119. package/dist/graph/query-expand.d.ts.map +1 -1
  120. package/dist/graph/query-expand.js +2 -0
  121. package/dist/graph/query-expand.js.map +1 -1
  122. package/dist/index.d.ts +1 -1
  123. package/dist/index.d.ts.map +1 -1
  124. package/dist/index.js +2 -1
  125. package/dist/index.js.map +1 -1
  126. package/dist/integrations/agent-mcp-installer.d.ts +39 -0
  127. package/dist/integrations/agent-mcp-installer.d.ts.map +1 -1
  128. package/dist/integrations/agent-mcp-installer.js +220 -14
  129. package/dist/integrations/agent-mcp-installer.js.map +1 -1
  130. package/dist/learning/embedding-quality.d.ts +46 -0
  131. package/dist/learning/embedding-quality.d.ts.map +1 -0
  132. package/dist/learning/embedding-quality.js +131 -0
  133. package/dist/learning/embedding-quality.js.map +1 -0
  134. package/dist/learning/embeddings.d.ts +46 -3
  135. package/dist/learning/embeddings.d.ts.map +1 -1
  136. package/dist/learning/embeddings.js +186 -26
  137. package/dist/learning/embeddings.js.map +1 -1
  138. package/dist/learning/hnsw-index.d.ts +9 -35
  139. package/dist/learning/hnsw-index.d.ts.map +1 -1
  140. package/dist/learning/hnsw-index.js +8 -154
  141. package/dist/learning/hnsw-index.js.map +1 -1
  142. package/dist/learning/skill-flywheel.d.ts +1 -1
  143. package/dist/learning/skill-flywheel.d.ts.map +1 -1
  144. package/dist/learning/skill-flywheel.js +10 -3
  145. package/dist/learning/skill-flywheel.js.map +1 -1
  146. package/dist/routing/deepseek-tools.d.ts +7 -0
  147. package/dist/routing/deepseek-tools.d.ts.map +1 -0
  148. package/dist/routing/deepseek-tools.js +154 -0
  149. package/dist/routing/deepseek-tools.js.map +1 -0
  150. package/dist/routing/model-router.d.ts +1 -1
  151. package/dist/routing/model-router.d.ts.map +1 -1
  152. package/dist/routing/model-router.js +5 -1
  153. package/dist/routing/model-router.js.map +1 -1
  154. package/dist/routing/provider-adapters/anthropic.d.ts.map +1 -1
  155. package/dist/routing/provider-adapters/anthropic.js +7 -4
  156. package/dist/routing/provider-adapters/anthropic.js.map +1 -1
  157. package/dist/routing/provider-adapters/bailian.d.ts.map +1 -1
  158. package/dist/routing/provider-adapters/bailian.js +7 -4
  159. package/dist/routing/provider-adapters/bailian.js.map +1 -1
  160. package/dist/routing/provider-adapters/deepseek.d.ts +5 -0
  161. package/dist/routing/provider-adapters/deepseek.d.ts.map +1 -0
  162. package/dist/routing/provider-adapters/deepseek.js +109 -0
  163. package/dist/routing/provider-adapters/deepseek.js.map +1 -0
  164. package/dist/routing/provider-adapters/doubao.d.ts.map +1 -1
  165. package/dist/routing/provider-adapters/doubao.js +7 -4
  166. package/dist/routing/provider-adapters/doubao.js.map +1 -1
  167. package/dist/routing/provider-adapters/openai.d.ts +2 -4
  168. package/dist/routing/provider-adapters/openai.d.ts.map +1 -1
  169. package/dist/routing/provider-adapters/openai.js +23 -32
  170. package/dist/routing/provider-adapters/openai.js.map +1 -1
  171. package/dist/routing/provider-adapters/types.d.ts +61 -0
  172. package/dist/routing/provider-adapters/types.d.ts.map +1 -0
  173. package/dist/routing/provider-adapters/types.js +56 -0
  174. package/dist/routing/provider-adapters/types.js.map +1 -0
  175. package/dist/routing/provider-executor.d.ts +6 -1
  176. package/dist/routing/provider-executor.d.ts.map +1 -1
  177. package/dist/routing/provider-executor.js +70 -39
  178. package/dist/routing/provider-executor.js.map +1 -1
  179. package/dist/routing/provider-health.d.ts.map +1 -1
  180. package/dist/routing/provider-health.js +7 -1
  181. package/dist/routing/provider-health.js.map +1 -1
  182. package/dist/routing/role-capabilities.d.ts +11 -0
  183. package/dist/routing/role-capabilities.d.ts.map +1 -0
  184. package/dist/routing/role-capabilities.js +94 -0
  185. package/dist/routing/role-capabilities.js.map +1 -0
  186. package/dist/surfaces/antigravity-rules/graphflow.md +8 -8
  187. package/dist/surfaces/cli/runtime/env.d.ts.map +1 -1
  188. package/dist/surfaces/cli/runtime/env.js +3 -0
  189. package/dist/surfaces/cli/runtime/env.js.map +1 -1
  190. package/dist/surfaces/cli/runtime/facade.d.ts +2 -1
  191. package/dist/surfaces/cli/runtime/facade.d.ts.map +1 -1
  192. package/dist/surfaces/cli/runtime/facade.js +1 -0
  193. package/dist/surfaces/cli/runtime/facade.js.map +1 -1
  194. package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
  195. package/dist/surfaces/cli/runtime/graph.js +7 -1
  196. package/dist/surfaces/cli/runtime/graph.js.map +1 -1
  197. package/dist/surfaces/cli/runtime/routing.d.ts +3 -0
  198. package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
  199. package/dist/surfaces/cli/runtime/routing.js +31 -4
  200. package/dist/surfaces/cli/runtime/routing.js.map +1 -1
  201. package/dist/surfaces/cli/runtime/settings.d.ts.map +1 -1
  202. package/dist/surfaces/cli/runtime/settings.js +0 -5
  203. package/dist/surfaces/cli/runtime/settings.js.map +1 -1
  204. package/dist/surfaces/cli/runtime/types.d.ts +23 -9
  205. package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
  206. package/dist/surfaces/cli/runtime.d.ts +1 -1
  207. package/dist/surfaces/cli/runtime.d.ts.map +1 -1
  208. package/dist/surfaces/cli/runtime.js +2 -1
  209. package/dist/surfaces/cli/runtime.js.map +1 -1
  210. package/dist/surfaces/copilot-instructions/graphflow.md +6 -6
  211. package/dist/surfaces/cursor-rules/graphflow.mdc +20 -27
  212. package/dist/surfaces/mcp/server.js +17 -6
  213. package/dist/surfaces/mcp/server.js.map +1 -1
  214. package/dist/surfaces/mcp/tool-definitions.d.ts.map +1 -1
  215. package/dist/surfaces/mcp/tool-definitions.js +31 -124
  216. package/dist/surfaces/mcp/tool-definitions.js.map +1 -1
  217. package/dist/surfaces/mcp/tool-handlers.d.ts.map +1 -1
  218. package/dist/surfaces/mcp/tool-handlers.js +80 -42
  219. package/dist/surfaces/mcp/tool-handlers.js.map +1 -1
  220. package/dist/surfaces/trae-rules/graphflow.md +9 -9
  221. package/dist/surfaces/trae-skill/graphflow/SKILL.md +68 -75
  222. package/package.json +2 -2
  223. package/src/surfaces/antigravity-rules/graphflow.md +8 -8
  224. package/src/surfaces/copilot-instructions/graphflow.md +6 -6
  225. package/src/surfaces/cursor-rules/graphflow.mdc +20 -27
  226. package/src/surfaces/trae-rules/graphflow.md +9 -9
  227. package/src/surfaces/trae-skill/graphflow/SKILL.md +68 -75
@@ -10,6 +10,7 @@ const merge_1 = require("./merge");
10
10
  const defaults_1 = require("./defaults");
11
11
  const scaffold_1 = require("./scaffold");
12
12
  const workspace_root_1 = require("./workspace-root");
13
+ const provider_env_1 = require("./provider-env");
13
14
  const logger_1 = require("../utils/logger");
14
15
  function isDefaultProjectConfigPath(path) {
15
16
  const projectRootConfig = (0, node_path_1.resolve)("graphflow.config.json");
@@ -45,6 +46,10 @@ function resolveWritableConfigPath(path = "graphflow.config.json") {
45
46
  }
46
47
  return (0, scaffold_1.resolveGlobalConfigPath)();
47
48
  }
49
+ function finalizeConfig(config) {
50
+ (0, provider_env_1.applyProviderEnvFromConfig)(config);
51
+ return config;
52
+ }
48
53
  function resolveConfig(path = "graphflow.config.json") {
49
54
  if (!isDefaultProjectConfigPath(path)) {
50
55
  const result = (0, loader_1.loadConfigSafe)(path);
@@ -52,7 +57,7 @@ function resolveConfig(path = "graphflow.config.json") {
52
57
  logger_1.logger.warn({ path: result.configPath, error: result.error }, "Using default config for explicit path");
53
58
  }
54
59
  const projectRoot = result.config.graphPolicy.workspaceRoot;
55
- return (0, workspace_root_1.bindRuntimeWorkspaceRoot)(result.config, projectRoot ? { projectWorkspaceRoot: projectRoot } : undefined);
60
+ return finalizeConfig((0, workspace_root_1.bindRuntimeWorkspaceRoot)(result.config, projectRoot ? { projectWorkspaceRoot: projectRoot } : undefined));
56
61
  }
57
62
  const globalPath = (0, scaffold_1.resolveGlobalConfigPath)();
58
63
  const base = (0, node_fs_1.existsSync)(globalPath) ? loadLayer(globalPath) : (0, defaults_1.getDefaultConfig)();
@@ -80,7 +85,7 @@ function resolveConfig(path = "graphflow.config.json") {
80
85
  else {
81
86
  merged = base;
82
87
  }
83
- return (0, workspace_root_1.bindRuntimeWorkspaceRoot)(merged, projectWorkspaceRoot ? { projectWorkspaceRoot } : undefined);
88
+ return finalizeConfig((0, workspace_root_1.bindRuntimeWorkspaceRoot)(merged, projectWorkspaceRoot ? { projectWorkspaceRoot } : undefined));
84
89
  }
85
90
  function loadLayer(path) {
86
91
  const result = (0, loader_1.loadConfigSafe)(path);
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/config/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/config/resolve.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,13 @@ export interface ProviderConfig {
4
4
  timeoutMs?: number;
5
5
  maxTokens?: number;
6
6
  temperature?: number;
7
+ /** DeepSeek thinking mode; auto = map by GraphFlow role. */
8
+ thinking?: "enabled" | "disabled" | "auto";
9
+ reasoningEffort?: "high" | "max";
10
+ /** Force JSON object response_format when supported. */
11
+ jsonMode?: boolean | "auto";
12
+ /** Allow DeepSeek tool_calls against read-only graph tools. */
13
+ enableTools?: boolean;
7
14
  }
8
15
  export interface GraphFlowConfig {
9
16
  providers: Record<string, ProviderConfig>;
@@ -28,7 +35,6 @@ export interface GraphFlowConfig {
28
35
  autoIndexOnSave?: boolean;
29
36
  workspaceRoot?: string;
30
37
  includeExtensions?: string[];
31
- enableHnsw?: boolean;
32
38
  transport: "memory" | "mcp-http" | "file" | "sqlite";
33
39
  mcpEndpoint?: string;
34
40
  mcpApiKey?: string;
@@ -75,7 +81,9 @@ export interface GraphFlowConfig {
75
81
  routingPolicy?: {
76
82
  enableDynamicRouting?: boolean;
77
83
  requireApiKeyForHealthy?: boolean;
78
- providerPriority?: Array<"openai" | "anthropic" | "bailian" | "doubao">;
84
+ providerPriority?: Array<"openai" | "anthropic" | "bailian" | "doubao" | "deepseek">;
85
+ /** Allow provider tool_calls (DeepSeek) against read-only GraphFlow tools. */
86
+ enableProviderTools?: boolean;
79
87
  };
80
88
  skillPolicy?: {
81
89
  enableSkillFlywheel?: boolean;
@@ -83,13 +91,19 @@ export interface GraphFlowConfig {
83
91
  };
84
92
  embeddingPolicy?: {
85
93
  enabled?: boolean;
86
- provider?: "openai" | "hash";
94
+ provider?: "openai" | "transformers" | "hash";
87
95
  model?: string;
88
96
  baseUrl?: string;
89
97
  apiKey?: string;
98
+ /** Optional local cache for @xenova/transformers models; can be pre-seeded for offline use. */
99
+ modelCacheDir?: string;
100
+ /** Backward-compatible alias for modelCacheDir. */
101
+ transformersCachePath?: string;
90
102
  vectorStorePath?: string;
91
103
  topK?: number;
92
104
  minSimilarity?: number;
105
+ /** Opt in to vector recall across all graph nodes with embeddings. Default false. */
106
+ enableFullGraphVectorRecall?: boolean;
93
107
  };
94
108
  }
95
109
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,4 @@
1
1
  import type { GraphFlowConfig } from "./schema";
2
- /**
3
- * Resolve the workspace root used for graph store paths and indexing.
4
- *
5
- * Priority:
6
- * 1. Explicit override (e.g. indexGraph rootDir)
7
- * 2. GRAPHFLOW_WORKSPACE_ROOT env (for MCP / IDE launchers)
8
- * 3. Project-level workspaceRoot (graphflow.config.json or overlay only)
9
- * 4. process.cwd()
10
- *
11
- * Global config (~/.graphflow.config.json) must never pin workspaceRoot — it is
12
- * shared across all projects on the machine.
13
- */
14
2
  export declare function resolveRuntimeWorkspaceRoot(options?: {
15
3
  rootDir?: string;
16
4
  projectWorkspaceRoot?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-root.d.ts","sourceRoot":"","sources":["../../src/config/workspace-root.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAShD;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,GAAG,MAAM,CAsCT;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,GACA,eAAe,CASjB;AAED,wEAAwE;AACxE,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAM3F"}
1
+ {"version":3,"file":"workspace-root.d.ts","sourceRoot":"","sources":["../../src/config/workspace-root.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAgChD,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,GAAG,MAAM,CA6CT;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,GACA,eAAe,CASjB;AAED,wEAAwE;AACxE,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAM3F"}
@@ -17,20 +17,36 @@ const discover_workspace_1 = require("./discover-workspace");
17
17
  * Global config (~/.graphflow.config.json) must never pin workspaceRoot — it is
18
18
  * shared across all projects on the machine.
19
19
  */
20
+ function assertSafeWorkspaceRoot(root, source) {
21
+ const resolved = (0, node_path_1.resolve)(root);
22
+ if ((0, discover_workspace_1.isUnsafeWorkspaceFallback)(resolved)) {
23
+ throw new Error(`Refusing to use unsafe workspace root from ${source}: ${resolved}. ` +
24
+ `Set GRAPHFLOW_WORKSPACE_ROOT to your project directory (not home/AppData).`);
25
+ }
26
+ return resolved;
27
+ }
20
28
  function resolveRuntimeWorkspaceRoot(options) {
21
29
  if (options?.rootDir?.trim()) {
22
- return (0, node_path_1.resolve)(options.rootDir.trim());
30
+ return assertSafeWorkspaceRoot(options.rootDir.trim(), "rootDir");
23
31
  }
24
32
  const envRoot = process.env.GRAPHFLOW_WORKSPACE_ROOT?.trim();
25
33
  if (envRoot) {
26
- return (0, node_path_1.resolve)(envRoot);
34
+ const resolvedEnv = (0, node_path_1.resolve)(envRoot);
35
+ // Cursor often spawns MCP with cwd=home and a poisoned env; clear and
36
+ // fall through so explicit rootDir / discovery can still succeed.
37
+ if ((0, discover_workspace_1.isUnsafeWorkspaceFallback)(resolvedEnv)) {
38
+ delete process.env.GRAPHFLOW_WORKSPACE_ROOT;
39
+ }
40
+ else {
41
+ return resolvedEnv;
42
+ }
27
43
  }
28
44
  if (options?.projectWorkspaceRoot?.trim()) {
29
- return (0, node_path_1.resolve)(options.projectWorkspaceRoot.trim());
45
+ return assertSafeWorkspaceRoot(options.projectWorkspaceRoot.trim(), "projectWorkspaceRoot");
30
46
  }
31
47
  const discovered = (0, discover_workspace_1.discoverWorkspaceRoot)(process.cwd());
32
48
  if (discovered) {
33
- return discovered;
49
+ return assertSafeWorkspaceRoot(discovered, "discovery");
34
50
  }
35
51
  const cwd = (0, node_path_1.resolve)(process.cwd());
36
52
  if ((0, discover_workspace_1.isUsableWorkspaceFallback)(cwd)) {
@@ -39,7 +55,7 @@ function resolveRuntimeWorkspaceRoot(options) {
39
55
  if ((0, discover_workspace_1.isGraphFlowRuntimeDirectory)(cwd) || (0, discover_workspace_1.isUnsafeWorkspaceFallback)(cwd)) {
40
56
  const hinted = (0, discover_workspace_1.tryResolveIdeWorkspaceHint)();
41
57
  if (hinted) {
42
- return hinted;
58
+ return assertSafeWorkspaceRoot(hinted, "IDE workspace hint");
43
59
  }
44
60
  if ((0, discover_workspace_1.isGraphFlowRuntimeDirectory)(cwd)) {
45
61
  return cwd;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-root.js","sourceRoot":"","sources":["../../src/config/workspace-root.ts"],"names":[],"mappings":";;AAsBA,kEAyCC;AAED,4DAeC;AAGD,gFAMC;AAzFD,yCAAoC;AAEpC,6DAM8B;AAE9B;;;;;;;;;;;GAWG;AACH,SAAgB,2BAA2B,CAAC,OAG3C;IACC,IAAI,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QAC7B,OAAO,IAAA,mBAAO,EAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,IAAA,mBAAO,EAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1C,OAAO,IAAA,mBAAO,EAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,0CAAqB,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnC,IAAI,IAAA,8CAAyB,EAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,IAAA,gDAA2B,EAAC,GAAG,CAAC,IAAI,IAAA,8CAAyB,EAAC,GAAG,CAAC,EAAE,CAAC;QACvE,MAAM,MAAM,GAAG,IAAA,+CAA0B,GAAE,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,IAAA,gDAA2B,EAAC,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,IAAI,KAAK,CACb,4CAA4C,GAAG,2DAA2D,CAC3G,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAuB,EACvB,OAGC;IAED,MAAM,aAAa,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC3D,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE;YACX,GAAG,MAAM,CAAC,WAAW;YACrB,aAAa;SACd;KACF,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,SAAgB,kCAAkC,CAAC,MAAuB;IACxE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACvE,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE,WAA6C;KAC3D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"workspace-root.js","sourceRoot":"","sources":["../../src/config/workspace-root.ts"],"names":[],"mappings":";;AAiCA,kEAgDC;AAED,4DAeC;AAGD,gFAMC;AA3GD,yCAAoC;AAEpC,6DAM8B;AAE9B;;;;;;;;;;;GAWG;AACH,SAAS,uBAAuB,CAAC,IAAY,EAAE,MAAc;IAC3D,MAAM,QAAQ,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,IAAA,8CAAyB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,8CAA8C,MAAM,KAAK,QAAQ,IAAI;YACnE,4EAA4E,CAC/E,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAgB,2BAA2B,CAAC,OAG3C;IACC,IAAI,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QAC7B,OAAO,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,IAAA,mBAAO,EAAC,OAAO,CAAC,CAAC;QACrC,sEAAsE;QACtE,kEAAkE;QAClE,IAAI,IAAA,8CAAyB,EAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1C,OAAO,uBAAuB,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,sBAAsB,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,0CAAqB,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,uBAAuB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnC,IAAI,IAAA,8CAAyB,EAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,IAAA,gDAA2B,EAAC,GAAG,CAAC,IAAI,IAAA,8CAAyB,EAAC,GAAG,CAAC,EAAE,CAAC;QACvE,MAAM,MAAM,GAAG,IAAA,+CAA0B,GAAE,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,IAAA,gDAA2B,EAAC,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,IAAI,KAAK,CACb,4CAA4C,GAAG,2DAA2D,CAC3G,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAuB,EACvB,OAGC;IAED,MAAM,aAAa,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC3D,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE;YACX,GAAG,MAAM,CAAC,WAAW;YACrB,aAAa;SACd;KACF,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,SAAgB,kCAAkC,CAAC,MAAuB;IACxE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACvE,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE,WAA6C;KAC3D,CAAC;AACJ,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { type SixHatsInsight } from "../agents/insight";
2
2
  import type { TaskNode } from "./types";
3
+ export { isCompactAgentInsightTask, isResearchAnalysisTask } from "../agents/task-profile";
3
4
  export interface AgentWorkItem {
4
5
  id: string;
5
- kind: "six-hats" | "five-whys" | "plan-refinement" | "query-translate";
6
+ kind: "six-hats" | "five-whys" | "plan-refinement" | "query-translate" | "intent" | "requirement" | "first-principles" | "decision-matrix" | "reflection";
6
7
  hat?: string;
7
8
  prompt: string;
8
9
  expectedFormat: "json";
@@ -16,6 +17,12 @@ export interface AgentDelegatedPlanInsight {
16
17
  plan: TaskNode[] | null;
17
18
  agentWorkItems?: AgentWorkItem[];
18
19
  agentInstructions?: string;
20
+ /** ATP (Advanced Task Protocol) analysis result, when full ATP flow is enabled. */
21
+ atp?: unknown;
22
+ /** Agent-bridge lifecycle: incomplete until work items are submitted + merged. */
23
+ status?: "awaiting-agent" | "complete";
24
+ complete?: boolean;
25
+ requiresAgentBridge?: boolean;
19
26
  }
20
27
  export declare function buildAgentInsightWorkItems(task: string): AgentWorkItem[];
21
28
  export declare function buildAgentDelegationInstructions(task: string, workItems: AgentWorkItem[]): string;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-delegation.d.ts","sourceRoot":"","sources":["../../src/core/agent-delegation.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACxB,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CA0DxE;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,EAAE,GACzB,MAAM,CAkBR;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,QAAQ,EAAE,CAwB/F;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,CAYtF;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAO1E"}
1
+ {"version":3,"file":"agent-delegation.d.ts","sourceRoot":"","sources":["../../src/core/agent-delegation.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE3F,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,QAAQ,GAAG,aAAa,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,YAAY,CAAC;IAC1J,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACxB,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mFAAmF;IACnF,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,kFAAkF;IAClF,MAAM,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAuPD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAIxE;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,EAAE,GACzB,MAAM,CAiCR;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,QAAQ,EAAE,CAwB/F;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,CAgBtF;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAO1E"}
@@ -1,56 +1,167 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isResearchAnalysisTask = exports.isCompactAgentInsightTask = void 0;
3
4
  exports.buildAgentInsightWorkItems = buildAgentInsightWorkItems;
4
5
  exports.buildAgentDelegationInstructions = buildAgentDelegationInstructions;
5
6
  exports.buildHeuristicPlanFromInsight = buildHeuristicPlanFromInsight;
6
7
  exports.buildAgentDelegatedPlanInsight = buildAgentDelegatedPlanInsight;
7
8
  exports.summarizeInsightForContext = summarizeInsightForContext;
8
9
  const insight_1 = require("../agents/insight");
10
+ const task_profile_1 = require("../agents/task-profile");
9
11
  const planner_1 = require("../agents/planner");
12
+ var task_profile_2 = require("../agents/task-profile");
13
+ Object.defineProperty(exports, "isCompactAgentInsightTask", { enumerable: true, get: function () { return task_profile_2.isCompactAgentInsightTask; } });
14
+ Object.defineProperty(exports, "isResearchAnalysisTask", { enumerable: true, get: function () { return task_profile_2.isResearchAnalysisTask; } });
10
15
  const HAT_RESPONSE_SCHEMA = {
11
16
  observation: "string — single key observation from this hat",
12
17
  certainty: "number 0.0-1.0",
13
18
  criticalInsight: "string — what this hat contributes",
14
19
  };
15
- function buildAgentInsightWorkItems(task) {
16
- const items = insight_1.SIX_HATS.map((hat, index) => ({
20
+ function buildIntentWorkItem(task) {
21
+ return {
22
+ id: "intent-analysis",
23
+ kind: "intent",
24
+ prompt: [
25
+ `Task: ${task}`,
26
+ "",
27
+ "Analyze the intent behind this task.",
28
+ "Return ONLY a JSON object:",
29
+ "{",
30
+ ' "explicitIntent": "what the user explicitly asked for",',
31
+ ' "implicitIntent": "the underlying need",',
32
+ ' "coreProblem": "the core problem to solve",',
33
+ ' "nonGoals": ["things out of scope"],',
34
+ ' "successDefinition": "how to know the task is done"',
35
+ "}",
36
+ ].join("\n"),
37
+ expectedFormat: "json",
38
+ responseSchema: {
39
+ explicitIntent: "string",
40
+ implicitIntent: "string",
41
+ coreProblem: "string",
42
+ nonGoals: "string[]",
43
+ successDefinition: "string",
44
+ },
45
+ };
46
+ }
47
+ function buildRequirementWorkItem(task) {
48
+ return {
49
+ id: "requirement-analysis",
50
+ kind: "requirement",
51
+ prompt: [
52
+ `Task: ${task}`,
53
+ "",
54
+ "Extract structured requirements.",
55
+ "Return ONLY a JSON object:",
56
+ "{",
57
+ ' "functional": ["functional requirements"],',
58
+ ' "nonFunctional": ["non-functional requirements"],',
59
+ ' "constraints": ["known constraints"],',
60
+ ' "priority": "Low|Medium|High|Critical",',
61
+ ' "scope": {"included": ["in scope"], "excluded": ["out of scope"]}',
62
+ "}",
63
+ ].join("\n"),
64
+ expectedFormat: "json",
65
+ responseSchema: {
66
+ functional: "string[]",
67
+ nonFunctional: "string[]",
68
+ constraints: "string[]",
69
+ priority: "string",
70
+ scope: "object",
71
+ },
72
+ };
73
+ }
74
+ function buildHatWorkItem(task, hat, index) {
75
+ return {
17
76
  id: `hat-${index + 1}-${hat.color}`,
18
77
  kind: "six-hats",
19
78
  hat: hat.name,
20
79
  prompt: (0, insight_1.buildHatAnalysisPrompt)(task, hat),
21
80
  expectedFormat: "json",
22
81
  responseSchema: HAT_RESPONSE_SCHEMA,
23
- }));
24
- insight_1.SIX_HATS.forEach((hat, index) => {
25
- items.push({
26
- id: `why-${index + 1}-${hat.color}`,
27
- kind: "five-whys",
28
- hat: hat.name,
29
- optional: true,
30
- prompt: [
31
- `Task: ${task}`,
32
- "",
33
- `[OPTIONAL — only answer if your ${hat.name} observation had certainty < 0.6]`,
34
- `You are drilling into your ${hat.name} observation with a 5-Why chain.`,
35
- `Focus per step: ${hat.whyFocus}`,
36
- `Final convergence: ${hat.whyRootFocus}`,
37
- "",
38
- "Produce up to 5 Why steps, each a {question, answer}, then the converged rootCause.",
39
- "Return ONLY a JSON object:",
40
- "{",
41
- ' "steps": [{"question": "Why ...?", "answer": "..."}],',
42
- ' "rootCause": "the single root cause this chain converges to"',
43
- "}",
44
- "If the hat's certainty was >= 0.6, skip this item (do not submit).",
45
- ].join("\n"),
46
- expectedFormat: "json",
47
- responseSchema: {
48
- steps: "Array<{question:string, answer:string}>",
49
- rootCause: "string — the converged root cause",
50
- },
51
- });
52
- });
53
- items.push({
82
+ };
83
+ }
84
+ function buildFiveWhyWorkItem(task, hat, index) {
85
+ return {
86
+ id: `why-${index + 1}-${hat.color}`,
87
+ kind: "five-whys",
88
+ hat: hat.name,
89
+ optional: true,
90
+ prompt: [
91
+ `Task: ${task}`,
92
+ "",
93
+ `[OPTIONAL only answer if your ${hat.name} observation had certainty < 0.6]`,
94
+ `You are drilling into your ${hat.name} observation with a 5-Why chain.`,
95
+ `Focus per step: ${hat.whyFocus}`,
96
+ `Final convergence: ${hat.whyRootFocus}`,
97
+ "",
98
+ "Produce up to 5 Why steps, each a {question, answer}, then the converged rootCause.",
99
+ "Return ONLY a JSON object:",
100
+ "{",
101
+ ' "steps": [{"question": "Why ...?", "answer": "..."}],',
102
+ ' "rootCause": "the single root cause this chain converges to"',
103
+ "}",
104
+ "If the hat's certainty was >= 0.6, skip this item (do not submit).",
105
+ ].join("\n"),
106
+ expectedFormat: "json",
107
+ responseSchema: {
108
+ steps: "Array<{question:string, answer:string}>",
109
+ rootCause: "string — the converged root cause",
110
+ },
111
+ };
112
+ }
113
+ function buildFirstPrinciplesWorkItem(task) {
114
+ return {
115
+ id: "first-principles",
116
+ kind: "first-principles",
117
+ optional: true,
118
+ prompt: [
119
+ `Task: ${task}`,
120
+ "",
121
+ "[OPTIONAL — answer if you completed the Six Hats analysis]",
122
+ "Apply First Principles thinking to this task.",
123
+ "Return ONLY a JSON object:",
124
+ "{",
125
+ ' "assumptions": ["current assumptions"],',
126
+ ' "facts": ["irreducible facts"],',
127
+ ' "deconstructedTo": ["basic elements the problem breaks down to"],',
128
+ ' "challenges": ["challenges to assumptions"]',
129
+ "}",
130
+ ].join("\n"),
131
+ expectedFormat: "json",
132
+ responseSchema: {
133
+ assumptions: "string[]",
134
+ facts: "string[]",
135
+ deconstructedTo: "string[]",
136
+ challenges: "string[]",
137
+ },
138
+ };
139
+ }
140
+ function buildDecisionMatrixWorkItem(task) {
141
+ return {
142
+ id: "decision-matrix",
143
+ kind: "decision-matrix",
144
+ prompt: [
145
+ `Task: ${task}`,
146
+ "",
147
+ "Generate 2-3 solution options and score each.",
148
+ "Return ONLY a JSON object:",
149
+ "{",
150
+ ' "options": [{"name":"...","description":"...","scores":{"complexity":1-10,"cost":1-10,"risk":1-10,"maintainability":1-10,"impact":1-10},"pros":["..."],"cons":["..."]}],',
151
+ ' "recommendedOption": "name of recommended option",',
152
+ ' "rationale": "why this option is recommended"',
153
+ "}",
154
+ ].join("\n"),
155
+ expectedFormat: "json",
156
+ responseSchema: {
157
+ options: "Array<object>",
158
+ recommendedOption: "string",
159
+ rationale: "string",
160
+ },
161
+ };
162
+ }
163
+ function buildPlanRefinementWorkItem(task) {
164
+ return {
54
165
  id: "plan-refinement",
55
166
  kind: "plan-refinement",
56
167
  prompt: [
@@ -65,21 +176,101 @@ function buildAgentInsightWorkItems(task) {
65
176
  responseSchema: {
66
177
  items: { id: "string", description: "string", dependencies: "string[]" },
67
178
  },
179
+ };
180
+ }
181
+ function buildPlanReflectionWorkItem(task, optional) {
182
+ return {
183
+ id: "plan-reflection",
184
+ kind: "reflection",
185
+ ...(optional ? { optional: true } : {}),
186
+ prompt: [
187
+ `Task: ${task}`,
188
+ "",
189
+ optional
190
+ ? "[OPTIONAL for research/architecture compact mode]"
191
+ : "Reflect on the quality of the plan you produced.",
192
+ optional ? "Optionally reflect on the quality of the plan you produced." : "",
193
+ "Return ONLY a JSON object:",
194
+ "{",
195
+ ' "confidence": 0.0-1.0,',
196
+ ' "uncertainties": ["things you are unsure about"],',
197
+ ' "missingInformation": ["information that would improve the plan"],',
198
+ ' "improvementDirections": ["how the plan could be improved"]',
199
+ "}",
200
+ ]
201
+ .filter(Boolean)
202
+ .join("\n"),
203
+ expectedFormat: "json",
204
+ responseSchema: {
205
+ confidence: "number",
206
+ uncertainties: "string[]",
207
+ missingInformation: "string[]",
208
+ improvementDirections: "string[]",
209
+ },
210
+ };
211
+ }
212
+ /** Compact set for research/analysis: ~7 required (+ optional reflection). */
213
+ function buildCompactAgentInsightWorkItems(task) {
214
+ const items = [buildIntentWorkItem(task)];
215
+ insight_1.SIX_HATS.forEach((hat, index) => {
216
+ if (!(0, task_profile_1.isResearchKeyHatColor)(hat.color)) {
217
+ return;
218
+ }
219
+ items.push(buildHatWorkItem(task, hat, index));
68
220
  });
221
+ items.push(buildDecisionMatrixWorkItem(task));
222
+ items.push(buildPlanRefinementWorkItem(task));
223
+ // Reflection is optional in compact mode — merge only requires !optional IDs.
224
+ items.push(buildPlanReflectionWorkItem(task, true));
69
225
  return items;
70
226
  }
227
+ /** Full 18-item set for coding/refactor (default). */
228
+ function buildFullAgentInsightWorkItems(task) {
229
+ const items = [buildIntentWorkItem(task), buildRequirementWorkItem(task)];
230
+ insight_1.SIX_HATS.forEach((hat, index) => {
231
+ items.push(buildHatWorkItem(task, hat, index));
232
+ });
233
+ insight_1.SIX_HATS.forEach((hat, index) => {
234
+ items.push(buildFiveWhyWorkItem(task, hat, index));
235
+ });
236
+ items.push(buildFirstPrinciplesWorkItem(task));
237
+ items.push(buildDecisionMatrixWorkItem(task));
238
+ items.push(buildPlanRefinementWorkItem(task));
239
+ items.push(buildPlanReflectionWorkItem(task, false));
240
+ return items;
241
+ }
242
+ function buildAgentInsightWorkItems(task) {
243
+ return (0, task_profile_1.isCompactAgentInsightTask)(task)
244
+ ? buildCompactAgentInsightWorkItems(task)
245
+ : buildFullAgentInsightWorkItems(task);
246
+ }
71
247
  function buildAgentDelegationInstructions(task, workItems) {
248
+ const required = workItems.filter((item) => !item.optional);
249
+ const compact = (0, task_profile_1.isCompactAgentInsightTask)(task);
72
250
  const lines = [
73
- "[AGENT-DELEGATED LLM] No external GraphFlow API key is configured.",
74
- "Use your own model to complete the analysis prompts below, then execute the heuristic plan.",
75
- "Optional: incorporate your answers into implementation; call graphflow_report_outcome when done.",
251
+ "[AGENT-BRIDGE REQUIRED] No GraphFlow LLM API key is configured.",
252
+ "YOU (the connected coding agent) MUST complete the insight analysis with your own model.",
253
+ "The insight/plan fields in this response are PLACEHOLDERS not a finished analysis.",
254
+ "Do NOT treat placeholder insight/plan as final. Do NOT skip submit+merge.",
255
+ "",
256
+ "Protocol (MUST follow in order):",
257
+ '1. Answer each REQUIRED work item prompt with your model (JSON only).',
258
+ '2. MUST submit each via graphflow_insight({ mode: "submit", task, workItemId, response }).',
259
+ '3. After all required items are submitted, MUST call graphflow_insight({ mode: "merge", task }).',
260
+ "4. Use the merged insight + plan as the real result, then implement / report_outcome as needed.",
76
261
  "",
77
262
  `Task: ${task}`,
78
263
  "",
264
+ `Mode: ${compact ? "compact (research/architecture analysis)" : "full (coding/refactor)"}`,
265
+ `Required work items (${required.length}): ${required.map((item) => item.id).join(", ")}`,
266
+ compact
267
+ ? "Suggested order: (1) intent-analysis, (2-5) hats white/black/yellow/blue, (6) decision-matrix, (7) plan-refinement, (8) plan-reflection [optional]."
268
+ : "Suggested order: (1) intent-analysis, (2) requirement-analysis, (3-8) six-hats, (9-14) five-whys [optional if hat certainty>=0.6], (15) first-principles [optional], (16) decision-matrix, (17) plan-refinement, (18) plan-reflection.",
269
+ "",
79
270
  "Work items:",
80
271
  ];
81
272
  for (const item of workItems) {
82
- lines.push(`- ${item.id} (${item.kind}${item.hat ? ` / ${item.hat}` : ""})${item.optional ? " [optional]" : ""}`);
273
+ lines.push(`- ${item.id} (${item.kind}${item.hat ? ` / ${item.hat}` : ""})${item.optional ? " [optional]" : " [REQUIRED]"}`);
83
274
  }
84
275
  return lines.join("\n");
85
276
  }
@@ -107,13 +298,17 @@ function buildHeuristicPlanFromInsight(task, insight) {
107
298
  function buildAgentDelegatedPlanInsight(task) {
108
299
  const insight = (0, insight_1.analyzeWithSixHatsHeuristic)(task);
109
300
  const agentWorkItems = buildAgentInsightWorkItems(task);
110
- const plan = buildHeuristicPlanFromInsight(task, insight);
301
+ // Do not invent a DAG from placeholders — agent must submit plan-refinement then merge.
302
+ const plan = [];
111
303
  return {
112
304
  mode: "agent-delegated",
113
305
  insight,
114
306
  plan,
115
307
  agentWorkItems,
116
308
  agentInstructions: buildAgentDelegationInstructions(task, agentWorkItems),
309
+ status: "awaiting-agent",
310
+ complete: false,
311
+ requiresAgentBridge: true,
117
312
  };
118
313
  }
119
314
  function summarizeInsightForContext(insight) {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-delegation.js","sourceRoot":"","sources":["../../src/core/agent-delegation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-delegation.js","sourceRoot":"","sources":["../../src/core/agent-delegation.ts"],"names":[],"mappings":"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"}