AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
에이전트와 앱을 위한 최초의 자체 개선 메모리 프로토콜, 최신 상태 유지·권한 존중·컨텍스트 창에 맞춤, 매주 개선
The first-ever self-improving memory protocol for agents and apps. Memory that stays current, respects permissions and fits the context window. Built by agents, and better every week.
개발 도구Python · TypeScriptGitHub @technodotventures온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기The first-ever self-improving memory protocol for agents and apps.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗The first-ever self-improving memory protocol for agents and apps.
Memory that stays current, respects permissions and fits the context window. Built by agents, and better every week. Website: smartware.software
Memory and context for AI agents and SaaS platforms, shipped as a kit: a protocol, a production engine, one server binary, typed clients, adapters for the memory APIs projects already call, connectors that carry source permissions into memory, and the tools to prove all of it on your own data.
Smartware 2.0 is a rebuild from scratch. The earlier code (v0.8.1 and before) lives on at technodotventures/smartware-legacy.
What makes it different, in one line each:
as_of and
known_at answer "what was true then" and "what did we know then". Newer facts supersede older ones explicitly.why for every item.smartware doctor checks any endpoint against the spec by MUST id; smartware eval re-measures
recall on your data with your reader.| Rung | Time | What you do | Level |
|---|---|---|---|
| 1. Plug in | 5 minutes | Add smartware serve to your MCP client; paste the memory policy | L1 |
| 2. Wire in | 1 hour | Use @technodotventures/smartware-client or smartware_client, or an adapter; map your auth to principals | L2 |
| 3. Govern | 1 day | Turn on connectors so source permissions flow into readers; multi-tenant; audit; smartware doctor --principals | L3 |
| 4. Adapt | 1 week | Reflect jobs, feedback, profile budgets, scheduled bundle exports | L4 |
Install a pinned version and check it (never a bare npx; nothing runs at install time):
npm install --global --ignore-scripts [email protected] # in a project: npm install --save-exact --ignore-scripts ...
npm view [email protected] dist.integrity # must equal the line for smartware-2.0.0.tgz in the release's INTEGRITY file
npm audit signatures # registry signatures and provenance: built by this repo's release workflow
Each release publishes INTEGRITY (the sha512 of every package tarball, as npm records it), SHA256SUMS of every
published file and a CycloneDX SBOM. The packages have no third-party runtime dependencies.
MCP (Claude, Cursor, Hermes, OpenClaw, any MCP client), local:
{ "mcpServers": { "memory": { "command": "smartware", "args": ["serve", "--store", "/Users/you/.smartware/smartware.db"],
"env": { "SMARTWARE_PRINCIPAL": "you", "SMARTWARE_TENANT": "personal" } } } }
A server for an app or a team (HTTP binding and MCP Streamable HTTP on one port):
smartware keys add --keys keys.json --id alice --tenant acme --groups sales # prints a token once; only its hash is kept
smartware serve --http 8787 --keys keys.json --store /var/lib/smartware/smartware.db # or --oidc-issuer https://idp... for OAuth
From code:
import { SmartwareClient } from "@technodotventures/smartware-client";
const memory = new SmartwareClient({ url: "http://127.0.0.1:8787", getToken: () => process.env.SMARTWARE_TOKEN! });
await memory.remember("Alice prefers oat-milk flat whites", { kind: "preference" }); // private to the writer by default
const pack = await memory.recall("What coffee does Alice like?", { budgetTokens: 1500 });
Already on another memory API? Keep your code: the MCP memory server tools (--tools mcp-memory),
a mem0-compatible REST API at /mem0, the mem0 Python class, a LangGraph
store (JS and Python), Vercel AI SDK middleware, Mastra tools and processors, and a Letta .af importer.
Moving in: smartware import-from mcp-memory|mem0|letta <file> --tenant <t> --as <user> reads the other project's file as
data. Moving out: smartware export --tenant <t> --out acme.smartware writes a lossless bundle any Smartware engine can import.
| Part | Where | What it is |
|---|---|---|
| Spec | spec/Smartware-0.1.md, spec/MUSTS.md | The protocol; every MUST has a stable id |
| Schema pack | schema/ | JSON Schemas, OpenAPI 3.1 and MCP tool schemas, generated from one source and drift-tested |
| Engine | packages/core | TypeScript product engine on Node's built-in SQLite. Zero runtime dependencies |
| Server | packages/server | smartware: serve, doctor, eval, keys, backup, export, import, import-from |
| Clients | packages/client, clients/python | Typed clients; identity is never an argument |
| Adapters | packages/adapters | tools, mastra, langgraph, ai-sdk; Python: LangGraph, mem0, Letta |
| Connectors | packages/connectors | SDK, Markdown vault, Slack, ACL replay test kit |
| Policy pack | policy/ |
smartware doctor --self reaches L4 (29 wire-level checks). It is engine-agnostic (the Python oracle also
reaches L4) and catches deliberate violations (global statistics, ignored parameters).npm run build # TypeScript (needs typescript and @types/node: npm install --ignore-scripts)
npm test # 100+ TypeScript tests
npm run test:py # oracle suite, oracle suite against the TS engine, Python client
node tools/release-check.mjs # the release gate
git config core.hooksPath tools/hooks
Licence: Apache-2.0 (see LICENSE and NOTICE). Status against the implementation design doc: docs/STATUS.md.
The website lives in docs/ (index.html, served by GitHub Pages); the guides beside it are plain Markdown.
Built by Techno Ventures.
Memory instructions for agents, also served as the MCP prompt memory_policy |
| Oracle | smartware/ | The Python reference engine: the specification the product engine is tested against |
| Benchmark | bench/, baselines/, results/ | Smartware Bench and LLM-free re-implementations of 15 memory systems |