Skip to main content
JavaScript SDK
v1.10.0
Added
  • Web source methods on MossClient: createWebSource, listWebSources, getWebSource, updateWebSource, resyncWebSource, and deleteWebSource, typed wrappers over the /v1/manage web source actions. createWebSource, resyncWebSource, and updateWebSource with resync: true return a jobId to poll with getJobStatus; deleteWebSource returns purgeJobId while the source’s pages are removed.
  • Types WebSource, CreateWebSourceOptions, CreateWebSourceResult, UpdateWebSourceOptions, UpdateWebSourceResult, ResyncWebSourceResult, DeleteWebSourceResult, and ManageApiError (carries the HTTP status).
  • MOSS_CLOUD_API_BASE_URL overrides the host used by the web source methods.
See Web Sources.
Python SDK
v1.10.0
Added
  • Web source methods on MossClient: create_web_source, list_web_sources, get_web_source, update_web_source, resync_web_source, and delete_web_source, typed wrappers over the /v1/manage web source actions. create_web_source, resync_web_source, and update_web_source with resync=True return a job_id to poll with get_job_status; delete_web_source returns purge_job_id while the source’s pages are removed.
  • Types WebSource, CreateWebSourceResult, UpdateWebSourceResult, ResyncWebSourceResult, DeleteWebSourceResult, and ManageApiError (carries the HTTP status).
  • MOSS_CLOUD_API_BASE_URL overrides the host used by the web source methods.
See Web Sources.
API
  • Several web sources per index: createWebSource now adds a site to an existing index instead of refusing it (up to 20 per index, each root URL once). Each source’s pages are tracked separately: a crawl replaces only its own pages, and deleteWebSource removes the source’s pages through a purge job (purgeJobId in the response) while the index and its other content stay.
  • updateWebSource accepts every crawl setting (rootUrl, maxPages, maxDocuments, maxDepth, includePaths, excludePaths, respectRobots, parseDocuments) as well as refreshCadence, plus resync: true to crawl right after saving.
  • listWebSources accepts an optional indexName filter.
  • A crawl requested while another crawl or build runs on the same index is queued (getJobStatus reports queued) instead of failing with 409.
  • Unchanged pages are no longer re-embedded on refresh, and page boilerplate (navigation, footers, cookie banners, skip links) is stripped before indexing.
JavaScript SDK
v1.9.0
  • Reliability improvements to on-device model loading. No API changes. Requires @moss-js/moss-core 0.25.0.
Python SDK
v1.9.0
  • Reliability improvements to on-device model loading. No API changes. Requires inferedge-moss-core 0.23.0.
Founding Agent
v2.2.0
Published as @moss-js/founding-agent. Install with npm install @moss-js/founding-agent. @moss-tools/founding-agent stays at 2.1.0 and receives no further releases.Added
  • Typed chat panel in the bubble: a toggle opens a text input so visitors can type instead of talk. Typed messages are merged into the transcript with the voice turns, without duplicates, and the panel closes when the call ends.
  • Intake form: a config-driven modal that opens after the agent’s configured number of answers. The mic pauses while the form is open and resumes on submit or dismiss; dismissing it keeps it closed for the rest of the session. Submissions post to the intake endpoint and publish an intake_completed event.
  • New @moss-js/founding-agent/core exports for custom UIs: the intake types, normalizeIntakeForm, validateIntakeValues, postIntake, and mergeTranscript.
Changed
  • Your token route must return the whole session object from createFoundingAgentSession. Returning only token and serverUrl silently disables the booking and intake forms. See Server token route.
JavaScript SDK
v1.8.0
Changed
  • Published as @moss-js/moss, depending on @moss-js/moss-core 0.24.0. Install with npm install @moss-js/moss. @moss-dev/moss stays at 1.7.1 and receives no further releases.
  • Improved on-device model loading for foundation models (moss-minilm, moss-mediumlm, moss-litelm). No API change.
Removed
  • The cloud query fallback. query on an index that is not loaded now rejects with an error telling you to call loadIndex first. The MOSS_QUERY_URL override is gone.
  • The MOSS_DISABLE_TELEMETRY opt-out. The SDK always attaches its stable per-device id to usage telemetry.
  • MOSS_MODEL_ARTIFACT_TOKEN is no longer used and is ignored.
Added
  • MossClient.queryMultiIndex(indexNames, query, options): search several loaded indexes in one call and get the global top-k, each result tagged with its source indexName. options.alpha works as in query (default 0.8): 1.0 embedding-only, 0.0 keyword-only, in between hybrid via Reciprocal Rank Fusion.
  • MossClient.loadIndexes(indexNames, options): best-effort bulk load returning LoadIndexesResult { loaded, failed }; MossClient.unloadIndex(indexName) and MossClient.unloadIndexes(indexNames) release loaded indexes.
  • QueryResultDocumentInfo.indexName (set on multi-index results) and the LoadIndexesResult type.
Python SDK
v1.8.0
Removed
  • The cloud query fallback. query() on an index that is not loaded now raises RuntimeError telling you to call load_index first. MossClient no longer depends on httpx, and the MOSS_QUERY_URL override is gone.
  • The MOSS_DISABLE_TELEMETRY opt-out. The SDK always attaches its stable per-device id to usage telemetry.
  • MOSS_MODEL_ARTIFACT_TOKEN is no longer used and is ignored.
Added
  • Keyword and hybrid multi-index search: query_multi_index honors QueryOptions.alpha exactly like query. 1.0 is embedding-only, 0.0 is keyword-only, and values in between fuse both signals with Reciprocal Rank Fusion, merging each index’s own BM25 hits by score before fusion.
Changed
  • Improved on-device model loading for foundation models (moss-minilm, moss-mediumlm, moss-litelm). No API change.
  • query_multi_index defaults alpha to 0.8 to match query. Pass QueryOptions(alpha=1.0) for the previous embedding-only behavior. Requires inferedge-moss-core 0.22.0.
Fixed
  • QueryOptions(alpha=0.0) is forwarded as given instead of being treated as unset, so keyword-only search works on loaded indexes.
  • Keyword-only text queries no longer embed the query first, so they no longer load an embedding model and work on custom-model and identity-less indexes.
  • Non-finite alpha (NaN, infinities) is rejected with a clear error instead of producing NaN scores.
API
  • Web sources: crawl a website into an index via new /v1/manage actions (createWebSource, listWebSources, getWebSource, resyncWebSource, updateWebSource, deleteWebSource), with optional daily or weekly refresh schedules and linked PDF/DOCX parsing. See Create Web Source.
