Skip to content
Closed
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Moss LiveKit Voice Agent

This directory contains a high-performance voice AI agent built with [LiveKit Agents](https://docs.livekit.io/agents) and [Moss](https://usemoss.dev) for real-time semantic retrieval.
This directory contains a high-performance voice AI agent built with [LiveKit Agents](https://docs.livekit.io/agents) and [Moss](https://moss.dev) for real-time semantic retrieval.

The agent acts as a customer support assistant, fetching relevant information from a knowledge base indexed in Moss to provide accurate and low-latency responses.

Expand Down
2 changes: 1 addition & 1 deletion apps/next-js/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,6 @@ This demo showcases how to use **Server Actions** to securely interact with Moss

To add Moss to your own Next.js app:

1. Install the SDK: `npm install @inferedge/moss`
1. Install the SDK: `npm install @moss-dev/moss-web`
2. Create a Server Action (see `app/actions.ts`).
3. Call the action from your React components.
2 changes: 1 addition & 1 deletion apps/next-js/app/actions.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
const mockLoadIndex = vi.fn()
const mockQuery = vi.fn()

vi.mock('@inferedge/moss', () => ({
vi.mock('@moss-dev/moss-web', () => ({
MossClient: vi.fn().mockImplementation(() => ({
loadIndex: mockLoadIndex,
query: mockQuery,
Expand Down Expand Up @@ -38,7 +38,7 @@
const { searchMoss } = await import('./actions')
const result = await searchMoss('test')

expect(result).toEqual({

Check failure on line 41 in apps/next-js/app/actions.test.ts

View workflow job for this annotation

GitHub Actions / next-js-test

app/actions.test.ts > searchMoss > returns success with docs and timeTaken

AssertionError: expected { success: true, …(2) } to deeply equal { success: true, …(2) } - Expected + Received @@ -8,7 +8,7 @@ "score": 0.9, "text": "hello", }, ], "success": true, - "timeTaken": 42, + "timeTaken": undefined, } ❯ app/actions.test.ts:41:20
success: true,
docs: [{ id: '1', text: 'hello', score: 0.9, metadata: { title: 'Hello' } }],
timeTaken: 42,
Expand Down
4 changes: 2 additions & 2 deletions apps/next-js/app/actions.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use server'

import { MossClient } from "@inferedge/moss";
import { MossClient } from "@moss-dev/moss-web";

/**
* Server Action to perform semantic search using Moss SDK.
Expand Down Expand Up @@ -33,7 +33,7 @@ export async function searchMoss(query: string) {
score: doc.score,
metadata: doc.metadata
})),
timeTaken: results.timeTakenInMs
timeTaken: results.timeTakenMs
Comment thread
devin-ai-integration[bot] marked this conversation as resolved.
};
} catch (error) {
console.error("Moss Search Error:", error);
Expand Down
1,259 changes: 618 additions & 641 deletions apps/next-js/package-lock.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion apps/next-js/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"test": "vitest run"
},
"dependencies": {
"@inferedge/moss": "^1.0.0-beta.7",
"@moss-dev/moss-web": "^1.0.0",
"lucide-react": "^0.563.0",
"next": "16.2.4",
"react": "19.2.3",
Expand Down
2 changes: 1 addition & 1 deletion apps/pipecat-moss/pipecat-quickstart/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ pipeline = Pipeline([

- Tested with Pipecat `v0.0.94` and newer
- [Support for Pipecat-Moss](https://github.com/usemoss/pipecat-moss).
- [Moss docs](https://docs.usemoss.dev)
- [Moss docs](https://docs.moss.dev)
- [Moss Discord](https://discord.com/invite/eMXExuafBR)


Expand Down
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ const ImageSearchPage = () => {
<header className="hero-header">
<div className="hero-header-inner">
<img
src="/images/InferEdgeLogo_Dark_Icon.png"
src="/Moss-logo.jpeg"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont see the new named image in public/images

alt="Moss"
className="hero-logo"
/>
Expand Down Expand Up @@ -232,7 +232,7 @@ const ImageSearchPage = () => {
data-testid="search-input"
/>
<div className="powered-by">
<img src="/images/InferEdgeLogo_Dark_Icon.png" alt="Moss" className="powered-by-logo" />
<img src="/Moss-logo.jpeg" alt="Moss" className="powered-by-logo" />
<span>Powered by MOSS</span>
</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion moss-live-labs/examples/image-search/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Open [http://localhost:5173](http://localhost:5173) and start searching.

## 1. Go to Moss Portal and Get API Keys

- Visit [usemoss.dev](https://usemoss.dev/) to sign up, create an account, confirm your email, and sign in.
- Visit [moss.dev](https://moss.dev/) to sign up, create an account, confirm your email, and sign in.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚩 Partial URL migration: portal.usemoss.dev references remain across many files

The PR updates some usemoss.dev URLs to moss.dev (e.g., in getting-started.md:11, image-search/readme.md:43), but many files outside the diff still reference portal.usemoss.dev — including apps/pipecat-moss/pipecat-quickstart/README.md:20, apps/next-js/README.md:23, apps/livekit-moss-vercel/.../README.md:12, packages/pipecat-moss/README.md:14, Python bot scripts, and the LlamaIndex frontend. If the portal URL has genuinely changed, these are incomplete migrations. If portal.usemoss.dev is still valid (perhaps separate from the main site), this is intentional. Worth confirming whether the portal domain has migrated too.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

- From the dashboard, open **View secrets** and save the values as `MOSS_PROJECT_ID` and `MOSS_PROJECT_KEY` in the root `.env` file (copy `.env.example` → `.env`).

> ![Moss Portal walkthrough](https://github.com/user-attachments/assets/c3db9d2d-0df5-4cec-99fd-7d49d0a30844)
Expand Down
2 changes: 1 addition & 1 deletion packages/pipecat-moss/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,6 @@ This integration is provided under a permissive open source license (BSD-2 or eq

## Support

- [Moss Docs](https://docs.usemoss.dev)
- [Moss Docs](https://docs.moss.dev)
- [Moss Discord](https://discord.com/invite/eMXExuafBR)
- [Pipecat Docs](https://docs.pipecat.ai)
Binary file not shown.
4 changes: 2 additions & 2 deletions packages/vitepress-plugin-moss/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Index is live on Moss cloud (seamless handoff, no user actio

Two separate npm packages are involved:
- **`@inferedge-rest/moss`** — Node.js REST client used **at build time** (inside `@moss-tools/md-indexer`) to upload documents
- **`@inferedge/moss`** — WebAssembly browser SDK used **at runtime** to download the index and run local queries
- **`@moss-dev/moss-web`** — WebAssembly browser SDK used **at runtime** to download the index and run local queries

---

Expand Down Expand Up @@ -288,7 +288,7 @@ vitepress-plugin-moss
│ ├── @inferedge-rest/moss REST client for uploading to Moss cloud
│ ├── vitepress uses resolveConfig + createMarkdownRenderer
│ └── cheerio / gray-matter HTML parsing, frontmatter
└── @inferedge/moss ← runtime only (browser WebAssembly)
└── @moss-dev/moss-web ← runtime only (browser WebAssembly)
└── Queries run locally after index is downloaded
```

Expand Down
6 changes: 3 additions & 3 deletions packages/vitepress-plugin-moss/Search.vue

@devin-ai-integration devin-ai-integration Bot Apr 21, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚩 Pre-existing: Search.vue passes raw number instead of QueryOptions to query()

At Search.vue:321-322, the code reads topk as a number and passes it directly as the third argument to mossClient.value.query(). All @moss-dev/moss-web examples (e.g., examples/javascript-web/load_and_query_sample.ts:54) pass { topK: 3 } as a QueryOptions object. Additionally, the option is read as (options.value as any).topk (lowercase k) while types.ts:9 defines it as topK (camelCase), so the config value would never be found and always fall back to 20. This is a pre-existing issue not introduced by this PR, but the import switch to @moss-dev/moss-web makes it worth noting in case the new SDK is stricter about argument types.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import { ref, shallowRef, computed, nextTick, watch, onBeforeUnmount, onMounted
import { useData, useRouter } from 'vitepress'
import { onKeyStroke, useScrollLock, useInfiniteScroll } from '@vueuse/core'
import { useFocusTrap } from '@vueuse/integrations/useFocusTrap'
import type { SearchResult, QueryResultDocumentInfo } from '@inferedge/moss'
import type { SearchResult, QueryResultDocumentInfo } from '@moss-dev/moss-web'
import SearchButton from './SearchButton.vue'
import mossLogo from './InferEdgeLogo_Dark_Icon.png'
import mossLogo from './moss-logo.png'

// --------- Metadata structure for Search Results ---------
interface MossMetadata {
Expand Down Expand Up @@ -292,7 +292,7 @@ async function initMoss() {
status.value = 'initializing'
initPromise = (async () => {
try {
const { MossClient } = await import(/* @vite-ignore */ '@inferedge/moss')
const { MossClient } = await import(/* @vite-ignore */ '@moss-dev/moss-web')
const client = new MossClient((options.value as any).projectId, (options.value as any).projectKey)
mossClient.value = client
status.value = 'ready'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

Moss is a high-performance runtime for real-time semantic search. It delivers sub-10 ms lookups, instant index updates, and zero infrastructure overhead. Moss runs where your agent lives — cloud, in-browser, or on-device — so search feels native and users never wait.

**[View samples on GitHub](https://github.com/usemoss/moss-samples)** | **[Join our Discord](https://discord.gg/eMXExuafBR)**
**[View samples on GitHub](https://github.com/usemoss/moss)** | **[Join our Discord](https://discord.gg/eMXExuafBR)**

---

## Create an account

Visit [Moss Portal](https://usemoss.dev/) to create an account, confirm your email, and sign in.
Visit [Moss Portal](https://moss.dev/) to create an account, confirm your email, and sign in.

Inside the default project you will see two plans:

Expand All @@ -28,11 +28,11 @@ Enter valid card details to start the free trial, then select **Create Index** t
::: code-group

```bash [JavaScript]
npm install @inferedge/moss
npm install @moss-dev/moss-web
```

```bash [Python]
pip install inferedge-moss
pip install moss
```

:::
Expand All @@ -59,7 +59,7 @@ export MOSS_PROJECT_KEY="your-project-key"
::: code-group

```ts [JavaScript]
import { MossClient, DocumentInfo } from '@inferedge/moss'
import { MossClient, DocumentInfo } from '@moss-dev/moss-web'

const client = new MossClient(
process.env.MOSS_PROJECT_ID!,
Expand All @@ -82,7 +82,7 @@ console.log(response.docs[0])

```py [Python]
import asyncio
from inferedge_moss import MossClient, DocumentInfo
from moss import MossClient, DocumentInfo

client = MossClient("$MOSS_PROJECT_ID", "$MOSS_PROJECT_KEY")

Expand Down Expand Up @@ -114,14 +114,14 @@ asyncio.run(main())

## Sample code

The [samples repository](https://github.com/usemoss/moss-samples) contains working examples covering authentication, batch context, and streaming replies.
The [samples repository](https://github.com/usemoss/moss) contains working examples covering authentication, batch context, and streaming replies.

### Python samples

| Sample | Description |
| --- | --- |
| [`comprehensive_sample.py`](https://github.com/usemoss/moss-samples/blob/main/python/comprehensive_sample.py) | End-to-end flow with session creation, context building, and streaming |
| [`load_and_query_sample.py`](https://github.com/usemoss/moss-samples/blob/main/python/load_and_query_sample.py) | Ingest domain knowledge before querying |
| [`comprehensive_sample.py`](https://github.com/usemoss/moss/blob/main/examples/python/comprehensive_sample.py) | End-to-end flow with session creation, context building, and streaming |
| [`load_and_query_sample.py`](https://github.com/usemoss/moss/blob/main/examples/python/load_and_query_sample.py) | Ingest domain knowledge before querying |

```bash
pip install -r python/requirements.txt
Expand All @@ -134,8 +134,8 @@ python python/comprehensive_sample.py

| Sample | Description |
| --- | --- |
| [`comprehensive_sample.ts`](https://github.com/usemoss/moss-samples/blob/main/javascript/comprehensive_sample.ts) | Full workflow in TypeScript, ready for Node |
| [`load_and_query_sample.ts`](https://github.com/usemoss/moss-samples/blob/main/javascript/load_and_query_sample.ts) | Index FAQs and issue targeted queries |
| [`comprehensive_sample.ts`](https://github.com/usemoss/moss/blob/main/examples/javascript/comprehensive_sample.ts) | Full workflow in TypeScript, ready for Node |
| [`load_and_query_sample.ts`](https://github.com/usemoss/moss/blob/main/examples/javascript/load_and_query_sample.ts) | Index FAQs and issue targeted queries |

```bash
cd javascript && npm install
Expand All @@ -149,4 +149,4 @@ npm run start -- comprehensive_sample.ts
- Dive deeper into the [JavaScript SDK](/reference/js/README.md) and [Python SDK](/reference/python/README.md) references.
- Check out the [Moss YC Launch Post](https://www.ycombinator.com/launches/Oiq-moss-real-time-semantic-search-for-conversational-ai).

If you spot gaps or want another language example, open an issue or PR in the [samples repository](https://github.com/usemoss/moss-samples).
If you spot gaps or want another language example, open an issue or PR in the [samples repository](https://github.com/usemoss/moss).
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ features:
Moss is a high-performance runtime for real-time semantic search. It delivers sub-10 ms retrieval, instant index updates, and zero infrastructure overhead. It runs wherever your intelligence lives — in-browser, on-device, or in the cloud — so search feels native and effortless.

::: tip
Head to [Moss Portal](https://usemoss.dev) to set up projects and start building with sub-10ms search.
Head to [Moss Portal](https://moss.dev) to set up projects and start building with sub-10ms search.
:::

## Common use cases
Expand All @@ -46,19 +46,19 @@ Head to [Moss Portal](https://usemoss.dev) to set up projects and start building
::: code-group

```bash [npm]
npm install @inferedge/moss
npm install @moss-dev/moss-web
```

```bash [pip]
pip install inferedge-moss
pip install moss
```

:::

::: code-group

```ts [JavaScript]
import { MossClient } from '@inferedge/moss'
import { MossClient } from '@moss-dev/moss-web'

const client = new MossClient(process.env.PROJECT_ID!, process.env.PROJECT_KEY!)
await client.createIndex('docs', [{ id: '1', text: 'Vector search in production' }])
Expand All @@ -68,7 +68,7 @@ const results = await client.query('docs', 'production search tips')
```

```py [Python]
from inferedge_moss import MossClient, DocumentInfo
from moss import MossClient, DocumentInfo

client = MossClient("$PROJECT_ID", "$PROJECT_KEY")
await client.create_index(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: JavaScript SDK

# Moss client library for JavaScript

`@inferedge/moss` enables **private, on-device semantic search** in your web, mobile, and edge applications — without cloud dependencies.
`@moss-dev/moss-web` enables **private, on-device semantic search** in your web, mobile, and edge applications — without cloud dependencies.

Built for developers who want **instant, memory-efficient, privacy-first AI features** inside their apps.

Expand All @@ -21,13 +21,13 @@ Built for developers who want **instant, memory-efficient, privacy-first AI feat
## Installation

```bash
npm install @inferedge/moss
npm install @moss-dev/moss
Comment thread
devin-ai-integration[bot] marked this conversation as resolved.
```

## Quick start

```typescript
import { MossClient, DocumentInfo } from "@inferedge/moss";
import { MossClient, DocumentInfo } from "@moss-dev/moss-web";

async function main() {
// Initialize search client with project credentials
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
title: "MossClient (JS)"
---

[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / MossClient
[@moss-dev/moss-web](../globals.md) / MossClient

# Class: MossClient

Expand All @@ -18,7 +18,7 @@ that run server-side and poll until complete.
## Example

```typescript
import { MossClient } from '@inferedge/moss';
import { MossClient } from '@moss-dev/moss-web';

const client = new MossClient('your-project-id', 'your-project-key');

Expand Down

@devin-ai-integration devin-ai-integration Bot Apr 21, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚩 Two distinct JS SDK packages documented differently across pages

The getting-started guide (getting-started.md:31) tells users to npm install @moss-dev/moss-web, while the JS SDK reference (reference/js/README.md:24) says npm install @moss-dev/moss. These are intentionally different packages: @moss-dev/moss-web is the browser/WASM SDK, and @moss-dev/moss is the Node.js SDK (confirmed by sdks/javascript/sdk/CHANGELOG.md:8 which states "Node-only: Dropped browser/WASM support"). However, the getting-started page links directly to the JS reference docs at line 149: [JavaScript SDK](/reference/js/README.md). A user following the getting-started flow would install the web SDK but then land on docs for the Node.js SDK, which has slightly different APIs (e.g., timeTakenInMs vs timeTakenMs). This could cause confusion.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
search: false
---

[**@inferedge/moss v1.0.0-beta.7**](README.md)
[**@moss-dev/moss-web v1.0.0**](README.md)

***

# @inferedge/moss v1.0.0-beta.7
# @moss-dev/moss-web v1.0.0

## Classes

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / CreateIndexOptions
[@moss-dev/moss-web](../globals.md) / CreateIndexOptions

# Interface: CreateIndexOptions

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
title: "DocumentInfo (JS)"
---

[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / DocumentInfo
[@moss-dev/moss-web](../globals.md) / DocumentInfo

# Interface: DocumentInfo

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
title: "GetDocumentsOptions (JS)"
---

[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / GetDocumentsOptions
[@moss-dev/moss-web](../globals.md) / GetDocumentsOptions

# Interface: GetDocumentsOptions

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
title: "IndexInfo (JS)"
---

[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / IndexInfo
[@moss-dev/moss-web](../globals.md) / IndexInfo

# Interface: IndexInfo

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
title: "JobProgress (JS)"
---

[**@inferedge/moss v1.0.0-beta.7**](../README.md)
[**@moss-dev/moss-web v1.0.0**](../README.md)

***

[@inferedge/moss](../globals.md) / JobProgress
[@moss-dev/moss-web](../globals.md) / JobProgress

# Interface: JobProgress

Expand Down
Loading
Loading