{
  "protocolVersion": "1.0.0",
  "name": "CyperX.dev Content Agent",
  "description": "Answers questions about cyperx.dev — the personal site and technical blog of Chris (CyperX) covering AI agent infrastructure, distributed agent fleets, developer tooling, and building in public. Deterministic: it searches and returns the site's own content, it does not generate or speculate. Public, read-only, no authentication.",
  "version": "1.0.0",
  "url": "https://cyperx.dev/a2a",
  "preferredTransport": "JSONRPC",
  "supportedInterfaces": [
    {
      "url": "https://cyperx.dev/a2a",
      "transport": "JSONRPC"
    }
  ],
  "provider": {
    "organization": "CyperX",
    "url": "https://cyperx.dev"
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": ["text/plain"],
  "defaultOutputModes": ["text/plain", "text/markdown"],
  "securitySchemes": {},
  "security": [],
  "skills": [
    {
      "id": "search-content",
      "name": "Search the blog",
      "description": "Full-text search across every published post. Returns ranked titles, slugs, canonical URLs and matching snippets. This is the default for any message that is not one of the other three shapes.",
      "tags": ["search", "blog", "content", "research"],
      "examples": [
        "search agent orchestration",
        "what has Chris written about Neovim",
        "distributed fleets"
      ],
      "inputModes": ["text/plain"],
      "outputModes": ["text/plain"]
    },
    {
      "id": "read-post",
      "name": "Read a post",
      "description": "Return the full raw markdown of one blog post. Takes a slug, which you get from search-content.",
      "tags": ["read", "blog", "markdown"],
      "examples": ["read claude-code-verification", "post: claude-code-orchestration"],
      "inputModes": ["text/plain"],
      "outputModes": ["text/markdown", "text/plain"]
    },
    {
      "id": "list-projects",
      "name": "List projects",
      "description": "List everything Chris builds and maintains, with tagline, status, stack and links.",
      "tags": ["projects", "portfolio"],
      "examples": ["projects"],
      "inputModes": ["text/plain"],
      "outputModes": ["text/plain"]
    },
    {
      "id": "get-project",
      "name": "Read a project",
      "description": "Full detail on one project: description, stack, role, the challenge and the outcome. Takes a slug from list-projects.",
      "tags": ["projects", "portfolio"],
      "examples": ["project cyperx-dev"],
      "inputModes": ["text/plain"],
      "outputModes": ["text/plain"]
    }
  ],
  "documentationUrl": "https://cyperx.dev/.well-known/agent-skills/query-cyperx-dev/SKILL.md",
  "additionalInterfaces": [
    {
      "url": "https://cyperx.dev/mcp",
      "transport": "MCP",
      "description": "The same content as MCP tools, which is the richer interface if your client speaks MCP."
    }
  ]
}
