Stop a rogue agent before it acts, and prove what it tried. This is an n8n community node that sends each workflow action to Asqav for a policy decision before it commits, and attaches a verifiable record to the item.
Asqav governs the agents you wire through it. An agent that never routes through the governed path produces no receipt and is not detected.
Asqav is an AI agent governance service. It checks the action against your policies and signs the outcome server-side with post-quantum ML-DSA cryptography. A permitted action returns a receipt you can verify independently. A denied action is refused at the API and leaves a forensic record of the attempt, never a permissive receipt. This node wraps the Asqav TypeScript SDK (@asqav/sdk).
This node is built and maintained by the Asqav team.
n8n is a fair-code licensed workflow automation platform.
Installation Operations Credentials Compatibility Usage Resources
Published to npm as n8n-nodes-asqav, with SLSA provenance attestations from the GitHub Actions
publish workflow. Follow the installation guide
in the n8n community nodes documentation and install by the npm package name:
n8n-nodes-asqav
The node runs on self-hosted n8n. To build from source instead:
git clone https://github.com/jagmarques/n8n-nodes-asqav.git
cd n8n-nodes-asqav
npm install
npm run build
The node exposes a single operation, "Asqav: Sign Action". For every input item it:
- Reads the configured action type and optional context.
- Creates an Asqav agent and calls
agent.sign(...). - Appends the full signature response to
item.json.asqavReceipt.
The receipt object includes signatureId, actionId, signature, verificationUrl, chainHash, and timestamp.
- Action Type: a required string holding the namespaced action identifier, for example
api:call. - Context: an optional JSON object bound into the signed receipt. Sent verbatim.
- Options, an optional collection:
- Agent Name, default
n8n - Receipt Type, an IETF Compliance Receipts namespace
- Risk Class:
low,medium,high, orunknown - Compliance Mode, a boolean
- Agent Name, default
The node honours "Continue On Fail". When enabled, a failing item passes through with an error field instead of stopping the workflow.
Create an Asqav API key at asqav.com and add an "Asqav API" credential with that key. The credential test issues GET https://api.asqav.com/api/v1/policies with the X-API-Key header to confirm the key is valid.
Built and tested against n8n-workflow 2.x and the @n8n/node-cli build tooling. Requires Node.js 20 or later (the runtime n8n ships with).
Signing happens at execution time. n8n community nodes have no install or load hook, so a receipt is produced each time the node runs, once per input item.
An example template is included at workflows/sign-action-example.json. It wires:
Manual Trigger -> Action (Set) -> Asqav: Sign Action -> NoOp
Import it from the n8n canvas (Import from File), attach an Asqav API credential, and run. Each item leaving the Asqav node carries asqavReceipt.