@loopman/langchain-sdk 1.7.0 → 1.12.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 (94) hide show
  1. package/README.md +78 -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/helpers/template-generator-static.d.ts +27 -0
  12. package/dist/helpers/template-generator-static.d.ts.map +1 -0
  13. package/dist/helpers/template-generator-static.js +52 -0
  14. package/dist/helpers/template-generator-static.js.map +1 -0
  15. package/dist/helpers/template-generator.d.ts +50 -0
  16. package/dist/helpers/template-generator.d.ts.map +1 -0
  17. package/dist/helpers/template-generator.js +85 -0
  18. package/dist/helpers/template-generator.js.map +1 -0
  19. package/dist/index.d.ts +6 -1
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +6 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/langgraph/helpers.d.ts +171 -0
  24. package/dist/langgraph/helpers.d.ts.map +1 -0
  25. package/dist/langgraph/helpers.js +216 -0
  26. package/dist/langgraph/helpers.js.map +1 -0
  27. package/dist/langgraph/index.d.ts +16 -0
  28. package/dist/langgraph/index.d.ts.map +1 -0
  29. package/dist/langgraph/index.js +17 -0
  30. package/dist/langgraph/index.js.map +1 -0
  31. package/dist/langgraph/loopman-conditional-edge.d.ts +58 -0
  32. package/dist/langgraph/loopman-conditional-edge.d.ts.map +1 -0
  33. package/dist/langgraph/loopman-conditional-edge.js +77 -0
  34. package/dist/langgraph/loopman-conditional-edge.js.map +1 -0
  35. package/dist/langgraph/loopman-context-node.d.ts +74 -0
  36. package/dist/langgraph/loopman-context-node.d.ts.map +1 -0
  37. package/dist/langgraph/loopman-context-node.js +143 -0
  38. package/dist/langgraph/loopman-context-node.js.map +1 -0
  39. package/dist/langgraph/loopman-validation-node.d.ts +119 -0
  40. package/dist/langgraph/loopman-validation-node.d.ts.map +1 -0
  41. package/dist/langgraph/loopman-validation-node.js +420 -0
  42. package/dist/langgraph/loopman-validation-node.js.map +1 -0
  43. package/dist/langgraph/types.d.ts +75 -0
  44. package/dist/langgraph/types.d.ts.map +1 -0
  45. package/dist/langgraph/types.js +74 -0
  46. package/dist/langgraph/types.js.map +1 -0
  47. package/dist/loopman-agent-wrapper.d.ts +18 -0
  48. package/dist/loopman-agent-wrapper.d.ts.map +1 -1
  49. package/dist/loopman-agent-wrapper.js +31 -21
  50. package/dist/loopman-agent-wrapper.js.map +1 -1
  51. package/dist/loopman-middleware.d.ts +0 -5
  52. package/dist/loopman-middleware.d.ts.map +1 -1
  53. package/dist/loopman-middleware.js +22 -23
  54. package/dist/loopman-middleware.js.map +1 -1
  55. package/dist/mcp/loopman-mcp-client.d.ts.map +1 -1
  56. package/dist/mcp/loopman-mcp-client.js +5 -0
  57. package/dist/mcp/loopman-mcp-client.js.map +1 -1
  58. package/dist/mcp/tool-registry.d.ts +7 -1
  59. package/dist/mcp/tool-registry.d.ts.map +1 -1
  60. package/dist/mcp/tool-registry.js +23 -16
  61. package/dist/mcp/tool-registry.js.map +1 -1
  62. package/dist/services/logger.service.d.ts.map +1 -1
  63. package/dist/services/logger.service.js +4 -12
  64. package/dist/services/logger.service.js.map +1 -1
  65. package/dist/services/loopman.service.d.ts +25 -11
  66. package/dist/services/loopman.service.d.ts.map +1 -1
  67. package/dist/services/loopman.service.js +74 -45
  68. package/dist/services/loopman.service.js.map +1 -1
  69. package/dist/services/polling.service.d.ts +7 -3
  70. package/dist/services/polling.service.d.ts.map +1 -1
  71. package/dist/services/polling.service.js +61 -47
  72. package/dist/services/polling.service.js.map +1 -1
  73. package/dist/templates.json +20 -0
  74. package/dist/types.d.ts +9 -35
  75. package/dist/types.d.ts.map +1 -1
  76. package/dist/types.js.map +1 -1
  77. package/examples/README.md +346 -0
  78. package/examples/templates/README.md +285 -0
  79. package/examples/templates/langchain-full-review/.env.example +3 -0
  80. package/examples/templates/langchain-full-review/README.md +165 -0
  81. package/examples/templates/langchain-full-review/index.ts +54 -0
  82. package/examples/templates/langchain-full-review/package.json +29 -0
  83. package/examples/templates/langchain-full-review/tsconfig.json +22 -0
  84. package/examples/templates/langchain-tool-validation/.env.example +3 -0
  85. package/examples/templates/langchain-tool-validation/README.md +137 -0
  86. package/examples/templates/langchain-tool-validation/index.ts +65 -0
  87. package/examples/templates/langchain-tool-validation/package.json +29 -0
  88. package/examples/templates/langchain-tool-validation/tsconfig.json +22 -0
  89. package/examples/templates/langgraph-hello-world/.env.example +3 -0
  90. package/examples/templates/langgraph-hello-world/README.md +71 -0
  91. package/examples/templates/langgraph-hello-world/index.ts +147 -0
  92. package/examples/templates/langgraph-hello-world/package.json +27 -0
  93. package/examples/templates/langgraph-hello-world/tsconfig.json +22 -0
  94. package/package.json +12 -7
