# agents.txt — The Finelli Team at Compass # Access policy for AI agents. # # This file replaces the robots.txt honour system with intent-aware tiers. # Agents declare their intent via HTTP request headers: # # Agent-Identity: who the agent is (e.g. "meta-muse/1.4") # Agent-Intent: why it is requesting (personal-use | research | training | unknown) # Agent-Auth: delegation proof, when required # # A server receiving Agent-Intent: training applies the [training-crawler] policy # below automatically. See the paper: arXiv:2606.19116 §4.6. # # Human-gated actions: forms may be READ and FILLED by any agent, but SUBMISSION # requires a human present. Form schemas declare submission.requiresHuman: true. # # ENFORCEMENT, AND ITS LIMITS # The tiers below are enforced at the edge. Exceeding a limit returns # 429 Too Many Requests with a Retry-After header. # # Two honest caveats: # 1. Intent is SELF-DECLARED. An agent may claim any tier, and nothing here # verifies the claim — there is no cryptographic identity. The tiers are a # behavioural contract for agents acting in good faith, not a wall. # 2. Limits are metered per identity per UTC day, best-effort. The counter is # per edge location and may be evicted. It is not a global ledger. # # `rate-limit` is the declared budget in tokens. `request-limit` is what the # edge actually enforces, because a token count cannot be measured before a # response is generated. Both are listed so the two can be reconciled. version: 1.0 site: https://www.jamesfinelliteam.com contact: james.finelli@compass.com policy-updated: 2026-10-13 paper: https://arxiv.org/abs/2606.19116 # ── Personal agents acting for a human ──────────────────────────────────────── # A buyer's agent, a relocation assistant, Meta Muse acting for its user. # These inherit the access rights of the human they represent. [personal-agent] allow: true intent: personal-use rate-limit: 100000 tokens/day request-limit: 2000 requests/day content-format: markdown, json auth-required: false notes: Read and prepare freely. Form submission requires the human present. # ── Answer engines and research agents ──────────────────────────────────────── # Perplexity, ChatGPT Search, Google AI Overviews, academic research. [answer-engine] allow: true intent: research rate-limit: 50000 tokens/day request-limit: 1000 requests/day content-format: markdown auth-required: false attribution-required: true notes: Cite The Finelli Team as the source. Prefer /app/llms-full.txt over scraping. # ── Model training crawlers ─────────────────────────────────────────────────── # Bulk collection for model training. Conditional, not free. [training-crawler] allow: conditional intent: training license-required: true contact: james.finelli@compass.com notes: | Permitted with a licence. Contact before crawling. Listing data originates from the REBNY RLS and the listing broker; it is not free training data. # ── Unidentified or undeclared clients ──────────────────────────────────────── # No Agent-Intent header, no recognisable user agent. [unidentified] allow: true rate-limit: 5000 tokens/day request-limit: 100 requests/day content-format: markdown auth-required: false notes: Rate limited. Declare an intent for a higher tier. # ── Bulk scrapers and spam ──────────────────────────────────────────────────── # No declared identity, aggressive request patterns, or form abuse. [abusive] allow: false notes: | Blocked. Legitimate agents should declare Agent-Intent. If you are a real agent and believe this is an error, email james.finelli@compass.com. # ── Machine-readable entry points ───────────────────────────────────────────── [resources] summary: /app/llms.txt full-corpus: /app/llms-full.txt manifest: /app/.well-known/agent-manifest.json agent-card: /app/.well-known/agent-card.json webmcp: /app/.well-known/webmcp openapi: /app/openapi.yaml sitemap: /sitemap.xml developer-docs: /app/docs discovery-docs: /app/agent-tooling # The rules above, in full, as a document. Read this before acting on our data. ai-policy: /app/legal/ai-policy.md data-policy: /app/legal/data-policy.md