A2A REGISTRY·AGENT RECORD·fd5a7fba-3c4b-4475-b479-00e9fc31cdaf

Provider

Launchfiles

Launchfiles A2A

Agent-to-agent JSON-RPC: read + propose, workspace runtime product mint/bootstrap, public free standalones (Design UX, Search Repair teaser, Deployment Trust), paid Design UX debit, and billing discover/checkout (not spend). Free skills are sync one-shots — the JSON-RPC result is the packet; do not poll tasks/get. Public discovery is not authority. Raw secrets rejected. No publish, deploy, or approve. A2A taskStore is in-process non-durable memory (not a durable task DB). Durable mission work lives in mission_sessions. Calling convention: JSON-RPC 2.0 over HTTP POST to /api/a2a. message/send needs params.skill (a skill id from this card) — a standard A2A Message without params.skill is rejected, so this is not a drop-in standard A2A Message client.

Observed evidence

Reachable

Last sweep

Launch endpoint ↗

Agent datasheet

Agent ID
fd5a7fba-3c4b-4475-b479-00e9fc31cdaf
Category
Agent directories
Canonical card
https://launchfiles.app/.well-known/agent-card.json
Endpoint
https://launchfiles.app/api/a2a
Protocol version
0.2.1
Agent version
launchfiles_a2a_v1
Streaming
Not declared
Input modes
application/json, text/plain
Output modes
application/json

Reachability record

Last 100 checks shown · 100.0% across 30 days

2026-10-13T19:34:29.340507Z: passed2026-10-13T20:05:35.548924Z: passed2026-10-13T20:36:53.336139Z: passed2026-10-13T21:07:54.841647Z: passed2026-10-13T21:38:56.045139Z: passed2026-10-13T22:09:45.536934Z: passed2026-10-13T22:40:37.535379Z: passed2026-10-13T23:11:39.642261Z: passed2026-10-13T23:42:35.745585Z: passed2026-10-14T00:13:52.145000Z: passed2026-10-14T00:44:42.842505Z: passed2026-10-14T01:15:48.930606Z: passed2026-10-14T01:46:41.544019Z: passed2026-10-14T02:17:38.928911Z: passed2026-10-14T02:48:38.144605Z: passed2026-10-14T03:19:35.734395Z: passed2026-10-14T03:50:52.547337Z: passed2026-10-14T04:21:50.541691Z: passed2026-10-14T04:52:56.032515Z: passed2026-10-14T05:23:57.743628Z: passed2026-10-14T05:54:54.938591Z: passed2026-10-14T06:25:58.227637Z: passed2026-10-14T06:56:53.940838Z: passed2026-10-14T07:28:19.826561Z: passed2026-10-14T08:00:38.645629Z: passed2026-10-14T08:32:58.044451Z: passed2026-10-14T09:03:58.339599Z: passed2026-10-14T09:34:52.334610Z: passed2026-10-14T10:05:58.932222Z: passed2026-10-14T10:36:55.355624Z: passed2026-10-14T11:07:51.040923Z: passed2026-10-14T11:38:47.127251Z: passed2026-10-14T12:09:46.938128Z: passed2026-10-14T12:40:52.129094Z: passed2026-10-14T13:11:53.846269Z: passed2026-10-14T13:42:54.244757Z: passed2026-10-14T14:13:48.228722Z: passed2026-10-14T14:44:50.244759Z: passed2026-10-14T15:15:46.530077Z: passed2026-10-14T15:46:40.331908Z: passed2026-10-14T16:17:43.632334Z: passed2026-10-14T16:48:49.342605Z: passed2026-10-14T17:04:58.051181Z: passed2026-10-14T17:17:37.732227Z: passed2026-10-14T17:48:39.696809Z: passed2026-10-14T18:20:07.887037Z: passed2026-10-14T18:26:05.340558Z: passed2026-10-14T18:57:20.388874Z: passed2026-10-14T19:28:36.907087Z: passed2026-10-14T19:59:49.036664Z: passed2026-10-14T20:31:06.915821Z: passed2026-10-14T21:02:15.227233Z: passed2026-10-14T21:33:21.392287Z: passed2026-10-14T22:04:26.903381Z: passed2026-10-14T22:35:41.992121Z: passed2026-10-14T23:06:52.595769Z: passed2026-10-14T23:37:57.994206Z: passed2026-10-15T00:09:05.695974Z: passed2026-10-15T00:40:37.105047Z: passed2026-10-15T01:11:49.197880Z: passed2026-10-15T01:43:06.591269Z: passed2026-10-15T02:14:10.189718Z: passed2026-10-15T02:45:08.999363Z: passed2026-10-15T03:16:26.088262Z: passed2026-10-15T03:47:40.792856Z: passed2026-10-15T04:18:44.101193Z: passed2026-10-15T04:49:47.594968Z: passed2026-10-15T05:21:03.191915Z: passed2026-10-15T05:52:20.097884Z: passed2026-10-15T06:23:23.691556Z: passed2026-10-15T06:54:28.507494Z: passed2026-10-15T07:25:36.998584Z: passed2026-10-15T07:57:05.808077Z: passed2026-10-15T08:29:44.192575Z: passed2026-10-15T09:02:13.904596Z: passed2026-10-15T09:33:37.389761Z: passed2026-10-15T10:04:48.094792Z: passed2026-10-15T10:36:00.008713Z: passed2026-10-15T11:07:06.500372Z: passed2026-10-15T11:38:15.508360Z: passed2026-10-15T12:09:16.302739Z: passed2026-10-15T12:40:18.899838Z: passed2026-10-15T13:11:26.503362Z: passed2026-10-15T13:42:29.204166Z: passed2026-10-15T14:13:37.598807Z: passed2026-10-15T14:44:35.904742Z: passed2026-10-15T15:15:49.194592Z: passed2026-10-15T15:47:02.907431Z: passed2026-10-15T16:18:10.698355Z: passed2026-10-15T16:49:17.391132Z: passed2026-10-15T17:20:23.365416Z: passed2026-10-15T17:51:38.797201Z: passed2026-10-15T18:23:29.903505Z: passed2026-10-15T18:54:45.303076Z: passed2026-10-15T19:25:53.801606Z: passed2026-10-15T19:57:13.294444Z: passed2026-10-15T20:28:31.103469Z: passed2026-10-15T20:59:43.293299Z: passed2026-10-15T21:31:19.790338Z: passed2026-10-15T22:02:23.012405Z: passed
PassFailureAverage 1655 ms

