@loopman/langchain-sdk 1.0.9 → 1.8.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 (65) hide show
  1. package/README.md +72 -5
  2. package/dist/agents/loopman-agent.d.ts.map +1 -1
  3. package/dist/agents/loopman-agent.js +51 -92
  4. package/dist/agents/loopman-agent.js.map +1 -1
  5. package/dist/client/loopman-api.d.ts +19 -64
  6. package/dist/client/loopman-api.d.ts.map +1 -1
  7. package/dist/client/loopman-api.js +85 -248
  8. package/dist/client/loopman-api.js.map +1 -1
  9. package/dist/helpers/prompt-orchestrator.js +17 -17
  10. package/dist/helpers/prompt-orchestrator.js.map +1 -1
  11. package/dist/index.d.ts +3 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +2 -0
  14. package/dist/index.js.map +1 -1
  15. package/dist/langgraph/helpers.d.ts +171 -0
  16. package/dist/langgraph/helpers.d.ts.map +1 -0
  17. package/dist/langgraph/helpers.js +216 -0
  18. package/dist/langgraph/helpers.js.map +1 -0
  19. package/dist/langgraph/index.d.ts +16 -0
  20. package/dist/langgraph/index.d.ts.map +1 -0
  21. package/dist/langgraph/index.js +17 -0
  22. package/dist/langgraph/index.js.map +1 -0
  23. package/dist/langgraph/loopman-conditional-edge.d.ts +58 -0
  24. package/dist/langgraph/loopman-conditional-edge.d.ts.map +1 -0
  25. package/dist/langgraph/loopman-conditional-edge.js +77 -0
  26. package/dist/langgraph/loopman-conditional-edge.js.map +1 -0
  27. package/dist/langgraph/loopman-context-node.d.ts +74 -0
  28. package/dist/langgraph/loopman-context-node.d.ts.map +1 -0
  29. package/dist/langgraph/loopman-context-node.js +131 -0
  30. package/dist/langgraph/loopman-context-node.js.map +1 -0
  31. package/dist/langgraph/loopman-validation-node.d.ts +89 -0
  32. package/dist/langgraph/loopman-validation-node.d.ts.map +1 -0
  33. package/dist/langgraph/loopman-validation-node.js +297 -0
  34. package/dist/langgraph/loopman-validation-node.js.map +1 -0
  35. package/dist/langgraph/types.d.ts +75 -0
  36. package/dist/langgraph/types.d.ts.map +1 -0
  37. package/dist/langgraph/types.js +74 -0
  38. package/dist/langgraph/types.js.map +1 -0
  39. package/dist/loopman-agent-wrapper.d.ts +18 -0
  40. package/dist/loopman-agent-wrapper.d.ts.map +1 -1
  41. package/dist/loopman-agent-wrapper.js +31 -21
  42. package/dist/loopman-agent-wrapper.js.map +1 -1
  43. package/dist/loopman-middleware.d.ts +0 -5
  44. package/dist/loopman-middleware.d.ts.map +1 -1
  45. package/dist/loopman-middleware.js +22 -23
  46. package/dist/loopman-middleware.js.map +1 -1
  47. package/dist/mcp/tool-registry.d.ts +7 -1
  48. package/dist/mcp/tool-registry.d.ts.map +1 -1
  49. package/dist/mcp/tool-registry.js +23 -16
  50. package/dist/mcp/tool-registry.js.map +1 -1
  51. package/dist/services/logger.service.d.ts.map +1 -1
  52. package/dist/services/logger.service.js +4 -12
  53. package/dist/services/logger.service.js.map +1 -1
  54. package/dist/services/loopman.service.d.ts +15 -10
  55. package/dist/services/loopman.service.d.ts.map +1 -1
  56. package/dist/services/loopman.service.js +49 -37
  57. package/dist/services/loopman.service.js.map +1 -1
  58. package/dist/services/polling.service.d.ts +7 -3
  59. package/dist/services/polling.service.d.ts.map +1 -1
  60. package/dist/services/polling.service.js +61 -47
  61. package/dist/services/polling.service.js.map +1 -1
  62. package/dist/types.d.ts +9 -35
  63. package/dist/types.d.ts.map +1 -1
  64. package/dist/types.js.map +1 -1
  65. package/package.json +6 -4
