Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
Download tar.gz
Double-quote all column names in generated DDL, DML, and FTS queries
to avoid SQLite errors when lexicon field names collide with reserved
words (e.g. "index" from app.bsky.feed.post).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The session's pdsEndpoint was derived from pds_auth_server, but for
bsky.social users the auth server (bsky.social) differs from the data
PDS (e.g. leccinum.us-west.host.bsky.network). XRPC proxy calls were
going to the wrong host, causing immediate InvalidToken errors.
Also handle AT Proto PascalCase error codes (InvalidToken, ExpiredToken)
alongside OAuth snake_case (invalid_token) in the DPoP retry logic.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move inline label definition object to named `labelDefinition` and
`labelLocale` defs so codegen produces reusable TypeScript types.
Adds `locales` array for human-readable label names and descriptions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>