Open-source context orchestration for AI applications and agents. nmemo retrieves relevant workspace knowledge, applies ranking and a token budget, and returns context your model can use directly.
It is built for applications that need more than a vector search call: documents, connected tools, workspace boundaries, citations, and predictable context assembly.
| Area | Location | Purpose |
|---|---|---|
| Web application | apps/frontend |
Dashboard for authentication, workspaces, sources, connectors, keys, and chat |
| HTTP API | apps/api |
Context retrieval, ingestion, workspace management, OAuth, and health endpoints |
| Context engine | packages/core |
Routing, ranking, de-duplication, conflict handling, and token budgeting |
| RAG retriever | packages/rag-retriever |
Qdrant-backed document ingestion and retrieval |
| SDK | packages/sdk |
nmemo-sdk client for calling the API |
| Database | packages/database |
Prisma schema and migrations |
- Node.js 18 or newer (Node 22 is used by the included Render blueprint)
- npm 10 or newer
- PostgreSQL and Qdrant
- A Voyage API key for embeddings and a Groq API key for chat features
git clone https://github.com/nikhil008-git/Orques-AI.git nmemo
cd nmemo
npm install
cp .env.example .envUpdate .env with your database, Qdrant, and provider credentials, then prepare Prisma and start the apps:
npm run db:generate -w @repo/db
npm run db:migrate -w @repo/db
npm run devThe frontend runs at http://localhost:3000 and the API at http://localhost:8080. Verify the API with curl http://localhost:8080/health.
npm run dev runs all workspace development tasks. To run only the API after its dependencies are built, use npm run start:api.
import { createEngine } from "nmemo-sdk";
const engine = createEngine({
apiKey: process.env.NMEMO_API_KEY!,
baseUrl: "http://localhost:8080",
});
const context = await engine.getContext({
query: "What is our refund policy?",
userId: "user_123",
workspaceId: "ws_123",
});
console.log(context.prompt);
console.log(context.citations);When using a bearer API key, its workspace scopes the request and workspaceId is optional.
npm run check-types
npm run lint
npm test
npm run buildSee CONTRIBUTING.md for contribution expectations. Do not commit .env files, OAuth credentials, or user data.
The included render.yaml deploys the API from this monorepo. Set the required environment variables in Render, run the frontend separately, and set its NEXT_PUBLIC_API_URL to the deployed API origin.
Please report vulnerabilities privately; see SECURITY.md. For general questions and bugs, use GitHub Issues.
MIT © nmemo contributors.