docs

How Golem works

Golem is an evidence-backed Solana technical inspection product. Submit a token mint: Golem resolves its canonical declared website, performs bounded read-only inspection and, when available, observes a synthetic pre-sign wallet flow. The receipt reports what it observed and what it could not test; Golem never signs, sends, funds or executes a transaction.

Updated 7 short chapters · about 5 minutes

  1. 01

    Paste a mint

    Submit a Solana token mint in the field on the home page.

  2. 02

    Inspect the declared website

    Golem follows canonical token metadata and records bounded, read-only browser evidence from the declared site.

  3. 03

    Read the receipt

    See what was observed, any optional pre-sign request, and the limits of the check.

Read-only by design
Golem never approves a signature, sends funds, funds a wallet, or executes a transaction.
Every receipt has boundaries
The receipt distinguishes observations from checks that did not run or could not complete.
Pre-sign only when available
If a site presents a synthetic wallet request, Golem can decode the proposed request without approving it.
Not an audit or investment advice
A bounded public check does not vet code, contracts, a team, token economics or price.

Using it

01Home → Check techPOST /v1/me/token-analyses

Paste a coin

Paste a Solana token mint into the field on the home page and press Check tech. Golem first reads the mint and its canonical metadata. If that metadata declares a website, that is the website attached to the receipt; a pasted or discovered alternative is not silently treated as the token's website.

Behind the button, the app's own server sends the request on, never your browser. It adds the app's secret and your identity, and forwards only the routes Golem expects. If the coin was checked moments ago, you get that result instead of a second run: one fresh check per coin every 10 minutes.

The request's path· one check
your tap → a queued job

02Scan → the check, liveonchain_assessment job + web-verifier

Golem tests the live product

Golem reads the mint and its canonical metadata, then opens the website that metadata declares in an isolated browser. The browser has a bounded time and interaction budget. It records public pages, visible controls and first-party requests it can safely observe; it does not log in, pay, submit product actions, or claim that an unobserved capability works.

Where a site presents a synthetic wallet flow, Golem can observe the pre-sign message or unsigned transaction and decode the request. Nothing is signed, sent, funded or executed. Every step has a hard time limit, so a slow or broken site ends the check instead of stalling it.

Hard limits on each step· seconds, at most
one check
  • Read the token's metadata15 s
  • Fetch the page, no browser20 s
  • Each page of the app20 s
  • Load the website25 s
  • Backup browser30 s
  • Hosted browser35 s
  • The whole job, per attempt90 s

The website check also stops at 500 KB of page, 3 transaction requests or 4 messages to sign, whichever comes first. A job that runs out of time is tried again, up to 8 times.

03Coin page → tech reportGET /v1/tokens/{mint}/technical-underwriting

Read the verdict

The check ends in a receipt: what Golem saw, what it could not test, and the evidence supporting each conclusion. A positive technical result is limited to the observed website and flow; it is not a security audit, financial recommendation, or a guarantee that the product will continue to work.

A check that did not run or could not complete is shown as such. Golem does not turn missing evidence into a pass or a failure.

The verdict ladder· 5 rungs
one receipt
What the score is made of· points out of 100
one coin page

04Explore · coin page · searchone shared store, re-read at most every 10 minutes

The badge follows the coin

Once a coin has a verdict, every place it appears gives the same answer: Explore's lists, the coin's own page and search. A verdict stands for 7 days, and the app re-reads a coin's receipt at most once every 10 minutes, so every viewer sees the same thing.

Prices and charts are not Golem's. They come from DexScreener and GeckoTerminal, cached for a minute and shown stale for up to 30 minutes when those services are busy.

Every clock in the system· time, log scale
1 s → 7 days
  • golem-be: A check's stream re-reads, 1 s
  • golem-fe: Scan asks again, 3 s
  • golem-fe: Gateway timeout, 30 s
  • golem-fe: Market cache, 1 min
  • golem-be: Market resample, 5 min
  • golem-fe: A check gives up, 5 min
  • golem-be: A reading counts as fresh, 10 min
  • golem-fe: Receipt re-read, 10 min
  • golem-be: Website resample, 30 min
  • golem-fe: Market served stale, 30 min
  • golem-be: Sampling stops, 1 day
  • golem-fe: Tech works stands, 7 days

Under the hood

05Explore → Golem researchtoken analysis → technical receipt

Checks are bounded

A receipt is a bounded record of one inspection. It identifies the mint, the declared website when one was available, the time of observation, and the evidence produced by that run.