Python SDK
v1.7.3
Added
  • create_index_from_files accepts parse_options (ParseOptions): use_high_resolution, segmentation_method (“smart_layout_detection” or “page_by_page”), ocr_mode (“auto_ocr” or “full_ocr”), and merge_tables.
  • session() accepts artifact_version and manifest_sha256 keyword arguments to pin a foundation model’s immutable publisher release, part of the model-cache provenance hardening (#329).
Changed
  • Supported content_type values are application/pdf and the DOCX MIME, matching the parse service’s admission check.
  • JobPhase includes the crawl and parse pipeline phases.
  • Requires inferedge-moss-core 0.21.3 (parse options support and the moss-mediumlm 512 dimension fix).
Fixed
  • Local text queries on foundation indexes without an exact model artifact identity keep the core’s actionable error instead of a misleading “custom embeddings” message.
See Index from files.
JavaScript SDK
v1.7.1
Fixed
  • createIndexFromFiles with in-memory data (Uint8Array, ArrayBuffer, Blob, or File) failed at the native boundary with “Failed to get Array length on JsParseFileInput.data”; bytes are now marshalled in the representation the binding accepts. The path flow was unaffected.
See Index from files.
JavaScript SDK
v1.7.0
  • New CreateIndexFromFilesOptions.parseOptions (ParseOptions, now exported): control server-side extraction with useHighResolution, segmentationMethod (smart_layout_detection or page_by_page), ocrMode (auto_ocr or full_ocr, the latter for scanned documents with no text layer), and mergeTables. Requires @moss-dev/moss-core 0.23.0.
  • ParseFileInput.contentType supports application/pdf and the DOCX MIME, matching the parse service’s admission check; unsupported types fail fast locally with a clear error.
  • JobProgress.currentPhase includes the crawl and parse pipeline phases (queued, crawling, parsing_documents, parsing, waiting_for_parser, parsing_complete).
  • Local text queries on server-built foundation indexes without an exact model artifact identity are refused with an actionable error instead of embedding against a guessed artifact; explicit query embeddings and cloud queries are unaffected.
Elixir SDK
v1.1.0
Added
  • Client.create_index_from_files/5 accepts a parse_options map controlling server-side extraction: :use_high_resolution, :segmentation_method (“smart_layout_detection” or “page_by_page”), :ocr_mode (“auto_ocr” or “full_ocr”), and :merge_tables. Atom or string keys are accepted; unknown keys and wrong value types raise a clear error.
Changed
  • Supported parse content types are application/pdf and the DOCX MIME, matching the parse service’s admission check. Docs now state that :name, :content_type, and :path are all required per file.
  • Job status current_phase includes the crawl and parse phases (“crawling”, “parsing_documents”, and the parser phases).
  • Bumped moss_core dependency to 0.18.0.
Fixed
  • Client.session/3 with invalid credentials returns {:error, reason} instead of exiting the calling process; sessions start unlinked and link on success.
Included from earlier unreleased work
  • Device-id contract for usage tracking (#312): Moss.Client.new/3 resolves a stable per-device id once and applies it to both manager and session telemetry, so a device counts once toward Monthly Active Devices across the whole client.
JavaScript SDK
v1.6.0
  • New MossClientOptions.identity (MossIdentity): pass a stable caller-managed deviceId and optional userId at construction. The caller’s deviceId is emitted as the billable telemetry deviceId (Monthly Active Device key); Moss’s stable UUID is always emitted alongside as mossDeviceId for correlation; userId is never billable. Values must be 1-256 UTF-8 bytes with no surrounding whitespace, control or format characters, lone surrogates, or replacement characters; invalid values throw at construction. Without a configured identity, deviceId and mossDeviceId both carry Moss’s UUID, so existing billing behavior is unchanged. Requires @moss-dev/moss-core 0.22.0; constructing with an identity on an older core fails fast with an actionable error. Opt out of telemetry with MOSS_DISABLE_TELEMETRY=1 as before.
TEN
v0.1.0
Added
  • MossSessionManager.last_time_taken_ms - the engine-measured retrieval time (ms) from the most recent query_context call (SearchResult.time_taken_ms); None before the first query or on error.
Changed
  • First public release to PyPI (pip install ten-moss).
Python SDK
v1.7.2
Dependencies
  • Bump inferedge-moss-core to 0.21.0. The core now publishes an abi3 wheel (cp310-abi3, installs on Python 3.10-3.14) and a glibc ≥ 2.35 x86_64 wheel, so moss installs in common older-runtime environments - notably the TEN Framework dev container (Ubuntu 22.04 / Python 3.10), where the previous cp312+ / manylinux_2_38 wheels did not resolve. No API changes.
TEN
v0.0.1
Added
  • MossSessionManager - session-scoped Moss grounding for TEN extensions, built on the Moss Sessions API: open, query_context, add_docs, get_docs, delete_docs, push_index, from_config, doc_count.
  • MossSessionConfig - standardized moss_* properties for TEN extensions. The project key is a masked SecretStr; moss_top_k/moss_alpha/moss_max_context_chars are range-validated; unset moss_model_id adopts the stored index’s model; moss_max_context_chars caps the injected grounding block.
  • examples/create_index.py - create and populate a demo index.
Pipecat
v0.0.5
Changed
  • Bumped pipecat-ai minimum from >=1.1.0 to >=1.5.0.
JavaScript SDK
v1.4.0
  • New: SessionIndex.close() and MossClient.close(), both idempotent, plus Symbol.asyncDispose support so await using works on Node 24. Closing releases the native index, pollers, and the session’s reference to the shared embedding model (the service is dropped when the last session using it closes; the allocator retains and reuses those pages for the next load, so footprint stays bounded at one model per model id). Threads are no longer per-session. Concurrent close() callers share one completion promise and all settle when disposal finishes.
  • Published type declarations no longer force consumers to enable the ESNext.Disposable lib (the bundle carries the reference itself); consumers need TypeScript 5.2 or newer.
  • README and samples now demonstrate the close() / await using lifecycle.
  • MossClient.close() now also closes every live session created by that client (tracked via weak references); sessions can still be closed individually first.
  • close() fails loudly when the installed @moss-dev/moss-core predates the lifecycle API instead of silently leaking; this release requires @moss-dev/moss-core 0.20.0.
  • Declared engines: node >= 20.4 (first Node release where Symbol.asyncDispose exists).
VS Code
v0.1.0
Added
  • Semantic code search sidebar with live debounced queries
  • Manual Create Index / Rebuild Index workflow
  • Local index persistence (saveToDisk / loadFromDisk)
  • Moss Cloud sync via pushIndex() with restore on new machines
  • Sidebar gear settings for API credentials and cloud sync toggle
  • Sync to Cloud button and command
  • Hard exclusions for node_modules, build output, and common dependency folders
  • Moss native runtime isolated in a worker process
  • Marketplace packaging with cross-platform native binaries
Python SDK
v1.7.1
Added
  • Verbatim payload round-trip (DocumentInfo.payload): store an opaque structured payload (e.g. a JSON string) verbatim alongside a document and get it back as-is on query/get - never embedded or searched.
  • Stable per-device id for usage tracking: the SDK now sources a persisted device id (~/.moss/.moss-device-id, MOSS_DISABLE_TELEMETRY opt-out) and hands it to the core, making per-device usage attribution stable across restarts.
  • Non-blocking create_index. create_index(..., wait=False) returns a JobHandle as soon as the build is submitted, instead of blocking until it completes:
    • handle.job_id is available immediately.
    • handle.status() gives a live progress readout (phase + percent) as a JobStatusResponse.
    • handle.wait() blocks until the build finishes and returns the terminal JobStatusResponse. It polls asynchronously, so it parks no threads and never holds the GIL.
    • New MossClient.wait_for_job(job_id) blocks by job_id alone - submit, tear down the machine, then reconnect in a fresh process to wait on or poll the build.
    • The build runs server-side, so a submitted job completes regardless of the client. wait defaults to True and is keyword-only, so existing blocking callers are unaffected.
Dependencies
  • Requires inferedge-moss-core==0.20.1.
JavaScript SDK
v1.3.2
Changed
  • Picks up @moss-dev/moss-core 0.19.2 (dependency currency; native-binding DocumentInfo.payload round-trip fix). No SDK API changes. (Prior 1.3.1 release re-run failed because the version was not bumped; this restores a publishable version.)
Voice Agent Manager
v1.0.0-beta.15
Changed
  • LiveKit stack bumped atomically 1.5.7 -> 1.6.4 (livekit-agents + all livekit-plugins-*); live Deepgram -> Gemini -> Cartesia round-trip verified.
  • transformers constrained to turn-detector’s validated line: >=4.47.1,!=4.57.2,!=4.57.3,<5.0.0 (the previous >=5.0.0 floor was unintentional).
  • google-genai>=1.67,<2.0.0; livekit-api>=1.0.7.
Python SDK
v1.7.0 (superseded by 1.7.1)
  • First cut of non-blocking create_index. Use 1.7.1 instead, which finalized the API (wait is keyword-only; JobHandle.wait() and MossClient.wait_for_job() return JobStatusResponse) and fixed a GIL hold that could freeze the event loop while a build was submitted or awaited.
Python SDK
v1.6.0
Added
  • Exact / graph retrieval on SessionIndex, at parity with the iOS SDK. get_docs now accepts a deterministic-fetch GetDocumentsOptions - fetch by doc_ids, by a metadata filter (same dict shape as query filters; no query vector, no ranking), with sort_by/ascending ordering, and group_by parent grouping. New ParentGrouping(parent_field, order_field) collapses sibling chunks into one result per unit. QueryOptions.group_by applies the same grouping to semantic queries.
Dependencies
  • Bumped inferedge-moss-core to 0.19.0 (adds the graph-retrieval surface).
Python SDK
v1.5.0
Added
  • Verbatim document payload. DocumentInfo now carries an optional payload string - an opaque structured value (e.g. JSON) stored and returned unchanged, never embedded or searched. Set it when building/adding documents and read it back from get_docs / query results. Useful for keeping the full structured record alongside the embeddable text. Requires the new core and the index-manager service that persists it.
Fixed
  • Managed (cloud) query results now surface payload (previously dropped when mapping the response).
Dependencies
  • Bumped inferedge-moss-core to 0.18.0 (adds payload support through the upload/build pipeline).
Swift SDK
v0.6.2
Fixed
  • Parent grouping on query no longer under-assembles units. The engine truncated to topK before sibling collapse, so siblings ranked below the cutoff were dropped. query(…, groupByParent:) now over-fetches candidates and returns topK units assembled from a wider window. For guaranteed-complete units, prefer getDocs(where:…, groupByParent:), which collapses over its full fetch.
  • Deterministic sibling order under grouping. Parent grouping breaks orderField ties by document id, so equal/missing order values yield a stable within-unit order.
Native runtime sdkVersion: 0.21.2.
Swift SDK
v0.6.1
Fixed
  • Restored SessionOptions.autoLoadOnInit. It shipped in 0.5.0 but was absent from 0.6.0 (the graph-retrieval branch predated the feature and never picked it up), so code using SessionOptions(autoLoadOnInit:) failed to compile against 0.6.0. 0.6.1 carries both graph/exact retrieval and autoLoadOnInit. Upgrade straight from 0.5.0 or 0.6.0 to 0.6.1.
Native runtime sdkVersion: 0.21.1.
Swift SDK
v0.6.0
Added
  • Deterministic / exact (“graph”) retrieval on a session. getDocs(ids:) now returns documents in the order requested; new getDocs(where:sortBy:ascending:) fetches by a metadata predicate with no query vector and no similarity ranking.
  • Typed metadata filter. A Filter DSL (.equals / .and / .greaterThanOrEqual / .isIn / .near / …) with literal-expressible FilterValue, usable in both getDocs(where:) and QueryOptions.filter - no hand-written filter JSON.
  • Parent-unit grouping. ParentGrouping(parentField:orderField:) on getDocs / query collapses sibling documents that share a parent id into a single result, assembled in orderField order.
  • Verbatim structured payload. DocumentInfo.payload (and QueryResult.payload) stores and returns an opaque value unchanged - not embedded or searched. Codable sugar: init(…, structured:) and decodedPayload(_:). Indexes saved without a payload load with payload = nil.
Native runtime sdkVersion: 0.21.0.
Swift SDK
v0.5.0
Added
  • SessionOptions.autoLoadOnInit. Defaults to true (auto-load the named index from the cloud at session creation). Set false for a local-only, disk-first session: creation returns immediately and you populate it yourself (loadFromDisk, falling back to loadIndex only on a cache miss).
Native runtime sdkVersion: 0.20.0.
JavaScript SDK
v1.3.1
Fixed
  • Fixed a native crash when re-saving an on-disk session. Calling saveToDisk on a session previously restored with loadFromDisk could crash the process while writing the on-disk index, because the index file was rewritten in place while the loaded session was still reading from it. saveToDisk still persists immediately, but now writes to a temporary file and atomically renames it into place, so the file the live session is reading from is never rewritten underneath it. Requires @moss-dev/moss-core 0.19.1.
JavaScript SDK
v1.3.0
Added
  • Sessions work with a custom IAuthenticator. MossClient.session() now works when the client is constructed with a custom authenticator (short-lived tokens / delegated auth), not just a static project key - it previously threw. The session authenticates (credential validation, pushIndex, loadIndex) and reports usage through the same auth bridge as loadIndex. Requires @moss-dev/moss-core 0.19.0 (adds the SessionIndex.withAuthenticator napi factory).
JavaScript SDK
v1.2.1
Added
  • Client-level cachePath. new MossClient(projectId, key, { cachePath }) (and the IAuthenticator overload) sets one location for the per-device telemetry id, honored by every operation that emits telemetry - loadIndex, session, and so on. Set it once instead of per call.
Fixed
  • Session telemetry now carries the per-device id. MossClient.session() now attaches the anonymous deviceId to session.* telemetry events, matching loadIndex. Previously only the loadIndex path attached a deviceId, so usage from session-only clients was reported without one.
  • The per-device id is now resolved once and shared across loadIndex and session() within a client, so a client that uses both surfaces reports a single, consistent id.
Changed
  • The per-device id location is now resolved with this precedence: the client-level cachePath, then the cachePath passed to loadIndex (back-compat), then a per-user fallback, <home>/.moss/.moss-device-id. Previously the id was only written when loadIndex was given a cachePath.
JavaScript SDK
v1.2.0
Added
  • Usage telemetry on the custom-authenticator path. Automatic, privacy-light usage telemetry now works when the client is constructed with a custom IAuthenticator (e.g. short-lived tokens), not just a plain project key - previously it was silently disabled on that path. This enables device-level usage reporting for client-side / delegated-auth deployments.
  • A stable, anonymous per-device id is generated once and persisted at <cachePath>/.moss-device-id (the cachePath you already pass to loadIndex), then attached to telemetry as deviceId. It is a random UUID - no hardware identifier, no PII.
  • Opt out entirely with MOSS_DISABLE_TELEMETRY=1.
  • Bumped @moss-dev/moss-core to 0.18.0 (adds the setDeviceId napi binding and auth-provider telemetry).
Python SDK
v1.4.1
Fixed
  • Loading moss-litelm indexes could fail with Deserialization error: unsupported version: 3. These indexes use the v3 index format, which requires inferedge-moss-core 0.17.0; installing moss now brings in that core version automatically, so moss-litelm indexes load out of the box with no manual dependency steps. (moss-minilm / moss-mediumlm indexes are unaffected.)
Dependencies
  • Pinned inferedge-moss-core==0.17.0.
JavaScript SDK
v1.1.0
Added
  • MossClient.session(name, modelId?) - local-first session index. Construct a session, add/delete/get documents and run queries entirely in-process (no cloud round-trip per operation), then pushIndex() to persist to the cloud. Also loadIndex(indexName, { autoRefresh, pollingIntervalInSeconds }) to pull an existing cloud index into the session.
  • New top-level exports: SessionIndex, PushIndexResult, LoadSessionOptions.
  • Bumped @moss-dev/moss-core to 0.17.0 (adds the SessionIndex napi binding).
Swift SDK
v0.4.1
  • Clean re-release of the v0.4.0 fixes. The v0.4.0 tag was force-moved, which SwiftPM caches as a pin mismatch; v0.4.1 ships the same xcframework as v0.4.0 with the synced 4-argument Swift wrapper. Consume with from: "0.4.0" (resolves up) or from: "0.4.1".
Python SDK
v1.4.0
Dependencies
  • Bumped inferedge-moss-core to 0.17.0.
Swift SDK
v0.4.0
  • Moss.xcframework release with iOS device (arm64) and iOS simulator (arm64) slices, consumed via .package(url: "https://github.com/usemoss/moss", from: "0.4.0").
Swift SDK
v0.3.0
  • First tagged SwiftPM release of the Moss iOS SDK: binary Moss.xcframework with iOS device (arm64) and iOS simulator (arm64) slices, consumed via .package(url: "https://github.com/usemoss/moss", from: "0.3.0").
Python SDK
v1.3.0
Added
  • Local-first session indexing (merged from the separate moss-session package):
    • MossClient.session(index_name, model_id?) - creates a SessionIndex; auto-loads from cloud if an index with that name already exists, otherwise starts empty.
    • SessionIndex.add_docs(docs, options?) / delete_docs(doc_ids) / get_docs(options?) - local in-memory mutations and reads.
    • SessionIndex.query(query, options?) - semantic search over the local session index (~1-10ms, no network). Supports the same filter syntax as MossClient.query().
    • SessionIndex.push_index() - uploads the session index to cloud, creating or replacing the index with the same name. Documents are pushed with their locally-computed embeddings; no server-side re-embedding.
    • New exports from moss: SessionIndex, PushIndexResult.
  • model_id="custom" is supported for sessions - bring your own embeddings via DocumentInfo.embedding and QueryOptions.embedding; no local model is loaded.
Python SDK
v1.2.0
Changed
  • pip install moss is now ~64% smaller.
Fixed
  • Built-in model downloads (moss-minilm, moss-mediumlm) survive slow networks: resume after an interrupted connection instead of restarting, with automatic retries and exponential backoff on transient failures. (Also in 1.1.1.)
Dependencies
  • Bumped inferedge-moss-core to 0.14.0.
Python SDK
v1.1.1
Fixed
  • Built-in model downloads (moss-minilm, moss-mediumlm) survive slow networks: resume after an interrupted connection instead of restarting, with automatic retries and exponential backoff on transient failures.
  • Bumped inferedge-moss-core to 0.12.1.
moss-agent
v1.0.0
First stable release of moss-agent.Added
  • MossAgent - process-wide Moss runtime. Holds a hot index cache shared across every room (voice) or every request (text).
  • Voice path - MossAgent.attach(ctx) -> MossCall binds a Moss call scope to a LiveKit JobContext. Idempotent on ctx.room.name. MossCall.query and MossCall.query_multi_index route through the call scope.
  • Text path - MossAgent.query(name, query, options=None) and MossAgent.query_multi_index(names, query, options=None) for HTTP / chat / non-LiveKit callers.
  • Full index CRUD (create_index, add_docs, delete_docs, delete_index, list_indexes, get_index, get_docs, get_job_status) and cache lifecycle (load_index, load_indexes, unload_index, unload_indexes) on MossAgent.
  • Re-exports of DocumentInfo, IndexInfo, QueryOptions, SearchResult, etc. from moss_core.
Requires
  • inferedge-moss-core == 0.12.0 - introduces the moss_core.Agent and moss_core.CallScope PyO3 bindings this package wraps.
Founding Agent
v0.2.0
Breaking: top-level React component replaced.
  • Replaced MossFoundingAgentCard with MossFoundingAgentBubble, a compact click-to-talk FAB that morphs into a pill with mute, elapsed-time, and end-call controls while live. Supports position="fixed" (default, bottom-right with safe-area insets) or position="inline". Keyboard: Esc = end, M = mute.
  • Added a curated 6-color palette (violet, cobalt, teal, emerald, coral, amber) exported as BUBBLE_COLORS. The bubble’s color prop accepts a preset name.
  • Added examples/bubble-playground/, a local Vite playground for previewing the bubble across all presets.
Python SDK
v1.1.0
Added
  • query_multi_index(names, query, options): search across multiple loaded indexes; returns the global top-K with each doc tagged by source index_name. Embedding-only; options.alpha is ignored.
  • load_indexes(names, ...) / unload_indexes(names): bulk lifecycle. load_indexes is best-effort and returns LoadIndexesResult { loaded, failed }.
  • index_name field on QueryResultDocumentInfo (set on multi-index results).
  • Bumped inferedge-moss-core to 0.11.0.
JavaScript SDK
v1.0.2
Changed
  • Bumped @moss-dev/moss-core dependency from 0.9.1 to 0.10.0, which adds prebuilt binaries for x86_64-apple-darwin (Intel Macs) and realigns the npm package version with the underlying Rust core.
Pipecat
v0.0.4
Changed
  • Updated requires-python from >=3.10 to >=3.11 to match pipecat-ai 1.1.0 requirements.
VitePress
v1.0.0-beta.2
Changed
  • Swapped runtime browser SDK from @inferedge/moss to @moss-dev/moss-web
CLI
v0.1.1
  • Added named config profiles to switch between accounts and projects, and an interactive mode for moss query.
Founding Agent
v0.1.0
Initial release.
  • MossFoundingAgent server class and createFoundingAgentSession helper for minting voice sessions from a Node backend (Next.js, Express, anywhere with fetch).
  • <MossFoundingAgent /> React component (exported from @moss-tools/founding-agent/react) that renders a voice UI - idle state, start button, visualizer, end-call - and connects to LiveKit via a company-supplied token endpoint.
Browser SDK
v1.0.0
Initial release of @moss-dev/moss-web - browser SDK for in-browser semantic search.Added
  • In-browser semantic search: Full query pipeline runs entirely in the browser via WebAssembly
  • Full CRUD operations: createIndex, addDocs, deleteDocs, deleteIndex, listIndexes, getIndex, getDocs, getJobStatus
  • File-based index creation: createIndexFromFiles accepts Uint8Array data (no filesystem paths in browser)
  • Local index operations: loadIndex, query, refreshIndex, unloadIndex, hasIndex, getIndexInfo
  • Lazy initialization: WASM + model download happens automatically on first operation
  • Metadata filtering: Same filter syntax as Node SDK ($eq, $ne, $gt, $gte, $lt, $lte, $in, $nin, $near, $and, $or)
  • Embedding models: moss-minilm (default), moss-mediumlm
  • API shape aligned with @moss-dev/moss (Node SDK)
JavaScript SDK
v1.0.1
Added
  • Custom authenticator for browser-safe authentication: new MossClient.withAuthenticator() and IndexManager.withAuthenticator() factory methods accept a JS-side token callback, backed by JsAuthBridge in @moss-dev/moss-core (#226).
Changed
  • CLOUD_API_MANAGE_URL replaced by granular constants: CLOUD_API_IDENTITY_URL, CLOUD_API_AUTH_URL, etc. (#226).
Voice Agent Manager
v1.0.0-beta.14
Added
  • submit_session_report(ctx, room_name) method on MossAgentSession for submitting LiveKit session reports (transcripts) to the Moss backend. Call from your on_session_end callback to enable transcript download via the CLI.
C SDK
v0.9.0
  • Precompiled libmoss binaries for macOS ARM64, Linux x86_64, Linux ARM64, and Windows x86_64. Each archive ships include/libmoss.h plus shared and static libraries. See C SDK.
Elixir SDK
v1.0.1
Changed
  • Bumped moss_core dependency to 0.9.0.
  • Session authentication now uses short-lived JWT tokens (enterprise plan required).
  • Removed validate_credentials call from Client.session/3; credential exchange happens inside the Rust core during session init.
  • Updated package metadata and README.
Portal
  • Refreshed dashboard aesthetic and added multi-org support with team management.
JavaScript SDK
v1.0.0
Architecture
  • Rust-native core: The SDK now delegates all index management, querying, and embedding generation to @moss-dev/moss-core (Rust via NAPI-RS), replacing the previous pure-JavaScript implementations
  • Node-only: Dropped browser/WASM support; the SDK targets Node.js 20+ exclusively
  • Query embeddings are now generated in Rust (queryText / loadQueryModel), matching the Python SDK architecture
Changed
  • Package renamed from @inferedge/moss to @moss-dev/moss
  • NAPI binding renamed from moss-core to @moss-dev/moss-core (v0.8.7, tracking Rust core version)
  • query() uses Rust-native queryText() for local queries (no JS embedding pipeline)
  • query() with embedding option uses Rust query() directly
  • query() falls back to cloud HTTP when index is not loaded locally
Elixir SDK
v1.0.0
Changed
  • Renamed package from moss_session to moss.
  • Published as a public Hex package (no longer requires organization: "moss").
  • Bumped version to 1.0.0 stable.
JavaScript SDK
v1.0.0-beta.8
Added
  • Filesystem Index Caching: loadIndex() now accepts an optional cachePath in LoadIndexOptions to cache index binaries and documents to disk (Node.js/Bun only)
    • Cache is automatically invalidated when the cloud index is updated
    • Auto-refresh also persists refreshed data to the cache
    • Atomic writes prevent cache corruption from partial/interrupted writes
    • Path traversal protection on index names
    • Graceful fallback to re-download if cached data is corrupted
  • Metadata Filtering: query() now accepts an optional filter in QueryOptions to narrow results by document metadata on locally loaded indexes
    • Comparison operators: $eq, $ne, $gt, $gte, $lt, $lte
    • Set operators: $in, $nin
    • Composable with $and / $or for complex predicates (supports arbitrary nesting)
    • Numeric coercion: number filter values are automatically stringified for consistent matching
  • Geo-distance filtering: new $near operator filters documents by haversine distance from a "lat,lng,radiusMeters" value
  • New exported types: FilterCondition, MetadataFilter
ElevenLabs
v0.0.1
Added
  • Initial release of elevenlabs-moss integration.
  • MossClientTool for registering Moss semantic search as an ElevenLabs client tool.
  • Example moss-elevenlabs-demo.py demonstrating tool registration.
Python SDK
v1.0.0
First stable release of the moss Python SDK (previously published as inferedge-moss).Import path changed: from moss import MossClient (was from inferedge_moss import ...)Features
  • Semantic search with built-in on-device models (moss-minilm, moss-mediumlm); embedding computation runs in Rust for speed; custom embeddings supported via QueryOptions.embedding
  • Hybrid search with keyword + semantic search and configurable alpha blending
  • Metadata filtering on locally loaded indexes with rich operators ($eq, $ne, $gt, $gte, $lt, $lte, $in, $nin, $and, $or, $near for geo-distance)
  • Cloud query fallback: query() automatically falls back to the cloud API when the index is not loaded locally
  • Hot reload & auto-refresh: load_index() supports auto_refresh with configurable polling interval to detect and reload updated indexes
  • Async bulk index pipeline: binary upload, server-side build, poll until completion
  • Index mutations: create_index, add_docs, delete_docs return MutationResult with job_id, index_name, doc_count
  • Multi-index support for isolated search spaces
  • Python 3.10 to 3.14 supported
CLI
v0.1.0
  • Initial release - CLI wrapper for the Moss Python SDK (v1.0.0)
  • Index management: moss index create, list, get, delete
  • Document management: moss doc add, delete, get
  • Semantic search: moss query with --cloud, --filter, --alpha, --top-k
  • Job tracking: moss job status with --wait for live progress
  • Interactive credential setup: moss init
  • Three-tier auth resolution: CLI flags > env vars > config file
  • JSON and CSV document input, stdin piping with --file -
  • --json flag on all commands for machine-readable output
  • Rich terminal output: tables, progress spinners, colored status
Python SDK
v1.0.0-beta.19
  • Updated inferedge-moss-core dependency to 0.8.7
  • Telemetry improvements
  • Embedding computation for built-in models (moss-minilm, moss-mediumlm) now runs in Rust; custom embeddings continue to be supported via QueryOptions.embedding
  • Fixed list_indexes() failing when the cloud API returns null for certain IndexInfo fields on indexes created by older SDK versions
Pipecat
v0.0.3
Added
  • Supports latest version of moss
Elixir SDK
v1.0.0-beta.5
Changed
  • Bumped moss_core dependency to 0.8.7, which fixes the precompiled NIF tarball for macOS - the file inside the archive is now named with the versioned filename so RustlerPrecompiled places it correctly in priv/native.
Elixir SDK
v1.0.0-beta.4
Changed
  • Bumped moss_core dependency to 0.8.6, which fixes precompiled NIF packaging for macOS - the binary is now correctly distributed as .so (required by RustlerPrecompiled) instead of .dylib.
Elixir SDK
v1.0.0-beta.3
Changed
  • Bumped moss_core dependency to 0.8.5.
Python SDK
v1.0.0-beta.18
  • Telemetry improvements
Elixir SDK
v1.0.0-beta.1
Initial release of the moss_session Elixir SDK (later renamed to moss in 1.0.0) with local-first session indexing.Added
  • Moss.Client - single entry point for all operations
    • new/3 - creates a client; starts an internal local index manager
    • session/3 - auto-loads from cloud if the named index exists; starts empty otherwise; pre-warms built-in models ("moss-minilm" / "moss-mediumlm") to eliminate cold-start delay on first query
    • Cloud CRUD: create_index/4 (model_id optional, defaults to "moss-minilm"), add_docs/4, delete_docs/3, get_job_status/2, get_index/2, list_indexes/1, delete_index/2, get_docs/3
    • Local index ops: load_index/3, unload_index/2, has_index/2, query/4, refresh_index/2, get_index_info/2
    • Generates a per-client UUID (client_id) propagated to all sessions and managers for telemetry correlation
  • Moss.Session GenServer - local in-session index backed by Rust core
    • add_docs/3 - built-in models embed automatically; model_id: "custom" reads .embedding from each DocumentInfo; returns {added, updated}
    • delete_docs/2 - remove documents by ID
    • get_docs/2 - retrieve documents (optionally filtered by ID list)
    • query/3 - semantic search; built-in models embed automatically; model_id: "custom" requires embedding: opt; accepts metadata filters
    • load_index/2 - load an existing cloud index into the session
    • push_index/1 - push local index to cloud (create or replace); flushes telemetry
  • Moss.Models - Elixir structs: DocumentInfo, SearchResult, QueryResultDoc, IndexInfo, PushIndexResult, RefreshResult, SerializedIndex, MutationResult, JobStatusResponse, CredentialsInfo, ModelRef
  • Metadata filtering - all query functions accept :filter map with full operator support
    • Field conditions: $eq, $ne, $gt, $gte, $lt, $lte, $in, $nin, $near
    • Logical combinators: $and, $or (fully nestable)
  • Background telemetry - aggregated telemetry handled by the Rust core
  • Built-in models - "moss-minilm" (fast) and "moss-mediumlm" (higher quality); embedding computation runs entirely in the Rust core via ONNX Runtime
  • model_id: "custom" - bring your own pre-computed embeddings; no local model required
Voice Agent Manager
v1.0.0-beta.13
Fixed
  • OpenAI TTS models (tts-* / *-tts) are no longer cached at worker startup. The TTS instance is created per-session instead.
Voice Agent Manager
v1.0.0-beta.12
Added
  • Support for passing Moss credentials (project_id, project_key, voice_agent_id) directly into the MossAgentSession constructor and MossAgentSession.prewarm(), falling back to MOSS_* environment variables when not provided.
  • TTS configuration via the options parameter on MossAgentSession, using SessionOptions(tts=TTSOptions(...)). Supported TTSOptions fields: model, voice, language (Cartesia), emotion (Cartesia), instructions (OpenAI gpt-4o-mini-tts only). All fields override the platform-configured defaults and are forwarded directly to the underlying provider.
  • SessionOptions and TTSOptions exported from moss_voice_agent_manager for IDE autocompletion support.
  • OpenAI TTS support: routes any model matching tts-* prefix or *-tts suffix (e.g. tts-1, gpt-4o-mini-tts) to the OpenAI plugin (optional dependency: pip install 'moss-voice-agent-manager[openai]').
VitePress
v1.0.0-beta.1
Added
  • Initial beta release of the Moss semantic search plugin for VitePress
  • MossPlugin VitePress plugin with automatic markdown indexing via @moss-tools/md-indexer
  • Search.vue component - full search modal with keyboard navigation
  • SearchButton.vue component - trigger button for the search modal
  • TypeScript types exported via ./types
  • Support for both ESM and CJS consumers
  • Configurable apiKey, indexId, placeholder, and maxResults options
Voice Agent Manager
v1.0.0-beta.9
Added
  • AgentServer re-exported from moss_voice_agent_manager
  • AgentSession re-exported from moss_voice_agent_manager
  • inference module re-exported from moss_voice_agent_manager
  • room_io module re-exported from moss_voice_agent_manager (includes RoomOptions, AudioInputOptions)
  • MultilingualModel re-exported from moss_voice_agent_manager (turn detection)
  • livekit-plugins-turn-detector==1.3.11 added as a dependency
  • voice_agent_name field added to MossConfig - populated from the platform credentials API, eliminating the need for a separate httpx call in agent code
Voice Agent Manager
v1.0.0-beta.8
Fixed
  • MossAgentSession.prewarm() no longer crashes with “no running event loop”.
Voice Agent Manager
v1.0.0-beta.7
Added
  • MossAgentSession.prewarm() static method for use as prewarm_fnc in WorkerOptions - initializes providers once at worker startup instead of per session
  • ctx parameter on MossAgentSession.__init__() - when provided, reuses prewarmed providers from the worker process instead of creating new ones
  • JobProcess re-exported from moss_voice_agent_manager
Improved
  • Reduced agent session startup latency by supporting the LiveKit prewarm pattern
Usage
Python SDK
v1.0.0-beta.17
Added
  • Metadata Filtering: query() now accepts an optional filter dict to narrow results by document metadata on locally loaded indexes
    • Comparison operators: $eq, $ne, $gt, $gte, $lt, $lte
    • Set operators: $in, $nin
    • Composable with $and / $or for complex predicates (supports arbitrary nesting)
    • Numeric coercion: int and float filter values are automatically converted to strings for consistent matching
  • Geo-distance filtering: new $near operator filters documents by haversine distance from a "lat,lng,radiusMeters" value
  • When filter is passed to query() but the index is not loaded locally, a warning is logged and the filter is skipped (cloud query API does not yet support filtering)
  • Updated inferedge-moss-core dependency to 0.6.0
Portal
  • Billing UI updates.
Python SDK
v1.0.0-beta.16
  • Bumped inferedge-moss-core dependency to 0.5.0 to support session index telemetry and push_index improvements
Portal
  • Self-service password and profile updates from account settings.
Voice Server
v1.0.0-beta.3
Changed
  • Only set room agent configuration when agentName is explicitly provided to createParticipantToken()
  • Removed automatic fallback to voice_agent_name from credentials, allowing dispatch rules to handle agent joining
Voice Server
v1.0.0-beta.2
Fixed
  • Updated API endpoint from /api/voice-agent-deploy/get-voice-agent to /api/voice-agent/get-voice-agent to match backend API changes
Voice Agent Manager
v1.0.0-beta.4
Changed (Complete Rewrite)Complete architectural rewrite. The SDK is now a runtime agent library instead of a deployment client.Old SDK: Deployment client that uploads code to backend New SDK: Drop-in replacement for LiveKit AgentSession with Moss platform integrationAdded
  • MossAgentSession - Drop-in replacement for LiveKit AgentSession
  • Dynamic configuration fetching from Moss platform API
  • Runtime config API endpoint (/api/voice-agent/get-runtime-config)
  • Voice agent credentials API endpoint (/api/voice-agent/get-voice-agent)
  • Automatic provider configuration (STT, LLM, TTS)
  • Built-in metrics tracking (LLM, TTS, STT, VAD, EOU)
  • Diagnostics reporting with performance metrics
  • Model/provider name masking for proprietary information
  • Auto-initialization of VAD (Voice Activity Detection)
  • py.typed marker for IDE IntelliSense support
ConfigurationAll configuration now comes from environment variables and platform API:Required Environment Variables:
  • MOSS_PROJECT_ID - Project identifier
  • MOSS_PROJECT_KEY - Project authentication key
  • MOSS_VOICE_AGENT_ID - Voice agent identifier
Optional:
  • MOSS_PLATFORM_API_URL - Platform API URL (defaults to production)
Architecture
  • No fallbacks - Fails hard if configuration/credentials missing
  • Dynamic models - Model selection fetched from backend at runtime
  • Secure credentials - LiveKit credentials fetched from Supabase via API
  • No hardcoded secrets - All secrets from environment or API
Removed
  • MossVoiceClient class (replaced with MossAgentSession)
  • deploy() method (now runtime library, not deployment tool)
  • Custom tool source extraction
  • Static configuration files
Migration GuideThis version is NOT backward compatible. Complete migration required.Before (v1.x - Deployment SDK):
After (v1.0.0-beta.4 - Runtime SDK):
JavaScript SDK
v1.0.0-beta.7
Added
  • Async job-based mutations (createIndex, addDocs, deleteDocs) with built-in polling and onProgress callbacks
  • Large index support - up to 100k documents via presigned upload + server-side build
  • New binary index format with smaller payloads and faster deserialization; existing indexes using the previous format are still supported
md-indexer
v1.0.0-beta.3
  • Internal maintenance
Python SDK
v1.0.0-beta.15
  • All index mutations and reads now go through the Rust ManageClient, replacing the Python HTTP layer
  • Index creation uses an async bulk pipeline: binary upload → server-side build → poll until completion
  • load_index supports both V1 and V2 binary formats, with cloud query fallback when index isn’t loaded locally
  • New return type MutationResult (with job_id, index_name, doc_count) for create_index, add_docs, delete_docs
  • get_docs takes doc_ids directly instead of wrapping in GetDocumentsOptions
Voice Agent Manager
v1.0.0-beta.3
Changed (Breaking)
  • Removed agent_id parameter from deploy() method
  • voice_agent_id is now used internally as the agent identifier
  • Reordered parameters: voice_agent_id now comes before prompt in deploy()
  • project_name parameter now defaults to voice_agent_id (previously defaulted to agent_id)
Migration GuideBefore:
After:
Voice Agent Manager
v1.0.0-beta.1
Initial beta release.Added
  • MossVoiceClient for deploying voice agents to LiveKit
  • deploy() method with custom Python function tools support
  • Automatic source code extraction for custom tools
  • Project-based authentication (X-Project-Id, X-Project-Key)
  • Zero external dependencies (uses Python standard library)
Voice Server
v1.0.0-beta.1
Initial beta release.Added
  • MossVoiceServer class for managing voice agent connections
  • MossVoiceServer.create() - Fetch and initialize credentials from Moss API
  • voiceServer.getServerUrl() - Get voice agent server URL
  • voiceServer.createParticipantToken() - Generate participant tokens
  • voiceServer.getAgentName() - Get configured agent name
  • Automatic credential caching
  • Full TypeScript support with JSDoc
Python SDK
v1.0.0-beta.14
  • Query latency reduced from ~2,300ms to ~10ms for 100K vectors
  • Optimized search pipeline reducing memory allocations
  • Significantly reduced memory overhead for large indexes (100K+ documents) in the context of hybrid search (keyword + semantic)
  • Enhanced performance across all index sizes
md-indexer
v1.0.0-beta.2
  • Fixed ESM related conflicts
Python SDK
v1.0.0-beta.13
Added
  • Hot Reload & Auto-Refresh: Indexes can now automatically detect and reload when updated in the cloud.
    • load_index() now accepts optional auto_refresh and polling_interval_in_seconds parameters
    • When auto_refresh is enabled, the SDK polls for updates at the configured interval (default: 600 seconds)
    • To stop auto-refresh, call load_index() again without the auto_refresh option
  • load_index() now allows reloading an already-loaded index (previously threw an error)
  • Index management now uses Rust core for improved performance and reliability
JavaScript SDK
v1.0.0-beta.6
Added
  • Hot Reload & Auto-Refresh: Indexes can now automatically detect and reload when updated in the cloud.
    • loadIndex() now accepts optional LoadIndexOptions with autoRefresh and pollingIntervalInSeconds parameters
    • When autoRefresh is enabled, the SDK polls for updates at the configured interval (default: 600 seconds)
    • To stop auto-refresh, call loadIndex() again without the autoRefresh option
  • loadIndex() now allows reloading an already-loaded index (previously threw an error)
Python SDK
v1.0.0-beta.12
  • Adds partial support for Python 3.14 by disabling local embedding service functionality. Full support coming soon.
Python SDK
v1.0.0-beta.11
  • Adds support for user-supplied embeddings.
  • query() now automatically falls back to the cloud API when the index is not loaded locally, enabling queries without requiring load_index() first.
  • Adds better scoring evaluation for search results
JavaScript SDK
v1.0.0-beta.5
Added
  • Query optimizations for custom-embedding workflow
JavaScript SDK
v1.0.0-beta.4
Fixed
  • Fixed ReferenceError: process is not defined crash in browser environments. The SDK now works seamlessly across all JavaScript runtimes including browsers, Node.js, Deno, and Bun.
Python SDK
v1.0.0-beta.10
  • Removes the ‘<2’ upper bound on numpy dependency.
JavaScript SDK
v1.0.0-beta.3
Added
  • Support for user-supplied document embeddings during ingestion. The SDK supports optional embedding arrays in DocumentInfo payloads without using the native embedding service from moss.
  • Query overloads now accept QueryOptions so users can provide a custom embedding alongside query text.
  • Relaxed modelId requirement when creating indexes. The SDK aligns with the service default of moss-minilm when no explicit model is provided.
  • query() now automatically falls back to the cloud API when the index is not loaded locally, enabling queries without requiring loadIndex() first.
Enhancements
  • New service endpoint with significant infrastructure upgrades. Management operations are now ~3× faster across most real-world use cases, providing faster index operations while also supporting larger payloads.
Pipecat
v0.0.2
Added
  • Support for Pipecat v0.0.99.
  • Support for LLMContext and LLMContextAggregatorPair
  • removed deprecated OpenAILLMContext and OpenAILLMContextAggregatorPair
Python SDK
v1.0.0-beta.9
  • Drops support for Python 3.9 and below.
  • Bug fix: Keyword search now functions correctly after load_index().
  • New service endpoint with significant infrastructure upgrades. Management operations are now ~3× faster across most real-world use cases, providing faster index operations while also supporting larger payloads.
md-indexer
v1.0.0-beta.1
  • function-based API for programmatic usage
    • Exported sync() function for building and uploading in one call
    • Exported buildJsonDocs() function for building search index programmatically
    • Exported uploadDocuments() function for uploading documents programmatically
    • Exported createIndex() function for uploading an existing index file
    • Functions can be imported and called directly in code
    • Support for passing credentials via function options or environment variables
    • Functions return structured data (e.g., { success: boolean, count: number })
Pipecat
v0.0.1
Added
  • Initial release of pipecat-moss integration.
  • MossRetrievalService for augmenting Pipecat LLM contexts with retrieved documents
  • Example moss-retrieval-demo.py demonstrating a full voice pipeline with retrieval.
  • moss-create-index-demo.py for creating and populating a Moss index.
Python SDK
v1.0.0-beta.8
  • Updates inferedge-moss-core dependency to version 0.2.3 for new ARM64 wheel support.
Python SDK
v1.0.0-beta.7
Adds IntelliSense support in all the IDEs
JavaScript SDK
v1.0.0-beta.2
Fixed
  • Fixed ESM (ES Module) import compatibility issue. The package now correctly exports as an ES module and can be imported using standard ESM syntax.
Upgrade Instructions
  • Migrate from CommonJS (require) to ES Module syntax (import).
Python SDK
v1.0.0-beta.6
Adds support for keyword search and alpha blending between keyword and semantic search.
Python SDK
v1.0.0-beta.5
Removes Pipecat integration and MossContextRetriever from the SDK. Will be offered as a pipecat extension instead soon.
Python SDK
v1.0.0-beta.4
Performance improvements for query() calls.
Python SDK
v1.0.0-beta.3
New Features
  • MossContextRetriever: Added Pipecat integration for real-time voice AI applications
    • Automatically enhances LLM conversations with semantic search results from Moss indexes
    • Seamless integration with OpenAI LLM context frames
JavaScript SDK
v1.0.0-beta.1
Initial release of @moss-dev/moss with core features:
  • Semantic search using transformer-based embeddings
  • Lightweight embedding models for edge computing; supports proprietary “moss-minilm” and “moss-mediumlm” models
  • Multi-index support for isolated search spaces
  • Add, update, and remove documents across indexes
  • Blazing fast querying support after loading indexes
  • TypeScript support with full type definitions
Python SDK
v1.0.0-beta.1
Initial release of inferedge-moss with core features:
  • Semantic search using transformer-based embeddings
  • Lightweight embedding models for edge computing; supports proprietary “moss-minilm” model
  • API key validation with secure host access
  • Cloudflare CDN support for fast model loading
  • Multi-index support for isolated search spaces
  • Add, update, and remove items across indexes
  • Query interface with configurable result count
  • Performance metrics tracking

Packages covered

Each entry in the All tab is labelled with one of these tags. Dates are the release dates recorded in each package changelog.