IntentMesh

Five minutes, no meeting

Adopt intent/1

Nothing here requires talking to us. The CLI writes your config and workflow, the library enforces the rules, and the vendored checker runs before anything is installed.

The five commands

npx intentmesh adopt          # writes .intent/config.json and a CI workflow
npx intentmesh file --id settlement-rails --kind initiative --title "..."
npx intentmesh promote intent/you/settlement-rails --by person/you --to public
npx intentmesh emit           # writes intent.fragment.json and the public projection
npx intentmesh merge ./fragments --tier public

When https://yourdomain/.well-known/intent.json answers, you are publishing. Filing is always private; promote is the one step that needs a named human, and that is the design, not a hoop. Then check yourself the way a stranger would:

npx intentmesh verify yourdomain.com
✓ published — https://yourdomain.com/.well-known/intent.json
  3 public item(s), 2 naming wants the network can match

As a library

import { file, promote, merge, view, validateFragment } from 'intentmesh'

const item = file({ id: 'intent/you/thing', kind: 'task', title: 'A thing' /* … */ })
// item.visibility === 'private' — there is no argument that changes this

const { intents, problems } = merge([yours, theirs])
const publicOnly = view(intents, 'public')

npm i intentmesh — zero runtime dependencies, and governance commits to keeping it that way.

Without a toolchain

vendor-intentmesh.mjs is the whole format as one dependency-free file: copy it into your repository, run it with bare node, get a valid fragment. It exists because the organisations most likely to adopt a publication format are often the ones least interested in installing a toolchain to do it.

What adopting signs you up for

Nothing. There is no registration, no API key, no callback to a server we run, and no field whose value only we can issue — a valid fragment can be produced, published, read and merged by somebody who has never heard of this company. If you want the world to know you publish, the registry is a pull request; if you don't, your file still works.