Skip to content

Privacy policy

A small site should leave a small data trail.

This site runs no analytics or ads and requires no account. The optional five-minute hosted lab uses one short-lived security cookie. Its policy tests use fixed inputs, its encryption proof generates its own random challenge, and its separately labelled Hermes Chat accepts optional text for remote model inference. This policy explains these paths.

Effective · version 1.8

Cookies
Lab only
One encrypted, HttpOnly session cookie exists only for an active five-minute lab.
Analytics
None
No analytics scripts, tracking pixels, advertising tags, or fingerprinting.
Lab input
Optional
Policy tests send fixed identifiers, and the encryption proof accepts no visitor fields. If you use Hermes Chat, your message is sent to remote Cloudflare Workers AI.

01

What this policy covers.

This policy applies to the public website at https://mordred.ai, including its static pages and optional hosted Mordred lab. It does not apply to websites operated by GitHub, PyPI, or another third party, even when this site links to them.

In this policy, “we” means the maintainers of the hermes-mordred project.

The hermes-mordred software sends us no usage or diagnostic data. Its audit log stays on your device unless you choose to share it; it starts as mode-0600 plaintext NDJSON and becomes MRAL-encrypted after keyvault audit-key provisioning. Any service you configure the software to contact is governed by that service's own privacy terms.

02

Information involved in a visit.

The site has no account system, checkout, comments, mailing list, or contact form. Outside the optional lab, its code does not ask for your name, email address, account details, message content, or precise location.

Like any website delivered over the internet, a visit creates a network request. Our hosting and security provider may process the IP address, requested URL, date and time, user agent, and routing or security metadata needed to deliver the page and defend the service.

  • No application cookie unless you start the hosted lab.
  • No localStorage or sessionStorage tracking.
  • No first-party or third-party analytics scripts.
  • No advertising, cross-site tracking, or sale of visitor data.
  • Fonts and site assets are served from this site's own origin.

03

Why technical request data is processed.

Technical request data is processed only to deliver and cache pages, keep the site available, detect and prevent abuse, investigate operational errors, and meet legal obligations. We do not use it to build advertising audiences or individual browsing profiles.

When you run a policy test, the selected policy and scenario are processed inside the disposable container. The encryption proof generates and removes a random test file inside that container. If you choose to use Hermes Chat, your message and the generated response are processed to provide that conversation. Content-free counters enforce the session and daily limits.

Where data-protection law requires a legal basis, this processing supports the legitimate interests of operating a secure, reliable public documentation site. Those interests are limited by the data-minimising design described on this page.

04

The optional hosted Mordred lab.

Starting the lab creates a pseudorandom session identifier, an expiry time, and content-free usage counters. The browser receives an encrypted HttpOnly capability cookie that expires within five minutes; JavaScript cannot read the underlying session token.

The guided test uses fixed text and a controlled non-network transport. Mordred's real Strict hook refuses the request before any external model is called. Other policy probes likewise return only decision codes and content-free audit lines.

The encryption proof request contains no visitor fields. A disposable subprocess generates a random challenge, creates encrypted test files, returns content-free cryptographic checks, and removes its files and mutable key buffer. It does not call an AI model.

Hermes Chat is optional and separately labelled. It accepts at most three messages of 200 characters per session. If you use it, the message you type, recent conversation context, and the generated response pass through our Cloudflare-hosted components and remote Cloudflare Workers AI. The application keeps that conversation only in browser memory and container RAM, does not write it to a visitor account or application database, and destroys the container when ended or expired.

Cloudflare may process model input and output plus infrastructure and security data under its service configuration and privacy terms. Do not enter personal data, credentials, wallet material, or other secrets: Mordred controls destinations but does not scan or redact message content.

05

Infrastructure and external services.

The site uses one infrastructure provider. Other services receive a request only when you choose to follow one of their links.

Cloudflare

Hosting, containers, model inference, and network security

Cloudflare processes requests at its network edge so the site can be delivered and protected. If you start the lab, Cloudflare also runs the disposable container. Cloudflare describes end-user request data as potentially including IP addresses, traffic-routing data, system configuration information, and other traffic metadata.

Cloudflare privacy policy

GitHub

Source, releases, documentation, and support

If you follow a GitHub link or submit an issue or private request, GitHub receives the information you provide and handles it under its own privacy statement.

PyPI

Package distribution

If you follow a PyPI link or download the package, PyPI and its infrastructure handle that request under their own terms and privacy notice.

06

Retention and disclosure.

We do not maintain a separate application database of visitors, prompts, responses, or visitor profiles. Optional Chat content exists transiently in browser memory, the request path, container RAM, and the model-inference path; the container is ended within five minutes. Content-free session, quota, and rate-limit metadata may remain for the period needed to enforce those limits. Infrastructure- and inference-level data is handled by Cloudflare according to the service configuration and its published policies. We may disclose information only when required by law or when reasonably necessary to protect the site, its maintainers, or its users.

We do not sell or rent personal information, and we do not share it for cross-context behavioural advertising.

07

Your choices and requests.

Depending on where you live, you may have rights to ask whether personal information about you is held and to request access, correction, deletion, restriction, or objection. Because this site keeps no visitor account or profile, we may have no data that can be linked back to you.

You may also have the right to complain to the data-protection authority where you live.

For a general question, open a GitHub issue without including sensitive information. If your request contains personal information, use the repository's private reporting channel and put “Privacy request” in the title. GitHub may require an account and will process the information you submit.

08

Changes to this policy.

Material changes will be published on this page with a revised effective date. The current version and date appear at the top of the policy.