Checkpoint
Checkpoint is a tiny reverse proxy that attempts to block AI by serving a cryptographic challenge.
Install / Use
/learn @vaxerski/CheckpointREADME
🛑 Checkpoint
Checkpoint is a tiny reverse proxy that attempts to block AI by serving a cryptographic challenge.
This project is a work-in-progress. It works, but has only basic functionality.
Why?
AI scrapers are everywhere. This will stop them. robots.txt won't.
Features
- Protect your endpoint from AI bots with a cryptographic challenge
- Easy configuration in jsonc
- Support for cloudflare
- Support for IP-Range based rules (both ipv4 and ipv6)
- Support for async (multithreaded) request handling
- Minimal. The waiting page is tiny and light on network usage.
- Support for verbose traffic logging for later inspection or statistics
Planned features
- Dynamic challenge amount (aka difficulty) based on traffic
- Detection of token overuse
- Better wait screen
Caveats
If you are using this, it's almost certain search engines will stop indexing your site. Keep this in mind.
Setup guide
- Clone and build this repo. You will need
openssl,g++>=12,re2,libmagic, and deps forpistache,fmtandtinylates. - Create a
config.jsonc. An example one is inexample/. - Adjust the config to your needs. Options are documented with comments in the example config.
- Set up your IP rules if you want. These allow you to set up IPs that are automatically blocked, or allowed to access without a challenge. This is useful for e.g. search engine scrapers. Some IP ranges can be found in
example/index_bots.jsonc. - Run checkpoint with your config:
./build/checkpoint -c config.jsonc. How you run it long-term as a service is up to you.
FAQ / Setup info
See docs/FAQ.
Related Skills
node-connect
339.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.9kCommit, push, and open a PR
