SShortSingh.
Back to feed

Awareness daemon offers local-first AI agent memory using SQLite and ONNX embeddings

0
·1 views

A developer has released Awareness, an open-source local-first memory daemon for AI agents that stores and retrieves context entirely on the user's machine without cloud dependency or API calls. The tool uses SQLite for storage and the all-MiniLM-L6-v2 model in ONNX format for embeddings, combining BM25 and vector retrieval to achieve 95.6% recall@5 on the LongMemEval_S benchmark on an M1 MacBook with 8GB RAM. Awareness integrates with popular AI coding tools such as Claude Code, Cursor, and Windsurf through a shared localhost MCP interface, eliminating per-vendor memory silos. The project addresses privacy and cost concerns by keeping sensitive agent context off third-party servers, with retrieval costs remaining fixed rather than usage-billed. An optional upgrade path to cloud-based pgvector storage is available for teams needing shared or cross-device memory.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Developer Walks Through Setting Up a GitHub Project Using Git and SSH

A developer documented the step-by-step process of creating a local Git repository and connecting it to GitHub using SSH authentication. The project, named 'kenyan-hospital-health-records', was built on a Windows desktop and structured with dedicated folders for data, scripts, and notebooks. Git was used locally to track file changes, while GitHub served as the remote platform for storing and sharing the repository. An existing Excel dataset of Kenyan hospital health records was copied from the Downloads folder and moved into the appropriate data subfolder. The walkthrough also covered basic terminal commands such as mkdir, cd, pwd, cp, and mv for navigating and organizing the project.

0
ProgrammingDEV Community ·

Developer Walks Through Pushing a First GitHub Project via Git and SSH

A developer documented the step-by-step process of creating a local project folder and uploading it to GitHub using Git and SSH authentication. The workflow began in Git Bash, where commands like mkdir and cd were used to create and navigate a project directory named Kenya-Hospital-Health-Records-Project. A README file was written in Markdown and a local Git repository was initialized using git init, followed by staging and committing the files. An SSH remote URL from GitHub was then linked to the local repository using git remote add origin. Finally, the project was pushed to GitHub's main branch with git push -u origin main, completing the upload.

0
ProgrammingDEV Community ·

Why Software Features Take Weeks to Ship Despite Days of Coding

A feature that takes three days to code can take three weeks to deliver, and the gap is largely a decision-flow problem rather than an engineering capacity issue. Work stalls when the person holding a task lacks the authority or information to make the next decision, creating queues between product and engineering teams. Product typically owns customer and business context, while engineering owns architecture and implementation constraints, yet traditional workflows treat requirements as finished information passed in one direction. This handoff model breaks down because implementation is also discovery — hidden assumptions about data, eligibility rules, or system behavior only surface once engineers begin building. Effective product-engineering alignment requires identifying exactly where decisions get blocked, not simply adding more meetings or demanding more detailed requirements upfront.

0
ProgrammingDEV Community ·

Developer Bundles 9 CLI Tools as Subprocesses to Avoid Recompiling on Updates

A developer building yyzTools, a free Windows productivity suite, chose to ship nine third-party CLI binaries — including OpenSSL, FFmpeg, and ImageMagick — and invoke them as subprocesses rather than statically linking their SDKs. The approach allows security patches and new algorithm support to be delivered by simply swapping a binary, without recompiling the application or pushing a full reinstall to users. A thin C++ layer handles argument construction, process spawning, and wrapping stdout output as JSON, keeping the core code largely agnostic to each tool's internals. The trade-offs include per-call process-spawn overhead, slower large-file operations, and inconsistent stdout formats across tools that complicate parsing. The developer recommends the pattern for low-frequency desktop use cases but advises against it for high-throughput or latency-sensitive paths such as per-request cryptography services.

Awareness daemon offers local-first AI agent memory using SQLite and ONNX embeddings · ShortSingh