Declared skills

List connection tools

catalog

Discovery catalog for MCP/A2A clients.

discovery

List workspaces

workspaces.list

List workspaces this actor is a member of. Empty is honest. Auth required.

workspace · read

Create workspace

workspaces.create

Create a workspace and grant the caller owner. Never seeds default. Auth required.

workspace · write_metadata

Bind workspace

workspaces.bind

Bind this session to a workspace the actor can access. Auth required.

workspace · bind

Unbind workspace

workspaces.unbind

Clear the in-process workspace bind for this session. Auth required.

workspace · bind

Get agent session

session.get

Read identity, bound workspace, and entitled tools. Auth required.

workspace · session · read

Get connection state

connections.get

Read product connection readiness, handoff JSON, and surface catalog.

connections · read

Save connection metadata

connections.save

Persist public locators and credential references for a surface (no raw secrets).

connections · write_metadata

Run read-only social recon

connections.scan

Invoke configured n8n recon for enabled surfaces.

connections · recon · read

List products

products.list

List adapter and workspace-minted runtime products.

products · case_b · read

Mint runtime product

products.create

Create a workspace runtime product with empty connectors and restrictive claim ceiling. No publish.

products · case_b · write_metadata

Get product completeness

products.completeness

Read L0/L1 completeness and claim ceiling for a product.

products · case_b · read

Run bootstrap product truth

products.bootstrap_truth

Locked bootstrap_product_truth_v1 artifact (known/unknown/gaps). Requires L1. No public copy.

products · case_b · bootstrap

Attach depth pack

products.attach_adapter

Bind a registered depth pack onto a runtime product. Same slug. Founder intake wins. No remint.

products · case_b · attach · write_metadata

Propose signal

propose.signal

Propose a signal object only — never executes. Returns proposal_id + receipt.

propose · read_propose

Propose work order

