v0.1.0 — first release
First release of bareguard. Action-side runtime policy library for autonomous agents — bounds what the agent does, not what it says.
What's in v0.1.0
- Single
Gateclass with three call sites (redact,check,record) plusrun/allows/haltContext/terminate. - Ten primitives (twelve minus rate limits):
bash,budget,fs,net,limits,tools,secrets,audit,content,approval. Each in its own file,src/primitives/*.js. - Severity-graded decisions (
actionvshalt) — halt-severity events (budget exhaustion, maxTurns, terminate) MUST escalate to a human, never bubble to the LLM. - One
humanChannelcallback consolidates ALL ask/halt/topup/terminate. Runner branches on terminal allow/deny only. - Single audit file via POSIX
O_APPENDatomicity (no lock on Linux/macOS); Windows usesproper-lockfilefallback. Phases:gate,record,approval,halt,topup,terminate. - Shared budget across processes via
proper-lockfile(the one allowed dep). Versioned format. Rebuilds from audit log on cold start. - Six-step eval order (deny > ask > scope > default). Allowlist is scope-only — does NOT silence asks.
- Safe defaults shipped —
DROP TABLE,rm -rf /, destructive verbs. - 30/30 tests passing on Linux, macOS, Windows × Node 20, Node 22 (matrix CI).
- 931 LOC source (under PRD §21's 1000 target).
Install
npm install bareguardSee README for usage, bareguard.context.md for the LLM integration guide, CHANGELOG for full release notes.
Sibling of bareagent in the bare suite.