Skip to main content

Privacy and governance

What the plugin observes, what it sends, and what it does with the answer. This is the page to read before installing.

What is observed​

The hooks match these tool calls in your session:

Bash Edit Write Read Glob Grep WebFetch Agent mcp__*

Every matched call is checked against your organization's governance policy before it runs, and recorded afterwards.

What leaves your machine​

Not the tool input. Two derived values are sent, and nothing else from the call:

FieldWhat it is
Content digestA SHA-256 hash over the tool's input, canonicalized so the same input always hashes the same way. It matches repeat calls to each other; it does not carry the input and cannot be reversed into it
SummaryDeliberately lossy, and computed differently per tool — see below

The summary, per tool​

ToolWhat is sentWhat is not
BashThe first word of the command — git, npm, rmThe rest of the command line: no paths, flags, or arguments
Edit, WriteThe file path relative to your working directory. A path outside it collapses to the bare filenameThe file's contents, and the absolute path of anything outside your project
WebFetchThe hostname — example.comThe path, query string, or fragment
Read, Glob, Grep, AgentThe tool's name, nothing moreWhich file, which pattern, which prompt
mcp__*The tool's full name, which identifies the server and operationThe arguments it was called with

So we learn that you ran git, edited src/auth.ts, and fetched something from example.com. We do not learn the command, the code, or the URL.

Be clear-eyed about the residue. A first word, a project-relative path and a domain still describe your activity in outline. This is a much smaller disclosure than a session transcript, not a zero one, and you should install knowing which of the two it is.

One exception, stated plainly​

Calls to NobleCloak's own MCP tools do not go through this local check at all. They are allowed immediately by the hook and governed at our gateway instead, where the full call is already visible because we execute it — see the connector documentation and our privacy policy.

This avoids governing the same call twice. It also means the digest-only guarantee above describes local tool calls, not NobleCloak tool calls. Do not read it more broadly than that.

Audit-only is the default​

ModeWhat happens to your tool call
Audit-only (default)Nothing is ever blocked. The call is checked and recorded, and it runs — including when the server says deny
Enforce (opt-in)The server's decision is obeyed: allow, prompt you, or block

An organization turns enforcement on deliberately, per environment. Run /bianoble-status to see which mode you are in — it prints audit-only or ENFORCE on every run.

If a page or a colleague describes the plugin as "governing" your session, check the mode before believing anything is being blocked. By default, nothing is.

When NobleCloak is unreachable​

The plugin never silently drops a decision, and never hangs your session waiting for us. Every network step shares a budget well under the hook timeout, so a decision is always produced.

ModeRead-type toolsWrite, delete, admin, or external
Audit-onlyRunsRuns
EnforceRuns — fail-openBlocked — fail-closed

Calls resolved this way are marked as degraded in the audit record, so an outage is visible afterwards rather than being indistinguishable from a clean allow.

Where the record goes​

Locally into a queue, then to NobleCloak, and into the Execution Ledger — the org-scoped audit log your organization can read and export. Retention and handling are covered in our privacy policy.

Turning it off​

/bianoble-logout clears the governance session; the hooks then have nothing to report with. Removing the plugin through /plugin removes the hooks entirely. Records already written stay — they are an audit trail, not a cache.