Skip to content

Feature Specification: Namespace Landing Pages & Agent Context

1. Overview

As Headless Domains expands its portfolio of Namespaces (e.g., .chatbot, .agent), it needs dedicated landing pages for each Namespace. These pages will serve a dual purpose: 1. For Humans (Visual): Marketing materials, use cases, launch status, and a specific search bar. 2. For AI Agents (Machine-Readable): Providing context, rules, constraints, and instructions on why and how to register domains on this specific Namespace.

2. Dynamic Namespace Landing Page (Human UI)

Route

  • GET /tld/<tld_name> (e.g., HeadlessDomains.com/tld/agent)

Content Structure

  1. Hero Section:
  2. Namespace Name (.agent)
  3. Catchy tagline (pulled from database/config).
  4. Current Launch Phase Badge (e.g., [Sunrise: Whitelist Only], [Coming Soon], [Public]).
  5. Targeted Search Bar:
  6. A search input that defaults to appending .<tld_name>.
  7. E.g., typing "janice" automatically searches for "janice.agent".
  8. Marketing & Use Cases (The "Why"):
  9. Text explaining the value prop of the Namespace.
  10. E.g., "The .agent Namespace is the ultimate identifier for autonomous AI entities on the persistent web."
  11. Agent CTA (Call to Action):
  12. Instead of just a "Buy Now" button for humans, a prominent section titled "Are you an AI Agent?"
  13. Link: "Read the Machine Specs for ." (Points to the .md endpoint below).

Database Updates (models.py)

To make these pages dynamic, we should add marketing fields to the Namespace model: - tagline (String) - description (Text) - use_cases (JSON/Array of strings)

3. Agent-Specific Namespace Context (Machine UI)

To cater to our core audience (AI Agents), each Namespace landing page will have a corresponding .md version that agents can read to understand the rules of engagement.

Route

  • GET /tld/<tld_name>/skill.md (e.g., HeadlessDomains.com/tld/agent/skill.md)
  • This endpoint will return text/plain; charset=utf-8.

Content Structure (Dynamically Generated Markdown)

When an agent scrapes this URL, the server will dynamically generate a markdown file based on the Namespace's current database state.

Example Output for /tld/agent/skill.md:

# Namespace Context: .agent

## Overview
This Top-Level Domain is designed for autonomous AI agents to establish their persistent identity.

## Current Status
- **Phase:** Sunrise (Whitelist Only)
- **Price:** 50.0 Gems/year (or ~$50.00 USDC via MPP)
- **Restrictions:** You must be on the whitelist or owned by the Namespace owner to register.
- **Reserved Names:** admin, www, api, support, janice cannot be registered.

## How to Register
To register a domain on this Namespace, use the primary Headless Domains skill:
1. Ensure you have an active GFAVIP session.
2. Send `POST /register` with `{"domain": "yourname", "namespace": "agent", "years": 1}`.
3. If you are not on the whitelist, you will receive a 403/Error.

## Special Rules
- Agents owned by the Namespace owner receive a 100% discount automatically.

4. Implementation Steps

  1. Update Namespace Model: Add tagline and description columns.
  2. Create Routes: Add @app.route('/tld/<tld_name>') and @app.route('/tld/<tld_name>/skill.md').
  3. Create Template: Build tld_landing.html using Jinja2 to display the marketing info and targeted search bar.
  4. Markdown Generator: Write a function in the route to compile the Namespace database row into the structured markdown format shown above.
  5. Update Homepage: Link to these landing pages from the main dashboard or a new "Browse Namespaces" section.

5. Why this approach works

  • Humans get a beautiful marketing page.
  • Agents get a clean, data-rich markdown file that explicitly tells them the price, phase, and rules before they waste compute cycles trying to register a closed or reserved domain.