@tenphi/akno-protocol
v0.19.3
Published
Akno op registry and schemas — the single source of truth every door is generated from
Downloads
10,268
Readme
@tenphi/akno-protocol
The Akno op registry, zod schemas and wire format — the single source of truth every door is generated from.
It requires Node 22.18 or newer and has no native dependencies.
Akno exposes the same operations in-process, over an owner-only Unix socket, through policy-scoped HTTP for containerized or remote hosts, and over MCP. Every surface is generated from this registry, so an op's input schema, output schema, description and error codes are stated once. A call that is invalid over MCP is invalid in-process, and fails identically.
This package exists so @tenphi/akno-client can share schemas with @tenphi/akno-core without pulling
better-sqlite3 and sqlite-vec into a host's build. Its only dependency is zod.
import { OPS, OP_NAMES, AknoError } from '@tenphi/akno-protocol';
OPS.recall.input.parse({ query: 'What is planned?', memory_view: 'planning' });
OPS.timeline.input.parse({
as_of: '2031-04-12T10:00:00+02:00',
timezone: 'Europe/Amsterdam',
view: 'actionable',
});
OPS.retain.input.parse({
sources: [
{
source_id: 'manual:1111',
revision: '1',
input: { page_slug: 'sources/zephyr-manual' },
retention: { mode: 'extract' },
},
],
});Exact reads preserve the absence boundary: a deterministically conflicted Markdown source returns
status: "degraded" with source_conflict and no body, rather than appearing current or empty.
Full documentation: github.com/tenphi/akno
License
PolyForm Noncommercial License 1.0.0 © Andrey Yamanov — noncommercial use only.
