darwin-agents 0.4.5 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +224 -0
- package/README.md +97 -2
- package/dist/examples/closed-loop-feedback.d.ts +100 -0
- package/dist/examples/closed-loop-feedback.d.ts.map +1 -0
- package/dist/examples/closed-loop-feedback.js +199 -0
- package/dist/examples/closed-loop-feedback.js.map +1 -0
- package/dist/examples/custom-agent.d.ts +10 -0
- package/dist/examples/custom-agent.d.ts.map +1 -0
- package/dist/examples/custom-agent.js +98 -0
- package/dist/examples/custom-agent.js.map +1 -0
- package/dist/examples/mcp-memory-bridge.d.ts +183 -0
- package/dist/examples/mcp-memory-bridge.d.ts.map +1 -0
- package/dist/examples/mcp-memory-bridge.js +542 -0
- package/dist/examples/mcp-memory-bridge.js.map +1 -0
- package/dist/examples/memory-darwin-integration.d.ts +63 -0
- package/dist/examples/memory-darwin-integration.d.ts.map +1 -0
- package/dist/examples/memory-darwin-integration.js +123 -0
- package/dist/examples/memory-darwin-integration.js.map +1 -0
- package/dist/examples/staleness-monitor.d.ts +45 -0
- package/dist/examples/staleness-monitor.d.ts.map +1 -0
- package/dist/examples/staleness-monitor.js +127 -0
- package/dist/examples/staleness-monitor.js.map +1 -0
- package/dist/src/agents/analyst.d.ts.map +1 -0
- package/dist/src/agents/analyst.js.map +1 -0
- package/dist/src/agents/blog-writer.d.ts.map +1 -0
- package/dist/src/agents/blog-writer.js.map +1 -0
- package/dist/src/agents/critic.d.ts.map +1 -0
- package/dist/src/agents/critic.js.map +1 -0
- package/dist/src/agents/index.d.ts.map +1 -0
- package/dist/src/agents/index.js.map +1 -0
- package/dist/src/agents/investigator-critic.d.ts.map +1 -0
- package/dist/src/agents/investigator-critic.js.map +1 -0
- package/dist/src/agents/investigator.d.ts.map +1 -0
- package/dist/src/agents/investigator.js.map +1 -0
- package/dist/src/agents/marketing.d.ts.map +1 -0
- package/dist/src/agents/marketing.js.map +1 -0
- package/dist/src/agents/researcher.d.ts.map +1 -0
- package/dist/src/agents/researcher.js.map +1 -0
- package/dist/src/agents/writer.d.ts.map +1 -0
- package/dist/src/agents/writer.js.map +1 -0
- package/dist/src/cli/create.d.ts.map +1 -0
- package/dist/src/cli/create.js.map +1 -0
- package/dist/src/cli/evolve.d.ts.map +1 -0
- package/dist/src/cli/evolve.js.map +1 -0
- package/dist/src/cli/index.d.ts.map +1 -0
- package/dist/src/cli/index.js.map +1 -0
- package/dist/src/cli/init.d.ts.map +1 -0
- package/dist/src/cli/init.js.map +1 -0
- package/dist/src/cli/run.d.ts.map +1 -0
- package/dist/src/cli/run.js.map +1 -0
- package/dist/src/cli/status.d.ts.map +1 -0
- package/dist/src/cli/status.js.map +1 -0
- package/dist/src/core/agent.d.ts.map +1 -0
- package/dist/src/core/agent.js.map +1 -0
- package/dist/{core → src/core}/runner.d.ts +11 -0
- package/dist/src/core/runner.d.ts.map +1 -0
- package/dist/{core → src/core}/runner.js +52 -0
- package/dist/src/core/runner.js.map +1 -0
- package/dist/src/evolution/loop.d.ts.map +1 -0
- package/dist/src/evolution/loop.js.map +1 -0
- package/dist/src/evolution/multi-critic.d.ts.map +1 -0
- package/dist/{evolution → src/evolution}/multi-critic.js +192 -1
- package/dist/src/evolution/multi-critic.js.map +1 -0
- package/dist/src/evolution/notifications.d.ts.map +1 -0
- package/dist/src/evolution/notifications.js.map +1 -0
- package/dist/src/evolution/optimizer.d.ts.map +1 -0
- package/dist/src/evolution/optimizer.js.map +1 -0
- package/dist/src/evolution/patterns.d.ts.map +1 -0
- package/dist/src/evolution/patterns.js.map +1 -0
- package/dist/src/evolution/safety.d.ts.map +1 -0
- package/dist/src/evolution/safety.js.map +1 -0
- package/dist/src/evolution/tracker.d.ts.map +1 -0
- package/dist/src/evolution/tracker.js.map +1 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/memory/index.d.ts.map +1 -0
- package/dist/src/memory/index.js.map +1 -0
- package/dist/src/memory/postgres-memory.d.ts.map +1 -0
- package/dist/src/memory/postgres-memory.js.map +1 -0
- package/dist/src/memory/sqlite-memory.d.ts.map +1 -0
- package/dist/src/memory/sqlite-memory.js.map +1 -0
- package/dist/src/providers/anthropic.d.ts.map +1 -0
- package/dist/src/providers/anthropic.js.map +1 -0
- package/dist/src/providers/claude-cli.d.ts.map +1 -0
- package/dist/{providers → src/providers}/claude-cli.js +10 -0
- package/dist/src/providers/claude-cli.js.map +1 -0
- package/dist/src/providers/index.d.ts.map +1 -0
- package/dist/src/providers/index.js.map +1 -0
- package/dist/src/providers/ollama.d.ts.map +1 -0
- package/dist/src/providers/ollama.js.map +1 -0
- package/dist/src/providers/openai.d.ts.map +1 -0
- package/dist/src/providers/openai.js.map +1 -0
- package/dist/src/providers/types.d.ts.map +1 -0
- package/dist/src/providers/types.js.map +1 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js.map +1 -0
- package/package.json +21 -3
- package/dist/agents/analyst.d.ts.map +0 -1
- package/dist/agents/analyst.js.map +0 -1
- package/dist/agents/blog-writer.d.ts.map +0 -1
- package/dist/agents/blog-writer.js.map +0 -1
- package/dist/agents/critic.d.ts.map +0 -1
- package/dist/agents/critic.js.map +0 -1
- package/dist/agents/index.d.ts.map +0 -1
- package/dist/agents/index.js.map +0 -1
- package/dist/agents/investigator-critic.d.ts.map +0 -1
- package/dist/agents/investigator-critic.js.map +0 -1
- package/dist/agents/investigator.d.ts.map +0 -1
- package/dist/agents/investigator.js.map +0 -1
- package/dist/agents/marketing.d.ts.map +0 -1
- package/dist/agents/marketing.js.map +0 -1
- package/dist/agents/researcher.d.ts.map +0 -1
- package/dist/agents/researcher.js.map +0 -1
- package/dist/agents/writer.d.ts.map +0 -1
- package/dist/agents/writer.js.map +0 -1
- package/dist/cli/create.d.ts.map +0 -1
- package/dist/cli/create.js.map +0 -1
- package/dist/cli/evolve.d.ts.map +0 -1
- package/dist/cli/evolve.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/init.d.ts.map +0 -1
- package/dist/cli/init.js.map +0 -1
- package/dist/cli/run.d.ts.map +0 -1
- package/dist/cli/run.js.map +0 -1
- package/dist/cli/status.d.ts.map +0 -1
- package/dist/cli/status.js.map +0 -1
- package/dist/core/agent.d.ts.map +0 -1
- package/dist/core/agent.js.map +0 -1
- package/dist/core/runner.d.ts.map +0 -1
- package/dist/core/runner.js.map +0 -1
- package/dist/evolution/loop.d.ts.map +0 -1
- package/dist/evolution/loop.js.map +0 -1
- package/dist/evolution/multi-critic.d.ts.map +0 -1
- package/dist/evolution/multi-critic.js.map +0 -1
- package/dist/evolution/notifications.d.ts.map +0 -1
- package/dist/evolution/notifications.js.map +0 -1
- package/dist/evolution/optimizer.d.ts.map +0 -1
- package/dist/evolution/optimizer.js.map +0 -1
- package/dist/evolution/patterns.d.ts.map +0 -1
- package/dist/evolution/patterns.js.map +0 -1
- package/dist/evolution/safety.d.ts.map +0 -1
- package/dist/evolution/safety.js.map +0 -1
- package/dist/evolution/tracker.d.ts.map +0 -1
- package/dist/evolution/tracker.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/memory/index.d.ts.map +0 -1
- package/dist/memory/index.js.map +0 -1
- package/dist/memory/postgres-memory.d.ts.map +0 -1
- package/dist/memory/postgres-memory.js.map +0 -1
- package/dist/memory/sqlite-memory.d.ts.map +0 -1
- package/dist/memory/sqlite-memory.js.map +0 -1
- package/dist/providers/anthropic.d.ts.map +0 -1
- package/dist/providers/anthropic.js.map +0 -1
- package/dist/providers/claude-cli.d.ts.map +0 -1
- package/dist/providers/claude-cli.js.map +0 -1
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/index.js.map +0 -1
- package/dist/providers/ollama.d.ts.map +0 -1
- package/dist/providers/ollama.js.map +0 -1
- package/dist/providers/openai.d.ts.map +0 -1
- package/dist/providers/openai.js.map +0 -1
- package/dist/providers/types.d.ts.map +0 -1
- package/dist/providers/types.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- /package/dist/{agents → src/agents}/analyst.d.ts +0 -0
- /package/dist/{agents → src/agents}/analyst.js +0 -0
- /package/dist/{agents → src/agents}/blog-writer.d.ts +0 -0
- /package/dist/{agents → src/agents}/blog-writer.js +0 -0
- /package/dist/{agents → src/agents}/critic.d.ts +0 -0
- /package/dist/{agents → src/agents}/critic.js +0 -0
- /package/dist/{agents → src/agents}/index.d.ts +0 -0
- /package/dist/{agents → src/agents}/index.js +0 -0
- /package/dist/{agents → src/agents}/investigator-critic.d.ts +0 -0
- /package/dist/{agents → src/agents}/investigator-critic.js +0 -0
- /package/dist/{agents → src/agents}/investigator.d.ts +0 -0
- /package/dist/{agents → src/agents}/investigator.js +0 -0
- /package/dist/{agents → src/agents}/marketing.d.ts +0 -0
- /package/dist/{agents → src/agents}/marketing.js +0 -0
- /package/dist/{agents → src/agents}/researcher.d.ts +0 -0
- /package/dist/{agents → src/agents}/researcher.js +0 -0
- /package/dist/{agents → src/agents}/writer.d.ts +0 -0
- /package/dist/{agents → src/agents}/writer.js +0 -0
- /package/dist/{cli → src/cli}/create.d.ts +0 -0
- /package/dist/{cli → src/cli}/create.js +0 -0
- /package/dist/{cli → src/cli}/evolve.d.ts +0 -0
- /package/dist/{cli → src/cli}/evolve.js +0 -0
- /package/dist/{cli → src/cli}/index.d.ts +0 -0
- /package/dist/{cli → src/cli}/index.js +0 -0
- /package/dist/{cli → src/cli}/init.d.ts +0 -0
- /package/dist/{cli → src/cli}/init.js +0 -0
- /package/dist/{cli → src/cli}/run.d.ts +0 -0
- /package/dist/{cli → src/cli}/run.js +0 -0
- /package/dist/{cli → src/cli}/status.d.ts +0 -0
- /package/dist/{cli → src/cli}/status.js +0 -0
- /package/dist/{core → src/core}/agent.d.ts +0 -0
- /package/dist/{core → src/core}/agent.js +0 -0
- /package/dist/{evolution → src/evolution}/loop.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/loop.js +0 -0
- /package/dist/{evolution → src/evolution}/multi-critic.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/notifications.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/notifications.js +0 -0
- /package/dist/{evolution → src/evolution}/optimizer.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/optimizer.js +0 -0
- /package/dist/{evolution → src/evolution}/patterns.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/patterns.js +0 -0
- /package/dist/{evolution → src/evolution}/safety.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/safety.js +0 -0
- /package/dist/{evolution → src/evolution}/tracker.d.ts +0 -0
- /package/dist/{evolution → src/evolution}/tracker.js +0 -0
- /package/dist/{index.d.ts → src/index.d.ts} +0 -0
- /package/dist/{index.js → src/index.js} +0 -0
- /package/dist/{memory → src/memory}/index.d.ts +0 -0
- /package/dist/{memory → src/memory}/index.js +0 -0
- /package/dist/{memory → src/memory}/postgres-memory.d.ts +0 -0
- /package/dist/{memory → src/memory}/postgres-memory.js +0 -0
- /package/dist/{memory → src/memory}/sqlite-memory.d.ts +0 -0
- /package/dist/{memory → src/memory}/sqlite-memory.js +0 -0
- /package/dist/{providers → src/providers}/anthropic.d.ts +0 -0
- /package/dist/{providers → src/providers}/anthropic.js +0 -0
- /package/dist/{providers → src/providers}/claude-cli.d.ts +0 -0
- /package/dist/{providers → src/providers}/index.d.ts +0 -0
- /package/dist/{providers → src/providers}/index.js +0 -0
- /package/dist/{providers → src/providers}/ollama.d.ts +0 -0
- /package/dist/{providers → src/providers}/ollama.js +0 -0
- /package/dist/{providers → src/providers}/openai.d.ts +0 -0
- /package/dist/{providers → src/providers}/openai.js +0 -0
- /package/dist/{providers → src/providers}/types.d.ts +0 -0
- /package/dist/{providers → src/providers}/types.js +0 -0
- /package/dist/{types.d.ts → src/types.d.ts} +0 -0
- /package/dist/{types.js → src/types.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"closed-loop-feedback.js","sourceRoot":"","sources":["../../examples/closed-loop-feedback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAoCH,wDAAwD;AAExD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,kDAAkD;AAClD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C,yDAAyD;AAEzD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,KAAoB,EACpB,UAII,EAAE;IAEN,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC;IAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,IAAI,sBAAsB,CAAC;IAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,IAAI,wBAAwB,CAAC;IAElE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,GAAG,MAAM,EAAE,CAAC;QAChC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QAC9B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;AAC9D,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,YAAY,CAAC,KAAoB,EAAE,QAA0B;IAC3E,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY;SAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC;SAC5E,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI;QACtD,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK;QAC7C,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;IACzB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG;QACpC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK;QACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAEhB,MAAM,SAAS,GAAG,QAAQ,KAAK,SAAS,CAAC;IACzC,MAAM,QAAQ,GAAG,SAAS;QACxB,CAAC,CAAC,+BAA+B,KAAK,CAAC,SAAS,oBAAoB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,KAAK,IAAI;QAC1H,CAAC,CAAC,8BAA8B,KAAK,CAAC,SAAS,qBAAqB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,KAAK,IAAI,CAAC;IAC7H,MAAM,IAAI,GAAG,SAAS;QACpB,CAAC,CAAC,qDAAqD,KAAK,CAAC,SAAS,QAAQ;QAC9E,CAAC,CAAC,oDAAoD,KAAK,CAAC,SAAS,QAAQ,CAAC;IAEhF,OAAO;QACL,QAAQ;QACR,qBAAqB,MAAM,GAAG;QAC9B,kBAAkB,KAAK,CAAC,YAAY,SAAS;QAC7C,EAAE;QACF,0BAA0B;QAC1B,aAAa;QACb,EAAE;QACF,IAAI;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAoB,EAAE,QAA0B;IACxE,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;IAC5E,MAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE,WAAW,EAAE,SAAS,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC5D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS;YACnC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAoB,EAAE,QAA0B;IAChF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,uEAAuE;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,iFAAiF;IACjF,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,yDAAyD;AAEzD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAoB,EACpB,KAAoB,EACpB,UAII,EAAE;IAEN,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAmB;YAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAC/C,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC;YACzC,UAAU,EAAE,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC;SACxD,CAAC;QACF,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACnF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,iCAAkC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IACrD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAyB,EACzB,IAAgE;IAEhE,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;KAChF,CAAC;AACJ,CAAC;AAED,yDAAyD;AAEzD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACpD,MAAM,aAAa,GAAkB;QACnC,KAAK,CAAC,IAAI,CAAC,MAAM;YACf,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE;gBACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK;aACrD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IAEF,8BAA8B;IAC9B,MAAM,eAAe,CAAC;QACpB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,8BAA8B;QACrC,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,4DAA4D;QAC5E,YAAY,EAAE;YACZ,EAAE,MAAM,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1C,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE;YAC3C,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE;SAC/C;KACF,EAAE,aAAa,CAAC,CAAC;IAElB,+BAA+B;IAC/B,MAAM,eAAe,CAAC;QACpB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,8BAA8B;QACrC,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,mFAAmF;QACnG,YAAY,EAAE;YACZ,EAAE,MAAM,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1C,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC,EAAE;YAC3C,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE;SAC/C;KACF,EAAE,aAAa,CAAC,CAAC;IAElB,wCAAwC;IACxC,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC;QACpC,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,gBAAgB;QACvB,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,sBAAsB;QACtC,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;KAChG,EAAE,aAAa,CAAC,CAAC;IAClB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example: Defining a Custom Darwin Agent
|
|
3
|
+
*
|
|
4
|
+
* This shows how to create a fully configured agent with evolution,
|
|
5
|
+
* custom metric weights, and MCP tool access.
|
|
6
|
+
*
|
|
7
|
+
* Run: npx tsx examples/custom-agent.ts
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=custom-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-agent.d.ts","sourceRoot":"","sources":["../../examples/custom-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example: Defining a Custom Darwin Agent
|
|
3
|
+
*
|
|
4
|
+
* This shows how to create a fully configured agent with evolution,
|
|
5
|
+
* custom metric weights, and MCP tool access.
|
|
6
|
+
*
|
|
7
|
+
* Run: npx tsx examples/custom-agent.ts
|
|
8
|
+
*/
|
|
9
|
+
import { defineAgent, runAgent } from '../src/index.js';
|
|
10
|
+
// ─── Step 1: Define the agent ─────────────────────────
|
|
11
|
+
//
|
|
12
|
+
// Every agent needs: name, role, description, systemPrompt.
|
|
13
|
+
// The systemPrompt is what Darwin evolves over time.
|
|
14
|
+
const codeReviewer = defineAgent({
|
|
15
|
+
name: 'code-reviewer',
|
|
16
|
+
role: 'Code Review Assistant',
|
|
17
|
+
description: 'Reviews code for bugs, performance issues, and style. Evolves to catch more issues over time.',
|
|
18
|
+
// This prompt is the starting point. After enough runs,
|
|
19
|
+
// Darwin will analyze patterns in the critic's feedback
|
|
20
|
+
// and generate an improved variant automatically.
|
|
21
|
+
systemPrompt: `You are a senior code reviewer.
|
|
22
|
+
|
|
23
|
+
REVIEW CHECKLIST:
|
|
24
|
+
- Security: injection, auth, secrets in code
|
|
25
|
+
- Performance: N+1 queries, unnecessary allocations, missing indexes
|
|
26
|
+
- Correctness: edge cases, null handling, off-by-one errors
|
|
27
|
+
- Style: naming, function length, dead code
|
|
28
|
+
|
|
29
|
+
RULES:
|
|
30
|
+
- Be specific. "Line 42: missing null check on user.email" not "handle nulls better"
|
|
31
|
+
- Severity levels: CRITICAL / WARNING / SUGGESTION
|
|
32
|
+
- If the code is clean, say so. Don't invent problems.
|
|
33
|
+
- Max 10 findings per review, prioritized by severity
|
|
34
|
+
|
|
35
|
+
OUTPUT FORMAT:
|
|
36
|
+
## Summary
|
|
37
|
+
One-sentence verdict.
|
|
38
|
+
|
|
39
|
+
## Findings
|
|
40
|
+
1. [SEVERITY] File:Line — Description
|
|
41
|
+
Fix: concrete suggestion
|
|
42
|
+
|
|
43
|
+
## Verdict
|
|
44
|
+
APPROVE / REQUEST_CHANGES / NEEDS_DISCUSSION`,
|
|
45
|
+
// ─── Step 2: Configure evolution ──────────────────────
|
|
46
|
+
//
|
|
47
|
+
// enabled: true — Darwin will optimize this agent's prompt
|
|
48
|
+
// evaluator: 'critic' — the built-in critic agent scores each run
|
|
49
|
+
// minRuns: 5 — wait for 5 runs before attempting optimization
|
|
50
|
+
evolution: {
|
|
51
|
+
enabled: true,
|
|
52
|
+
evaluator: 'critic',
|
|
53
|
+
minRuns: 5,
|
|
54
|
+
// ─── Step 3: Set metric weights ──────────────────────
|
|
55
|
+
//
|
|
56
|
+
// These control what Darwin optimizes FOR. Weights must sum to ~1.0.
|
|
57
|
+
//
|
|
58
|
+
// For a code reviewer:
|
|
59
|
+
// - quality matters most (did it find real issues?)
|
|
60
|
+
// - success is critical (don't crash mid-review)
|
|
61
|
+
// - sources/length matter less than for a researcher
|
|
62
|
+
metrics: {
|
|
63
|
+
quality: 0.50, // Critic's quality score (most important)
|
|
64
|
+
sourceCount: 0.00, // Not relevant for code review
|
|
65
|
+
outputLength: 0.10, // Structured output should be consistent
|
|
66
|
+
duration: 0.10, // Fast reviews preferred
|
|
67
|
+
success: 0.30, // Must complete reliably
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
// Optional: MCP servers and built-in tools this agent can use
|
|
71
|
+
mcp: [], // No MCP servers needed
|
|
72
|
+
tools: ['Read', 'Glob', 'Grep'], // Filesystem access for reading code
|
|
73
|
+
maxTurns: 12, // Enough turns for a thorough review
|
|
74
|
+
});
|
|
75
|
+
// ─── Step 4: Run the agent ──────────────────────────────
|
|
76
|
+
async function main() {
|
|
77
|
+
console.log(`Running ${codeReviewer.name}...`);
|
|
78
|
+
const result = await runAgent(codeReviewer, 'Review this TypeScript function for issues:\n\n' +
|
|
79
|
+
'function getUser(id: string) {\n' +
|
|
80
|
+
' const user = db.query(`SELECT * FROM users WHERE id = ${id}`);\n' +
|
|
81
|
+
' return user[0].name.toUpperCase();\n' +
|
|
82
|
+
'}', {
|
|
83
|
+
taskType: 'code-review', // Categorize for per-type analytics
|
|
84
|
+
});
|
|
85
|
+
console.log(`\nCompleted in ${result.experiment.metrics.durationMs}ms`);
|
|
86
|
+
console.log(`Output length: ${result.experiment.metrics.outputLength} chars`);
|
|
87
|
+
if (result.reportPath) {
|
|
88
|
+
console.log(`Report saved: ${result.reportPath}`);
|
|
89
|
+
}
|
|
90
|
+
// The evolution cycle:
|
|
91
|
+
// 1. This run's output gets evaluated by the critic agent
|
|
92
|
+
// 2. After 5+ runs, Darwin detects patterns (e.g., "misses SQL injection")
|
|
93
|
+
// 3. A new prompt variant is generated and A/B tested
|
|
94
|
+
// 4. If the new variant scores >5% better, it becomes the default
|
|
95
|
+
// 5. If it regresses >20%, Darwin rolls back automatically (safety gate)
|
|
96
|
+
}
|
|
97
|
+
main().catch(console.error);
|
|
98
|
+
//# sourceMappingURL=custom-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-agent.js","sourceRoot":"","sources":["../../examples/custom-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGxD,yDAAyD;AACzD,EAAE;AACF,4DAA4D;AAC5D,qDAAqD;AAErD,MAAM,YAAY,GAAoB,WAAW,CAAC;IAChD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,+FAA+F;IAE5G,wDAAwD;IACxD,wDAAwD;IACxD,kDAAkD;IAClD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;6CAuB6B;IAE3C,yDAAyD;IACzD,EAAE;IACF,4DAA4D;IAC5D,kEAAkE;IAClE,8DAA8D;IAC9D,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,CAAC;QAEV,wDAAwD;QACxD,EAAE;QACF,qEAAqE;QACrE,EAAE;QACF,uBAAuB;QACvB,oDAAoD;QACpD,iDAAiD;QACjD,qDAAqD;QACrD,OAAO,EAAE;YACP,OAAO,EAAE,IAAI,EAAO,0CAA0C;YAC9D,WAAW,EAAE,IAAI,EAAG,+BAA+B;YACnD,YAAY,EAAE,IAAI,EAAE,yCAAyC;YAC7D,QAAQ,EAAE,IAAI,EAAM,yBAAyB;YAC7C,OAAO,EAAE,IAAI,EAAO,yBAAyB;SAC9C;KACF;IAED,8DAA8D;IAC9D,GAAG,EAAE,EAAE,EAA+B,wBAAwB;IAC9D,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAM,qCAAqC;IAC1E,QAAQ,EAAE,EAAE,EAA0B,qCAAqC;CAC5E,CAAC,CAAC;AAEH,2DAA2D;AAE3D,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,WAAW,YAAY,CAAC,IAAI,KAAK,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAc,MAAM,QAAQ,CACtC,YAAY,EACZ,iDAAiD;QACjD,kCAAkC;QAClC,oEAAoE;QACpE,wCAAwC;QACxC,GAAG,EACH;QACE,QAAQ,EAAE,aAAa,EAAG,oCAAoC;KAC/D,CACF,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,QAAQ,CAAC,CAAC;IAC9E,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,uBAAuB;IACvB,0DAA0D;IAC1D,2EAA2E;IAC3E,sDAAsD;IACtD,kEAAkE;IAClE,yEAAyE;AAC3E,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example: Generic MCP-Memory Bridge (Darwin → any MCP-compliant memory server)
|
|
3
|
+
*
|
|
4
|
+
* Wraps the `FeedbackStore` interface from closed-loop-feedback.ts with a
|
|
5
|
+
* thin JSON-RPC 2.0 client for MCP. Works with any MCP server that exposes
|
|
6
|
+
* a write tool (e.g. `memory_learn`) and a read tool (e.g. `memory_search`).
|
|
7
|
+
*
|
|
8
|
+
* Default wiring targets `@studiomeyer/local-memory-mcp` (zero-config, lives
|
|
9
|
+
* in a single SQLite file under the OS data dir, no cloud, no API keys).
|
|
10
|
+
* Drop in Mem0 / Zep / Letta / Cognee / your own self-hosted MCP server by
|
|
11
|
+
* overriding `writeTool` / `readTool` and providing schema mappers.
|
|
12
|
+
*
|
|
13
|
+
* Why raw JSON-RPC and not @modelcontextprotocol/sdk?
|
|
14
|
+
* - Darwin keeps a "zero hard deps" policy (peerDependencies only).
|
|
15
|
+
* - MCP wire protocol is three messages: initialize, tools/list, tools/call.
|
|
16
|
+
* - Keeps the bridge testable without a mock SDK.
|
|
17
|
+
*
|
|
18
|
+
* Why a single bridge instead of per-provider clients?
|
|
19
|
+
* - The wire is the same. Only tool names and arg/result shapes vary.
|
|
20
|
+
* - One reconnect / lifecycle path, one place to harden timeouts.
|
|
21
|
+
*
|
|
22
|
+
* Run demo (requires `@studiomeyer/local-memory-mcp` installed):
|
|
23
|
+
* npm install -g @studiomeyer/local-memory-mcp
|
|
24
|
+
* npx tsx examples/mcp-memory-bridge.ts
|
|
25
|
+
*/
|
|
26
|
+
import type { FeedbackRecord, FeedbackStore } from './closed-loop-feedback.js';
|
|
27
|
+
/** A lesson retrieved from the memory store — what gets injected into the next prompt. */
|
|
28
|
+
export interface Lesson {
|
|
29
|
+
/** Free-form text the agent should consider next run. */
|
|
30
|
+
content: string;
|
|
31
|
+
/** Tags surfaced by the store (may be empty). */
|
|
32
|
+
tags: string[];
|
|
33
|
+
/** Optional ranking score (semantics depend on the backing store). */
|
|
34
|
+
score?: number;
|
|
35
|
+
}
|
|
36
|
+
/** Options bag for `fetchRelevant()`. Object-shaped for future-compat. */
|
|
37
|
+
export interface FetchRelevantOptions {
|
|
38
|
+
query: string;
|
|
39
|
+
/** Max number of lessons. Default: 5. */
|
|
40
|
+
limit?: number;
|
|
41
|
+
/** Optional tag filter — passed through to the read tool if it honours it. */
|
|
42
|
+
tags?: string[];
|
|
43
|
+
}
|
|
44
|
+
/** Darwin-side store contract extended with retrieval + lifecycle. */
|
|
45
|
+
export interface RetrievableFeedbackStore extends FeedbackStore {
|
|
46
|
+
/**
|
|
47
|
+
* Retrieve lessons relevant to a query.
|
|
48
|
+
* Backward-compatible: accepts either a plain string (legacy) or an
|
|
49
|
+
* options object. The bag form is preferred for v0.4.7+.
|
|
50
|
+
*/
|
|
51
|
+
fetchRelevant(queryOrOpts: string | FetchRelevantOptions, limit?: number): Promise<Lesson[]>;
|
|
52
|
+
close(): Promise<void>;
|
|
53
|
+
}
|
|
54
|
+
/** Transport-agnostic configuration. */
|
|
55
|
+
export interface McpMemoryConfig {
|
|
56
|
+
transport: 'stdio' | 'http';
|
|
57
|
+
/**
|
|
58
|
+
* - stdio: [command, ...args] for `spawn`. Example: ['npx', '-y', '@studiomeyer/local-memory-mcp'].
|
|
59
|
+
* - http: full URL of the MCP endpoint. Example: 'https://memory.example.com/mcp'.
|
|
60
|
+
*/
|
|
61
|
+
endpoint: string | string[];
|
|
62
|
+
/** Optional Authorization header value for http transport (e.g. 'Bearer …'). */
|
|
63
|
+
authHeader?: string;
|
|
64
|
+
/** Name of the tool that writes a memory. Default: 'memory_learn'. */
|
|
65
|
+
writeTool?: string;
|
|
66
|
+
/** Name of the tool that searches memories. Default: 'memory_search'. */
|
|
67
|
+
readTool?: string;
|
|
68
|
+
/** Translate a FeedbackRecord to the writeTool's input arguments. */
|
|
69
|
+
mapWriteArgs?: (rec: FeedbackRecord) => Record<string, unknown>;
|
|
70
|
+
/** Translate a raw tools/call result into Lesson[]. */
|
|
71
|
+
mapReadResult?: (toolResult: unknown) => Lesson[];
|
|
72
|
+
/** Per-RPC timeout in ms (default: 10_000). */
|
|
73
|
+
requestTimeoutMs?: number;
|
|
74
|
+
/** Number of automatic respawn attempts after a stdio EPIPE/exit (default: 1). */
|
|
75
|
+
maxRespawn?: number;
|
|
76
|
+
/**
|
|
77
|
+
* HTTP retry policy. Number of retries for 5xx + transient network errors
|
|
78
|
+
* (ECONNRESET / ETIMEDOUT / abort). Default: 2. Exponential backoff
|
|
79
|
+
* starting at 250 ms.
|
|
80
|
+
*/
|
|
81
|
+
httpMaxRetries?: number;
|
|
82
|
+
/** Protocol version handed to the server during initialize. Default: '2025-11-25'. */
|
|
83
|
+
protocolVersion?: string;
|
|
84
|
+
/** Logger for diagnostics. Defaults to console.warn on errors only. */
|
|
85
|
+
logger?: {
|
|
86
|
+
warn: (msg: string) => void;
|
|
87
|
+
debug?: (msg: string) => void;
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/** Default mapping for `memory_learn` shape (local-memory-mcp, mcp-nex). */
|
|
91
|
+
export declare function defaultMapWriteArgs(rec: FeedbackRecord): Record<string, unknown>;
|
|
92
|
+
/**
|
|
93
|
+
* Default mapping for `memory_search` shape.
|
|
94
|
+
* Accepts both the raw MCP CallToolResult shape `{content:[{text:JSON}]}`
|
|
95
|
+
* and a pre-parsed object — that keeps the parser tolerant when a custom
|
|
96
|
+
* server returns structured content directly.
|
|
97
|
+
*/
|
|
98
|
+
export declare function defaultMapReadResult(raw: unknown): Lesson[];
|
|
99
|
+
/**
|
|
100
|
+
* Generic MCP-Memory bridge.
|
|
101
|
+
*
|
|
102
|
+
* Lifecycle:
|
|
103
|
+
* const m = openLocalMemory(); // or openRemoteMemory(...)
|
|
104
|
+
* await m.save({...}); // FeedbackStore.save
|
|
105
|
+
* const lessons = await m.fetchRelevant({ query: 'topic', limit: 5 });
|
|
106
|
+
* await m.close();
|
|
107
|
+
*
|
|
108
|
+
* Errors in save/fetch are swallowed at the FeedbackStore level (the
|
|
109
|
+
* closed-loop callsite logs them) — the bridge surfaces them as thrown
|
|
110
|
+
* Errors so the caller decides whether to fail-loud or fail-quiet.
|
|
111
|
+
*/
|
|
112
|
+
export declare class McpMemoryBridge implements RetrievableFeedbackStore {
|
|
113
|
+
private readonly config;
|
|
114
|
+
private child;
|
|
115
|
+
private nextId;
|
|
116
|
+
private pending;
|
|
117
|
+
private stdoutBuffer;
|
|
118
|
+
private respawnCount;
|
|
119
|
+
private initialized;
|
|
120
|
+
private initInFlight;
|
|
121
|
+
private closed;
|
|
122
|
+
constructor(config: McpMemoryConfig);
|
|
123
|
+
save(record: FeedbackRecord): Promise<void>;
|
|
124
|
+
fetchRelevant(queryOrOpts: string | FetchRelevantOptions, legacyLimit?: number): Promise<Lesson[]>;
|
|
125
|
+
close(): Promise<void>;
|
|
126
|
+
private ensureReady;
|
|
127
|
+
private initialize;
|
|
128
|
+
private spawnStdio;
|
|
129
|
+
private onChildExit;
|
|
130
|
+
private onStdoutData;
|
|
131
|
+
private handleIncomingLine;
|
|
132
|
+
private sendStdio;
|
|
133
|
+
/**
|
|
134
|
+
* Send one JSON-RPC request and await the matching response.
|
|
135
|
+
* Used for both initialize and tools/call.
|
|
136
|
+
* F1: no inline respawn — ensureReady/initialize is the only path that
|
|
137
|
+
* spawns. This avoids the double-spawn race where rpc() and ensureReady()
|
|
138
|
+
* both spawn children competing for `this.child`.
|
|
139
|
+
*/
|
|
140
|
+
private rpc;
|
|
141
|
+
private rpcStdio;
|
|
142
|
+
/**
|
|
143
|
+
* HTTP transport with bounded retries on 5xx + transient network errors.
|
|
144
|
+
* Per-attempt timeout via AbortController. Honors `httpMaxRetries`.
|
|
145
|
+
*/
|
|
146
|
+
private rpcHttp;
|
|
147
|
+
private callTool;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Parse an HTTP body that may be either plain JSON or Server-Sent Events.
|
|
151
|
+
* F2: SSE framing is `data: …\n\n` per event with possible multi-line data
|
|
152
|
+
* payloads. We take the last well-formed event so a streamed in-progress
|
|
153
|
+
* frame doesn't override the final result.
|
|
154
|
+
*/
|
|
155
|
+
export declare function parseHttpRpcBody(text: string): {
|
|
156
|
+
result?: unknown;
|
|
157
|
+
error?: unknown;
|
|
158
|
+
id?: unknown;
|
|
159
|
+
jsonrpc?: unknown;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Default zero-config wiring: spawn `@studiomeyer/local-memory-mcp` via npx.
|
|
163
|
+
*
|
|
164
|
+
* Requires the package to be reachable (either installed globally or via
|
|
165
|
+
* `npx -y @studiomeyer/local-memory-mcp` which fetches on first run).
|
|
166
|
+
*/
|
|
167
|
+
export declare function localMemory(overrides?: Partial<McpMemoryConfig>): McpMemoryBridge;
|
|
168
|
+
/**
|
|
169
|
+
* Connect to a remote MCP server over HTTP.
|
|
170
|
+
*
|
|
171
|
+
* Example: connect to your hosted memory.studiomeyer.io endpoint
|
|
172
|
+
* remoteMemory('https://memory.studiomeyer.io/mcp', { authHeader: `Bearer ${KEY}` })
|
|
173
|
+
*
|
|
174
|
+
* Example: Mem0 with tool-name + arg aliasing
|
|
175
|
+
* remoteMemory('https://api.mem0.ai/mcp', {
|
|
176
|
+
* authHeader: `Bearer ${process.env.MEM0_KEY}`,
|
|
177
|
+
* writeTool: 'mem0_add',
|
|
178
|
+
* readTool: 'mem0_search',
|
|
179
|
+
* mapWriteArgs: (rec) => ({ content: rec.content, metadata: { tags: rec.tags } }),
|
|
180
|
+
* })
|
|
181
|
+
*/
|
|
182
|
+
export declare function remoteMemory(url: string, overrides?: Partial<McpMemoryConfig>): McpMemoryBridge;
|
|
183
|
+
//# sourceMappingURL=mcp-memory-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-memory-bridge.d.ts","sourceRoot":"","sources":["../../examples/mcp-memory-bridge.ts"],"names":[],"mappings":"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"}
|