/** * Barrel exports for the subset of AgentOS modules that external consumers * should generally import. Internal modules can still be reached via * `@framers/agentos/` thanks to the workspace exports map. */ export * from './api/AgentOS.js'; export * from './api/runtime/AgentOSOrchestrator'; export * from './api/types/AgentOSInput'; export * from './api/types/AgentOSResponse'; export * from './api/types/AgentOSExternalToolRequest'; export * from './api/types/AgentOSToolResult'; export * from './cognition/substrate/IGMI'; export * from './cognition/substrate/GMIManager'; export type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject, } from './core/tools/ITool'; export * from './core/llm/IPromptEngine'; export * from './core/config/ToolOrchestratorConfig'; export * from './core/tools/permissions/IToolPermissionManager'; export * from './core/conversation/ConversationManager'; export * from './core/conversation/IRollingSummaryMemorySink'; export * from './core/conversation/ILongTermMemoryRetriever'; export * from './core/conversation/LongTermMemoryPolicy'; export * from './core/streaming/StreamingManager'; export * from './core/llm/providers/AIModelProviderManager'; export * from './orchestration/turn-planner/TurnPlanner'; export * from './orchestration/turn-planner/SqlTaskOutcomeTelemetryStore'; export * from './orchestration/workflows/WorkflowTypes'; export * from './orchestration/workflows/IWorkflowEngine'; export * from './orchestration/workflows/storage/IWorkflowStore'; export { WorkflowEngine } from './orchestration/workflows/WorkflowEngine'; export { InMemoryWorkflowStore } from './orchestration/workflows/storage/InMemoryWorkflowStore'; // Agency (Multi-Agent Collectives) export * from './agents/agency/AgencyTypes'; export { AgencyRegistry } from './agents/agency/AgencyRegistry'; export { AgencyMemoryManager } from './agents/agency/AgencyMemoryManager'; export type { AgencyMemoryIngestInput, AgencyMemoryChunk, AgencyMemoryQueryResult, AgencyMemoryStats, } from './agents/agency/AgencyMemoryManager'; export { AgentCommunicationBus } from './agents/agency/AgentCommunicationBus'; export type { IAgentCommunicationBus, AgentMessage, AgentMessageType, AgentRequest, AgentResponse, HandoffContext, HandoffResult, } from './agents/agency/IAgentCommunicationBus'; // Planning Engine export * from './orchestration/planner'; // Human-in-the-Loop (HITL) export * from './orchestration/hitl'; // Structured Outputs (JSON Schema, Function Calling) export * from './api/structured/output'; // Code Execution Sandbox export * from './safety/sandbox/executor'; // Observability & Tracing export * from './safety/evaluation/observability'; // Evaluation Framework export * from './safety/evaluation'; // Knowledge Graph export * from './cognition/memory/retrieval/graph/index'; // Agent Marketplace export * from './cognition/marketplace/store'; // Per-agent workspace helpers export * from './cognition/marketplace/workspace'; export * from './cognition/substrate/personas/definitions'; export * from './cognition/substrate/personas/IPersonaDefinition'; export type { IPersonaLoader, PersonaLoaderConfig } from './cognition/substrate/personas/IPersonaLoader'; export { PersonaLoader } from './cognition/substrate/personas/PersonaLoader'; export type { FileSystemPersonaLoaderConfig } from './cognition/substrate/personas/PersonaLoader'; export { InMemoryPersonaLoader, assertInlinePersonaDefinitions, INLINE_PERSONA_LOADER_CONFIG } from './cognition/substrate/personas/InMemoryPersonaLoader'; export { clonePersonaDefinition, normalizePersonaDefinition } from './cognition/substrate/personas/personaNormalization'; export * from './cognition/substrate/persona_overlays/PersonaOverlayTypes'; export { PersonaOverlayManager } from './cognition/substrate/persona_overlays/PersonaOverlayManager'; // Guardrails export * from './safety/guardrails'; export * from './extensions'; // Messaging Channels (external platform adapters) export * from './io/channels'; // Voice Calls (telephony providers) export * from './io/channels/telephony'; // Meeting bots (the meeting-participant channel) export * from './io/channels/meetings/index.js'; // Unified speech runtime (STT/TTS/VAD/wake-word) export * from './io/speech'; // Unified image generation providers export * from './io/media/images'; // Unified video generation, analysis, and scene detection export * from './io/media/video/index.js'; // Unified audio generation (music + SFX) and provider registry export * from './io/media/audio/index.js'; // Hearing module (audio processing + STT/VAD providers) export * from './io/hearing'; // Media provider preference resolver (shared across image/video/audio) export * from './io/media/ProviderPreferences.js'; // Unified vision pipeline (OCR + handwriting + document AI + CLIP + cloud) export { VisionPipeline, createVisionPipeline, LLMVisionProvider, PipelineVisionProvider } from './io/vision/index.js'; export type { VisionPipelineConfig, VisionResult, VisionStrategy, VisionTier, VisionCloudTask, ContentCategory as VisionContentCategory, TierResult as VisionTierResult, FailedTier as VisionFailedTier, TextRegion as VisionTextRegion, DocumentLayout, DocumentPage, LayoutBlock, VisionPreprocessingConfig, } from './io/vision/types.js'; export type { LLMVisionProviderConfig } from './io/vision/providers/LLMVisionProvider.js'; // Skills (SKILL.md prompt modules) export * from './cognition/skills'; // Multilingual exports export * from './cognition/nlp/language/interfaces'; export * from './cognition/nlp/language/LanguageService'; export * from './cognition/nlp/language/TranscriptTranslator'; // NLP AI Utilities (classification, sentiment, similarity, keyword extraction, etc.) export * from './cognition/nlp/ai_utilities/IUtilityAI'; export * from './cognition/nlp/ai_utilities/LLMUtilityAI'; export * from './cognition/nlp/ai_utilities/StatisticalUtilityAI'; export * from './cognition/nlp/ai_utilities/HybridUtilityAI'; export type { ILogger } from './core/logging/ILogger'; export { createLogger, setLoggerFactory, resetLoggerFactory } from './core/logging/loggerFactory'; // Rate limit types export * from './core/rate-limiting/types'; // Storage adapters export * from './core/storage'; // Usage & cost accounting export * from './core/utils/usage/UsageLedger'; // RAG (Retrieval Augmented Generation) export * from './cognition/rag'; export type { MemoryRetrievalPolicy, MemoryRetrievalProfile, ResolvedMemoryRetrievalPolicy, } from './cognition/rag/unified/policy.js'; export { DEFAULT_MEMORY_RETRIEVAL_POLICY, buildRetrievalPlanFromPolicy, getCandidateLimit, resolveMemoryRetrievalPolicy, } from './cognition/rag/unified/policy.js'; // Cognitive Memory System export * from './cognition/memory'; // Two barrels above export an `isPublicAddress`: the memory barrel `guardedFetch`'s rule, and the meetings barrel the // checked egress module's stricter rule, which the outbox delivery holds. The root exports `guardedFetch`'s. export { isPublicAddress } from './cognition/memory'; // Memory Wiki — markdown-first long-term memory for soul-file agents export { WikiMemoryStore, WikiCompiler, ensureMemoryDir, parsePage, serializePage, renderCatalog, extractWikiLinks, WIKI_PAGE_TYPES, isWikiPageType, InvalidWikiPageIdError, isWikiPageId, assertWikiPageId, MAX_WIKI_PAGE_ID_LENGTH, } from './cognition/substrate/memory/wiki/index.js'; export type { WikiPage, WikiPageType, WikiPageIdProblem, MetaIndex, IndexResult as WikiIndexResult, CompileResult as WikiCompileResult, MemoryIndexPort, WikiMemoryStoreOptions, WikiCompilerOptions, WikiCompilerStorePort, } from './cognition/substrate/memory/wiki/index.js'; export { attachMemoryWiki } from './cognition/memory/io/attachMemoryWiki.js'; export type { AttachMemoryWikiOptions, AttachMemoryWikiResult, WikiAttachableMemory, } from './cognition/memory/io/attachMemoryWiki.js'; export { ReadMemoryPageTool } from './cognition/memory/io/tools/ReadMemoryPageTool.js'; // Query Router (classification, retrieval dispatch, grounded answer generation) export { QueryClassifier, QueryDispatcher, QueryGenerator, QueryRouter, TopicExtractor, KeywordFallback, } from './orchestration/pipeline/query/index.js'; export type { QueryTier, ClassificationResult, RetrievedChunk, SourceCitation, RetrievalResult, ConversationMessage, QueryRouterConfig, ClassifyStartEvent, ClassifyCompleteEvent, ClassifyErrorEvent, RetrieveStartEvent, RetrieveVectorEvent, RetrieveGraphEvent, RetrieveRerankEvent, RetrieveCompleteEvent, RetrieveFallbackEvent, ResearchStartEvent, ResearchPhaseEvent, ResearchCompleteEvent, GenerateStartEvent, GenerateCompleteEvent, RouteCompleteEvent, QueryRouterEventUnion, CorpusChunk, TopicEntry, QueryResult as QueryRouterResult, QueryRouterEmbeddingStatus, QueryRouterRetrievalMode, QueryRouterRuntimeMode, QueryRouterToggleableRuntimeMode, QueryRouterCorpusStats, } from './orchestration/pipeline/query/types.js'; // Orchestration Layer (IR, Events, Checkpoint, Runtime) export * from './orchestration/index.js'; // Provenance, Audit & Immutability export * from './safety/provenance'; // Safety Primitives (circuit breaker, dedup, cost guard, stuck detection) export * from './safety/runtime'; // Emergent Capability Engine (runtime tool creation) export * from './cognition/emergent/index.js'; // Extension Secrets Catalog export { EXTENSION_SECRET_DEFINITIONS, type ExtensionSecretDefinition, getSecretDefinition, resolveSecretForProvider, } from './core/config/extensionSecrets.js'; // --- High-Level API (AI SDK style) --- export { generateText, isRetryableError, isContentPolicyRefusal, buildFallbackChain, buildPolicyAwareFallbackChain, } from './api/generateText.js'; export { CONTEXT_WINDOW_EXCEEDED_CODE } from './core/llm/providers/errors/errorCodes.js'; export { ContextWindowExceededError } from './core/llm/providers/errors/ContextWindowExceededError.js'; export { checkContextFit, type ContextFit, type ContextFitRequest } from './api/runtime/contextWindowFit.js'; export type { GenerateTextOptions, GenerateTextResult, FallbackProviderEntry, FallbackSignal, HostLLMPolicy, GenerationHookContext, GenerationHookResult, Message, ToolCallRecord, ToolCallHookInfo, TokenUsage, SystemContentBlock, } from './api/generateText.js'; export type { AttemptOutcome, CacheDiagnostics, CacheMissReason, } from './core/llm/providers/IProvider.js'; export { normalizeHostLLMPolicy } from './api/runtime/hostPolicy.js'; export { streamText, normalizeStreamFinishReason } from './api/streamText.js'; export type { StreamTextResult, StreamPart, StreamFinishReason } from './api/streamText.js'; export { createCompletionGateway, toolFormatFor } from './api/runtime/completionGateway.js'; export type { CompletionAttempt, CompletionGateway, CompletionHop, CompletionOutcome, CompletionResolution, CompletionRoute, LateAttemptUsage, } from './api/runtime/completionGateway.js'; export { GatewayProviderManager } from './api/runtime/gatewayProviderManager.js'; export { agent } from './api/agent.js'; export { souledAgent } from './api/souledAgent.js'; export type { SouledAgentOptions, SouledAgent } from './api/souledAgent.js'; export type { Agent, AgentLearning, AgentSession, AgentSessionOptions, AgentOptions, AgentMemoryProvider, SessionSendOptions, SessionSendStructuredResult, } from './api/agent.js'; export { gmi, createGmi } from './api/gmi.js'; export type { GmiOptions, GmiHandle } from './api/gmi.js'; export { resolveCognition } from './api/runtime/gmiCognition.js'; export type { CognitionProfile, CognitionConfig, CognitionInputs, MetapromptPreset, ResolvedCognition, } from './api/runtime/gmiCognition.js'; export { personaFromAgentOptions } from './api/runtime/gmiPersona.js'; // Teams a gmi() agent launches from a turn (`agencies.launch` registers `launch_agency`), and persistent gmi() // agents seated in an agency as themselves (`sessionSeat()`). export { LAUNCH_AGENCY_TOOL_NAME } from './api/runtime/agencyLaunch/types.js'; export type { AgencyLaunchOptions, LaunchAgencyArgs, LaunchAgencyResult, LaunchRefusal, LaunchRefusalCode, LaunchSeatRecord, LaunchSeatSpec, LaunchStatus, LaunchUsage, } from './api/runtime/agencyLaunch/types.js'; export { sessionSeat } from './api/runtime/agencyLaunch/sessionSeat.js'; export type { SeatHandle, SessionSeatOptions } from './api/runtime/agencyLaunch/sessionSeat.js'; // The rest of the launch surface (docs/AGENCIES.md): the runtime's `agencies` option, a launch tree's limits, the frame // a seat's turns and tool calls carry, the live objects of the turn that made a tool call, a tool hook, and a launched // team's registry record. export type { AgencyLaunchFrame, CallerTurnContext, LaunchLimits, LaunchRecordMetadata, RuntimeAgencyLaunchOptions, ToolCallHook, } from './api/runtime/agencyLaunch/index.js'; // The learning layer (docs/GMI.md, "Learning"): off unless a host sets its `learning` option. Everything else of the // module is on the `@framers/agentos/cognition/learning` subpath. export { createLearningLayer, InMemoryLearningStore, SqlLearningStore, toolLearningContextFor } from './cognition/learning/index.js'; export type { ForgetReport, FreezeScope, HostLoopName, ILearnerSession, ILearningLayer, ImportReport, LearnedStateDocument, LearnerContext, LearnerKey, LearningConfig, LearningLayerHandle, LearningLayerOptions, LearningLoopName, LearningMemoryTools, LearningMode, LearningProfile, LearningStore, LedgerEntry, LoopManifest, LoopName, LoopState, NoLearnerReason, OperatorSetInput, ProposalResult, ResolvedLearning, SelfChangeTurn, SessionSelfChange, SqlLearningStoreOptions, ToolLearningContext, TurnInputForLearning, TurnPreparation, TurnScopes, } from './cognition/learning/index.js'; // The trait map a learner context carries (`LearnerContext.authoredTraits`) and a learner session answers // (`currentTraits()`). export type { HexacoTraitValues } from './cognition/substrate/personas/hexaco.js'; // The directive line each trait renders, for a host that shows it beside the trait's control (an agent builder's // slider): the lines `agent()` sends in its personality section. export { renderPersonalityDirectives } from './cognition/substrate/personas/personalityPrompt.js'; export type { PersonalityDirective, PersonalityRegister, PersonalityRenderOptions, TraitBand, } from './cognition/substrate/personas/personalityPrompt.js'; export type { HexacoTraitKey } from './cognition/substrate/personas/hexaco.js'; export { createAgentCognitiveMemory } from './api/runtime/agentCognitiveMemory.js'; export type { AgentCognitiveMemory, AgentCognitiveMemoryOptions } from './api/runtime/agentCognitiveMemory.js'; export type { MemoryProviderHookOptions } from './api/runtime/memoryProviderHooks.js'; export type { IModelRouter, ModelRouteParams, ModelRouteResult, } from './core/llm/routing/IModelRouter.js'; export { ModelRouter } from './core/llm/routing/ModelRouter.js'; export { agency, runPostApprovalGuardrails } from './api/agency.js'; export type { GuardrailHitlOverrideResult } from './api/agency.js'; export { exportAgentConfig, exportAgentConfigJSON, exportAgentConfigYAML, importAgent, importAgentFromJSON, importAgentFromYAML, validateAgentExport, } from './api/agentExport.js'; export type { AgentExportConfig, ExportAgentConfigOptions, ImportAgentOptions, PrebuiltSeatMarker, } from './api/agentExport.js'; export { hitl } from './api/hitl.js'; export type { HitlHandler } from './api/hitl.js'; export * from './api/runtime/processRequestWithExternalTools.js'; export * from './api/runtime/externalToolRegistry.js'; export * from './api/runtime/processRequestWithRegisteredTools.js'; export * from './api/runtime/resumeExternalToolRequestWithRegisteredTools.js'; export type { AgencyOptions, AgencySeatConfig, AgencyStrategy, AgencyConfigError as AgencyConfigErrorType, AgencyCallbacks, AgencyStreamResult, AgencyStreamPart, AgencyTraceEvent, AgentCallRecord, ApprovalRequest, ApprovalDecision, ResourceControls, HitlConfig, CompiledStrategy, CompiledStrategyStreamResult, Agency, SeatMetadata, ModelPoolEntry, SeatingConfig, PanelOptions, PanelSeatRecord, PanelSeatStatus, SeatingRecord, SeatingSeatRecord, PanelQuorumRecord, AgencyResult, PanelResult, PanelLedger, AgencyInstance, AgencyQuorumConfig, } from './api/types.js'; export { AgencyConfigError, AgencyQuorumError, AgencyPanelError, AgencySeatingError } from './api/types.js'; export { vendorOf } from './api/runtime/pool/vendor.js'; export { generateImage } from './api/generateImage.js'; export type { GenerateImageOptions, GenerateImageResult } from './api/generateImage.js'; export { editImage } from './api/editImage.js'; export type { EditImageOptions, EditImageResult } from './api/editImage.js'; export { upscaleImage } from './api/upscaleImage.js'; export type { UpscaleImageOptions, UpscaleImageResult } from './api/upscaleImage.js'; export { variateImage } from './api/variateImage.js'; export type { VariateImageOptions, VariateImageResult } from './api/variateImage.js'; export { segment } from './api/segment.js'; export { removeBackground, DEFAULT_BACKGROUND_REMOVAL_TIMEOUT_MS } from './api/removeBackground.js'; export { maskToEditMask, cropRegion, ReplicateSegmentationProvider, registerSegmentationProvider, resolveSegmentationProvider, resetSegmentationProviders, SegmentationModeNotSupportedError, InvalidSegmentationPromptError, SegmentationProviderError, FalBackgroundRemovalProvider, FAL_BIREFNET_MODEL, registerBackgroundRemovalProvider, resolveBackgroundRemovalProvider, resetBackgroundRemovalProviders, } from './io/segmentation/index.js'; export type { SegmentOptions, SegmentationResult, SegmentMask, SegmentationMode, SegmentationBox, SegmentationPoint, SegmentationRequest, ISegmentationProvider, SegmentationProviderId, SegmentationProviderOptionBag, ReplicateSegmentationOptions, SegmentationErrorCode, RemoveBackgroundOptions, BackgroundRemovalResult, BackgroundRemovalImage, BackgroundRemovalRequest, BackgroundRemovalOutput, BackgroundRemovalFormat, IBackgroundRemovalProvider, BackgroundRemovalProviderId, BackgroundRemovalProviderOptionBag, BackgroundRemovalProviderConfig, FalBackgroundRemovalOptions, FalBiRefNetVariant, } from './io/segmentation/index.js'; export { generateVideo } from './api/generateVideo.js'; export type { GenerateVideoOptions, GenerateVideoResult } from './api/generateVideo.js'; export { generateMusic } from './api/generateMusic.js'; export type { GenerateMusicOptions, GenerateMusicResult } from './api/generateMusic.js'; export { generateSFX } from './api/generateSFX.js'; export type { GenerateSFXOptions, GenerateSFXResult } from './api/generateSFX.js'; export { analyzeVideo } from './api/analyzeVideo.js'; export type { AnalyzeVideoOptions, AnalyzeVideoResult } from './api/analyzeVideo.js'; export { detectScenes } from './api/detectScenes.js'; export type { DetectScenesOptions } from './api/detectScenes.js'; export { performOCR } from './api/performOCR.js'; export type { PerformOCROptions, OCRResult } from './api/performOCR.js'; export { generateObject, ObjectGenerationError } from './api/generateObject.js'; export { resolveStructuredReply, resolveStructuredReplySpec, checkStructuredReply, recheckStructuredReply, structuredRepairMessage, StructuredReplyConfigError, } from './api/runtime/structuredReply.js'; export type { StructuredReplySpec, StructuredOutputMeta, StructuredReplyOutput, IStructuredSchemaRegistry, ResolvedStructuredReply } from './api/runtime/structuredReply.js'; export type { GenerateObjectOptions, GenerateObjectResult } from './api/generateObject.js'; export { streamObject } from './api/streamObject.js'; export type { StreamObjectOptions, StreamObjectResult, StreamObjectElement, DeepPartial } from './api/streamObject.js'; export { embedText } from './api/embedText.js'; export type { EmbedTextOptions, EmbedTextResult } from './api/embedText.js'; export { SpendBudget, UnpricedModelError, asSpendBudget, costOfUsageUSD, estimateCallCostUSD } from './api/runtime/spendBudget.js'; export type { SpendBudgetCall, SpendBudgetOptions, SpendBudgetSettlement, SpendLimitInfo } from './api/runtime/spendBudget.js'; export { transferStyle } from './api/transferStyle.js'; // Convenience re-export: every meaningful generateObject / structured-output // example uses Zod schemas, so consumers can `import { z } from '@framers/agentos'` // without adding zod as a separate direct dependency. The pinned version // matches the one agentos itself depends on. export { z } from 'zod'; export { createTestAgentOSConfig } from './core/config/AgentOSConfig.js'; export { setDefaultProvider, getDefaultProvider, clearDefaultProvider, type GlobalDefaultProvider, } from './api/runtime/global-default.js'; export { parseModelString, resolveProvider, resolveModelOption, shutdownProviderManagers, ProviderInitializationError, } from './api/model.js'; export { PROVIDER_DEFAULTS, autoDetectProvider } from './api/runtime/provider-defaults.js'; export type { ProviderDefaults } from './api/runtime/provider-defaults.js'; export { setProviderPriority, getProviderPriority, clearProviderPriority, } from './api/runtime/provider-priority.js'; export type { TaskType, ModelOption } from './api/model.js'; export { adaptTools, adaptToolsToMap, mergeAdaptableTools } from './api/runtime/toolAdapter.js'; export type { AdaptableToolInput, ToolDefinitionMap } from './api/runtime/toolAdapter.js'; export { getDefaultAgentOSUsageLedgerPath, resolveAgentOSUsageLedgerPath, readRecordedAgentOSUsageEvents, recordAgentOSUsage, getRecordedAgentOSUsage, clearRecordedAgentOSUsage, } from './api/runtime/usageLedger.js'; export type { AgentOSUsageLedgerOptions, AgentOSUsageEvent, AgentOSUsageRecordInput, AgentOSUsageAggregate, } from './api/runtime/usageLedger.js'; // JSON extraction (centralized LLM output parsing) export { extractJson } from './safety/validation/extractJson.js'; // Global LLM usage observer (host-side cost telemetry hook). Hosts // register a single callback at boot; every generateText / generateObject // / streamText / streamObject call fires it once with the resolved // provider / model / usage / source so downstream cost + billing // systems don't need per-callsite wrappers. export { setGlobalLlmObserver, getGlobalLlmObserver, fireLlmUsageObserver, } from './api/observers.js'; export type { LlmUsageAccountContext, LlmUsageAccountResolver, LlmUsageEvent, LlmUsageObserver } from './api/observers.js'; // CI retrigger // API key pools: several keys per provider from one comma-separated string, // failover to the next usable key when one is revoked, unpaid or throttled, // probes before a failed key returns, and state a host may persist. export { ApiKeyPool, keyFingerprint, keyPoolStrategyFromEnv, InMemoryKeyPoolStateStore, SqlKeyPoolStateStore, keyPoolStateDdl, KEY_POOL_STATE_DDL, classifyKeyFailure, isQuotaError, retryAfterMs as retryAfterHeaderMs, } from './core/providers/index.js'; export { setKeyPoolDefaults, getKeyPoolDefaults } from './api/keyPoolDefaults.js'; export type { KeyPoolDefaults } from './api/keyPoolDefaults.js'; // One key's standing, by its provider's billing probe: ok, exhausted, invalid, throttled or unknown. export { probeProviderKey, PROBEABLE_KEY_PROVIDERS } from './api/probeProviderKey.js'; export type { ProbeProviderKeyOptions, ProbeProviderKeyResult, ProviderKeyState, ProbeableKeyProvider } from './api/probeProviderKey.js'; export type { KeyProbeOptions, KeyProbeAnswer, KeyProbeFailure } from './core/providers/index.js'; export type { ApiKeyPoolConfig, ProbeResult as KeyProbeResult, KeyPoolStateStore, KeyState, SqlKeyPoolStateStoreOptions, KeyFailureKind, } from './core/providers/index.js';