propose.work_order

Propose a scoped work order — never starts execution without founder path.

propose · read_propose

Mission status (read)

mission.status

Read mission/session status when authorized.

mission · read

Design UX Radar free preview

design_ux_radar.run_free

Public free Design UX Radar preview for one URL. Scores come from fixed rules; a small language model writes the next-step text. Paid tier is not open to the public yet. Rate-limited. Mirrors /cro free path. Optional leave-behind fields (client_ref, brand_name, logo_url, primary_color, hide_lf_chrome) stay on the agent JSON. client_ref is echoed for the caller's own DB; Launchfiles does not list runs by client. hide_lf_chrome needs an authenticated lf_agent_ key or the response returns wl_entitlement needs_auth.

standalone · free · design_ux_radar · public_standalone

Search Repair Radar free teaser

search_repair_radar.run_free

Public free Search Repair teaser. Owned adapter GSC properties use the product bind (no access_token). Other sites need a GSC token or return needs_auth + connect URL. Preview only — never the $29/mo paid packet.

standalone · free · search_repair_radar · public_standalone

Deployment Trust Radar free packet

deployment_trust_radar.run_free

Public free Deployment Trust Radar packet (free-full demand probe; no paid tier). Requires url, use_case_plain, autonomy, data_sensitivity.

standalone · free · deployment_trust_radar · public_standalone

Keyword Planner research

keyword_planner.research

Read-only Google Ads Keyword Planner for one agnostic study. Requires registered or founder auth. $0 Ads. Params: study_id and seeds (string array). seed_keywords, keywords, and query are UNKNOWN_BODY_KEY. study_id without seeds is SEEDS_REQUIRED. sold_job_seeds require gap_scan_id or gap_scan (hunt_gap_scan_v1, ready_for_measure, or blocked category taken / wrong job keyword) or return GAP_SCAN_REQUIRED. Optional commodity_seeds stamp GO/HOLD/KILL. Volume GO plus an occupied shelf or a wrong job keyword is HOLD. Nothing is published or spent.

research · keyword_planner · read_only · registered_agent

Hunt gap scan

hunt_gap_scan.run

Gap-first hunt receipt. Requires registered or founder auth. competitor_urls (1–5 http(s) URLs), optional category_hint and pain_source_urls. Returns hunt_gap_scan_v1, including trends as a labeled skip (SOURCE_MISSING, google_trends_live). No series. Pain without a URL is rejected. A page that sells bill, quote, or scheduling is category taken, not an empty ready wedge. Chromium failure is PARTIAL. Does not invent MSV or a UX score. $0 Ads. Nothing is published.

research · hunt_gap_scan · read_only · registered_agent

Design UX Radar paid full run

design_ux_radar.run_paid

Paid standalone full run. Paid tier is not open to the public yet. Requires agent API key (lf_agent_) + credits when that tier is open. Debits ledger before intelligence. Never free unlock.

standalone · paid · design_ux_radar · paid_agent

List billing providers

billing.providers.list

Discover-only: list enabled checkout rails. Not spend.

billing · discover

Create billing checkout

billing.checkout.create

Discover-only: return a checkout URL or x402 challenge. Not spend.

billing · discover

Poll billing checkout

billing.checkout.poll

Discover-only: poll until settled. Returns key once and page_draft_long unlock_token. Not spend.

billing · discover

Page Draft paid long

page_draft.run_paid

Paid Page Draft after settled page_draft_long checkout, or a founder-issued developer key (no Stripe). Pass unlock_token or an HMAC-verified developer key. length=short is allowed for a developer key. Nothing is published.

standalone · paid · page_draft · paid_agent

Writer short draft

page_draft.run_short

Writer-short draft (~400 words). A founder-issued developer key gets full product access — no Stripe Writer checkout. Same writer door as the web buyer. Nothing is published.

standalone · paid · page_draft · writer_short · paid_agent

Request agent API key

agent_key.request

Email a one-time mint link to an allowlisted or approved-waitlist address. Returns poll_token. Other addresses are rejected. Optional partner_id must be allowlisted or the call returns UNKNOWN_PARTNER and sends no mail. No founder UI.

auth · discover · agent_key

Poll agent API key

