Providers and interfaces
Core types
Section titled “Core types”Important public types live in src/lib/types.ts.
ProviderKindProviderConfigBookmarkSorterSettingsAgentProviderAgentRequestAgentDecisionProcessBookmarkResultReviewQueueItemEventLogEntryRuntimeMessageMap
Provider implementations
Section titled “Provider implementations”src/lib/providers.ts currently contains:
OpenAiCompatibleProviderAnthropicProviderAzureOpenAiProviderOllamaProviderHeuristicFallbackProvider
Request shapes
Section titled “Request shapes”- OpenAI-compatible providers use
POST /chat/completions - Anthropic uses
POST /messages - Azure OpenAI uses deployment-specific chat completion URLs
- Ollama uses
POST /api/chat
Safe fallback
Section titled “Safe fallback”createSafeProvider() returns the heuristic fallback if required configuration is missing or provider creation fails.
Folder resolution
Section titled “Folder resolution”Folder resolution is now split across focused helpers:
bookmark-roots.tsclassifies bookmark rootsbookmark-tree.tsnormalizes titles and path segmentsbookmark-resolver.tsresolves existing target folders and can prepend a preferred root
Adding a new provider
Section titled “Adding a new provider”- extend
ProviderKind - update
PROVIDERSandDEFAULT_SETTINGS - extend
hasProviderConfiguration() - implement the concrete provider class
- wire it into
createProvider()