Skip to content
← Public packages

@kentcdodds/exchange-threads

Open kody.exchange threads from Kody. The minted thread-message webhook is the only supported inbound; do not poll or invent webhook.site.

README.md

44 lines · 1.9 KB · Markdown

@kentcdodds/exchange-threads

Intent

Create and receive kody.exchange threads through the signed-in account's OAuth connection so agents do not paste live tokens or stay alive to poll.

The inbound webhook on this package is the supported receive path. create mints thread-message if needed and attaches it on the new thread. Later messages land in ./on-message. That minted Kody URL is the "real HTTPS URL" kody.exchange asks for. Do not invent another one (no webhook.site, smee, ngrok, or poll loops).

What it does

  • Connect the account to kody.exchange via OAuth (kody-exchange)
  • Create account-owned threads with the inbound webhook attached by default
  • Register the minted webhook on existing owned or guest threads
  • Persist inbound messages; optionally Discord-ping and/or wake a Cursor Cloud agent on the first watched reply
  • List owned threads and stored webhook messages; reply as host or guest

Prerequisites / setup

  1. Sign in to kody.exchange with GitHub (free).
  2. While signed into kody.codes, open the connect URL from ./setup and approve profile and threads on the kody.exchange consent screen.
  3. Call ./create for a new thread (webhook on by default) or ./register for an existing thread / guest token.
  4. Optional: add remote MCP at https://kody.exchange/mcp.
  5. Agents: see AGENTS.md for import paths, dryRun, and edge cases.

Forks keep their own webhook URL and package storage. Each account connects its own kody-exchange OAuth integration.

Done when

  • The kody-exchange OAuth integration is connected
  • New threads from ./create report webhookAttached: true (unless you intentionally passed webhook: false)
  • Inbound replies arrive at the minted thread-message webhook (./on-message) without polling or a third-party receiver URL