The Explore list is a discovery surface, not a promise that every Solana launch has been inspected. Open a listing to read its latest receipt and its limits.

How the feed ranks a candidate· weight out of 100
every candidate

06Coin page → market and chainrecorded technical receipt

Evidence is timestamped

Each receipt records when its evidence was collected. A later check is a later observation, not proof that an earlier observation remains true.

Missing, unavailable or out-of-date evidence is shown as a limitation. Golem does not fill a gap with a guess.

When Golem looks again· readings per coin
first 24 h

07Every screengolem-be main @0586256 · golem-fe main @3716e8a7

Backend and frontend, side by side

Golem has two halves: golem-be, which performs and stores the bounded inspections, and golem-fe, which presents the resulting evidence. The frontend uses a narrow gateway rather than exposing backend credentials to the browser.

The product only represents evidence returned by a receipt. It does not turn an incomplete check into a claim about the project.

The whole system· one request's path
golem-be → golem-fe
golem-be's routes in the app· routes
46 + 7
Token reads11
Scan checks3
Assessments3
Watchlists3
Identity · wallets2
Account · allocation5
Alerts3
Strategies · orders10
Ops · webhooks6
Missing on main7
  • Shown in the app · 12
  • Forwarded, not read yet · 9
  • Not used · 25
  • Expected, missing on main · 7

Words on this page

WordMeaning
CA, mintA Solana token's contract address: the one identifier no other coin can share.
Check techThe button that asks Golem to test a coin's website now.
ReceiptGolem's public record of one check: what it saw, what it could not test, its verdict.
VerdictOne rung of five, from "insufficient public evidence" to "public product observed with integration evidence".
Tech worksThe gold badge: the top rung, on the coin's own website. Stands for 7 days.
CandidateA coin Golem is watching, with a state and a rank.
golem-be, golem-feThe backend that does the work, and this app.

What the badge does not claim

Tech works means one bounded, public check passed: the declared website rendered, with working controls and live data from its own servers or from Solana. It does not review the token's code, its contracts, its team or its claims, and no authenticated, paid or signed action is ever performed.

Read a receipt yourself

Every receipt is public: golem-api's token reads need no key. The app reads the same route through its own gateway, and the verdict is one field.

bash6 lines
# Public token reads need no key. Locally: cargo run -p golem-bin (port 8080).GOLEM_API="http://127.0.0.1:8080"MINT="<mint address>"
curl -s "$GOLEM_API/v1/tokens/$MINT/technical-underwriting" \  | jq '{verdict: .receipt.verdict, confidence: .receipt.evidence_confidence}'

Routes and where they show

golem-be routeWhat it answersIn the app
GET /v1/candidatesThe ranked feed, 25 a page (max 100), cursor-pagedExplore → Golem research; row tech status
GET /v1/tokens/{mint}/technical-underwritingThe technical receipt and its verdictCoin page tech report, every Tech works badge, Scan, the hero check
GET /v1/tokens/{mint}/dossierOn-chain, market, pool, web and social evidenceCoin page chain checks, Websites inspector, Scan
GET /v1/tokens/{mint}/synthesisAdvisory AI synthesis (OpenRouter)Coin page AI notes, fenced and never scored
GET /v1/tokens/{mint}/assessmentThe deterministic assessmentCoin page → Full research record
POST /v1/me/token-analyses (+ /{id}, /{id}/stream)Queue a check, follow itScan, the hero check, research record
GET /v1/assessments/{id}One recorded assessmentScan, to confirm a finished check
/v1/me/watchlists (+ items)The viewer's watchlistsExplore → Watchlist, every Watch button
/v1/me/entitlement, /v1/tokens/{mint}, …/timeline, …/state-history, …/evidence, …/social-links, …/social-velocity, /backtest, /replayForwarded by the gatewayNot read by any screen yet
/v1/me/wallets, account/*, allocation-profile, alerts, strategies/*, orders, POST /v1/strategy/previewAccounts, strategies, orders and alertsNot in the app
Four gaps between the app and golem-be main. Scan sends fresh_request_id with a check, which main's POST /v1/me/token-analyses refuses (it accepts {mint} only). The website routes (/v1/website-candidates, /v1/me/website-discovery, /v1/me/website-renders) are missing too; both fixes are on golem-be's feat/scan-research-events. The agent chat routes behind Scan → Agent are on no golem-be branch. And /v1/candidates has no tech verdict per row, so a list shows Tech works only for receipts already read one coin at a time.

Was this page helpful?


Documents the features in this build of the app.