Urgent.News

What's breaking now, across thousands of outlets.

Tech

One Python Agent Core, Four Ways to Run It: Nova on Server, Web, TUI, and Desktop

Nova is an open-source personal AI agent runtime for developers. One Python core is available through terminal, web, desktop, and API, so you get a single local workspace for model providers, tools, sessions, memory, MCP, and sub-agents. The practical problem it addresses is familiar: you start an agent in the terminal to fix a bug, then you want the same setup for a longer task you check from a…

Nova is an open-source personal AI agent runtime that provides a single local workspace for model providers, tools, sessions, memory, MCP, and sub-agents. It addresses the practical problem of starting an agent in one environment and needing the same setup for different environments, such as terminal, web, API, and desktop. Nova achieves this by offering a shared runtime across four interfaces: terminal, web, TUI, and desktop.

The same agent core drives all four surfaces, with only the interface changing. The agent loop, tool registry, and SQLite store remain consistent across all interfaces. The storage location is ~/.nova/, containing config.json, nova.db, logs, skills, workspace, and agents directories. Users can point to a different location using NOVA_HOME if needed.

The web interface features a focused chat composer, workspace selector, and model picker. For frontend development with live reload, run nova serve and cd into the frontend directory to install dependencies and start the development server. The desktop interface hosts the built frontend in a PyWebView window, with the backend running on a background thread.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Building a rate limiter, why even use Redis.

Well I failed a amazon OA because of a rate limiting question, So I have built this rate limiter from first principles and haven't followed any tutorial.

  • Using Redis for rate limiting avoids race conditions and millisecond collisions.
  • Redis combines hash map and skip list for fast lookups and efficient memory usage.
  • Traditional databases suffer from concurrency bugs, unlike Redis.

More from Saturday 12 September →