Repository navigation
Releases: RexHuang/novus
Release list
v1.2.2-dev (internal eval build)
Internal build for Harbor/terminal-bench adapter. Adds one-shot --output-format json (reply+usage+cost) and --no-identity eval mode.
v1.1.1 — Security patch: multi-tenant row-level isolation
Fixes the tenant-isolation issue reported in #1.
Fixed
- Security: in
--auth-filemulti-tenant serve mode, knowledge / experience / knowledge-graph entries stored in one tenant context could be recalled from another (#1). Every entry now carries a row-level tenant ownership tag; all read paths (recall, contextual memory, meta-memory, stats, graph traversal) filter by the effective tenant scope. Entries written by the agent itself (CLI / single-user serve) remain unowned and invisible to tenants — strict isolation by default. - Destructive operations (prune / clear / compress / graph build·link·clear) are scoped or refused in tenant context — a tenant cannot delete or rebuild what it cannot see.
- CLI and single-user serve behavior unchanged.
Added
- Regression test suite for tenant isolation:
src/tenant-isolation.test.ts - Vitest global setup (
test/setup.ts) isolating the knowledge store into a temp dir during tests
Credits
- Thanks @CaiHB2000 for the responsible disclosure.
Full Changelog: v1.1.0...v1.1.1
novus v1.1.0 — First public release
The essence of a self-evolving AI agent in ~15K lines of TypeScript.
Before this release: Novus ran as an internal system for one month of intense daily use (140+ sessions), maintaining a 3-node deployment (phone ↔ cloud VM ↔ overseas VPS), shipping daily news digests, and self-healing its own infrastructure. v1.1.0 is that same core, cleaned and open-sourced.
Core
- Agent loop on pi-agent-core: tool calling, streaming, multi-turn sessions
- CLI: interactive chat, one-shot mode, session management,
--serveHTTP API + Web UI - Dual-track env vars:
NOVUS_*with automaticANTHROPIC_*(Claude Code) fallback — works with any Anthropic-protocol endpoint (DeepSeek, GLM, Kimi, gateways)
Memory
- Three-layer persistent memory: knowledge base, episodic experience, project memory
- Knowledge graph linking + MCP server exposing memory to other agents
Evolution
- Evolution tracker: logs capability changes across sessions
- Behavior guard: monitors the agent's own tool-call patterns (over-calling, repetition) and injects corrective rules
Tools (16 built-in, dynamic registry)
read/write/edit/bash/grep/find, connect (web senses), codebase-map, github, plan, execution-tracker, auto-manage (autonomous scheduled tasks), session-context, session-worklog, knowledge-graph, evolve-track, runtests, and more — drop a .ts file to add your own
Platform
- Termux/Android native: storage mirroring, wake locks — designed to run on a phone
- 109 tests, zero mandatory heavy dependencies (browser fetching is optional)
Install
git clone https://github.com/RexHuang/novus.git && cd novus
npm install && npm run build
npm link # gives you the `novus` commandRequires Node.js 20+ and any Anthropic-protocol API endpoint. Termux/Android step-by-step: MOBILE.md.
Apache 2.0. Agent loop built on pi-agent-core by Mario Zechner.