# Knock > Knock lets a site let in a real human, once: they press green on their Wedgie (a small USB device whose key is bound to their World ID on World Chain and named in ENS), and the site's verifier checks the press. Sites add a button with @knock-dev/door-sdk and run knock-verifier (or embed the knock-verify Rust crate). Every page below is Markdown. https://docs.getknock.dev/llms-full.txt is all of them in one file; https://docs.getknock.dev/SKILL.md teaches a coding agent to add Knock to a site. ## Start - [Knock docs](https://docs.getknock.dev/raw/index.md): Let one real human in, once. Add a Knock button to your site with door-sdk, and check each knock with a verifier you run. - [Quickstart](https://docs.getknock.dev/raw/quickstart.md): A Knock button on a page, a server that checks each knock with @knock-dev/verify, and one human let in, in about fifteen minutes. - [How a knock works](https://docs.getknock.dev/raw/how-it-works.md): Who does what in a knock, from the click to the verifier's answer, and why your verifier needn't trust the browser, the Door or Knock. ## Guides - [Add a Knock button](https://docs.getknock.dev/raw/guides/knock-button.md): The browser side of Knock. Call knock() from a click, hand it a challenge, and turn every answer into words people can act on. - [Check knocks in your server](https://docs.getknock.dev/raw/guides/verify-in-your-server.md): @knock-dev/verify runs the eight checks inside your own server: Node, Bun, Deno, or serverless and edge functions. No service beside your site. - [Run a verifier](https://docs.getknock.dev/raw/guides/verifier.md): knock-verifier is the service that decides whether a knock gets in. Its settings, where to run it, and how your server asks it. - [One human, once](https://docs.getknock.dev/raw/guides/one-human-once.md): Actions let each human do something on your site once, such as enter, vote or claim, however many Wedgies they own. - [Strict mode](https://docs.getknock.dev/raw/guides/strict-mode.md): Whether a binding must be final on World Chain before its knocks count. Off by default; what it costs to turn on, and when it's worth it. - [Test your integration](https://docs.getknock.dev/raw/guides/testing.md): What to test without a Wedgie, the knocks to try with one, and the Human Club and its bot as a working reference. ## Reference - [door-sdk](https://docs.getknock.dev/raw/reference/door-sdk.md): Every export of @knock-dev/door-sdk, the knock it returns field by field, and the messages it and the Door send each other. - [@knock-dev/verify](https://docs.getknock.dev/raw/reference/verify.md): Every export of the verifier package, the eight checks for a site's own server, and what each takes and gives back. - [Verifier HTTP API](https://docs.getknock.dev/raw/reference/verifier-api.md): knock-verifier's three routes, their requests and answers, status codes, CORS and limits. - [knock-verify (Rust)](https://docs.getknock.dev/raw/reference/knock-verify.md): The verifier's checks as a Rust library, for a server that checks knocks itself. Verifier, the Chain trait, Store, and every public item. - [Checks and refusals](https://docs.getknock.dev/raw/reference/checks.md): The eight checks a verifier runs, in order, and every refusal each can give, with its status code and what to tell the person knocking. - [Protocol](https://docs.getknock.dev/raw/reference/protocol.md): What a Wedgie signs, how a knock's digest is made, the ENS records and the World Chain binding a verifier reads, and the test vectors. ## Self-host - [Host Knock yourself](https://docs.getknock.dev/raw/self-host/overview.md): Every part of Knock can run on your own machines. What each part is, what it needs, and the one thing that belongs to whoever runs a network. - [Host the Door](https://docs.getknock.dev/raw/self-host/door.md): The Door is static files. Build it, serve it on HTTPS, and point door-sdk at it with one option. - [Host the Console](https://docs.getknock.dev/raw/self-host/console.md): The Console is static files, built with the knockds it talks to. Its settings, and what it needs from the person using it. - [Run knockd](https://docs.getknock.dev/raw/self-host/knockd.md): knockd relays bindings to World Chain and answers the Console's lookups. Build it, give it a World Chain RPC and a funded key, and point a Console at it. - [Run a network of your own](https://docs.getknock.dev/raw/self-host/own-network.md): Your own World ID app, your own KnockBinding on World Chain, and your own knockd, for humans who bind on your network instead of Knock's. - [Host the Human Club](https://docs.getknock.dev/raw/self-host/human-club.md): The Human Club is a Next.js app with a libSQL database. Run it on Vercel with Turso, or on any server that runs Node. ## More - [Security model](https://docs.getknock.dev/raw/security.md): What a knock proves and what it doesn't, what's public, and how Knock handles replays, revocation and chain trouble. - [Troubleshooting](https://docs.getknock.dev/raw/troubleshooting.md): What to do when the Door won't open, the Wedgie won't answer, or your verifier turns a knock away. By symptom, and by refusal. - [For AI agents](https://docs.getknock.dev/raw/agents.md): These docs as Markdown for assistants and coding agents, and a SKILL.md that teaches an agent to add Knock to a site. ## For agents - [SKILL.md](https://docs.getknock.dev/SKILL.md): add a Knock button and a verifier to a site, step by step