Skip to content
Back to Doorman

Card snapshot

doorman.clawhard.com · 2026-11-06 07:54:12 UTC · e48fc2a1b93edb207fa9fb38f15ebdb801e543f6b0a125c9677b1f999d5d7cae

This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.

{
  "name": "Doorman",
  "description": "Doorman reads any website's robots.txt and shows which AI bots it lets in: who can train on it, which AI search engines can find and cite it, and which assistants can read it for people. Pick what you want and copy a fixed robots.txt, including the new shared AI-training opt-out line. No account.",
  "version": "1.1.0",
  "url": "https://doorman.clawhard.com/a2a",
  "preferredTransport": "JSONRPC",
  "protocolVersion": "1.0",
  "supportedInterfaces": [
    {
      "url": "https://doorman.clawhard.com/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    },
    {
      "url": "https://doorman.clawhard.com/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "0.3"
    }
  ],
  "provider": {
    "organization": "Clawhard Studio",
    "url": "https://clawhard.com"
  },
  "iconUrl": "https://clawhard.com/icon-512.png",
  "documentationUrl": "https://doorman.clawhard.com/llms.txt",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": false
  },
  "defaultInputModes": [
    "application/json",
    "text/plain"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/plain"
  ],
  "skills": [
    {
      "id": "doorman_check_ai_bot_access",
      "name": "See which AI bots a website lets in",
      "description": "Reads the public robots.txt of a website and reports which AI bots it lets in, by purpose: AI training (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, Meta-ExternalAgent, CCBot, Bytespider, Amazonbot and more), AI search and answers (OAI-SearchBot, Claude-SearchBot, PerplexityBot, DuckAssistBot), assistants opening pages for a person (ChatGPT-User, Claude-User, Perplexity-User,\u2026",
      "tags": [
        "doorman",
        "DeveloperApplication",
        "read-only"
      ],
      "examples": [
        "Which AI bots does my site allow?",
        "Write a robots.txt that allows AI search but blocks training",
        "Check this robots.txt for AI crawler rules"
      ],
      "inputModes": [
        "application/json",
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "doorman_check_robots_txt",
      "name": "Check a robots.txt file for AI bot access",
      "description": "Same report as the check tool, for robots.txt text you already have (a draft, or a file from a site the checker cannot reach). Parses it the way crawlers do (RFC 9309 groups, longest-match Allow/Disallow, * and $ wildcards) and reports which AI training bots, AI search bots, assistants and search engines it lets in, plus the shared __usage_ai-training preference.",
      "tags": [
        "doorman",
        "DeveloperApplication",
        "read-only"
      ],
      "examples": [
        "Which AI bots does my site allow?",
        "Write a robots.txt that allows AI search but blocks training",
        "Check this robots.txt for AI crawler rules"
      ],
      "inputModes": [
        "application/json",
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "doorman_write_robots_txt",
      "name": "Write a robots.txt that lets in only the AI bots you want",
      "description": "Builds a robots.txt from a simple choice: AI training in or out, AI search in or out, assistants in or out. Keeps every rule in the existing file (pass it as robots_txt), removes old lines for the AI bots it manages, and adds one clearly labelled block, including the shared User-agent: __usage_ai-training preference. Never touches Googlebot, Bingbot or Applebot, so normal search is unaffected.",
      "tags": [
        "doorman",
        "DeveloperApplication",
        "read-only"
      ],
      "examples": [
        "Which AI bots does my site allow?",
        "Write a robots.txt that allows AI search but blocks training",
        "Check this robots.txt for AI crawler rules"
      ],
      "inputModes": [
        "application/json",
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    }
  ]
}