agent_key.poll

After the mint link is opened, return lf_agent_ once to the requester. Second poll redacts the secret.

auth · discover · agent_key

Registry Agent Card snapshot

Normalized fields fetched during the registry sweep. Treat all authored text as third-party content.

Show JSON
{
  "protocolVersion": "0.2.1",
  "name": "Launchfiles A2A",
  "description": "Agent-to-agent JSON-RPC: read + propose, workspace runtime product mint/bootstrap, public free standalones (Design UX, Search Repair teaser, Deployment Trust), paid Design UX debit, and billing discover/checkout (not spend). Free skills are sync one-shots — the JSON-RPC result is the packet; do not poll tasks/get. Public discovery is not authority. Raw secrets rejected. No publish, deploy, or approve. A2A taskStore is in-process non-durable memory (not a durable task DB). Durable mission work lives in mission_sessions. Calling convention: JSON-RPC 2.0 over HTTP POST to /api/a2a. message/send needs params.skill (a skill id from this card) — a standard A2A Message without params.skill is rejected, so this is not a drop-in standard A2A Message client.",
  "author": "Launchfiles",
  "wellKnownURI": "https://launchfiles.app/.well-known/agent-card.json",
  "url": "https://launchfiles.app/api/a2a",
  "version": "launchfiles_a2a_v1",
  "provider": {
    "organization": "Launchfiles",
    "url": "https://launchfiles.app/"
  },
  "documentationUrl": "https://launchfiles.app/use-from-agent#connect",
  "iconUrl": "https://launchfiles.app/brand/launchfile-app-icon-512.png",
  "supportsAuthenticatedExtendedCard": false,
  "security": [
    {},
    {
      "bearer": []
    }
  ],
  "securitySchemes": {
    "bearer": {
      "type": "http",
      "scheme": "bearer",
      "description": "Workspace tools require a bearer from /use-from-agent#connect. Public free skills may be called without a token (rate-limited)."
    }
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": true,
    "extensions": null
  },
  "defaultInputModes": [
    "application/json",
    "text/plain"
  ],
  "defaultOutputModes": [
    "application/json"
  ],
  "skills": [
    {
      "id": "catalog",
      "name": "List connection tools",
      "description": "Discovery catalog for MCP/A2A clients.",
      "tags": [
        "discovery"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "workspaces.list",
      "name": "List workspaces",
      "description": "List workspaces this actor is a member of. Empty is honest. Auth required.",
      "tags": [
        "workspace",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "workspaces.create",
      "name": "Create workspace",
      "description": "Create a workspace and grant the caller owner. Never seeds default. Auth required.",
      "tags": [
        "workspace",
        "write_metadata"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "workspaces.bind",
      "name": "Bind workspace",
      "description": "Bind this session to a workspace the actor can access. Auth required.",
      "tags": [
        "workspace",
        "bind"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "workspaces.unbind",
      "name": "Unbind workspace",
      "description": "Clear the in-process workspace bind for this session. Auth required.",
      "tags": [
        "workspace",
        "bind"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "session.get",
      "name": "Get agent session",
      "description": "Read identity, bound workspace, and entitled tools. Auth required.",
      "tags": [
        "workspace",
        "session",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "connections.get",
      "name": "Get connection state",
      "description": "Read product connection readiness, handoff JSON, and surface catalog.",
      "tags": [
        "connections",
        "read"
      ],
      "examples": [
        "{\"productSlug\":\"citadel\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "connections.save",
      "name": "Save connection metadata",
      "description": "Persist public locators and credential references for a surface (no raw secrets).",
      "tags": [
        "connections",
        "write_metadata"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "connections.scan",
      "name": "Run read-only social recon",
      "description": "Invoke configured n8n recon for enabled surfaces.",
      "tags": [
        "connections",
        "recon",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "products.list",
      "name": "List products",
      "description": "List adapter and workspace-minted runtime products.",
      "tags": [
        "products",
        "case_b",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "products.create",
      "name": "Mint runtime product",
      "description": "Create a workspace runtime product with empty connectors and restrictive claim ceiling. No publish.",
      "tags": [
        "products",
        "case_b",
        "write_metadata"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "products.completeness",
      "name": "Get product completeness",
      "description": "Read L0/L1 completeness and claim ceiling for a product.",
      "tags": [
        "products",
        "case_b",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "products.bootstrap_truth",
      "name": "Run bootstrap product truth",
      "description": "Locked bootstrap_product_truth_v1 artifact (known/unknown/gaps). Requires L1. No public copy.",
      "tags": [
        "products",
        "case_b",
        "bootstrap"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "products.attach_adapter",
      "name": "Attach depth pack",
      "description": "Bind a registered depth pack onto a runtime product. Same slug. Founder intake wins. No remint.",
      "tags": [
        "products",
        "case_b",
        "attach",
        "write_metadata"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "propose.signal",
      "name": "Propose signal",
      "description": "Propose a signal object only — never executes. Returns proposal_id + receipt.",
      "tags": [
        "propose",
        "read_propose"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "propose.work_order",
      "name": "Propose work order",
      "description": "Propose a scoped work order — never starts execution without founder path.",
      "tags": [
        "propose",
        "read_propose"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "mission.status",
      "name": "Mission status (read)",
      "description": "Read mission/session status when authorized.",
      "tags": [
        "mission",
        "read"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "design_ux_radar.run_free",
      "name": "Design UX Radar free preview",
      "description": "Public free Design UX Radar preview for one URL. Scores come from fixed rules; a small language model writes the next-step text. Paid tier is not open to the public yet. Rate-limited. Mirrors /cro free path. Optional leave-behind fields (client_ref, brand_name, logo_url, primary_color, hide_lf_chrome) stay on the agent JSON. client_ref is echoed for the caller's own DB; Launchfiles does not list runs by client. hide_lf_chrome needs an authenticated lf_agent_ key or the response returns wl_entitlement needs_auth.",
      "tags": [
        "standalone",
        "free",
        "design_ux_radar",
        "public_standalone"
      ],
      "examples": [
        "{\"url\":\"https://example.com\",\"device\":\"mobile\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "search_repair_radar.run_free",
      "name": "Search Repair Radar free teaser",
      "description": "Public free Search Repair teaser. Owned adapter GSC properties use the product bind (no access_token). Other sites need a GSC token or return needs_auth + connect URL. Preview only — never the $29/mo paid packet.",
      "tags": [
        "standalone",
        "free",
        "search_repair_radar",
        "public_standalone"
      ],
      "examples": [
        "{\"gsc_site_url\":\"sc-domain:example.com\",\"access_token\":\"<gsc_oauth_access_token>\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "deployment_trust_radar.run_free",
      "name": "Deployment Trust Radar free packet",
      "description": "Public free Deployment Trust Radar packet (free-full demand probe; no paid tier). Requires url, use_case_plain, autonomy, data_sensitivity.",
      "tags": [
        "standalone",
        "free",
        "deployment_trust_radar",
        "public_standalone"
      ],
      "examples": [
        "{\"url\":\"https://example.com\",\"use_case_plain\":\"Draft support replies with human approval before send\",\"autonomy\":\"draft_with_approval\",\"data_sensitivity\":\"pii\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "keyword_planner.research",
      "name": "Keyword Planner research",
      "description": "Read-only Google Ads Keyword Planner for one agnostic study. Requires registered or founder auth. $0 Ads. Params: study_id and seeds (string array). seed_keywords, keywords, and query are UNKNOWN_BODY_KEY. study_id without seeds is SEEDS_REQUIRED. sold_job_seeds require gap_scan_id or gap_scan (hunt_gap_scan_v1, ready_for_measure, or blocked category taken / wrong job keyword) or return GAP_SCAN_REQUIRED. Optional commodity_seeds stamp GO/HOLD/KILL. Volume GO plus an occupied shelf or a wrong job keyword is HOLD. Nothing is published or spent.",
      "tags": [
        "research",
        "keyword_planner",
        "read_only",
        "registered_agent"
      ],
      "examples": [
        "{\"study_id\":\"example_study\",\"seeds\":[\"example pricing calculator\"],\"sold_job_seeds\":[\"example pricing calculator\"],\"commodity_seeds\":[\"example service\"],\"gap_scan_id\":\"hgs_example\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "hunt_gap_scan.run",
      "name": "Hunt gap scan",
      "description": "Gap-first hunt receipt. Requires registered or founder auth. competitor_urls (1–5 http(s) URLs), optional category_hint and pain_source_urls. Returns hunt_gap_scan_v1, including trends as a labeled skip (SOURCE_MISSING, google_trends_live). No series. Pain without a URL is rejected. A page that sells bill, quote, or scheduling is category taken, not an empty ready wedge. Chromium failure is PARTIAL. Does not invent MSV or a UX score. $0 Ads. Nothing is published.",
      "tags": [
        "research",
        "hunt_gap_scan",
        "read_only",
        "registered_agent"
      ],
      "examples": [
        "{\"competitor_urls\":[\"https://example.com/incumbent\"],\"category_hint\":\"quoting software\",\"pain_source_urls\":[\"https://example.com/review\"]}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "design_ux_radar.run_paid",
      "name": "Design UX Radar paid full run",
      "description": "Paid standalone full run. Paid tier is not open to the public yet. Requires agent API key (lf_agent_) + credits when that tier is open. Debits ledger before intelligence. Never free unlock.",
      "tags": [
        "standalone",
        "paid",
        "design_ux_radar",
        "paid_agent"
      ],
      "examples": [
        "{\"url\":\"https://example.com\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "billing.providers.list",
      "name": "List billing providers",
      "description": "Discover-only: list enabled checkout rails. Not spend.",
      "tags": [
        "billing",
        "discover"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "billing.checkout.create",
      "name": "Create billing checkout",
      "description": "Discover-only: return a checkout URL or x402 challenge. Not spend.",
      "tags": [
        "billing",
        "discover"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "billing.checkout.poll",
      "name": "Poll billing checkout",
      "description": "Discover-only: poll until settled. Returns key once and page_draft_long unlock_token. Not spend.",
      "tags": [
        "billing",
        "discover"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "page_draft.run_paid",
      "name": "Page Draft paid long",
      "description": "Paid Page Draft after settled page_draft_long checkout, or a founder-issued developer key (no Stripe). Pass unlock_token or an HMAC-verified developer key. length=short is allowed for a developer key. Nothing is published.",
      "tags": [
        "standalone",
        "paid",
        "page_draft",
        "paid_agent"
      ],
      "examples": [
        "{\"topic\":\"Why the first screen must say the job\",\"url\":\"https://example.com\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "page_draft.run_short",
      "name": "Writer short draft",
      "description": "Writer-short draft (~400 words). A founder-issued developer key gets full product access — no Stripe Writer checkout. Same writer door as the web buyer. Nothing is published.",
      "tags": [
        "standalone",
        "paid",
        "page_draft",
        "writer_short",
        "paid_agent"
      ],
      "examples": [
        "{\"topic\":\"Three X drafts that name the job\",\"url\":\"https://launchfiles.app\"}"
      ],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "agent_key.request",
      "name": "Request agent API key",
      "description": "Email a one-time mint link to an allowlisted or approved-waitlist address. Returns poll_token. Other addresses are rejected. Optional partner_id must be allowlisted or the call returns UNKNOWN_PARTNER and sends no mail. No founder UI.",
      "tags": [
        "auth",
        "discover",
        "agent_key"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    },
    {
      "id": "agent_key.poll",
      "name": "Poll agent API key",
      "description": "After the mint link is opened, return lf_agent_ once to the requester. Second poll redacts the secret.",
      "tags": [
        "auth",
        "discover",
        "agent_key"
      ],
      "examples": [],
      "inputModes": [],
      "outputModes": []
    }
  ],
  "conformance": true,
  "conformance_errors": null,
  "homepage": null,
  "repository": null,
  "license": null,
  "pricing": null,
  "contact": null,
  "id": "fd5a7fba-3c4b-4475-b479-00e9fc31cdaf",
  "category": "agent-directories",
  "category_secondary": null
}

Integrate this agent

curl -s https://a2aregistry.org/api/agents/fd5a7fba-3c4b-4475-b479-00e9fc31cdaf

Test message

Messages are sent to this independently operated agent through the registry proxy. Do not include secrets or personal data.

Message exchangeConnecting
>