@ai.ntellect/core 0.8.3 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.mocharc.json +2 -1
- package/AGENTS.md +50 -0
- package/ARCHITECTURE.md +58 -0
- package/BENCHMARK.md +38 -0
- package/CHANGELOG.md +224 -0
- package/README.md +413 -199
- package/agent/agent-workflow.ts +569 -0
- package/agent/agent.ts +183 -0
- package/{modules/agent → agent}/base/executor.ts +11 -8
- package/{modules/agent → agent}/base/index.ts +2 -14
- package/agent/entity-resolver/confidence.ts +54 -0
- package/agent/entity-resolver/entity-index.ts +241 -0
- package/agent/entity-resolver/explore-strategy.ts +82 -0
- package/agent/entity-resolver/index.ts +22 -0
- package/agent/entity-resolver/resolver.ts +193 -0
- package/agent/entity-resolver/scorer.ts +211 -0
- package/agent/entity-resolver/types.ts +98 -0
- package/agent/generic-executor.ts +713 -0
- package/agent/handlers/cognitive-handler.ts +197 -0
- package/agent/handlers/index.ts +1 -0
- package/agent/handoff.ts +58 -0
- package/agent/llm-factory.ts +343 -0
- package/agent/orchestrator.ts +45 -0
- package/{modules/agent → agent}/prompt-builder.ts +1 -1
- package/agent/registry.ts +64 -0
- package/agent/tools/file-system.ts +471 -0
- package/agent/tools/index.ts +23 -0
- package/agent/tools/logger.ts +105 -0
- package/agent/tools/tool-resolver.ts +104 -0
- package/benchmark/cortexflow-workflow.ts +182 -0
- package/benchmark/langgraph-workflow.ts +201 -0
- package/benchmark/llm-client.ts +76 -0
- package/benchmark/run-benchmark.ts +222 -0
- package/cli-dev.ts +419 -0
- package/dist/agent/agent-workflow.d.ts +41 -0
- package/dist/agent/agent-workflow.d.ts.map +1 -0
- package/dist/agent/agent-workflow.js +560 -0
- package/dist/agent/agent-workflow.js.map +1 -0
- package/dist/agent/agent.d.ts +38 -0
- package/dist/agent/agent.d.ts.map +1 -0
- package/dist/agent/agent.js +149 -0
- package/dist/agent/agent.js.map +1 -0
- package/dist/{modules/agent → agent}/base/executor.d.ts +3 -3
- package/dist/agent/base/executor.d.ts.map +1 -0
- package/dist/{modules/agent → agent}/base/executor.js +8 -5
- package/dist/agent/base/executor.js.map +1 -0
- package/dist/{modules/agent → agent}/base/index.d.ts +1 -1
- package/dist/agent/base/index.d.ts.map +1 -0
- package/dist/{modules/agent → agent}/base/index.js +0 -12
- package/dist/agent/base/index.js.map +1 -0
- package/dist/agent/entity-resolver/confidence.d.ts +4 -0
- package/dist/agent/entity-resolver/confidence.d.ts.map +1 -0
- package/dist/agent/entity-resolver/confidence.js +47 -0
- package/dist/agent/entity-resolver/confidence.js.map +1 -0
- package/dist/agent/entity-resolver/entity-index.d.ts +40 -0
- package/dist/agent/entity-resolver/entity-index.d.ts.map +1 -0
- package/dist/agent/entity-resolver/entity-index.js +244 -0
- package/dist/agent/entity-resolver/entity-index.js.map +1 -0
- package/dist/agent/entity-resolver/explore-strategy.d.ts +13 -0
- package/dist/agent/entity-resolver/explore-strategy.d.ts.map +1 -0
- package/dist/agent/entity-resolver/explore-strategy.js +109 -0
- package/dist/agent/entity-resolver/explore-strategy.js.map +1 -0
- package/dist/agent/entity-resolver/index.d.ts +8 -0
- package/dist/agent/entity-resolver/index.d.ts.map +1 -0
- package/dist/agent/entity-resolver/index.js +16 -0
- package/dist/agent/entity-resolver/index.js.map +1 -0
- package/dist/agent/entity-resolver/resolver.d.ts +18 -0
- package/dist/agent/entity-resolver/resolver.d.ts.map +1 -0
- package/dist/agent/entity-resolver/resolver.js +158 -0
- package/dist/agent/entity-resolver/resolver.js.map +1 -0
- package/dist/agent/entity-resolver/scorer.d.ts +3 -0
- package/dist/agent/entity-resolver/scorer.d.ts.map +1 -0
- package/dist/agent/entity-resolver/scorer.js +182 -0
- package/dist/agent/entity-resolver/scorer.js.map +1 -0
- package/dist/agent/entity-resolver/types.d.ts +89 -0
- package/dist/agent/entity-resolver/types.d.ts.map +1 -0
- package/dist/agent/entity-resolver/types.js +3 -0
- package/dist/agent/entity-resolver/types.js.map +1 -0
- package/dist/{modules/agent → agent}/generic-executor.d.ts +37 -27
- package/dist/agent/generic-executor.d.ts.map +1 -0
- package/dist/agent/generic-executor.js +620 -0
- package/dist/agent/generic-executor.js.map +1 -0
- package/dist/agent/handlers/cognitive-handler.d.ts +44 -0
- package/dist/agent/handlers/cognitive-handler.d.ts.map +1 -0
- package/dist/agent/handlers/cognitive-handler.js +172 -0
- package/dist/agent/handlers/cognitive-handler.js.map +1 -0
- package/dist/agent/handlers/index.d.ts +2 -0
- package/dist/agent/handlers/index.d.ts.map +1 -0
- package/dist/agent/handlers/index.js +7 -0
- package/dist/agent/handlers/index.js.map +1 -0
- package/dist/agent/handoff.d.ts +12 -0
- package/dist/agent/handoff.d.ts.map +1 -0
- package/dist/agent/handoff.js +62 -0
- package/dist/agent/handoff.js.map +1 -0
- package/dist/agent/llm-factory.d.ts.map +1 -0
- package/dist/agent/llm-factory.js +297 -0
- package/dist/agent/llm-factory.js.map +1 -0
- package/dist/agent/orchestrator.d.ts +18 -0
- package/dist/agent/orchestrator.d.ts.map +1 -0
- package/dist/agent/orchestrator.js +44 -0
- package/dist/agent/orchestrator.js.map +1 -0
- package/dist/{modules/agent → agent}/prompt-builder.d.ts +1 -1
- package/dist/agent/prompt-builder.d.ts.map +1 -0
- package/dist/agent/prompt-builder.js.map +1 -0
- package/dist/agent/registry.d.ts +19 -0
- package/dist/agent/registry.d.ts.map +1 -0
- package/dist/agent/registry.js +48 -0
- package/dist/agent/registry.js.map +1 -0
- package/dist/agent/tools/file-system.d.ts +11 -0
- package/dist/agent/tools/file-system.d.ts.map +1 -0
- package/dist/agent/tools/file-system.js +528 -0
- package/dist/agent/tools/file-system.js.map +1 -0
- package/dist/agent/tools/index.d.ts +4 -0
- package/dist/agent/tools/index.d.ts.map +1 -0
- package/dist/agent/tools/index.js +20 -0
- package/dist/agent/tools/index.js.map +1 -0
- package/dist/agent/tools/logger.d.ts +33 -0
- package/dist/agent/tools/logger.d.ts.map +1 -0
- package/dist/agent/tools/logger.js +86 -0
- package/dist/agent/tools/logger.js.map +1 -0
- package/dist/agent/tools/tool-resolver.d.ts +7 -0
- package/dist/agent/tools/tool-resolver.d.ts.map +1 -0
- package/dist/agent/tools/tool-resolver.js +122 -0
- package/dist/agent/tools/tool-resolver.js.map +1 -0
- package/dist/execution/adapters/in-memory-checkpoint.d.ts +11 -0
- package/dist/execution/adapters/in-memory-checkpoint.d.ts.map +1 -0
- package/dist/execution/adapters/in-memory-checkpoint.js +54 -0
- package/dist/execution/adapters/in-memory-checkpoint.js.map +1 -0
- package/dist/execution/compiler.d.ts +8 -0
- package/dist/execution/compiler.d.ts.map +1 -0
- package/dist/execution/compiler.js +50 -0
- package/dist/execution/compiler.js.map +1 -0
- package/dist/execution/controller.d.ts.map +1 -0
- package/dist/execution/controller.js.map +1 -0
- package/dist/execution/event-manager.d.ts +29 -0
- package/dist/execution/event-manager.d.ts.map +1 -0
- package/dist/{graph → execution}/event-manager.js +4 -114
- package/dist/execution/event-manager.js.map +1 -0
- package/dist/{graph → execution}/index.d.ts +50 -2
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +638 -0
- package/dist/execution/index.js.map +1 -0
- package/dist/execution/logger.d.ts.map +1 -0
- package/dist/execution/logger.js.map +1 -0
- package/dist/{graph → execution}/node.d.ts +6 -1
- package/dist/execution/node.d.ts.map +1 -0
- package/dist/{graph → execution}/node.js +83 -10
- package/dist/execution/node.js.map +1 -0
- package/dist/execution/observer.d.ts.map +1 -0
- package/dist/execution/observer.js.map +1 -0
- package/dist/execution/planner.d.ts +14 -0
- package/dist/execution/planner.d.ts.map +1 -0
- package/dist/execution/planner.js +43 -0
- package/dist/execution/planner.js.map +1 -0
- package/dist/execution/reducer.d.ts +19 -0
- package/dist/execution/reducer.d.ts.map +1 -0
- package/dist/execution/reducer.js +61 -0
- package/dist/execution/reducer.js.map +1 -0
- package/dist/execution/registry.d.ts +38 -0
- package/dist/execution/registry.d.ts.map +1 -0
- package/dist/execution/registry.js +63 -0
- package/dist/execution/registry.js.map +1 -0
- package/dist/execution/send-api.d.ts +24 -0
- package/dist/execution/send-api.d.ts.map +1 -0
- package/dist/execution/send-api.js +52 -0
- package/dist/execution/send-api.js.map +1 -0
- package/dist/execution/types.parallel.d.ts +61 -0
- package/dist/execution/types.parallel.d.ts.map +1 -0
- package/dist/execution/types.parallel.js +3 -0
- package/dist/execution/types.parallel.js.map +1 -0
- package/dist/execution/visualizer.d.ts.map +1 -0
- package/dist/execution/visualizer.js.map +1 -0
- package/dist/index.d.ts +27 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +42 -8
- package/dist/index.js.map +1 -1
- package/dist/interfaces/index.d.ts +32 -1
- package/dist/interfaces/index.d.ts.map +1 -1
- package/dist/interfaces/index.js.map +1 -1
- package/dist/modules/cli/index.d.ts +13 -0
- package/dist/modules/cli/index.d.ts.map +1 -0
- package/dist/modules/cli/index.js +672 -0
- package/dist/modules/cli/index.js.map +1 -0
- package/dist/modules/nlp/engine.d.ts.map +1 -1
- package/dist/modules/nlp/engine.js +0 -1
- package/dist/modules/nlp/engine.js.map +1 -1
- package/dist/persistence/index.d.ts +12 -0
- package/dist/persistence/index.d.ts.map +1 -0
- package/dist/persistence/index.js +24 -0
- package/dist/persistence/index.js.map +1 -0
- package/dist/persistence/neo4j/driver.d.ts +26 -0
- package/dist/persistence/neo4j/driver.d.ts.map +1 -0
- package/dist/persistence/neo4j/driver.js +64 -0
- package/dist/persistence/neo4j/driver.js.map +1 -0
- package/dist/persistence/neo4j/entity-store.d.ts +15 -0
- package/dist/persistence/neo4j/entity-store.d.ts.map +1 -0
- package/dist/persistence/neo4j/entity-store.js +136 -0
- package/dist/persistence/neo4j/entity-store.js.map +1 -0
- package/dist/persistence/neo4j/execution-tracer.d.ts +19 -0
- package/dist/persistence/neo4j/execution-tracer.d.ts.map +1 -0
- package/dist/persistence/neo4j/execution-tracer.js +166 -0
- package/dist/persistence/neo4j/execution-tracer.js.map +1 -0
- package/dist/persistence/neo4j/memory-adapter.d.ts +35 -0
- package/dist/persistence/neo4j/memory-adapter.d.ts.map +1 -0
- package/dist/persistence/neo4j/memory-adapter.js +252 -0
- package/dist/persistence/neo4j/memory-adapter.js.map +1 -0
- package/dist/persistence/neo4j/petri-checkpoint-adapter.d.ts +22 -0
- package/dist/persistence/neo4j/petri-checkpoint-adapter.d.ts.map +1 -0
- package/dist/persistence/neo4j/petri-checkpoint-adapter.js +141 -0
- package/dist/persistence/neo4j/petri-checkpoint-adapter.js.map +1 -0
- package/dist/pipeline/agent-pipeline.d.ts +99 -0
- package/dist/pipeline/agent-pipeline.d.ts.map +1 -0
- package/dist/pipeline/agent-pipeline.js +356 -0
- package/dist/pipeline/agent-pipeline.js.map +1 -0
- package/dist/routing/checkpoint-adapter.d.ts +30 -0
- package/dist/routing/checkpoint-adapter.d.ts.map +1 -0
- package/dist/routing/checkpoint-adapter.js +83 -0
- package/dist/routing/checkpoint-adapter.js.map +1 -0
- package/dist/routing/documentation-generator.d.ts +47 -0
- package/dist/routing/documentation-generator.d.ts.map +1 -0
- package/dist/routing/documentation-generator.js +320 -0
- package/dist/routing/documentation-generator.js.map +1 -0
- package/dist/routing/index.d.ts +38 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +375 -0
- package/dist/routing/index.js.map +1 -0
- package/dist/routing/intent-classifier.d.ts +206 -0
- package/dist/routing/intent-classifier.d.ts.map +1 -0
- package/dist/routing/intent-classifier.js +267 -0
- package/dist/routing/intent-classifier.js.map +1 -0
- package/dist/routing/matrix.d.ts +6 -0
- package/dist/routing/matrix.d.ts.map +1 -0
- package/dist/routing/matrix.js +131 -0
- package/dist/routing/matrix.js.map +1 -0
- package/dist/routing/orchestrator.d.ts +87 -0
- package/dist/routing/orchestrator.d.ts.map +1 -0
- package/dist/routing/orchestrator.js +425 -0
- package/dist/routing/orchestrator.js.map +1 -0
- package/dist/routing/postgres-checkpoint-adapter.d.ts +32 -0
- package/dist/routing/postgres-checkpoint-adapter.d.ts.map +1 -0
- package/dist/routing/postgres-checkpoint-adapter.js +167 -0
- package/dist/routing/postgres-checkpoint-adapter.js.map +1 -0
- package/dist/routing/redis-checkpoint-adapter.d.ts +34 -0
- package/dist/routing/redis-checkpoint-adapter.d.ts.map +1 -0
- package/dist/routing/redis-checkpoint-adapter.js +170 -0
- package/dist/routing/redis-checkpoint-adapter.js.map +1 -0
- package/dist/routing/types.d.ts +49 -0
- package/dist/routing/types.d.ts.map +1 -0
- package/dist/routing/types.js +3 -0
- package/dist/routing/types.js.map +1 -0
- package/dist/types/agent.d.ts +144 -88
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/agent.js +49 -0
- package/dist/types/agent.js.map +1 -1
- package/dist/types/index.d.ts +46 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/generate-action-schema.d.ts +2 -3
- package/dist/utils/generate-action-schema.d.ts.map +1 -1
- package/dist/utils/generate-action-schema.js +3 -1
- package/dist/utils/generate-action-schema.js.map +1 -1
- package/dist/utils/logger.d.ts +27 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +45 -0
- package/dist/utils/logger.js.map +1 -0
- package/docs/.gitbook/assets/image (1).png +0 -0
- package/docs/.gitbook/assets/image (2).png +0 -0
- package/docs/.gitbook/assets/image (3).png +0 -0
- package/docs/.gitbook/assets/image (4).png +0 -0
- package/docs/.gitbook/assets/image (5).png +0 -0
- package/docs/.gitbook/assets/image (6).png +0 -0
- package/docs/.gitbook/assets/image.png +0 -0
- package/docs/README.md +57 -0
- package/docs/SUMMARY.md +34 -0
- package/docs/cas-dusages.md +69 -0
- package/docs/cli/README.md +65 -0
- package/docs/concepts-cles.md +50 -0
- package/docs/core/architecture.md +87 -0
- package/docs/core/benchmark.md +59 -0
- package/docs/core/checkpoint.md +72 -0
- package/docs/core/documentation.md +55 -0
- package/docs/core/graphcontroller.md +63 -0
- package/docs/core/graphflow.md +137 -0
- package/docs/core/introduction.md +41 -0
- package/docs/core/les-evenements.md +95 -0
- package/docs/modules/agenda/README.md +63 -0
- package/docs/modules/agenda/interface-iagenda.md +170 -0
- package/docs/modules/agenda/les-adaptateurs/README.md +237 -0
- package/docs/modules/agenda/les-adaptateurs/nodecronadapter.md +91 -0
- package/docs/modules/introduction.md +55 -0
- package/docs/modules/les-adaptateurs.md +52 -0
- package/docs/modules/memoire/README.md +68 -0
- package/docs/modules/memoire/interface-imemory.md +183 -0
- package/docs/modules/memoire/les-adaptateurs/README.md +209 -0
- package/docs/modules/memoire/les-adaptateurs/inmemoryadapter.md +110 -0
- package/docs/modules/memoire/les-adaptateurs/meilisearchadapter.md +147 -0
- package/docs/modules/memoire/les-adaptateurs/redisadapter.md +212 -0
- package/docs/modules/nlp/README.md +44 -0
- package/docs/philosophie.md +51 -0
- package/docs/tutoriels/ajouter-des-conditions.md +150 -0
- package/docs/tutoriels/branching.md +194 -0
- package/docs/tutoriels/checkpoint-usage.md +99 -0
- package/docs/tutoriels/creer-agent-onchain.md +1041 -0
- package/docs/tutoriels/creer-un-agent.md +108 -0
- package/docs/tutoriels/creer-un-graphe-simple.md +92 -0
- package/docs/tutoriels/gerer-les-erreurs.md +124 -0
- package/docs/tutoriels/pour-commencer.md +73 -0
- package/docs/tutoriels/retry.md +166 -0
- package/execution/adapters/in-memory-checkpoint.ts +35 -0
- package/execution/compiler.ts +47 -0
- package/{graph → execution}/event-manager.ts +4 -117
- package/{graph → execution}/index.ts +376 -8
- package/{graph → execution}/node.ts +116 -12
- package/execution/planner.ts +40 -0
- package/execution/reducer.ts +73 -0
- package/execution/registry.ts +86 -0
- package/execution/send-api.ts +58 -0
- package/execution/types.parallel.ts +81 -0
- package/index.ts +35 -8
- package/interfaces/index.ts +37 -0
- package/modules/cli/index.ts +580 -0
- package/modules/nlp/engine.ts +0 -1
- package/package.json +50 -16
- package/persistence/index.ts +27 -0
- package/persistence/neo4j/driver.ts +34 -0
- package/persistence/neo4j/entity-store.ts +141 -0
- package/persistence/neo4j/execution-tracer.ts +194 -0
- package/persistence/neo4j/memory-adapter.ts +281 -0
- package/persistence/neo4j/petri-checkpoint-adapter.ts +153 -0
- package/pipeline/agent-pipeline.ts +426 -0
- package/routing/checkpoint-adapter.ts +79 -0
- package/routing/documentation-generator.ts +358 -0
- package/routing/index.ts +459 -0
- package/routing/intent-classifier.ts +360 -0
- package/routing/matrix.ts +138 -0
- package/routing/orchestrator.ts +498 -0
- package/routing/patterns/data-extraction.json +79 -0
- package/routing/patterns/human-approval.json +64 -0
- package/routing/patterns/rag-search.json +68 -0
- package/routing/postgres-checkpoint-adapter.ts +172 -0
- package/routing/redis-checkpoint-adapter.ts +187 -0
- package/routing/types.ts +59 -0
- package/routing/web-server.ts +260 -0
- package/scripts/generate-petri-docs.ts +70 -0
- package/scripts/get-gmail-token.js +65 -0
- package/scripts/get-gmail-token.ts +65 -0
- package/test/agent/agent.test.ts +92 -0
- package/test/agent/clone.test.ts +143 -0
- package/test/agent/cognitive-handler.test.ts +78 -0
- package/test/agent/entity-store.test.ts +80 -0
- package/test/agent/generic-executor.test.ts +230 -0
- package/test/agent/handoff.test.ts +163 -0
- package/test/agent/llm-factory.test.ts +40 -0
- package/test/agent/orchestrator.test.ts +156 -0
- package/test/agent/registry.test.ts +97 -0
- package/test/agent/tools.test.ts +267 -0
- package/test/execution/checkpoint.test.ts +811 -0
- package/test/{graph → execution}/controller.test.ts +2 -2
- package/test/{graph → execution}/event-manager.test.ts +1 -1
- package/test/{graph → execution}/index.test.ts +24 -15
- package/test/{graph → execution}/node.test.ts +3 -3
- package/test/{graph → execution}/observer.test.ts +2 -2
- package/test/execution/parallel.test.ts +135 -0
- package/test/execution/plan-llm-integration.test.ts +290 -0
- package/test/execution/plan-real-onchain.test.ts +226 -0
- package/test/execution/send-api.test.ts +121 -0
- package/test/modules/cli/index.test.ts +125 -0
- package/test/persistence/neo4j-execution-tracer.test.ts +96 -0
- package/test/persistence/neo4j-memory-adapter.test.ts +107 -0
- package/test/persistence/neo4j-petri-checkpoint.test.ts +89 -0
- package/test/pipeline/agent-pipeline.test.ts +118 -0
- package/test/routing/checkpoint-persistence.test.ts +58 -0
- package/test/routing/documentation-generator.test.ts +76 -0
- package/test/routing/integration.test.ts +261 -0
- package/test/routing/intent-classifier.test.ts +102 -0
- package/test/routing/petri.test.ts +156 -0
- package/test/routing/real-llm.test.ts +260 -0
- package/test-petri-features.ts +218 -0
- package/test-pipeline-api.ts +163 -0
- package/tsconfig.json +5 -2
- package/types/agent.ts +126 -4
- package/types/index.ts +66 -5
- package/utils/generate-action-schema.ts +5 -4
- package/utils/logger.ts +40 -0
- package/dist/graph/controller.d.ts.map +0 -1
- package/dist/graph/controller.js.map +0 -1
- package/dist/graph/event-manager.d.ts +0 -101
- package/dist/graph/event-manager.d.ts.map +0 -1
- package/dist/graph/event-manager.js.map +0 -1
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/index.js +0 -340
- package/dist/graph/index.js.map +0 -1
- package/dist/graph/logger.d.ts.map +0 -1
- package/dist/graph/logger.js.map +0 -1
- package/dist/graph/node.d.ts.map +0 -1
- package/dist/graph/node.js.map +0 -1
- package/dist/graph/observer.d.ts.map +0 -1
- package/dist/graph/observer.js.map +0 -1
- package/dist/graph/visualizer.d.ts.map +0 -1
- package/dist/graph/visualizer.js.map +0 -1
- package/dist/modules/agent/agent.d.ts +0 -35
- package/dist/modules/agent/agent.d.ts.map +0 -1
- package/dist/modules/agent/agent.js +0 -103
- package/dist/modules/agent/agent.js.map +0 -1
- package/dist/modules/agent/base/executor.d.ts.map +0 -1
- package/dist/modules/agent/base/executor.js.map +0 -1
- package/dist/modules/agent/base/index.d.ts.map +0 -1
- package/dist/modules/agent/base/index.js.map +0 -1
- package/dist/modules/agent/generic-assistant.d.ts +0 -20
- package/dist/modules/agent/generic-assistant.d.ts.map +0 -1
- package/dist/modules/agent/generic-assistant.js +0 -89
- package/dist/modules/agent/generic-assistant.js.map +0 -1
- package/dist/modules/agent/generic-executor.d.ts.map +0 -1
- package/dist/modules/agent/generic-executor.js +0 -189
- package/dist/modules/agent/generic-executor.js.map +0 -1
- package/dist/modules/agent/llm-factory.d.ts.map +0 -1
- package/dist/modules/agent/llm-factory.js +0 -56
- package/dist/modules/agent/llm-factory.js.map +0 -1
- package/dist/modules/agent/prompt-builder.d.ts.map +0 -1
- package/dist/modules/agent/prompt-builder.js.map +0 -1
- package/dist/modules/memory/adapters/in-memory/index.d.ts +0 -120
- package/dist/modules/memory/adapters/in-memory/index.d.ts.map +0 -1
- package/dist/modules/memory/adapters/in-memory/index.js +0 -212
- package/dist/modules/memory/adapters/in-memory/index.js.map +0 -1
- package/dist/modules/memory/adapters/meilisearch/index.d.ts +0 -110
- package/dist/modules/memory/adapters/meilisearch/index.d.ts.map +0 -1
- package/dist/modules/memory/adapters/meilisearch/index.js +0 -324
- package/dist/modules/memory/adapters/meilisearch/index.js.map +0 -1
- package/dist/modules/memory/adapters/redis/index.d.ts +0 -82
- package/dist/modules/memory/adapters/redis/index.d.ts.map +0 -1
- package/dist/modules/memory/adapters/redis/index.js +0 -160
- package/dist/modules/memory/adapters/redis/index.js.map +0 -1
- package/dist/modules/memory/index.d.ts +0 -67
- package/dist/modules/memory/index.d.ts.map +0 -1
- package/dist/modules/memory/index.js +0 -104
- package/dist/modules/memory/index.js.map +0 -1
- package/modules/agent/agent.ts +0 -107
- package/modules/agent/generic-assistant.ts +0 -92
- package/modules/agent/generic-executor.ts +0 -252
- package/modules/agent/llm-factory.ts +0 -47
- package/modules/memory/adapters/in-memory/index.ts +0 -208
- package/modules/memory/adapters/meilisearch/index.ts +0 -364
- package/modules/memory/adapters/redis/index.ts +0 -165
- package/modules/memory/index.ts +0 -93
- package/test/modules/memory/adapters/in-memory.test.ts +0 -153
- package/test/modules/memory/adapters/meilisearch.test.ts +0 -287
- package/test/modules/memory/base.test.ts +0 -230
- /package/dist/{modules/agent → agent}/llm-factory.d.ts +0 -0
- /package/dist/{modules/agent → agent}/prompt-builder.js +0 -0
- /package/dist/{graph → execution}/controller.d.ts +0 -0
- /package/dist/{graph → execution}/controller.js +0 -0
- /package/dist/{graph → execution}/logger.d.ts +0 -0
- /package/dist/{graph → execution}/logger.js +0 -0
- /package/dist/{graph → execution}/observer.d.ts +0 -0
- /package/dist/{graph → execution}/observer.js +0 -0
- /package/dist/{graph → execution}/visualizer.d.ts +0 -0
- /package/dist/{graph → execution}/visualizer.js +0 -0
- /package/{graph → execution}/controller.ts +0 -0
- /package/{graph → execution}/logger.ts +0 -0
- /package/{graph → execution}/observer.ts +0 -0
- /package/{graph → execution}/visualizer.ts +0 -0
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Observable, Subject, filter } from "rxjs";
|
|
2
1
|
import { ZodSchema } from "zod";
|
|
3
2
|
import { IEventEmitter } from "../interfaces";
|
|
4
3
|
import {
|
|
@@ -9,14 +8,7 @@ import {
|
|
|
9
8
|
} from "../types";
|
|
10
9
|
import { GraphNode } from "./node";
|
|
11
10
|
|
|
12
|
-
/**
|
|
13
|
-
* Manages event handling and routing for a graph
|
|
14
|
-
* Coordinates event emission, listening, and execution of event-driven nodes
|
|
15
|
-
* @template T - The Zod schema type for validation
|
|
16
|
-
*/
|
|
17
11
|
export class GraphEventManager<T extends ZodSchema> {
|
|
18
|
-
private eventSubject: Subject<GraphEvent<T>> = new Subject();
|
|
19
|
-
private nodeStreams: Map<string, Observable<GraphEvent<T>>> = new Map();
|
|
20
12
|
private context: GraphContext<T>;
|
|
21
13
|
private name: string;
|
|
22
14
|
private graphEvents?: string[];
|
|
@@ -24,17 +16,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
24
16
|
private globalErrorHandler?: (error: Error, context: GraphContext<T>) => void;
|
|
25
17
|
private lastEvents = new Map<string, any>();
|
|
26
18
|
|
|
27
|
-
/**
|
|
28
|
-
* Creates a new GraphEventManager instance
|
|
29
|
-
* @param eventEmitter - The event emitter implementation to use
|
|
30
|
-
* @param nodes - Map of all nodes in the graph
|
|
31
|
-
* @param name - Name of the graph
|
|
32
|
-
* @param context - Initial graph context
|
|
33
|
-
* @param graphEvents - List of events the graph should listen to
|
|
34
|
-
* @param entryNode - Name of the entry node for graph events
|
|
35
|
-
* @param globalErrorHandler - Global error handling function
|
|
36
|
-
* @param nodeExecutor - GraphNode instance for executing nodes
|
|
37
|
-
*/
|
|
38
19
|
constructor(
|
|
39
20
|
private eventEmitter: IEventEmitter,
|
|
40
21
|
private nodes: Map<string, GraphNodeConfig<T, any>>,
|
|
@@ -50,62 +31,20 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
50
31
|
this.graphEvents = graphEvents;
|
|
51
32
|
this.entryNode = entryNode;
|
|
52
33
|
this.globalErrorHandler = globalErrorHandler;
|
|
53
|
-
this.setupEventStreams();
|
|
54
34
|
}
|
|
55
35
|
|
|
56
|
-
/**
|
|
57
|
-
|
|
58
|
-
*/
|
|
59
|
-
public setupEventStreams(): void {
|
|
60
|
-
for (const [nodeName, node] of this.nodes.entries()) {
|
|
61
|
-
if (node.events && node.events.length > 0) {
|
|
62
|
-
const nodeStream = this.eventSubject.pipe(
|
|
63
|
-
filter((event) => node.events!.includes(event.type))
|
|
64
|
-
);
|
|
65
|
-
this.nodeStreams.set(nodeName, nodeStream);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
36
|
+
/** @deprecated No-op — event streams are no longer managed here */
|
|
37
|
+
public setupEventStreams(): void {}
|
|
69
38
|
|
|
70
|
-
/**
|
|
71
|
-
* Emits an event with optional payload and context
|
|
72
|
-
* @param type - The type of event to emit
|
|
73
|
-
* @param payload - Optional payload data
|
|
74
|
-
* @param context - Optional graph context
|
|
75
|
-
*/
|
|
76
39
|
public emitEvent<P = any>(
|
|
77
40
|
type: string,
|
|
78
41
|
payload?: P,
|
|
79
|
-
|
|
42
|
+
_context?: GraphContext<T>
|
|
80
43
|
): void {
|
|
81
|
-
const event = {
|
|
82
|
-
type,
|
|
83
|
-
payload,
|
|
84
|
-
timestamp: Date.now(),
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
this.eventSubject.next(event);
|
|
88
44
|
this.eventEmitter.emit(type, payload);
|
|
89
45
|
}
|
|
90
46
|
|
|
91
|
-
/**
|
|
92
|
-
* Sets up event listeners for all nodes in the graph
|
|
93
|
-
* Handles cleanup and re-registration of event listeners
|
|
94
|
-
*/
|
|
95
47
|
setupEventListeners(): void {
|
|
96
|
-
// First remove only the existing node-based listeners that we might have created previously
|
|
97
|
-
// We do NOT remove, for example, "nodeStarted" or "nodeCompleted" listeners that test code added.
|
|
98
|
-
for (const [eventName, listener] of this.eventEmitter
|
|
99
|
-
.rawListeners("*")
|
|
100
|
-
.entries()) {
|
|
101
|
-
// This can be tricky—EventEmitter doesn't directly let you remove by "type" of listener.
|
|
102
|
-
// Alternatively, we can store references in a separate structure.
|
|
103
|
-
// For simplicity, let's do a full removeAllListeners() on node-specified events (only),
|
|
104
|
-
// then re-add them below, but keep the test-based events like "nodeStarted" or "nodeCompleted".
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
// The simplest approach: removeAllListeners for each event that is declared as a node event
|
|
108
|
-
// so we don't stack up duplicates:
|
|
109
48
|
const allEvents = new Set<string>();
|
|
110
49
|
for (const node of this.nodes.values()) {
|
|
111
50
|
if (node.events) {
|
|
@@ -113,11 +52,9 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
113
52
|
}
|
|
114
53
|
}
|
|
115
54
|
for (const evt of allEvents) {
|
|
116
|
-
// remove only those events that are used by nodes
|
|
117
55
|
this.eventEmitter.removeAllListeners(evt);
|
|
118
56
|
}
|
|
119
57
|
|
|
120
|
-
// Now re-add the node-based event triggers
|
|
121
58
|
for (const node of this.nodes.values()) {
|
|
122
59
|
if (node.events && node.events.length > 0) {
|
|
123
60
|
node.events.forEach((event) => {
|
|
@@ -127,11 +64,10 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
127
64
|
const freshContext = structuredClone(this.context);
|
|
128
65
|
if (data) Object.assign(freshContext, data);
|
|
129
66
|
|
|
130
|
-
// If triggered by an event, we pass "true" so event-driven node will skip `next`.
|
|
131
67
|
await this.executeNode(
|
|
132
68
|
node.name,
|
|
133
69
|
freshContext,
|
|
134
|
-
|
|
70
|
+
true
|
|
135
71
|
);
|
|
136
72
|
}
|
|
137
73
|
);
|
|
@@ -140,10 +76,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
140
76
|
}
|
|
141
77
|
}
|
|
142
78
|
|
|
143
|
-
/**
|
|
144
|
-
* Sets up listeners for graph-level events
|
|
145
|
-
* Handles graph start, completion, and error events
|
|
146
|
-
*/
|
|
147
79
|
setupGraphEventListeners(): void {
|
|
148
80
|
if (this.graphEvents && this.graphEvents.length > 0) {
|
|
149
81
|
this.graphEvents.forEach((event) => {
|
|
@@ -151,24 +83,20 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
151
83
|
const freshContext = this.createNewContext();
|
|
152
84
|
if (data) Object.assign(freshContext, data);
|
|
153
85
|
|
|
154
|
-
// Emit "graphStarted"
|
|
155
86
|
this.eventEmitter.emit("graphStarted", { name: this.name });
|
|
156
87
|
|
|
157
88
|
try {
|
|
158
|
-
// Execute the graph starting from the entry node
|
|
159
89
|
if (!this.entryNode) {
|
|
160
90
|
throw new Error("No entry node defined for graph event handling");
|
|
161
91
|
}
|
|
162
92
|
|
|
163
93
|
await this.executeNode(this.entryNode, freshContext, false);
|
|
164
94
|
|
|
165
|
-
// Emit "graphCompleted"
|
|
166
95
|
this.eventEmitter.emit("graphCompleted", {
|
|
167
96
|
name: this.name,
|
|
168
97
|
context: this.context,
|
|
169
98
|
});
|
|
170
99
|
} catch (error) {
|
|
171
|
-
// Emit "graphError"
|
|
172
100
|
this.eventEmitter.emit("graphError", { name: this.name, error });
|
|
173
101
|
this.globalErrorHandler?.(error as Error, freshContext);
|
|
174
102
|
throw error;
|
|
@@ -178,13 +106,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
178
106
|
}
|
|
179
107
|
}
|
|
180
108
|
|
|
181
|
-
/**
|
|
182
|
-
* Waits for a set of events to occur within a timeout period
|
|
183
|
-
* @param events - Array of event names to wait for
|
|
184
|
-
* @param timeout - Maximum time to wait in milliseconds
|
|
185
|
-
* @returns Promise that resolves with array of received events
|
|
186
|
-
* @throws Error if timeout occurs before all events are received
|
|
187
|
-
*/
|
|
188
109
|
async waitForEvents(
|
|
189
110
|
events: string[],
|
|
190
111
|
timeout: number = 30000
|
|
@@ -231,44 +152,19 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
231
152
|
});
|
|
232
153
|
}
|
|
233
154
|
|
|
234
|
-
/**
|
|
235
|
-
* Registers an event handler
|
|
236
|
-
* @param eventName - Name of the event to listen for
|
|
237
|
-
* @param handler - Function to handle the event
|
|
238
|
-
*/
|
|
239
155
|
on(eventName: string, handler: (...args: any[]) => void): void {
|
|
240
156
|
this.eventEmitter.on(eventName, handler);
|
|
241
157
|
}
|
|
242
158
|
|
|
243
|
-
/**
|
|
244
|
-
* Emits an event through the event emitter
|
|
245
|
-
* @param eventName - Name of the event to emit
|
|
246
|
-
* @param data - Optional data to include with the event
|
|
247
|
-
*/
|
|
248
159
|
emit(eventName: string, data?: any): void {
|
|
249
160
|
this.lastEvents.set(eventName, data);
|
|
250
161
|
this.eventEmitter.emit(eventName, data);
|
|
251
162
|
}
|
|
252
163
|
|
|
253
|
-
/**
|
|
254
|
-
* Creates a new context object by cloning the current context
|
|
255
|
-
* @returns A new graph context instance
|
|
256
|
-
* @private
|
|
257
|
-
*/
|
|
258
164
|
private createNewContext(): GraphContext<T> {
|
|
259
165
|
return structuredClone(this.context);
|
|
260
166
|
}
|
|
261
167
|
|
|
262
|
-
/**
|
|
263
|
-
* Executes a node with the given parameters
|
|
264
|
-
* @param nodeName - Name of the node to execute
|
|
265
|
-
* @param context - Graph context for execution
|
|
266
|
-
* @param inputs - Input data for the node
|
|
267
|
-
* @param triggeredByEvent - Whether execution was triggered by an event
|
|
268
|
-
* @returns Promise that resolves when execution is complete
|
|
269
|
-
* @throws Error if nodeExecutor is not initialized
|
|
270
|
-
* @private
|
|
271
|
-
*/
|
|
272
168
|
private async executeNode(
|
|
273
169
|
nodeName: string,
|
|
274
170
|
context: GraphContext<T>,
|
|
@@ -283,7 +179,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
283
179
|
throw new Error(`Node "${nodeName}" not found`);
|
|
284
180
|
}
|
|
285
181
|
|
|
286
|
-
// Remplacer le code existant de gestion d'événements
|
|
287
182
|
if (node.when) {
|
|
288
183
|
await this.handleNodeEvents(nodeName, node.when);
|
|
289
184
|
}
|
|
@@ -291,9 +186,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
291
186
|
return this.nodeExecutor.executeNode(nodeName, context, triggeredByEvent);
|
|
292
187
|
}
|
|
293
188
|
|
|
294
|
-
/**
|
|
295
|
-
* Waits for correlated events to occur and validates them using a correlation function
|
|
296
|
-
*/
|
|
297
189
|
waitForCorrelatedEvents(
|
|
298
190
|
eventTypes: string[],
|
|
299
191
|
timeoutMs: number,
|
|
@@ -349,9 +241,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
349
241
|
});
|
|
350
242
|
}
|
|
351
243
|
|
|
352
|
-
/**
|
|
353
|
-
* Handles events based on the node's event handler configuration
|
|
354
|
-
*/
|
|
355
244
|
async handleNodeEvents(
|
|
356
245
|
nodeName: string,
|
|
357
246
|
config: EventConfig
|
|
@@ -363,7 +252,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
363
252
|
const eventHandlers = new Map();
|
|
364
253
|
let isResolved = false;
|
|
365
254
|
|
|
366
|
-
// Ajouter les événements déjà reçus
|
|
367
255
|
events.forEach((event: string) => {
|
|
368
256
|
const existingEvent = this.lastEvents.get(event);
|
|
369
257
|
if (existingEvent) {
|
|
@@ -375,7 +263,6 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
|
375
263
|
}
|
|
376
264
|
});
|
|
377
265
|
|
|
378
|
-
// Vérifier si on a déjà tous les événements nécessaires
|
|
379
266
|
const checkEvents = () => {
|
|
380
267
|
if (isResolved) return;
|
|
381
268
|
|