package/README.md CHANGED
@@ -44,6 +44,9 @@ Perfect for learning agent patterns, HITL workflows, and building production-rea
44
44
 
45
45
  - ✅ **Native HITL Middleware**: LangChain's `humanInTheLoopMiddleware`
46
46
  - ✅ **Custom Loopman Middleware**: Platform-specific integration
47
+ - ✅ **LangGraph Integration**: Reusable validation nodes with conditional routing
48
+ - ✅ **Context Enrichment**: Automatic guidelines and decision history integration
49
+ - ✅ **Helper Functions**: `enrichSystemPrompt()` for simplified agent integration
47
50
  - ✅ **Decision Types**: Approve, Edit, Reject workflows
48
51
  - ✅ **Selective Interruption**: Per-tool configuration
49
52
  - ✅ **Double Validation Layer**: Global MCP validation + tool-specific validation
@@ -180,6 +183,49 @@ const result = await agent.invoke(
180
183
  // ✅ Middleware handles HITL transparently
181
184
  ```
182
185
 
186
+ ### LangGraph with Context Enrichment
187
+
188
+ ```typescript
189
+ import {
190
+ LoopmanGraphState,
191
+ createLoopmanContextNode,
192
+ enrichSystemPrompt,
193
+ } from "loopman-langchain-sdk";
194
+ import { StateGraph } from "@langchain/langgraph";
195
+
196
+ // 1. Create context node to load guidelines and decision history
197
+ const contextNode = createLoopmanContextNode({
198
+ apiKey: process.env.LOOPMAN_API_KEY!,
199
+ workflowId: "my-workflow",
200
+ category: "email",
201
+ });
202
+
203
+ // 2. Use context in agent with one-liner
204
+ async function agentNode(state: typeof LoopmanGraphState.State) {
205
+ const { messages, guidelines, decisionContext } = state;
206
+
207
+ // ✨ Automatically enrich system prompt with Loopman context
208
+ const systemPrompt = enrichSystemPrompt("You are a helpful assistant.", {
209
+ guidelines,
210
+ decisionContext,
211
+ });
212
+
213
+ const response = await model.invoke([
214
+ { role: "system", content: systemPrompt },
215
+ ...messages,
216
+ ]);
217
+
218
+ return { messages: [response] };
219
+ }
220
+
221
+ // 3. Build workflow
222
+ const workflow = new StateGraph(LoopmanGraphState)
223
+ .addNode("load_context", contextNode)
224
+ .addNode("agent", agentNode)
225
+ .addEdge(START, "load_context")
226
+ .addEdge("load_context", "agent");
227
+ ```
228
+
183
229
  ---
184
230
 
185
231
  ## 📚 Examples
@@ -212,6 +258,10 @@ Comprehensive examples are organized in the `examples/` directory by complexity
212
258
 
213
259
  - `conditional-hitl.ts` - Context-aware, intelligent validation
214
260
 
261
+ **5. LangGraph Integration** (`examples/5-langgraph-integration/`)
262
+
263
+ - `loopman-validation-graph.ts` - LangGraph workflow with validation node and context enrichment
264
+
215
265
  ### Running Examples
216
266
 
217
267
  ```bash
@@ -229,10 +279,15 @@ npx tsx examples/3-real-world-examples/task-management/task-approval.ts
229
279
 
230
280
  # Advanced
231
281
  npx tsx examples/4-advanced-patterns/conditional-hitl.ts
282
+
283
+ # LangGraph Integration
284
+ npx tsx examples/5-langgraph-integration/loopman-validation-graph.ts
232
285
  ```
233
286
 
234
287
  See [Examples README](./examples/README.md) for detailed documentation and learning paths.
235
288
 
289
+ **New:** Check out the [LangGraph Integration Guide](./docs/LANGGRAPH_INTEGRATION.md) for building stateful workflows with Loopman validation nodes.
290
+
236
291
  ---
237
292
 
238
293
  **Key Features Demonstrated:**
@@ -410,7 +465,6 @@ Creates a LangChain middleware for Loopman integration.
410
465
  - `config.apiKey` (string, required): Loopman API key
411
466
  - `config.workflowId` (string, required): Workflow identifier
412
467
  - `config.executionId` (string, optional): Execution ID
413
- - `config.channelId` (string, optional): Channel ID for task routing
414
468
  - `config.mode` (string, optional): Operation mode (`tool-validation`, `prompt-enhancement`, `full`)
415
469
  - `config.interruptOn` (Record<string, boolean>, optional): Tool validation config
416
470
  - `config.timeout` (number, optional): Decision timeout in ms
@@ -444,7 +498,6 @@ Creates a complete Loopman agent with MCP integration and double validation laye
444
498
  - `config.systemPrompt` (string, required): System prompt for the agent
445
499
  - `config.additionalTools` (array, optional): Custom tools to add
446
500
  - `config.category` (string, optional): Category for guidelines organization
447
- - `config.channelId` (string, optional): Channel ID for task routing
448
501
  - `config.language` (string, optional): Language for human review interface
449
502
  - `config.requireApprovalForTools` (array, optional): Tools requiring approval (`['*']` for all)
450
503
  - `config.manualExecutionMode` (boolean, optional): Manual execution mode
@@ -536,11 +589,25 @@ See `src/loopman-middleware.ts` for the complete implementation.
536
589
 
537
590
  ## 🔗 Related Resources
538
591
 
592
+ ### SDK Documentation
593
+
594
+ - [LangGraph Integration Guide](./docs/LANGGRAPH_INTEGRATION.md) - Build stateful workflows with validation nodes
595
+ - [LangGraph Context Enrichment](./docs/LANGGRAPH_CONTEXT_ENRICHMENT.md) - Load guidelines and decision history
596
+ - [LangGraph Helper Functions](./docs/LANGGRAPH_HELPERS.md) - Utility functions for context integration
597
+ - [LangGraph Custom State](./docs/LANGGRAPH_CUSTOM_STATE.md) - Use Loopman with your own state schema
598
+ - [requiresValidation Mechanism](./docs/REQUIRES_VALIDATION_MECHANISM.md) - How validation triggering works
599
+ - [Validation Node Context Enrichment](./docs/VALIDATION_NODE_CONTEXT_ENRICHMENT.md) - Auto context loading after validation ⭐ New
600
+ - [Loopman Agent Guide](./docs/LOOPMAN_AGENT.md) - Full agent implementation with MCP
601
+ - [Tool Validation Mode](./docs/TOOL_VALIDATION_MODE.md) - Middleware tool validation
602
+ - [Auto-Correction with Feedback](./docs/AUTO_CORRECTION_WITH_FEEDBACK.md) - Agent retry patterns
603
+ - [Evolution to LangGraph](./docs/EVOLUTION_TO_LANGGRAPH.md) - Migration roadmap
604
+
539
605
  ### LangChain Documentation
540
606
 
541
607
  - [LangChain v1.0 Quickstart](https://docs.langchain.com/oss/javascript/langchain/quickstart)
542
608
  - [Human-in-the-Loop Guide](https://docs.langchain.com/oss/javascript/langchain/human-in-the-loop)
543
609
  - [Tools Documentation](https://docs.langchain.com/oss/javascript/langchain/tools)
610
+ - [LangGraph Documentation](https://js.langchain.com/docs/langgraph/)
544
611
 
545
612
  ### Loopman Platform
546
613
 
@@ -552,7 +619,7 @@ See `src/loopman-middleware.ts` for the complete implementation.
552
619
 
553
620
  ## 📄 License
554
621
 
555
- ISC
622
+ MPL-2.0 (Mozilla Public License 2.0). See `LICENSE`.
556
623
 
557
624
  ---
558
625
 
@@ -574,7 +641,7 @@ This is a demonstration project. For production use, see the [Loopman LangChain
574
641
 
575
642
  - Use VSCode debug configurations for step-through debugging
576
643
  - Enable `debug: true` in middleware for detailed logging
577
- - Check `console.log` output for tool execution details
644
+ - Check SDK debug logs (via `LoggerService`) for tool execution details
578
645
 
579
646
  ### Performance
580
647
 
@@ -591,4 +658,4 @@ This is a demonstration project. For production use, see the [Loopman LangChain
591
658
 
592
659
  ---
593
660
 
594
- **Built with ❤️ using LangChain v1.0 and TypeScript**
661
+ Built using LangChain v1.0 and TypeScript.
@@ -1 +1 @@
1
- {"version":3,"file":"loopman-agent.d.ts","sourceRoot":"","sources":["../../src/agents/loopman-agent.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,qBAAa,YAAY;IAcX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IAExC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,gBAAgB,CAAa;gBAER,MAAM,EAAE,kBAAkB;IAoBjD,0BAA0B,CAC9B,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,CAAC;IAgTxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,OAAO,CAAC,uBAAuB;YAwBjB,WAAW;IAkIzB,OAAO,CAAC,aAAa;IAkBrB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAsC9B,OAAO,CAAC,kBAAkB;CAW3B;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,GAC/B,YAAY,CAWd"}
1
+ {"version":3,"file":"loopman-agent.d.ts","sourceRoot":"","sources":["../../src/agents/loopman-agent.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,qBAAa,YAAY;IAcX,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IAExC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,gBAAgB,CAAa;gBAER,MAAM,EAAE,kBAAkB;IAoBjD,0BAA0B,CAC9B,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,CAAC;IAgPxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,OAAO,CAAC,uBAAuB;YAwBjB,WAAW;IA0GzB,OAAO,CAAC,aAAa;IAkBrB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAoC9B,OAAO,CAAC,kBAAkB;CAW3B;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,GAC/B,YAAY,CAWd"}
@@ -41,22 +41,23 @@ export class LoopmanAgent {
41
41
  ? this.baseExecutionId
42
42
  : `exec-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
43
43
  // Initialize services with the correct executionId
44
- this.toolRegistry = new LoopmanToolRegistry({
45
- workflowId: this.config.workflowId,
46
- executionId: executionId,
47
- category: this.config.category,
48
- channelId: this.config.channelId,
49
- debug: this.debug,
50
- });
51
44
  this.loopmanService = new LoopmanService({
52
45
  apiKey: this.config.apiKey,
53
46
  workflowId: this.config.workflowId,
54
47
  executionId: executionId,
55
- channelId: this.config.channelId,
56
48
  timeout: this.config.pollingTimeoutMs,
57
49
  pollingInterval: this.config.pollingIntervalMs,
58
50
  debug: this.debug,
59
51
  });
52
+ // Tool registry uses the same logger to keep debug output centralized
53
+ this.toolRegistry = new LoopmanToolRegistry({
54
+ workflowId: this.config.workflowId,
55
+ executionId: executionId,
56
+ category: this.config.category,
57
+ debug: this.debug,
58
+ logger: this.loopmanService.logger,
59
+ });
60
+ const logger = this.loopmanService.logger;
60
61
  let attempt = 0;
61
62
  let taskId;
62
63
  let feedbackFromHuman;
@@ -68,48 +69,17 @@ export class LoopmanAgent {
68
69
  // Store the conversation history for potential execution after approval
69
70
  const conversationHistory = result.messages || [];
70
71
  if (this.config.debug) {
71
- console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
72
- console.log("🧠 [AGENT REASONING] - Attempt", attempt + 1);
73
- console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n");
74
- // Display all messages to see the agent's reasoning
75
- if (result.messages &&
76
- Array.isArray(result.messages)) {
77
- const messages = result.messages;
78
- messages.forEach((msg, index) => {
79
- const role = msg._getType ? msg._getType() : msg.role || "unknown";
80
- const content = this.normalizeMessageContent(msg.content);
81
- console.log(`📍 Message ${index + 1} [${role.toUpperCase()}]:`);
82
- if (content) {
83
- // Truncate very long content for readability
84
- const displayContent = content.length > 500
85
- ? content.substring(0, 500) + "... (truncated)"
86
- : content;
87
- console.log(displayContent);
88
- }
89
- // Show tool calls if present
90
- if (msg.tool_calls && msg.tool_calls.length > 0) {
91
- console.log("\n🔧 Tool Calls:");
92
- msg.tool_calls.forEach((tc) => {
93
- console.log(` - ${tc.name}(${JSON.stringify(tc.args).substring(0, 100)}...)`);
94
- });
95
- }
96
- console.log("");
97
- });
98
- }
99
- // Also show intermediate steps if available
100
- if (result.intermediateSteps &&
101
- result.intermediateSteps.length > 0) {
102
- console.log("📊 Intermediate Steps:");
103
- result.intermediateSteps.forEach((step, index) => {
104
- console.log(` ${index + 1}. Action: ${step.action?.tool || "unknown"}`);
105
- if (step.observation) {
106
- const obs = String(step.observation).substring(0, 100);
107
- console.log(` Observation: ${obs}...`);
108
- }
109
- });
110
- console.log("");
111
- }
112
- console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n");
72
+ const messages = Array.isArray(result.messages)
73
+ ? result.messages
74
+ : [];
75
+ const intermediateSteps = Array.isArray(result.intermediateSteps)
76
+ ? result.intermediateSteps
77
+ : [];
78
+ logger.debug("[LoopmanAgent] Agent invocation completed", {
79
+ attempt: attempt + 1,
80
+ messagesCount: messages.length,
81
+ intermediateStepsCount: intermediateSteps.length,
82
+ });
113
83
  }
114
84
  const finalMessage = Array.isArray(result.messages)
115
85
  ? result.messages[result.messages.length - 1]
@@ -117,7 +87,7 @@ export class LoopmanAgent {
117
87
  const agentOutput = this.normalizeMessageContent(finalMessage?.content);
118
88
  const toolCalls = finalMessage?.tool_calls ?? finalMessage?.toolCalls;
119
89
  if (this.config.debug && toolCalls) {
120
- console.log("[LoopmanAgent] Tool calls detected:", JSON.stringify(toolCalls, null, 2));
90
+ logger.debug("[LoopmanAgent] Tool calls detected", toolCalls);
121
91
  }
122
92
  const parsedTaskId = extractTaskId(agentOutput ?? "");
123
93
  const confidence = agentOutput
@@ -136,9 +106,9 @@ export class LoopmanAgent {
136
106
  // Update middleware config with the new taskId as parentTaskId for future tool calls
137
107
  if (this.middlewareConfig) {
138
108
  this.middlewareConfig.parentTaskId = taskId;
139
- if (this.config.debug) {
140
- console.log(`[LoopmanAgent] Updated middlewareConfig.parentTaskId to: ${taskId}`);
141
- }
109
+ logger.debug("[LoopmanAgent] Updated middlewareConfig.parentTaskId", {
110
+ parentTaskId: taskId,
111
+ });
142
112
  }
143
113
  const decision = await this.loopmanService.polling.waitForDecision({
144
114
  taskId: taskId,
@@ -150,7 +120,7 @@ export class LoopmanAgent {
150
120
  debug: this.debug,
151
121
  });
152
122
  if (this.config.debug) {
153
- console.log("[LoopmanAgent] Decision received:", JSON.stringify(decision, null, 2));
123
+ logger.debug("[LoopmanAgent] Decision received", decision);
154
124
  }
155
125
  if (decision.status === "VALIDATED") {
156
126
  // If manualExecutionMode is enabled, just return the approval status
@@ -284,41 +254,38 @@ export class LoopmanAgent {
284
254
  return String(content);
285
255
  }
286
256
  async ensureAgent(executionId, taskId) {
257
+ const logger = this.loopmanService?.logger;
287
258
  // Always try to reconnect if not connected
288
259
  if (!this.mcpClient.isConnected) {
289
- if (this.config.debug) {
290
- console.log("[LoopmanAgent] MCP not connected, attempting connection...");
291
- }
260
+ logger?.debug("[LoopmanAgent] MCP not connected, attempting connection");
292
261
  await this.mcpClient.connect();
293
262
  }
294
263
  // Always refresh tools to ensure MCP session is alive
295
264
  // If the session is dead, this will throw and we'll reconnect
296
265
  try {
297
266
  const tools = await this.mcpClient.getTools();
298
- if (this.config.debug) {
299
- console.log("[LoopmanAgent] MCP tools received:", tools.map((t) => t.name));
300
- }
267
+ logger?.debug("[LoopmanAgent] MCP tools received", {
268
+ tools: tools.map((t) => t.name),
269
+ });
301
270
  this.cachedTools = this.toolRegistry.toDynamicTools(tools);
302
- if (this.config.debug) {
303
- console.log("[LoopmanAgent] MCP tools registered:", this.cachedTools.map((tool) => tool.name));
304
- }
271
+ logger?.debug("[LoopmanAgent] MCP tools registered", {
272
+ tools: this.cachedTools.map((tool) => tool.name),
273
+ });
305
274
  }
306
275
  catch (error) {
307
276
  // MCP session might be dead, try to reconnect
308
- if (this.config.debug) {
309
- console.log("[LoopmanAgent] MCP tools retrieval failed, attempting reconnection...", error);
310
- }
277
+ logger?.warn("[LoopmanAgent] MCP tools retrieval failed, attempting reconnection", error);
311
278
  await this.mcpClient.disconnect();
312
279
  await this.mcpClient.connect();
313
280
  // Retry getting tools after reconnection
314
281
  const tools = await this.mcpClient.getTools();
315
- if (this.config.debug) {
316
- console.log("[LoopmanAgent] MCP tools received after reconnection:", tools.map((t) => t.name));
317
- }
282
+ logger?.debug("[LoopmanAgent] MCP tools received after reconnection", {
283
+ tools: tools.map((t) => t.name),
284
+ });
318
285
  this.cachedTools = this.toolRegistry.toDynamicTools(tools);
319
- if (this.config.debug) {
320
- console.log("[LoopmanAgent] MCP tools registered after reconnection:", this.cachedTools.map((tool) => tool.name));
321
- }
286
+ logger?.debug("[LoopmanAgent] MCP tools registered after reconnection", {
287
+ tools: this.cachedTools.map((tool) => tool.name),
288
+ });
322
289
  }
323
290
  const allTools = [...(this.cachedTools ?? []), ...this.additionalTools];
324
291
  const prompt = buildLoopmanSystemPrompt({
@@ -329,16 +296,14 @@ export class LoopmanAgent {
329
296
  systemPrompt: this.config.systemPrompt,
330
297
  language: this.config.language,
331
298
  });
332
- if (this.config.debug) {
333
- console.log("[LoopmanAgent] Final system prompt:\n", prompt);
334
- }
299
+ logger?.debug("[LoopmanAgent] Final system prompt", { prompt });
335
300
  // Build middleware configuration if requireApprovalForTools is configured
336
301
  const middleware = [];
337
302
  if (this.config.requireApprovalForTools &&
338
303
  this.config.requireApprovalForTools.length > 0) {
339
- if (this.config.debug) {
340
- console.log("[LoopmanAgent] Tool validation middleware enabled for tools:", this.config.requireApprovalForTools);
341
- }
304
+ logger?.debug("[LoopmanAgent] Tool validation middleware enabled", {
305
+ tools: this.config.requireApprovalForTools,
306
+ });
342
307
  // Build interruptOn configuration from requireApprovalForTools
343
308
  const interruptOn = {};
344
309
  // Special case: ['*'] means all tools require approval
@@ -354,15 +319,12 @@ export class LoopmanAgent {
354
319
  interruptOn[toolName] = true;
355
320
  }
356
321
  }
357
- if (this.config.debug) {
358
- console.log("[LoopmanAgent] InterruptOn configuration:", interruptOn);
359
- }
322
+ logger?.debug("[LoopmanAgent] interruptOn configuration", interruptOn);
360
323
  // Create middleware config and store reference for dynamic updates
361
324
  this.middlewareConfig = {
362
325
  apiKey: this.config.apiKey,
363
326
  workflowId: this.config.workflowId,
364
327
  executionId: executionId,
365
- channelId: this.config.channelId,
366
328
  interruptOn,
367
329
  timeout: this.config.pollingTimeoutMs,
368
330
  pollingInterval: this.config.pollingIntervalMs,
@@ -382,9 +344,9 @@ export class LoopmanAgent {
382
344
  let userContent = input.context
383
345
  ? `${input.input}\n\nContext:\n${JSON.stringify(input.context, null, 2)}`
384
346
  : input.input;
385
- // If we have feedback from a previous NEED_CHANGES, include it
347
+ // If we have feedback from a previous NEEDS_CHANGES, include it
386
348
  if (feedbackFromHuman) {
387
- userContent += `\n\n🔄 IMPORTANT - HUMAN FEEDBACK FROM PREVIOUS ATTEMPT:\nThe human reviewer requested changes: "${feedbackFromHuman}"\n\nYou MUST:\n1. Follow the normal workflow (getHumanGuidelines getDecisionContext)\n2. Analyze the feedback in Step 3\n3. RE-SUBMIT a corrected proposal via submitForHumanReview in Step 4\n\nDo NOT skip Step 4! The human is waiting for your corrected proposal.`;
349
+ userContent += `\n\nIMPORTANT - HUMAN FEEDBACK FROM PREVIOUS ATTEMPT:\nThe human reviewer requested changes: "${feedbackFromHuman}"\n\nYou MUST:\n1. Follow the normal workflow (getHumanGuidelines -> getDecisionContext)\n2. Analyze the feedback in Step 3\n3. RE-SUBMIT a corrected proposal via submitForHumanReview in Step 4\n\nDo NOT skip Step 4. The human is waiting for your corrected proposal.`;
388
350
  }
389
351
  return [
390
352
  {
@@ -401,17 +363,14 @@ export class LoopmanAgent {
401
363
  // Start with the full conversation history (includes all context, guidelines, and the submitForHumanReview call)
402
364
  const messages = [...conversationHistory];
403
365
  // Add a new user message instructing execution
404
- let executionInstruction = `✅ HUMAN APPROVED YOUR PROPOSAL!\n\nNow execute the actual action you proposed in submitForHumanReview.`;
366
+ let executionInstruction = "HUMAN APPROVED YOUR PROPOSAL.\n\nNow execute the actual action you proposed in submitForHumanReview.";
405
367
  if (feedback) {
406
- executionInstruction += `\n\n💬 Human feedback: "${feedback}"`;
368
+ executionInstruction += `\n\nHuman feedback: "${feedback}"`;
407
369
  }
408
370
  if (modifiedData) {
409
- executionInstruction += `\n\n📝 Modified parameters to use:\n${JSON.stringify(modifiedData, null, 2)}`;
371
+ executionInstruction += `\n\nModified parameters to use:\n${JSON.stringify(modifiedData, null, 2)}`;
410
372
  }
411
- executionInstruction += `\n\n🚨 IMPORTANT:
412
- - Do NOT call submitForHumanReview again (already approved)
413
- - Execute the actual tool directly (e.g., send_email)
414
- - Use the parameters you proposed earlier${modifiedData ? " with the modifications above" : ""}`;
373
+ executionInstruction += `\n\nIMPORTANT:\n- Do NOT call submitForHumanReview again (already approved)\n- Execute the actual tool directly (e.g., send_email)\n- Use the parameters you proposed earlier${modifiedData ? " with the modifications above" : ""}`;
415
374
  messages.push({
416
375
  role: "user",
417
376
  content: executionInstruction,
@@ -1 +1 @@
1
- {"version":3,"file":"loopman-agent.js","sourceRoot":"","sources":["../../src/agents/loopman-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loopman-agent.js","sourceRoot":"","sources":["../../src/agents/loopman-agent.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,32 @@
1
- import { LoopmanConfig, LoopmanUser } from "../types";
1
+ import { LoopmanConfig } from "../types";
2
+ type ApiClientLogger = {
3
+ debug: (message: string, data?: any) => void;
4
+ info: (message: string, data?: any) => void;
5
+ warn: (message: string, data?: any) => void;
6
+ error: (message: string, data?: any) => void;
7
+ };
2
8
  /**
3
9
  * Loopman client for direct API connection
4
- * Allows authentication with an API key and direct backoffice calls
10
+ * Uses API key directly via X-API-Key header (no token exchange)
5
11
  */
6
12
  export declare class LoopmanApiClient {
7
13
  private config;
8
- private authServiceUrl;
9
- private tokenCache;
10
- private readonly bufferTimeSeconds;
14
+ private serverUrl;
15
+ private logger;
16
+ private debug;
11
17
  constructor(config: LoopmanConfig);
12
18
  /**
13
- * Exchange an API key for JWT tokens with caching
14
- * @param apiKey The API key to exchange
15
- * @returns Object containing accessToken and serverUrl
19
+ * Attach a logger (optional).
20
+ * The client is silent by default; logging is enabled only when debug is true.
16
21
  */
17
- getTokenFromApiKey(apiKey: string): Promise<{
18
- accessToken: string;
19
- serverUrl: string;
20
- fromCache: boolean;
21
- }>;
22
+ setLogger(logger: ApiClientLogger, debug?: boolean): void;
23
+ private logDebug;
24
+ private logError;
22
25
  /**
23
- * Get authorization headers with access token and server URL
26
+ * Get authorization headers with API key
27
+ * Uses X-API-Key header directly (no token exchange)
24
28
  */
25
29
  private getAuthHeaders;
26
- /**
27
- * Get current user from backoffice
28
- * @param apiKey The API key for authentication
29
- * @returns Current user information
30
- */
31
- getCurrentUser(apiKey: string): Promise<LoopmanUser>;
32
30
  /**
33
31
  * Generic method to make GET requests to backoffice
34
32
  * @param apiKey The API key for authentication
@@ -67,57 +65,14 @@ export declare class LoopmanApiClient {
67
65
  * @returns Response data
68
66
  */
69
67
  delete<T>(apiKey: string, endpoint: string): Promise<T>;
70
- /**
71
- * Get token from cache if valid, otherwise return null
72
- */
73
- private getCachedToken;
74
- /**
75
- * Store token in cache with expiration
76
- */
77
- private setCachedToken;
78
- /**
79
- * Remove a token from cache
80
- */
81
- clearCache(apiKey: string): void;
82
- /**
83
- * Clear all token cache
84
- */
85
- clearAllCache(): void;
86
- /**
87
- * Get cache statistics
88
- */
89
- getCacheStats(): {
90
- size: number;
91
- entries: Array<{
92
- apiKey: string;
93
- serverUrl: string;
94
- expiresAt: string;
95
- ttl: number;
96
- }>;
97
- };
98
- /**
99
- * Check if a token exists and is valid
100
- */
101
- hasValidToken(apiKey: string): boolean;
102
- /**
103
- * Get remaining TTL for a cached token
104
- */
105
- getTokenTTL(apiKey: string): number;
106
- /**
107
- * Clean up expired tokens from cache
108
- */
109
- private cleanupExpiredTokens;
110
68
  /**
111
69
  * Handle network errors consistently
112
70
  */
113
71
  private handleNetworkError;
114
- /**
115
- * Mask API key for logs (show only first 8 characters)
116
- */
117
- private maskApiKey;
118
72
  /**
119
73
  * Get current configuration
120
74
  */
121
75
  get configuration(): Readonly<LoopmanConfig>;
122
76
  }
77
+ export {};
123
78
  //# sourceMappingURL=loopman-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loopman-api.d.ts","sourceRoot":"","sources":["../../src/client/loopman-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEb,WAAW,EAGZ,MAAM,UAAU,CAAC;AAMlB;;;GAGG;AACH,qBAAa,gBAAgB;IAMf,OAAO,CAAC,MAAM;IAL1B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CACN;IACZ,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAM;gBAEpB,MAAM,EAAE,aAAa;IAQzC;;;;OAIG;IACG,kBAAkB,CACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAqD1E;;OAEG;YACW,cAAc;IAU5B;;;;OAIG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA6C1D;;;;;OAKG;IACG,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA8B1D;;;;;;OAMG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAmCtE;;;;;;OAMG;IACG,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAmCrE;;;;;;OAMG;IACG,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAmCvE;;;;;OAKG;IACG,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA+B7D;;OAEG;IACH,OAAO,CAAC,cAAc;IAgCtB;;OAEG;IACH,OAAO,CAAC,cAAc;IAkBtB;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAShC;;OAEG;IACH,aAAa,IAAI,IAAI;IAMrB;;OAEG;IACH,aAAa,IAAI;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,KAAK,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC,CAAC;KACJ;IAiBD;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAWtC;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAQnC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoC1B;;OAEG;IACH,OAAO,CAAC,UAAU;IAKlB;;OAEG;IACH,IAAI,aAAa,IAAI,QAAQ,CAAC,aAAa,CAAC,CAE3C;CACF"}
1
+ {"version":3,"file":"loopman-api.d.ts","sourceRoot":"","sources":["../../src/client/loopman-api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEd,MAAM,UAAU,CAAC;AAMlB,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAC9C,CAAC;AAEF;;;GAGG;AACH,qBAAa,gBAAgB;IAKf,OAAO,CAAC,MAAM;IAJ1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,KAAK,CAAS;gBAEF,MAAM,EAAE,aAAa;IAOzC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;IAKzD,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,QAAQ;IAMhB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAMtB;;;;;OAKG;IACG,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAmC1D;;;;;;OAMG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAwCtE;;;;;;OAMG;IACG,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAwCrE;;;;;;OAMG;IACG,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAwCvE;;;;;OAKG;IACG,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAoC7D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;OAEG;IACH,IAAI,aAAa,IAAI,QAAQ,CAAC,aAAa,CAAC,CAE3C;CACF"}