@dmzagent/dm-mind — DMZ Mind, the agent surface
The agent surface, as an npm package. No dependencies and no build step —
which is not austerity: it is what makes npx @dmzagent/dm-mind runnable inside a
container that has node and nothing else.
export MEM_API_KEY=... # from the portal; the only secret
export MEM_ENDPOINT=https://...
export MEM_SCOPE=/platform/egress/agent-a
npx @dmzagent/dm-mind sync
npx @dmzagent/dm-mind recall --path src/egress.py
# installed globally, the command is `dm-mind`; `mem` is kept as an alias so the
# protocol in a rendered memory.md reads the same in both clients.
MEM_API_KEY is long-lived and is never sent on an ordinary request. It is
exchanged once for a short grant, cached in .mem/grant.json, and re-exchanged
when it expires.
This is a client, not the platform
Everything that decides anything — eligibility, gates, ranking, standing — is
refused to this surface and lives behind the service. What is here is argument
parsing, one HTTP call, and printing.
That is why a second implementation is affordable at all, and
conformance.json is what keeps it honest: the Python reference and this client
run the same vectors in CI. The vectors are the specification and neither
client is — generating one from the other would make the generated one
conform to the other's bugs.
Publishing
npm test (the vectors, then the packed tarball installed and both bins run),
npm version, then npm publish (access is public via publishConfig). files
is deliberately explicit: shipping the whole directory would put the conformance
runner in every install for no reason. The scope is @dmzagent, owned by the
grandadmiralmcb npm account.