@revealui/ai 0.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/LICENSE +22 -0
- package/LICENSE.commercial +112 -0
- package/README.md +314 -0
- package/dist/a2a/card.d.ts +26 -0
- package/dist/a2a/card.d.ts.map +1 -0
- package/dist/a2a/card.js +173 -0
- package/dist/a2a/handler.d.ts +26 -0
- package/dist/a2a/handler.d.ts.map +1 -0
- package/dist/a2a/handler.js +170 -0
- package/dist/a2a/index.d.ts +10 -0
- package/dist/a2a/index.d.ts.map +1 -0
- package/dist/a2a/index.js +9 -0
- package/dist/a2a/task-store.d.ts +42 -0
- package/dist/a2a/task-store.d.ts.map +1 -0
- package/dist/a2a/task-store.js +99 -0
- package/dist/audit/emitter.d.ts +34 -0
- package/dist/audit/emitter.d.ts.map +1 -0
- package/dist/audit/emitter.js +34 -0
- package/dist/audit/index.d.ts +44 -0
- package/dist/audit/index.d.ts.map +1 -0
- package/dist/audit/index.js +48 -0
- package/dist/audit/observer.d.ts +108 -0
- package/dist/audit/observer.d.ts.map +1 -0
- package/dist/audit/observer.js +271 -0
- package/dist/audit/policy.d.ts +70 -0
- package/dist/audit/policy.d.ts.map +1 -0
- package/dist/audit/policy.js +209 -0
- package/dist/audit/store.d.ts +42 -0
- package/dist/audit/store.d.ts.map +1 -0
- package/dist/audit/store.js +80 -0
- package/dist/audit/types.d.ts +169 -0
- package/dist/audit/types.d.ts.map +1 -0
- package/dist/audit/types.js +80 -0
- package/dist/client/hooks/index.d.ts +22 -0
- package/dist/client/hooks/index.d.ts.map +1 -0
- package/dist/client/hooks/index.js +21 -0
- package/dist/client/hooks/useAgentContext.d.ts +30 -0
- package/dist/client/hooks/useAgentContext.d.ts.map +1 -0
- package/dist/client/hooks/useAgentContext.js +161 -0
- package/dist/client/hooks/useAgentEvents.d.ts +126 -0
- package/dist/client/hooks/useAgentEvents.d.ts.map +1 -0
- package/dist/client/hooks/useAgentEvents.js +232 -0
- package/dist/client/hooks/useAgentStream.d.ts +44 -0
- package/dist/client/hooks/useAgentStream.d.ts.map +1 -0
- package/dist/client/hooks/useAgentStream.js +101 -0
- package/dist/client/hooks/useEpisodicMemory.d.ts +25 -0
- package/dist/client/hooks/useEpisodicMemory.d.ts.map +1 -0
- package/dist/client/hooks/useEpisodicMemory.js +174 -0
- package/dist/client/hooks/useWorkingMemory.d.ts +57 -0
- package/dist/client/hooks/useWorkingMemory.d.ts.map +1 -0
- package/dist/client/hooks/useWorkingMemory.js +276 -0
- package/dist/client/index.d.ts +14 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +13 -0
- package/dist/embeddings/index.d.ts +51 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +73 -0
- package/dist/index.d.ts +83 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +103 -0
- package/dist/inference/context-assembly.d.ts +27 -0
- package/dist/inference/context-assembly.d.ts.map +1 -0
- package/dist/inference/context-assembly.js +81 -0
- package/dist/inference/overflow-compressor.d.ts +17 -0
- package/dist/inference/overflow-compressor.d.ts.map +1 -0
- package/dist/inference/overflow-compressor.js +40 -0
- package/dist/inference/runRag.d.ts +35 -0
- package/dist/inference/runRag.d.ts.map +1 -0
- package/dist/inference/runRag.js +53 -0
- package/dist/ingestion/bm25.d.ts +29 -0
- package/dist/ingestion/bm25.d.ts.map +1 -0
- package/dist/ingestion/bm25.js +161 -0
- package/dist/ingestion/cms-indexer.d.ts +39 -0
- package/dist/ingestion/cms-indexer.d.ts.map +1 -0
- package/dist/ingestion/cms-indexer.js +74 -0
- package/dist/ingestion/file-parsers.d.ts +51 -0
- package/dist/ingestion/file-parsers.d.ts.map +1 -0
- package/dist/ingestion/file-parsers.js +247 -0
- package/dist/ingestion/hybrid-search.d.ts +22 -0
- package/dist/ingestion/hybrid-search.d.ts.map +1 -0
- package/dist/ingestion/hybrid-search.js +63 -0
- package/dist/ingestion/index.d.ts +9 -0
- package/dist/ingestion/index.d.ts.map +1 -0
- package/dist/ingestion/index.js +8 -0
- package/dist/ingestion/pipeline.d.ts +35 -0
- package/dist/ingestion/pipeline.d.ts.map +1 -0
- package/dist/ingestion/pipeline.js +114 -0
- package/dist/ingestion/rag-vector-service.d.ts +34 -0
- package/dist/ingestion/rag-vector-service.d.ts.map +1 -0
- package/dist/ingestion/rag-vector-service.js +98 -0
- package/dist/ingestion/reranker.d.ts +10 -0
- package/dist/ingestion/reranker.d.ts.map +1 -0
- package/dist/ingestion/reranker.js +41 -0
- package/dist/ingestion/text-splitter.d.ts +25 -0
- package/dist/ingestion/text-splitter.d.ts.map +1 -0
- package/dist/ingestion/text-splitter.js +119 -0
- package/dist/llm/cache-utils.d.ts +146 -0
- package/dist/llm/cache-utils.d.ts.map +1 -0
- package/dist/llm/cache-utils.js +204 -0
- package/dist/llm/client.d.ts +134 -0
- package/dist/llm/client.d.ts.map +1 -0
- package/dist/llm/client.js +497 -0
- package/dist/llm/key-validator.d.ts +25 -0
- package/dist/llm/key-validator.d.ts.map +1 -0
- package/dist/llm/key-validator.js +101 -0
- package/dist/llm/provider-health.d.ts +40 -0
- package/dist/llm/provider-health.d.ts.map +1 -0
- package/dist/llm/provider-health.js +97 -0
- package/dist/llm/providers/anthropic.d.ts +31 -0
- package/dist/llm/providers/anthropic.d.ts.map +1 -0
- package/dist/llm/providers/anthropic.js +248 -0
- package/dist/llm/providers/base.d.ts +111 -0
- package/dist/llm/providers/base.d.ts.map +1 -0
- package/dist/llm/providers/base.js +6 -0
- package/dist/llm/providers/groq.d.ts +23 -0
- package/dist/llm/providers/groq.d.ts.map +1 -0
- package/dist/llm/providers/groq.js +27 -0
- package/dist/llm/providers/ollama.d.ts +27 -0
- package/dist/llm/providers/ollama.d.ts.map +1 -0
- package/dist/llm/providers/ollama.js +48 -0
- package/dist/llm/providers/openai.d.ts +19 -0
- package/dist/llm/providers/openai.d.ts.map +1 -0
- package/dist/llm/providers/openai.js +245 -0
- package/dist/llm/providers/vultr.d.ts +18 -0
- package/dist/llm/providers/vultr.d.ts.map +1 -0
- package/dist/llm/providers/vultr.js +168 -0
- package/dist/llm/response-cache.d.ts +166 -0
- package/dist/llm/response-cache.d.ts.map +1 -0
- package/dist/llm/response-cache.js +233 -0
- package/dist/llm/semantic-cache.d.ts +179 -0
- package/dist/llm/semantic-cache.d.ts.map +1 -0
- package/dist/llm/semantic-cache.js +306 -0
- package/dist/llm/server.d.ts +14 -0
- package/dist/llm/server.d.ts.map +1 -0
- package/dist/llm/server.js +15 -0
- package/dist/llm/token-counter.d.ts +48 -0
- package/dist/llm/token-counter.d.ts.map +1 -0
- package/dist/llm/token-counter.js +77 -0
- package/dist/llm/workspace-provider-config.d.ts +38 -0
- package/dist/llm/workspace-provider-config.d.ts.map +1 -0
- package/dist/llm/workspace-provider-config.js +47 -0
- package/dist/memory/agent/context-manager.d.ts +148 -0
- package/dist/memory/agent/context-manager.d.ts.map +1 -0
- package/dist/memory/agent/context-manager.js +284 -0
- package/dist/memory/agent/index.d.ts +7 -0
- package/dist/memory/agent/index.d.ts.map +1 -0
- package/dist/memory/agent/index.js +6 -0
- package/dist/memory/crdt/index.d.ts +13 -0
- package/dist/memory/crdt/index.d.ts.map +1 -0
- package/dist/memory/crdt/index.js +12 -0
- package/dist/memory/crdt/lww-register.d.ts +108 -0
- package/dist/memory/crdt/lww-register.d.ts.map +1 -0
- package/dist/memory/crdt/lww-register.js +169 -0
- package/dist/memory/crdt/or-set.d.ts +141 -0
- package/dist/memory/crdt/or-set.d.ts.map +1 -0
- package/dist/memory/crdt/or-set.js +291 -0
- package/dist/memory/crdt/pn-counter.d.ts +116 -0
- package/dist/memory/crdt/pn-counter.d.ts.map +1 -0
- package/dist/memory/crdt/pn-counter.js +174 -0
- package/dist/memory/crdt/vector-clock.d.ts +115 -0
- package/dist/memory/crdt/vector-clock.d.ts.map +1 -0
- package/dist/memory/crdt/vector-clock.js +179 -0
- package/dist/memory/errors/index.d.ts +56 -0
- package/dist/memory/errors/index.d.ts.map +1 -0
- package/dist/memory/errors/index.js +85 -0
- package/dist/memory/index.d.ts +21 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +20 -0
- package/dist/memory/persistence/crdt-persistence.d.ts +85 -0
- package/dist/memory/persistence/crdt-persistence.d.ts.map +1 -0
- package/dist/memory/persistence/crdt-persistence.js +204 -0
- package/dist/memory/persistence/index.d.ts +7 -0
- package/dist/memory/persistence/index.d.ts.map +1 -0
- package/dist/memory/persistence/index.js +6 -0
- package/dist/memory/preferences/index.d.ts +7 -0
- package/dist/memory/preferences/index.d.ts.map +1 -0
- package/dist/memory/preferences/index.js +6 -0
- package/dist/memory/preferences/user-preferences-manager.d.ts +133 -0
- package/dist/memory/preferences/user-preferences-manager.d.ts.map +1 -0
- package/dist/memory/preferences/user-preferences-manager.js +342 -0
- package/dist/memory/services/index.d.ts +8 -0
- package/dist/memory/services/index.d.ts.map +1 -0
- package/dist/memory/services/index.js +6 -0
- package/dist/memory/services/node-id-service.d.ts +75 -0
- package/dist/memory/services/node-id-service.d.ts.map +1 -0
- package/dist/memory/services/node-id-service.js +190 -0
- package/dist/memory/stores/episodic-memory.d.ts +182 -0
- package/dist/memory/stores/episodic-memory.d.ts.map +1 -0
- package/dist/memory/stores/episodic-memory.js +378 -0
- package/dist/memory/stores/index.d.ts +16 -0
- package/dist/memory/stores/index.d.ts.map +1 -0
- package/dist/memory/stores/index.js +15 -0
- package/dist/memory/stores/procedural-memory.d.ts +89 -0
- package/dist/memory/stores/procedural-memory.d.ts.map +1 -0
- package/dist/memory/stores/procedural-memory.js +152 -0
- package/dist/memory/stores/semantic-memory.d.ts +92 -0
- package/dist/memory/stores/semantic-memory.d.ts.map +1 -0
- package/dist/memory/stores/semantic-memory.js +155 -0
- package/dist/memory/stores/working-memory.d.ts +225 -0
- package/dist/memory/stores/working-memory.d.ts.map +1 -0
- package/dist/memory/stores/working-memory.js +336 -0
- package/dist/memory/utils/deep-clone.d.ts +10 -0
- package/dist/memory/utils/deep-clone.d.ts.map +1 -0
- package/dist/memory/utils/deep-clone.js +9 -0
- package/dist/memory/utils/index.d.ts +8 -0
- package/dist/memory/utils/index.d.ts.map +1 -0
- package/dist/memory/utils/index.js +7 -0
- package/dist/memory/utils/logger.d.ts +21 -0
- package/dist/memory/utils/logger.d.ts.map +1 -0
- package/dist/memory/utils/logger.js +62 -0
- package/dist/memory/utils/sql-helpers.d.ts +97 -0
- package/dist/memory/utils/sql-helpers.d.ts.map +1 -0
- package/dist/memory/utils/sql-helpers.js +214 -0
- package/dist/memory/utils/validation.d.ts +62 -0
- package/dist/memory/utils/validation.d.ts.map +1 -0
- package/dist/memory/utils/validation.js +244 -0
- package/dist/memory/vector/index.d.ts +12 -0
- package/dist/memory/vector/index.d.ts.map +1 -0
- package/dist/memory/vector/index.js +14 -0
- package/dist/memory/vector/vector-memory-service.d.ts +88 -0
- package/dist/memory/vector/vector-memory-service.d.ts.map +1 -0
- package/dist/memory/vector/vector-memory-service.js +335 -0
- package/dist/observability/logger.d.ts +79 -0
- package/dist/observability/logger.d.ts.map +1 -0
- package/dist/observability/logger.js +165 -0
- package/dist/observability/metrics.d.ts +43 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/metrics.js +197 -0
- package/dist/observability/query.d.ts +150 -0
- package/dist/observability/query.d.ts.map +1 -0
- package/dist/observability/query.js +339 -0
- package/dist/observability/types.d.ts +140 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +6 -0
- package/dist/orchestration/agent.d.ts +98 -0
- package/dist/orchestration/agent.d.ts.map +1 -0
- package/dist/orchestration/agent.js +6 -0
- package/dist/orchestration/defaults.d.ts +21 -0
- package/dist/orchestration/defaults.d.ts.map +1 -0
- package/dist/orchestration/defaults.js +22 -0
- package/dist/orchestration/memory-integration.d.ts +58 -0
- package/dist/orchestration/memory-integration.d.ts.map +1 -0
- package/dist/orchestration/memory-integration.js +130 -0
- package/dist/orchestration/orchestrator.d.ts +67 -0
- package/dist/orchestration/orchestrator.d.ts.map +1 -0
- package/dist/orchestration/orchestrator.js +174 -0
- package/dist/orchestration/runtime.d.ts +82 -0
- package/dist/orchestration/runtime.d.ts.map +1 -0
- package/dist/orchestration/runtime.js +251 -0
- package/dist/orchestration/streaming-runtime.d.ts +36 -0
- package/dist/orchestration/streaming-runtime.d.ts.map +1 -0
- package/dist/orchestration/streaming-runtime.js +175 -0
- package/dist/orchestration/ticket-agent.d.ts +70 -0
- package/dist/orchestration/ticket-agent.d.ts.map +1 -0
- package/dist/orchestration/ticket-agent.js +146 -0
- package/dist/skills/activation/index.d.ts +7 -0
- package/dist/skills/activation/index.d.ts.map +1 -0
- package/dist/skills/activation/index.js +6 -0
- package/dist/skills/activation/skill-activator.d.ts +68 -0
- package/dist/skills/activation/skill-activator.d.ts.map +1 -0
- package/dist/skills/activation/skill-activator.js +224 -0
- package/dist/skills/catalog/catalog-search.d.ts +55 -0
- package/dist/skills/catalog/catalog-search.d.ts.map +1 -0
- package/dist/skills/catalog/catalog-search.js +111 -0
- package/dist/skills/catalog/catalog-types.d.ts +81 -0
- package/dist/skills/catalog/catalog-types.d.ts.map +1 -0
- package/dist/skills/catalog/catalog-types.js +66 -0
- package/dist/skills/catalog/index.d.ts +9 -0
- package/dist/skills/catalog/index.d.ts.map +1 -0
- package/dist/skills/catalog/index.js +7 -0
- package/dist/skills/catalog/vercel-catalog.d.ts +42 -0
- package/dist/skills/catalog/vercel-catalog.d.ts.map +1 -0
- package/dist/skills/catalog/vercel-catalog.js +189 -0
- package/dist/skills/compat/index.d.ts +9 -0
- package/dist/skills/compat/index.d.ts.map +1 -0
- package/dist/skills/compat/index.js +8 -0
- package/dist/skills/compat/skill-enhancer.d.ts +37 -0
- package/dist/skills/compat/skill-enhancer.d.ts.map +1 -0
- package/dist/skills/compat/skill-enhancer.js +76 -0
- package/dist/skills/compat/tool-mapper.d.ts +61 -0
- package/dist/skills/compat/tool-mapper.d.ts.map +1 -0
- package/dist/skills/compat/tool-mapper.js +168 -0
- package/dist/skills/compat/vercel-compat.d.ts +33 -0
- package/dist/skills/compat/vercel-compat.d.ts.map +1 -0
- package/dist/skills/compat/vercel-compat.js +132 -0
- package/dist/skills/index.d.ts +40 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +47 -0
- package/dist/skills/integration/agent-skill-provider.d.ts +94 -0
- package/dist/skills/integration/agent-skill-provider.d.ts.map +1 -0
- package/dist/skills/integration/agent-skill-provider.js +161 -0
- package/dist/skills/integration/index.d.ts +7 -0
- package/dist/skills/integration/index.d.ts.map +1 -0
- package/dist/skills/integration/index.js +6 -0
- package/dist/skills/loader/github-loader.d.ts +61 -0
- package/dist/skills/loader/github-loader.d.ts.map +1 -0
- package/dist/skills/loader/github-loader.js +176 -0
- package/dist/skills/loader/index.d.ts +10 -0
- package/dist/skills/loader/index.d.ts.map +1 -0
- package/dist/skills/loader/index.js +9 -0
- package/dist/skills/loader/local-loader.d.ts +56 -0
- package/dist/skills/loader/local-loader.d.ts.map +1 -0
- package/dist/skills/loader/local-loader.js +186 -0
- package/dist/skills/loader/vercel-loader.d.ts +64 -0
- package/dist/skills/loader/vercel-loader.d.ts.map +1 -0
- package/dist/skills/loader/vercel-loader.js +313 -0
- package/dist/skills/loader/vercel-types.d.ts +64 -0
- package/dist/skills/loader/vercel-types.d.ts.map +1 -0
- package/dist/skills/loader/vercel-types.js +55 -0
- package/dist/skills/parser/index.d.ts +7 -0
- package/dist/skills/parser/index.d.ts.map +1 -0
- package/dist/skills/parser/index.js +6 -0
- package/dist/skills/parser/skill-md-parser.d.ts +64 -0
- package/dist/skills/parser/skill-md-parser.d.ts.map +1 -0
- package/dist/skills/parser/skill-md-parser.js +242 -0
- package/dist/skills/registry/index.d.ts +7 -0
- package/dist/skills/registry/index.d.ts.map +1 -0
- package/dist/skills/registry/index.js +6 -0
- package/dist/skills/registry/skill-registry.d.ts +133 -0
- package/dist/skills/registry/skill-registry.d.ts.map +1 -0
- package/dist/skills/registry/skill-registry.js +373 -0
- package/dist/skills/types.d.ts +216 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +176 -0
- package/dist/templates/agent-spec.d.ts +138 -0
- package/dist/templates/agent-spec.d.ts.map +1 -0
- package/dist/templates/agent-spec.js +138 -0
- package/dist/templates/index.d.ts +56 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +58 -0
- package/dist/templates/prompt-spec.d.ts +140 -0
- package/dist/templates/prompt-spec.d.ts.map +1 -0
- package/dist/templates/prompt-spec.js +210 -0
- package/dist/templates/skill-spec.d.ts +106 -0
- package/dist/templates/skill-spec.d.ts.map +1 -0
- package/dist/templates/skill-spec.js +119 -0
- package/dist/tools/base.d.ts +74 -0
- package/dist/tools/base.d.ts.map +1 -0
- package/dist/tools/base.js +6 -0
- package/dist/tools/cms/collection-tools.d.ts +36 -0
- package/dist/tools/cms/collection-tools.d.ts.map +1 -0
- package/dist/tools/cms/collection-tools.js +178 -0
- package/dist/tools/cms/factory.d.ts +89 -0
- package/dist/tools/cms/factory.d.ts.map +1 -0
- package/dist/tools/cms/factory.js +462 -0
- package/dist/tools/cms/global-tools.d.ts +21 -0
- package/dist/tools/cms/global-tools.d.ts.map +1 -0
- package/dist/tools/cms/global-tools.js +92 -0
- package/dist/tools/cms/index.d.ts +11 -0
- package/dist/tools/cms/index.d.ts.map +1 -0
- package/dist/tools/cms/index.js +11 -0
- package/dist/tools/cms/media-tools.d.ts +31 -0
- package/dist/tools/cms/media-tools.d.ts.map +1 -0
- package/dist/tools/cms/media-tools.js +140 -0
- package/dist/tools/cms/user-tools.d.ts +31 -0
- package/dist/tools/cms/user-tools.d.ts.map +1 -0
- package/dist/tools/cms/user-tools.js +135 -0
- package/dist/tools/deduplicator.d.ts +19 -0
- package/dist/tools/deduplicator.d.ts.map +1 -0
- package/dist/tools/deduplicator.js +53 -0
- package/dist/tools/document-summarizer.d.ts +11 -0
- package/dist/tools/document-summarizer.d.ts.map +1 -0
- package/dist/tools/document-summarizer.js +82 -0
- package/dist/tools/mcp-adapter.d.ts +66 -0
- package/dist/tools/mcp-adapter.d.ts.map +1 -0
- package/dist/tools/mcp-adapter.js +152 -0
- package/dist/tools/memory/index.d.ts +3 -0
- package/dist/tools/memory/index.d.ts.map +1 -0
- package/dist/tools/memory/index.js +1 -0
- package/dist/tools/memory/store-memory.d.ts +39 -0
- package/dist/tools/memory/store-memory.d.ts.map +1 -0
- package/dist/tools/memory/store-memory.js +94 -0
- package/dist/tools/registry.d.ts +14 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +48 -0
- package/dist/tools/ticket-tools.d.ts +31 -0
- package/dist/tools/ticket-tools.d.ts.map +1 -0
- package/dist/tools/ticket-tools.js +74 -0
- package/dist/tools/web/duck-duck-go.d.ts +52 -0
- package/dist/tools/web/duck-duck-go.d.ts.map +1 -0
- package/dist/tools/web/duck-duck-go.js +202 -0
- package/dist/tools/web/exa.d.ts +34 -0
- package/dist/tools/web/exa.d.ts.map +1 -0
- package/dist/tools/web/exa.js +80 -0
- package/dist/tools/web/index.d.ts +6 -0
- package/dist/tools/web/index.d.ts.map +1 -0
- package/dist/tools/web/index.js +4 -0
- package/dist/tools/web/scraper.d.ts +9 -0
- package/dist/tools/web/scraper.d.ts.map +1 -0
- package/dist/tools/web/scraper.js +118 -0
- package/dist/tools/web/tavily.d.ts +32 -0
- package/dist/tools/web/tavily.d.ts.map +1 -0
- package/dist/tools/web/tavily.js +73 -0
- package/dist/tools/web/types.d.ts +31 -0
- package/dist/tools/web/types.d.ts.map +1 -0
- package/dist/tools/web/types.js +9 -0
- package/package.json +143 -0
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Audit Trail Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the schema for all audit events, entries, policies, and alerts.
|
|
5
|
+
* The audit trail is an append-only, immutable log of all agent activity.
|
|
6
|
+
* Agents receive a write-only emitter; humans control the observer.
|
|
7
|
+
*/
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
/** All possible audit event types */
|
|
10
|
+
export declare const AuditEventType: z.ZodEnum<{
|
|
11
|
+
"agent:registered": "agent:registered";
|
|
12
|
+
"agent:unregistered": "agent:unregistered";
|
|
13
|
+
"agent:task:started": "agent:task:started";
|
|
14
|
+
"agent:task:completed": "agent:task:completed";
|
|
15
|
+
"agent:task:failed": "agent:task:failed";
|
|
16
|
+
"agent:task:timeout": "agent:task:timeout";
|
|
17
|
+
"agent:tool:called": "agent:tool:called";
|
|
18
|
+
"agent:tool:result": "agent:tool:result";
|
|
19
|
+
"agent:tool:denied": "agent:tool:denied";
|
|
20
|
+
"agent:llm:request": "agent:llm:request";
|
|
21
|
+
"agent:llm:response": "agent:llm:response";
|
|
22
|
+
"agent:llm:error": "agent:llm:error";
|
|
23
|
+
"agent:memory:read": "agent:memory:read";
|
|
24
|
+
"agent:memory:write": "agent:memory:write";
|
|
25
|
+
"agent:memory:delete": "agent:memory:delete";
|
|
26
|
+
"agent:delegation:requested": "agent:delegation:requested";
|
|
27
|
+
"agent:delegation:completed": "agent:delegation:completed";
|
|
28
|
+
"agent:delegation:denied": "agent:delegation:denied";
|
|
29
|
+
"policy:violation": "policy:violation";
|
|
30
|
+
"policy:warning": "policy:warning";
|
|
31
|
+
"byok:key:accessed": "byok:key:accessed";
|
|
32
|
+
"human:agent:halted": "human:agent:halted";
|
|
33
|
+
"human:agent:resumed": "human:agent:resumed";
|
|
34
|
+
"human:fleet:halted": "human:fleet:halted";
|
|
35
|
+
"human:fleet:resumed": "human:fleet:resumed";
|
|
36
|
+
"human:policy:added": "human:policy:added";
|
|
37
|
+
"human:policy:removed": "human:policy:removed";
|
|
38
|
+
"human:alert:acknowledged": "human:alert:acknowledged";
|
|
39
|
+
}>;
|
|
40
|
+
export type AuditEventType = z.infer<typeof AuditEventType>;
|
|
41
|
+
export declare const AuditSeverity: z.ZodEnum<{
|
|
42
|
+
critical: "critical";
|
|
43
|
+
info: "info";
|
|
44
|
+
warn: "warn";
|
|
45
|
+
}>;
|
|
46
|
+
export type AuditSeverity = z.infer<typeof AuditSeverity>;
|
|
47
|
+
/** A single immutable audit log entry */
|
|
48
|
+
export declare const AuditEntrySchema: z.ZodObject<{
|
|
49
|
+
id: z.ZodString;
|
|
50
|
+
timestamp: z.ZodDate;
|
|
51
|
+
eventType: z.ZodEnum<{
|
|
52
|
+
"agent:registered": "agent:registered";
|
|
53
|
+
"agent:unregistered": "agent:unregistered";
|
|
54
|
+
"agent:task:started": "agent:task:started";
|
|
55
|
+
"agent:task:completed": "agent:task:completed";
|
|
56
|
+
"agent:task:failed": "agent:task:failed";
|
|
57
|
+
"agent:task:timeout": "agent:task:timeout";
|
|
58
|
+
"agent:tool:called": "agent:tool:called";
|
|
59
|
+
"agent:tool:result": "agent:tool:result";
|
|
60
|
+
"agent:tool:denied": "agent:tool:denied";
|
|
61
|
+
"agent:llm:request": "agent:llm:request";
|
|
62
|
+
"agent:llm:response": "agent:llm:response";
|
|
63
|
+
"agent:llm:error": "agent:llm:error";
|
|
64
|
+
"agent:memory:read": "agent:memory:read";
|
|
65
|
+
"agent:memory:write": "agent:memory:write";
|
|
66
|
+
"agent:memory:delete": "agent:memory:delete";
|
|
67
|
+
"agent:delegation:requested": "agent:delegation:requested";
|
|
68
|
+
"agent:delegation:completed": "agent:delegation:completed";
|
|
69
|
+
"agent:delegation:denied": "agent:delegation:denied";
|
|
70
|
+
"policy:violation": "policy:violation";
|
|
71
|
+
"policy:warning": "policy:warning";
|
|
72
|
+
"byok:key:accessed": "byok:key:accessed";
|
|
73
|
+
"human:agent:halted": "human:agent:halted";
|
|
74
|
+
"human:agent:resumed": "human:agent:resumed";
|
|
75
|
+
"human:fleet:halted": "human:fleet:halted";
|
|
76
|
+
"human:fleet:resumed": "human:fleet:resumed";
|
|
77
|
+
"human:policy:added": "human:policy:added";
|
|
78
|
+
"human:policy:removed": "human:policy:removed";
|
|
79
|
+
"human:alert:acknowledged": "human:alert:acknowledged";
|
|
80
|
+
}>;
|
|
81
|
+
severity: z.ZodEnum<{
|
|
82
|
+
critical: "critical";
|
|
83
|
+
info: "info";
|
|
84
|
+
warn: "warn";
|
|
85
|
+
}>;
|
|
86
|
+
agentId: z.ZodString;
|
|
87
|
+
taskId: z.ZodOptional<z.ZodString>;
|
|
88
|
+
sessionId: z.ZodOptional<z.ZodString>;
|
|
89
|
+
payload: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
90
|
+
policyViolations: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
91
|
+
}, z.core.$strip>;
|
|
92
|
+
export type AuditEntry = z.infer<typeof AuditEntrySchema>;
|
|
93
|
+
/** Filters for querying audit entries (human-side only) */
|
|
94
|
+
export interface AuditFilter {
|
|
95
|
+
agentId?: string;
|
|
96
|
+
taskId?: string;
|
|
97
|
+
sessionId?: string;
|
|
98
|
+
eventTypes?: AuditEventType[];
|
|
99
|
+
severity?: AuditSeverity[];
|
|
100
|
+
startTime?: Date;
|
|
101
|
+
endTime?: Date;
|
|
102
|
+
limit?: number;
|
|
103
|
+
offset?: number;
|
|
104
|
+
}
|
|
105
|
+
/** Action to take when a policy is violated */
|
|
106
|
+
export declare const PolicyAction: z.ZodEnum<{
|
|
107
|
+
alert: "alert";
|
|
108
|
+
halt_agent: "halt_agent";
|
|
109
|
+
halt_all: "halt_all";
|
|
110
|
+
}>;
|
|
111
|
+
export type PolicyAction = z.infer<typeof PolicyAction>;
|
|
112
|
+
/** A human-defined policy rule */
|
|
113
|
+
export interface AuditPolicy {
|
|
114
|
+
/** Unique policy ID */
|
|
115
|
+
id: string;
|
|
116
|
+
/** Human-readable name */
|
|
117
|
+
name: string;
|
|
118
|
+
/** What this policy enforces */
|
|
119
|
+
description: string;
|
|
120
|
+
/** Severity when triggered */
|
|
121
|
+
severity: AuditSeverity;
|
|
122
|
+
/** Action to take on violation */
|
|
123
|
+
action: PolicyAction;
|
|
124
|
+
/** Condition function: receives the current entry and recent history */
|
|
125
|
+
condition: (entry: AuditEntry, recentHistory: AuditEntry[]) => boolean;
|
|
126
|
+
/** Whether this policy is active */
|
|
127
|
+
enabled: boolean;
|
|
128
|
+
/** Who created this policy */
|
|
129
|
+
createdBy: string;
|
|
130
|
+
/** When this policy was created */
|
|
131
|
+
createdAt: Date;
|
|
132
|
+
}
|
|
133
|
+
/** An alert generated by a policy violation */
|
|
134
|
+
export interface AuditAlert {
|
|
135
|
+
/** Unique alert ID */
|
|
136
|
+
id: string;
|
|
137
|
+
/** Policy that triggered this alert */
|
|
138
|
+
policyId: string;
|
|
139
|
+
/** Policy name for display */
|
|
140
|
+
policyName: string;
|
|
141
|
+
/** The audit entry that triggered it */
|
|
142
|
+
triggeringEntryId: string;
|
|
143
|
+
/** Agent involved */
|
|
144
|
+
agentId: string;
|
|
145
|
+
/** Alert severity */
|
|
146
|
+
severity: AuditSeverity;
|
|
147
|
+
/** Action taken (or recommended) */
|
|
148
|
+
action: PolicyAction;
|
|
149
|
+
/** When the alert was generated */
|
|
150
|
+
createdAt: Date;
|
|
151
|
+
/** Whether a human has acknowledged this alert */
|
|
152
|
+
acknowledged: boolean;
|
|
153
|
+
/** Who acknowledged it */
|
|
154
|
+
acknowledgedBy?: string;
|
|
155
|
+
/** When it was acknowledged */
|
|
156
|
+
acknowledgedAt?: Date;
|
|
157
|
+
}
|
|
158
|
+
/** Tracked status of an agent from the audit system's perspective */
|
|
159
|
+
export interface AuditAgentStatus {
|
|
160
|
+
agentId: string;
|
|
161
|
+
halted: boolean;
|
|
162
|
+
haltedBy?: string;
|
|
163
|
+
haltedAt?: Date;
|
|
164
|
+
haltReason?: string;
|
|
165
|
+
totalEvents: number;
|
|
166
|
+
totalViolations: number;
|
|
167
|
+
lastEventAt?: Date;
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/audit/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Audit Trail Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the schema for all audit events, entries, policies, and alerts.
|
|
5
|
+
* The audit trail is an append-only, immutable log of all agent activity.
|
|
6
|
+
* Agents receive a write-only emitter; humans control the observer.
|
|
7
|
+
*/
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
// ─── Event Types ────────────────────────────────────────────────────────────
|
|
10
|
+
/** All possible audit event types */
|
|
11
|
+
export const AuditEventType = z.enum([
|
|
12
|
+
// Agent lifecycle
|
|
13
|
+
'agent:registered',
|
|
14
|
+
'agent:unregistered',
|
|
15
|
+
// Task execution
|
|
16
|
+
'agent:task:started',
|
|
17
|
+
'agent:task:completed',
|
|
18
|
+
'agent:task:failed',
|
|
19
|
+
'agent:task:timeout',
|
|
20
|
+
// Tool usage
|
|
21
|
+
'agent:tool:called',
|
|
22
|
+
'agent:tool:result',
|
|
23
|
+
'agent:tool:denied',
|
|
24
|
+
// LLM interactions
|
|
25
|
+
'agent:llm:request',
|
|
26
|
+
'agent:llm:response',
|
|
27
|
+
'agent:llm:error',
|
|
28
|
+
// Memory operations
|
|
29
|
+
'agent:memory:read',
|
|
30
|
+
'agent:memory:write',
|
|
31
|
+
'agent:memory:delete',
|
|
32
|
+
// Delegation
|
|
33
|
+
'agent:delegation:requested',
|
|
34
|
+
'agent:delegation:completed',
|
|
35
|
+
'agent:delegation:denied',
|
|
36
|
+
// Policy and safety
|
|
37
|
+
'policy:violation',
|
|
38
|
+
'policy:warning',
|
|
39
|
+
// BYOK key lifecycle
|
|
40
|
+
'byok:key:accessed',
|
|
41
|
+
// Human actions
|
|
42
|
+
'human:agent:halted',
|
|
43
|
+
'human:agent:resumed',
|
|
44
|
+
'human:fleet:halted',
|
|
45
|
+
'human:fleet:resumed',
|
|
46
|
+
'human:policy:added',
|
|
47
|
+
'human:policy:removed',
|
|
48
|
+
'human:alert:acknowledged',
|
|
49
|
+
]);
|
|
50
|
+
// ─── Severity ───────────────────────────────────────────────────────────────
|
|
51
|
+
export const AuditSeverity = z.enum(['info', 'warn', 'critical']);
|
|
52
|
+
// ─── Audit Entry ────────────────────────────────────────────────────────────
|
|
53
|
+
/** A single immutable audit log entry */
|
|
54
|
+
export const AuditEntrySchema = z.object({
|
|
55
|
+
/** Unique entry ID (UUID v4) */
|
|
56
|
+
id: z.string().uuid(),
|
|
57
|
+
/** When the event occurred */
|
|
58
|
+
timestamp: z.date(),
|
|
59
|
+
/** Type of event */
|
|
60
|
+
eventType: AuditEventType,
|
|
61
|
+
/** Severity classification */
|
|
62
|
+
severity: AuditSeverity,
|
|
63
|
+
/** Agent that triggered the event */
|
|
64
|
+
agentId: z.string(),
|
|
65
|
+
/** Task ID if applicable */
|
|
66
|
+
taskId: z.string().optional(),
|
|
67
|
+
/** Session or orchestration run ID */
|
|
68
|
+
sessionId: z.string().optional(),
|
|
69
|
+
/** Event-specific data */
|
|
70
|
+
payload: z.record(z.string(), z.unknown()),
|
|
71
|
+
/** Policy violations triggered by this event */
|
|
72
|
+
policyViolations: z.array(z.string()).default([]),
|
|
73
|
+
});
|
|
74
|
+
// ─── Policy Types ───────────────────────────────────────────────────────────
|
|
75
|
+
/** Action to take when a policy is violated */
|
|
76
|
+
export const PolicyAction = z.enum([
|
|
77
|
+
'alert', // Generate an alert for human review
|
|
78
|
+
'halt_agent', // Immediately halt the violating agent
|
|
79
|
+
'halt_all', // Halt the entire agent fleet (emergency)
|
|
80
|
+
]);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* React Hooks for AI System
|
|
3
|
+
*
|
|
4
|
+
* Frontend integration hooks:
|
|
5
|
+
* - useWorkingMemory: Working memory management
|
|
6
|
+
* - useEpisodicMemory: Episodic memory management
|
|
7
|
+
* - useAgentContext: Agent context management
|
|
8
|
+
* - useAgentEvents: Real-time agent event monitoring
|
|
9
|
+
* - useAgentMetrics: Agent metrics and statistics
|
|
10
|
+
* - useEventQuery: Advanced event querying
|
|
11
|
+
* - useEventStream: Real-time event streaming
|
|
12
|
+
* - usePaginatedEvents: Paginated event display
|
|
13
|
+
* - useAgentStream: SSE streaming for agent responses
|
|
14
|
+
*
|
|
15
|
+
* @packageDocumentation
|
|
16
|
+
*/
|
|
17
|
+
export { type UseAgentContextOptions, type UseAgentContextReturn, useAgentContext, } from './useAgentContext.js';
|
|
18
|
+
export { useAgentEvents, useAgentMetrics, useEventQuery, useEventStream, useLLMUsageStats, useMetricsSummary, usePaginatedEvents, useToolUsageStats, } from './useAgentEvents.js';
|
|
19
|
+
export { type AgentStreamChunk, type AgentStreamRequest, type UseAgentStreamReturn, type UseAgentStreamState, useAgentStream, } from './useAgentStream.js';
|
|
20
|
+
export { type UseEpisodicMemoryReturn, useEpisodicMemory, } from './useEpisodicMemory.js';
|
|
21
|
+
export { type UseWorkingMemoryOptions, type UseWorkingMemoryReturn, useWorkingMemory, } from './useWorkingMemory.js';
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,KAAK,uBAAuB,EAC5B,iBAAiB,GAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,gBAAgB,GACjB,MAAM,uBAAuB,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* React Hooks for AI System
|
|
3
|
+
*
|
|
4
|
+
* Frontend integration hooks:
|
|
5
|
+
* - useWorkingMemory: Working memory management
|
|
6
|
+
* - useEpisodicMemory: Episodic memory management
|
|
7
|
+
* - useAgentContext: Agent context management
|
|
8
|
+
* - useAgentEvents: Real-time agent event monitoring
|
|
9
|
+
* - useAgentMetrics: Agent metrics and statistics
|
|
10
|
+
* - useEventQuery: Advanced event querying
|
|
11
|
+
* - useEventStream: Real-time event streaming
|
|
12
|
+
* - usePaginatedEvents: Paginated event display
|
|
13
|
+
* - useAgentStream: SSE streaming for agent responses
|
|
14
|
+
*
|
|
15
|
+
* @packageDocumentation
|
|
16
|
+
*/
|
|
17
|
+
export { useAgentContext, } from './useAgentContext.js';
|
|
18
|
+
export { useAgentEvents, useAgentMetrics, useEventQuery, useEventStream, useLLMUsageStats, useMetricsSummary, usePaginatedEvents, useToolUsageStats, } from './useAgentEvents.js';
|
|
19
|
+
export { useAgentStream, } from './useAgentStream.js';
|
|
20
|
+
export { useEpisodicMemory, } from './useEpisodicMemory.js';
|
|
21
|
+
export { useWorkingMemory, } from './useWorkingMemory.js';
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useAgentContext Hook
|
|
3
|
+
*
|
|
4
|
+
* React hook for managing agent context in client components.
|
|
5
|
+
* Wraps AgentContextManager for client-side usage.
|
|
6
|
+
*/
|
|
7
|
+
export interface UseAgentContextOptions {
|
|
8
|
+
autoSync?: boolean;
|
|
9
|
+
syncInterval?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface UseAgentContextReturn {
|
|
12
|
+
context: Record<string, unknown>;
|
|
13
|
+
getContext: (key: string) => unknown;
|
|
14
|
+
setContext: (key: string, value: unknown) => Promise<void>;
|
|
15
|
+
updateContext: (updates: Partial<Record<string, unknown>>) => Promise<void>;
|
|
16
|
+
removeContext: (key: string) => Promise<void>;
|
|
17
|
+
isLoading: boolean;
|
|
18
|
+
error: Error | null;
|
|
19
|
+
sync: () => Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* React hook for agent context management.
|
|
23
|
+
*
|
|
24
|
+
* @param sessionId - Session identifier
|
|
25
|
+
* @param agentId - Agent identifier
|
|
26
|
+
* @param options - Hook options
|
|
27
|
+
* @returns Agent context state and operations
|
|
28
|
+
*/
|
|
29
|
+
export declare function useAgentContext(sessionId: string, agentId: string, options?: UseAgentContextOptions): UseAgentContextReturn;
|
|
30
|
+
//# sourceMappingURL=useAgentContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAgentContext.d.ts","sourceRoot":"","sources":["../../../src/client/hooks/useAgentContext.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;IACpC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1D,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3E,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAeD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,sBAA2B,GACnC,qBAAqB,CAkKvB"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useAgentContext Hook
|
|
3
|
+
*
|
|
4
|
+
* React hook for managing agent context in client components.
|
|
5
|
+
* Wraps AgentContextManager for client-side usage.
|
|
6
|
+
*/
|
|
7
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
8
|
+
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
9
|
+
const parseContextPayload = (payload) => {
|
|
10
|
+
if (!isRecord(payload))
|
|
11
|
+
return {};
|
|
12
|
+
const { context } = payload;
|
|
13
|
+
return isRecord(context) ? context : {};
|
|
14
|
+
};
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// Hook
|
|
17
|
+
// =============================================================================
|
|
18
|
+
/**
|
|
19
|
+
* React hook for agent context management.
|
|
20
|
+
*
|
|
21
|
+
* @param sessionId - Session identifier
|
|
22
|
+
* @param agentId - Agent identifier
|
|
23
|
+
* @param options - Hook options
|
|
24
|
+
* @returns Agent context state and operations
|
|
25
|
+
*/
|
|
26
|
+
export function useAgentContext(sessionId, agentId, options = {}) {
|
|
27
|
+
const { autoSync = false, syncInterval = 5000 } = options;
|
|
28
|
+
const [context, setContextState] = useState({});
|
|
29
|
+
const [isLoading, setIsLoading] = useState(true);
|
|
30
|
+
const [error, setError] = useState(null);
|
|
31
|
+
// Load initial state
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
let mounted = true;
|
|
34
|
+
async function load() {
|
|
35
|
+
try {
|
|
36
|
+
setIsLoading(true);
|
|
37
|
+
setError(null);
|
|
38
|
+
const response = await fetch(`/api/memory/context/${sessionId}/${agentId}`);
|
|
39
|
+
if (!response.ok) {
|
|
40
|
+
throw new Error(`Failed to load agent context: ${response.statusText}`);
|
|
41
|
+
}
|
|
42
|
+
const payload = (await response.json());
|
|
43
|
+
if (!mounted)
|
|
44
|
+
return;
|
|
45
|
+
setContextState(parseContextPayload(payload));
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
if (!mounted)
|
|
49
|
+
return;
|
|
50
|
+
setError(err instanceof Error ? err : new Error('Unknown error'));
|
|
51
|
+
}
|
|
52
|
+
finally {
|
|
53
|
+
if (mounted) {
|
|
54
|
+
setIsLoading(false);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
void load();
|
|
59
|
+
return () => {
|
|
60
|
+
mounted = false;
|
|
61
|
+
};
|
|
62
|
+
}, [sessionId, agentId]);
|
|
63
|
+
// Sync function
|
|
64
|
+
const sync = useCallback(async () => {
|
|
65
|
+
try {
|
|
66
|
+
const response = await fetch(`/api/memory/context/${sessionId}/${agentId}`);
|
|
67
|
+
if (!response.ok) {
|
|
68
|
+
throw new Error(`Failed to sync agent context: ${response.statusText}`);
|
|
69
|
+
}
|
|
70
|
+
const payload = (await response.json());
|
|
71
|
+
setContextState(parseContextPayload(payload));
|
|
72
|
+
setError(null);
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
setError(err instanceof Error ? err : new Error('Unknown error'));
|
|
76
|
+
}
|
|
77
|
+
}, [sessionId, agentId]);
|
|
78
|
+
// Auto-sync
|
|
79
|
+
useEffect(() => {
|
|
80
|
+
if (!autoSync)
|
|
81
|
+
return;
|
|
82
|
+
const interval = setInterval(() => {
|
|
83
|
+
void sync();
|
|
84
|
+
}, syncInterval);
|
|
85
|
+
return () => clearInterval(interval);
|
|
86
|
+
}, [autoSync, syncInterval, sync]);
|
|
87
|
+
// Get context value
|
|
88
|
+
const getContext = useCallback((key) => {
|
|
89
|
+
return context[key];
|
|
90
|
+
}, [context]);
|
|
91
|
+
// Set context value
|
|
92
|
+
const setContext = useCallback(async (key, value) => {
|
|
93
|
+
try {
|
|
94
|
+
setError(null);
|
|
95
|
+
const response = await fetch(`/api/memory/context/${sessionId}/${agentId}`, {
|
|
96
|
+
method: 'POST',
|
|
97
|
+
headers: { 'Content-Type': 'application/json' },
|
|
98
|
+
body: JSON.stringify({ [key]: value }),
|
|
99
|
+
});
|
|
100
|
+
if (!response.ok) {
|
|
101
|
+
throw new Error(`Failed to update context: ${response.statusText}`);
|
|
102
|
+
}
|
|
103
|
+
const payload = (await response.json());
|
|
104
|
+
setContextState(parseContextPayload(payload));
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
setError(err instanceof Error ? err : new Error('Unknown error'));
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
}, [sessionId, agentId]);
|
|
111
|
+
// Update context
|
|
112
|
+
const updateContext = useCallback(async (updates) => {
|
|
113
|
+
try {
|
|
114
|
+
setError(null);
|
|
115
|
+
const response = await fetch(`/api/memory/context/${sessionId}/${agentId}`, {
|
|
116
|
+
method: 'POST',
|
|
117
|
+
headers: { 'Content-Type': 'application/json' },
|
|
118
|
+
body: JSON.stringify(updates),
|
|
119
|
+
});
|
|
120
|
+
if (!response.ok) {
|
|
121
|
+
throw new Error(`Failed to update context: ${response.statusText}`);
|
|
122
|
+
}
|
|
123
|
+
const payload = (await response.json());
|
|
124
|
+
setContextState(parseContextPayload(payload));
|
|
125
|
+
}
|
|
126
|
+
catch (err) {
|
|
127
|
+
setError(err instanceof Error ? err : new Error('Unknown error'));
|
|
128
|
+
throw err;
|
|
129
|
+
}
|
|
130
|
+
}, [sessionId, agentId]);
|
|
131
|
+
// Remove context key
|
|
132
|
+
const removeContext = useCallback(async (key) => {
|
|
133
|
+
try {
|
|
134
|
+
setError(null);
|
|
135
|
+
const response = await fetch(`/api/memory/context/${sessionId}/${agentId}`, {
|
|
136
|
+
method: 'DELETE',
|
|
137
|
+
headers: { 'Content-Type': 'application/json' },
|
|
138
|
+
body: JSON.stringify({ key }),
|
|
139
|
+
});
|
|
140
|
+
if (!response.ok) {
|
|
141
|
+
throw new Error(`Failed to remove context key: ${response.statusText}`);
|
|
142
|
+
}
|
|
143
|
+
const payload = (await response.json());
|
|
144
|
+
setContextState(parseContextPayload(payload));
|
|
145
|
+
}
|
|
146
|
+
catch (err) {
|
|
147
|
+
setError(err instanceof Error ? err : new Error('Unknown error'));
|
|
148
|
+
throw err;
|
|
149
|
+
}
|
|
150
|
+
}, [sessionId, agentId]);
|
|
151
|
+
return {
|
|
152
|
+
context,
|
|
153
|
+
getContext,
|
|
154
|
+
setContext,
|
|
155
|
+
updateContext,
|
|
156
|
+
removeContext,
|
|
157
|
+
isLoading,
|
|
158
|
+
error,
|
|
159
|
+
sync,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @revealui/ai - React Hooks for Observability
|
|
3
|
+
*
|
|
4
|
+
* React hooks for accessing and displaying agent events and metrics.
|
|
5
|
+
*/
|
|
6
|
+
import type { AgentEventLogger } from '../../observability/logger.js';
|
|
7
|
+
import type { AgentMetricsCollector } from '../../observability/metrics.js';
|
|
8
|
+
import { AgentEventQuery } from '../../observability/query.js';
|
|
9
|
+
import type { AgentMetrics, AnyAgentEvent, EventFilter, MetricsSummary } from '../../observability/types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Hook for accessing agent events with real-time updates
|
|
12
|
+
*/
|
|
13
|
+
export declare function useAgentEvents(logger: AgentEventLogger, filter?: EventFilter, options?: {
|
|
14
|
+
refreshInterval?: number;
|
|
15
|
+
autoRefresh?: boolean;
|
|
16
|
+
}): {
|
|
17
|
+
events: AnyAgentEvent[];
|
|
18
|
+
loading: boolean;
|
|
19
|
+
refresh: () => void;
|
|
20
|
+
count: number;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Hook for accessing agent metrics with real-time updates
|
|
24
|
+
*/
|
|
25
|
+
export declare function useAgentMetrics(collector: AgentMetricsCollector, agentId: string, options?: {
|
|
26
|
+
refreshInterval?: number;
|
|
27
|
+
autoRefresh?: boolean;
|
|
28
|
+
}): {
|
|
29
|
+
metrics: AgentMetrics | null;
|
|
30
|
+
loading: boolean;
|
|
31
|
+
refresh: () => void;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Hook for accessing metrics summary
|
|
35
|
+
*/
|
|
36
|
+
export declare function useMetricsSummary(collector: AgentMetricsCollector, filter?: EventFilter, options?: {
|
|
37
|
+
refreshInterval?: number;
|
|
38
|
+
autoRefresh?: boolean;
|
|
39
|
+
}): {
|
|
40
|
+
summary: MetricsSummary | null;
|
|
41
|
+
loading: boolean;
|
|
42
|
+
refresh: () => void;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Hook for querying events with advanced filters
|
|
46
|
+
*/
|
|
47
|
+
export declare function useEventQuery(logger: AgentEventLogger): {
|
|
48
|
+
query: AgentEventQuery;
|
|
49
|
+
getRecentEvents: (milliseconds: number, count?: number) => AnyAgentEvent[];
|
|
50
|
+
getEventsForAgent: (agentId: string) => AnyAgentEvent[];
|
|
51
|
+
getEventsForSession: (sessionId: string) => AnyAgentEvent[];
|
|
52
|
+
searchEvents: (searchText: string, filter?: EventFilter) => AnyAgentEvent[];
|
|
53
|
+
paginateEvents: (page: number, pageSize: number, filter?: EventFilter) => {
|
|
54
|
+
events: AnyAgentEvent[];
|
|
55
|
+
page: number;
|
|
56
|
+
pageSize: number;
|
|
57
|
+
totalPages: number;
|
|
58
|
+
totalEvents: number;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Hook for tool usage statistics
|
|
63
|
+
*/
|
|
64
|
+
export declare function useToolUsageStats(collector: AgentMetricsCollector, options?: {
|
|
65
|
+
refreshInterval?: number;
|
|
66
|
+
autoRefresh?: boolean;
|
|
67
|
+
}): {
|
|
68
|
+
stats: {
|
|
69
|
+
toolName: string;
|
|
70
|
+
metrics: {
|
|
71
|
+
totalCalls: number;
|
|
72
|
+
successCount: number;
|
|
73
|
+
failureCount: number;
|
|
74
|
+
averageDurationMs: number;
|
|
75
|
+
lastUsed: number;
|
|
76
|
+
};
|
|
77
|
+
}[];
|
|
78
|
+
loading: boolean;
|
|
79
|
+
refresh: () => void;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Hook for LLM usage statistics
|
|
83
|
+
*/
|
|
84
|
+
export declare function useLLMUsageStats(collector: AgentMetricsCollector, options?: {
|
|
85
|
+
refreshInterval?: number;
|
|
86
|
+
autoRefresh?: boolean;
|
|
87
|
+
}): {
|
|
88
|
+
stats: {
|
|
89
|
+
totalCalls: number;
|
|
90
|
+
totalPromptTokens: number;
|
|
91
|
+
totalCompletionTokens: number;
|
|
92
|
+
totalCost: number;
|
|
93
|
+
averageDurationMs: number;
|
|
94
|
+
cacheHitRate: number;
|
|
95
|
+
modelUsage: Record<string, number>;
|
|
96
|
+
} | null;
|
|
97
|
+
loading: boolean;
|
|
98
|
+
refresh: () => void;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Hook for real-time event stream
|
|
102
|
+
*/
|
|
103
|
+
export declare function useEventStream(logger: AgentEventLogger, options?: {
|
|
104
|
+
maxEvents?: number;
|
|
105
|
+
filter?: EventFilter;
|
|
106
|
+
}): {
|
|
107
|
+
events: AnyAgentEvent[];
|
|
108
|
+
latestEvent: AnyAgentEvent | undefined;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Hook for paginated events
|
|
112
|
+
*/
|
|
113
|
+
export declare function usePaginatedEvents(logger: AgentEventLogger, initialPageSize?: number, filter?: EventFilter): {
|
|
114
|
+
nextPage: () => void;
|
|
115
|
+
prevPage: () => void;
|
|
116
|
+
goToPage: (newPage: number) => void;
|
|
117
|
+
changePageSize: (newSize: number) => void;
|
|
118
|
+
hasNextPage: boolean;
|
|
119
|
+
hasPrevPage: boolean;
|
|
120
|
+
events: AnyAgentEvent[];
|
|
121
|
+
page: number;
|
|
122
|
+
pageSize: number;
|
|
123
|
+
totalPages: number;
|
|
124
|
+
totalEvents: number;
|
|
125
|
+
};
|
|
126
|
+
//# sourceMappingURL=useAgentEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAgentEvents.d.ts","sourceRoot":"","sources":["../../../src/client/hooks/useAgentEvents.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,cAAc,EACf,MAAM,8BAA8B,CAAA;AAErC;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,gBAAgB,EACxB,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;;;;;EA+BF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,qBAAqB,EAChC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;;;;EA8BF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,qBAAqB,EAChC,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;;;;EA8BF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB;;oCAInC,MAAM,UAAU,MAAM;iCAO3B,MAAM;qCAOJ,MAAM;+BAOL,MAAM,WAAW,WAAW;2BAOlC,MAAM,YAAY,MAAM,WAAW,WAAW;;;;;;;EAcxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,qBAAqB,EAChC,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;;kBAIa,MAAM;iBACP;YACP,UAAU,EAAE,MAAM,CAAA;YAClB,YAAY,EAAE,MAAM,CAAA;YACpB,YAAY,EAAE,MAAM,CAAA;YACpB,iBAAiB,EAAE,MAAM,CAAA;YACzB,QAAQ,EAAE,MAAM,CAAA;SACjB;;;;EA8BN;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,qBAAqB,EAChC,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;;oBAGa,MAAM;2BACC,MAAM;+BACF,MAAM;mBAClB,MAAM;2BACE,MAAM;sBACX,MAAM;oBACR,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;;EA6BrC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;;;EAkBF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,gBAAgB,EACxB,eAAe,SAAK,EACpB,MAAM,CAAC,EAAE,WAAW;;;wBAsBmB,MAAM;8BAIA,MAAM;;;;;;;;EAcpD"}
|