package/README.md CHANGED
@@ -44,6 +44,11 @@ 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
+ - ✅ **Full State Sharing**: Send complete agent state to human reviewers
49
+ - ✅ **Business Context**: Define context, proposed decisions, and reasoning
50
+ - ✅ **Context Enrichment**: Automatic guidelines and decision history integration
51
+ - ✅ **Helper Functions**: `enrichSystemPrompt()` for simplified agent integration
47
52
  - ✅ **Decision Types**: Approve, Edit, Reject workflows
48
53
  - ✅ **Selective Interruption**: Per-tool configuration
49
54
  - ✅ **Double Validation Layer**: Global MCP validation + tool-specific validation
@@ -180,6 +185,49 @@ const result = await agent.invoke(
180
185
  // ✅ Middleware handles HITL transparently
181
186
  ```
182
187
 
188
+ ### LangGraph with Context Enrichment
189
+
190
+ ```typescript
191
+ import {
192
+ LoopmanGraphState,
193
+ createLoopmanContextNode,
194
+ enrichSystemPrompt,
195
+ } from "loopman-langchain-sdk";
196
+ import { StateGraph } from "@langchain/langgraph";
197
+
198
+ // 1. Create context node to load guidelines and decision history
199
+ const contextNode = createLoopmanContextNode({
200
+ apiKey: process.env.LOOPMAN_API_KEY!,
201
+ workflowId: "my-workflow",
202
+ category: "email",
203
+ });
204
+
205
+ // 2. Use context in agent with one-liner
206
+ async function agentNode(state: typeof LoopmanGraphState.State) {
207
+ const { messages, guidelines, decisionContext } = state;
208
+
209
+ // ✨ Automatically enrich system prompt with Loopman context
210
+ const systemPrompt = enrichSystemPrompt("You are a helpful assistant.", {
211
+ guidelines,
212
+ decisionContext,
213
+ });
214
+
215
+ const response = await model.invoke([
216
+ { role: "system", content: systemPrompt },
217
+ ...messages,
218
+ ]);
219
+
220
+ return { messages: [response] };
221
+ }
222
+
223
+ // 3. Build workflow
224
+ const workflow = new StateGraph(LoopmanGraphState)
225
+ .addNode("load_context", contextNode)
226
+ .addNode("agent", agentNode)
227
+ .addEdge(START, "load_context")
228
+ .addEdge("load_context", "agent");
229
+ ```
230
+
183
231
  ---
184
232
 
185
233
  ## 📚 Examples
@@ -212,6 +260,11 @@ Comprehensive examples are organized in the `examples/` directory by complexity
212
260
 
213
261
  - `conditional-hitl.ts` - Context-aware, intelligent validation
214
262
 
263
+ **5. LangGraph Integration** (`examples/5-langgraph-integration/`)
264
+
265
+ - `loopman-validation-graph.ts` - LangGraph workflow with validation node and context enrichment
266
+ - `full-state-example.ts` - Complete state sharing with business context and custom formatting
267
+
215
268
  ### Running Examples
216
269
 
217
270
  ```bash
@@ -229,10 +282,18 @@ npx tsx examples/3-real-world-examples/task-management/task-approval.ts
229
282
 
230
283
  # Advanced
231
284
  npx tsx examples/4-advanced-patterns/conditional-hitl.ts
285
+
286
+ # LangGraph Integration
287
+ npx tsx examples/5-langgraph-integration/loopman-validation-graph.ts
288
+ npm run example:langgraph-full-state
232
289
  ```
233
290
 
234
291
  See [Examples README](./examples/README.md) for detailed documentation and learning paths.
235
292
 
293
+ **New:**
294
+ - Check out the [LangGraph Integration Guide](./docs/LANGGRAPH_INTEGRATION.md) for building stateful workflows with Loopman validation nodes
295
+ - See [Full State Integration Guide](./docs/LANGGRAPH_FULL_STATE.md) for sharing complete agent state with human reviewers
296
+
236
297
  ---
237
298
 
238
299
  **Key Features Demonstrated:**
@@ -410,7 +471,6 @@ Creates a LangChain middleware for Loopman integration.
410
471
  - `config.apiKey` (string, required): Loopman API key
411
472
  - `config.workflowId` (string, required): Workflow identifier
412
473
  - `config.executionId` (string, optional): Execution ID
413
- - `config.channelId` (string, optional): Channel ID for task routing
414
474
  - `config.mode` (string, optional): Operation mode (`tool-validation`, `prompt-enhancement`, `full`)
415
475
  - `config.interruptOn` (Record<string, boolean>, optional): Tool validation config
416
476
  - `config.timeout` (number, optional): Decision timeout in ms
@@ -444,7 +504,6 @@ Creates a complete Loopman agent with MCP integration and double validation laye
444
504
  - `config.systemPrompt` (string, required): System prompt for the agent
445
505
  - `config.additionalTools` (array, optional): Custom tools to add
446
506
  - `config.category` (string, optional): Category for guidelines organization
447
- - `config.channelId` (string, optional): Channel ID for task routing
448
507
  - `config.language` (string, optional): Language for human review interface
449
508
  - `config.requireApprovalForTools` (array, optional): Tools requiring approval (`['*']` for all)
450
509
  - `config.manualExecutionMode` (boolean, optional): Manual execution mode
@@ -536,11 +595,25 @@ See `src/loopman-middleware.ts` for the complete implementation.
536
595
 
537
596
  ## 🔗 Related Resources
538
597
 
598
+ ### SDK Documentation
599
+
600
+ - [LangGraph Integration Guide](./docs/LANGGRAPH_INTEGRATION.md) - Build stateful workflows with validation nodes
601
+ - [LangGraph Context Enrichment](./docs/LANGGRAPH_CONTEXT_ENRICHMENT.md) - Load guidelines and decision history
602
+ - [LangGraph Helper Functions](./docs/LANGGRAPH_HELPERS.md) - Utility functions for context integration
603
+ - [LangGraph Custom State](./docs/LANGGRAPH_CUSTOM_STATE.md) - Use Loopman with your own state schema
604
+ - [requiresValidation Mechanism](./docs/REQUIRES_VALIDATION_MECHANISM.md) - How validation triggering works
605
+ - [Validation Node Context Enrichment](./docs/VALIDATION_NODE_CONTEXT_ENRICHMENT.md) - Auto context loading after validation ⭐ New
606
+ - [Loopman Agent Guide](./docs/LOOPMAN_AGENT.md) - Full agent implementation with MCP
607
+ - [Tool Validation Mode](./docs/TOOL_VALIDATION_MODE.md) - Middleware tool validation
608
+ - [Auto-Correction with Feedback](./docs/AUTO_CORRECTION_WITH_FEEDBACK.md) - Agent retry patterns
609
+ - [Evolution to LangGraph](./docs/EVOLUTION_TO_LANGGRAPH.md) - Migration roadmap
610
+
539
611
  ### LangChain Documentation
540
612
 
541
613
  - [LangChain v1.0 Quickstart](https://docs.langchain.com/oss/javascript/langchain/quickstart)
542
614
  - [Human-in-the-Loop Guide](https://docs.langchain.com/oss/javascript/langchain/human-in-the-loop)
543
615
  - [Tools Documentation](https://docs.langchain.com/oss/javascript/langchain/tools)
616
+ - [LangGraph Documentation](https://js.langchain.com/docs/langgraph/)
544
617
 
545
618
  ### Loopman Platform
546
619
 
@@ -552,7 +625,7 @@ See `src/loopman-middleware.ts` for the complete implementation.
552
625
 
553
626
  ## 📄 License
554
627
 
555
- ISC
628
+ MPL-2.0 (Mozilla Public License 2.0). See `LICENSE`.
556
629
 
557
630
  ---
558
631
 
@@ -574,7 +647,7 @@ This is a demonstration project. For production use, see the [Loopman LangChain
574
647
 
575
648
  - Use VSCode debug configurations for step-through debugging
576
649
  - Enable `debug: true` in middleware for detailed logging
577
- - Check `console.log` output for tool execution details
650
+ - Check SDK debug logs (via `LoggerService`) for tool execution details
578
651
 
579
652
  ### Performance
580
653
 
@@ -591,4 +664,4 @@ This is a demonstration project. For production use, see the [Loopman LangChain
591
664
 
592
665
  ---
593
666
 
594
- **Built with ❤️ using LangChain v1.0 and TypeScript**
667
+ 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;IAkPxB,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"}