The generator
Build your agreement
Fill in the parties below, generate your NDA, and copy the matching notice and marker into your own files.
Parties & terms
Notice and marker to embed
Generate an agreement to see the document notice and the header marker you paste into your own files.
In plain terms
What this does, and what it does not do
ND4AI is detection and deterrence layered under a real contract. It is honest about its limits — and so are we.
What ND4AI does
- Binds the human recipient, by contract, not to feed your document into risky AI systems.
- Gives you injunctive-relief and 72-hour breach-notification terms you can actually enforce.
- Places a visible notice that some well-behaved assistant tools may honour.
- Issues a unique reference and marker that can flag when the file is fetched over a link.
What ND4AI cannot do
- It cannot make an AI obey the notice. Models treat embedded text as data, not commands.
- It cannot bind the AI or its operator. They are not parties to your agreement.
- The marker fires on any fetch, so a hit may be a link-preview bot, not an AI.
- It is detection and deterrence, not prevention. It does not make a document AI-proof.
Try it
Test the reference marker
Simulate what happens when your marker URL is fetched. In production the marker points at your canary service, which logs the request and emails you.
Marker fetch simulator
This runs locally so you can see the shape of a logged event. Leave the demo value to see a simulated log, or point it at your live canary base URL.
For operators
Deploying ND4AI.com
The site is a static front end plus a small canary service. Everything below ships in this package.
Package layout
├─ index.html this page
├─ ND4AI_NDA_Template.docx blank template
├─ robots.txt · sitemap.xml · favicon.svg · og-image.png
├─ .htaccess Apache routing
└─ canary/ blocked from the web, except app.php
├─ app.php marker, register and hits endpoints
├─ lib.php · cli.php · router.php
├─ make_pixel.php · pixel.png
├─ make_template.php
├─ config.example.php
├─ deploy/ Caddy · nginx · cron
└─ README.md
Plain PHP, no Composer packages. Your web server serves this page and the template as static files and hands the marker endpoints to canary/app.php. Markers resolve at https://nd4ai.com/c/<token>.
Run it
cp canary/config.example.php canary/config.php
# edit config.php: secret, mail_from or SMTP, webhook
php canary/make_pixel.php
# dev:
php -S 127.0.0.1:8000 -t . canary/router.php # :8000
# production: Caddy or nginx + php-fpm (canary/deploy/),
# or Apache — the .htaccess files do the routing
- Needs PHP 8.1+ with
pdo_sqlite. No daemon, no Composer. - Serve it over TLS. Caddy and nginx blocks ship in
canary/deploy/. POST /registeris public — the generator calls it same-origin.GET /hits/<token>stays protected byND4AI_SECRET(config.php or environment).- Set
mail_from, SMTP, or a webhook for email/Slack alerts. - Records IP + user agent — add a privacy notice and the cron retention job (see README).