Skip to content

For LLMs

Two ground-truth artifacts you can paste straight into Claude, GPT, Gemini, or any other assistant so it answers Sweetspot questions from the canonical docs instead of making things up.

Drop-in URLs

FileUse it forLink
llms.txtA short, structured manifest with absolute links to every doc page + the proto + OpenAPI spec. Follows the llmstxt.org convention — paste the URL into a tool that fetches it (Claude Projects, ChatGPT custom GPTs, Cursor docs)./llms.txt
llms-full.txtEvery page on this site concatenated into a single Markdown file (~1500 lines). Drop the contents directly into your model's context to ground completions in the docs without any fetching./llms-full.txt
api.protoThe bundled protobuf schema (common + auth + market_data). Useful when you want the model to generate calls or stubs in any language./api.proto
openapi.jsonOpenAPI 3.1 spec in JSON. Pair with llms.txt for richer endpoint reasoning./openapi.json
openapi.yamlSame spec in YAML./openapi.yaml

How to wire it up

text
1. Open your project → Knowledge.
2. Add a custom URL: https://superis.github.io/superis-clients/llms-full.txt
3. (Optional) Also add /api.proto and /openapi.json for stronger codegen.
text
1. Configure → Knowledge → Upload files.
2. Save the contents of /llms-full.txt as a .md file and upload.
3. (Optional) Add /api.proto and /openapi.json so the model can answer
   schema-shape questions.
text
Add as a docs source:
  https://superis.github.io/superis-clients/llms.txt

These tools follow the llmstxt.org spec — they will fetch every linked
page and index them.
text
curl -sSL https://superis.github.io/superis-clients/llms-full.txt
# paste the output into your prompt

What's in the bundle

llms.txt lists every page on the site with absolute URLs and a one-line description, plus the schema downloads. It's intentionally small (~1 KB) so a model can ingest it as a manifest and decide which pages to fetch.

llms-full.txt is the same set of pages concatenated in reading order:

  • Overview — exchange model, architecture, units, errors.
  • API — service map, transports, WebSocket feed, full reference.
  • SDK guides — Rust, Go, TypeScript-web.
  • Recipes — auth flow, polling vs streaming, historical queries.

It is regenerated as part of make docs-build, so it always tracks the checked-in Markdown.

Conventions the docs assume

If you're prompting a model that hasn't seen this site before, paste this block alongside your question — it covers the load-bearing contracts:

text
- Schema: sweetspot.api.v1, multi-file under proto/sweetspot/api/v1/.
- Five services: AuthService (public), MarketDataService (public),
  BalanceService (auth), TxService (auth), HistoricalService (auth).
- Authenticated services accept `authorization: Bearer <token>`
  metadata. Mint a token via the AuthService Challenge → sign →
  Authenticate cycle. The signature must cover
  `b"SWEETSPOT-AUTH-V1:" || nonce`.
- Numeric money values (price, size, volume, OHLCV) are decimal STRINGS
  on the wire. Never parse with f64.
- Timestamps are unix microseconds.
- Enum values travel as their proto variant name in JSON
  (e.g. `"INTERVAL_5M"`, `"SIDE_BUY"`).
- The Rust SDK uses tonic; Go uses grpc-go; TS uses
  @connectrpc/connect-web (gRPC-Web in browsers).

Apache 2.0