scoring · scanning · ranking

how it works.

two simple rules: you earn what your calls earn, and looking is free. the math doesn't move with the mood of the room. nothing on the public boards lies.

agent stack

what makes moss more than a command bot

ElizaOS v2

moss runs on ElizaOS: actions, providers, evaluators, memory, and model routing around one persistent character. telegram is the room; the agent is the product.

telegram-native

scan cards, buttons, replies, admin setup, and room rituals happen inside the chat where calls already happen. no dashboard tax before the room gets value.

ledger-backed memory

postgres stores the record: calls, theses, outcomes, members, rooms, verdicts, and approved identity memories. moss can speak from history instead of vibes.

model routing

small jobs stay cheap. character, classification, reflections, and deeper reasoning use different OpenRouter models so moss can feel alive without burning the budget.

scoring

you earn what your calls earn

every call is anchored to the market cap at the moment you posted it. if it runs, you get points sized to how far it ran. if it never moves, you earn nothing. if it craters, the points cost you a little — but only a little.

what the call didwhat it earned
peaked below 1.1x or rugged−0.25 (small tax, no shame)
1.1x–1.5x (inert)0 (trying is free)
1.5x0 base · the curve starts here
2x~6 base
5x~22 base
10x~32 base
25x~46 base
100x~66 base · capped at 1000x

the curve is sub-linear: one 100x doesn't end the season; a 5x earns a real share of a 100x's worth. the moonshot lottery isn't the only path to the top.

multipliers

  • conviction × 1.5 if you called it high-conviction.
  • conviction × 0.5 if you called it low-conviction. ("lottery ticket" is honest. it doesn't pay full.)
  • thesis × 1.5 if you logged a one-line thesis.

multipliers stack. a 5x with high conviction and a thesis earns about 3× a 5x without either. but multipliers only touch what you earned — they never multiply the penalty. declared confidence pays when you're right, not when you're wrong.

bonuses

  • +1 first caller for being the first to paste a CA in the room.
  • +1 fast peak when the peak landed within 7 days of your call.

bonuses don't fire on losers. there's no reward for being early on something that never moved.

garbage tax

a flat −0.25 on any call that peaked below 1.1x or rugged with no real peak. small enough that one bad streak doesn't ruin you. real enough that 30 calls of garbage costs you 7.5 points of net signal. the public boards floor at zero — nobody is shamed publicly with a negative score, but operators see the truth.

decay

the ledger forgets, slowly. fresh calls (last 90 days) count at full weight. 90–180 days count at half. anything older counts at a quarter. old wins still count. they just count less. the ledger rewards the people cooking now.

ranking — consistency over moonshots

raw earned points are what you got. ranking is what you're worth. moss weights your hit rate against your earned points so a 60% hitter never sits below a 9% hitter who got one lucky 7x.

hit raterank multiplier
0%0.85
25%1.00 · neutral
50%1.15
75%1.30
100%1.45 · capped

the multiplier only affects RANK ORDER, not the points you earned. small samples (under 5 scored calls) stay neutral — you don't get a 1.45× boost for three hits in a row. the clamp is bounded — nobody crushed by one bad streak, nobody dominates on tiny volume.

hit rate

hit rate = your calls that peaked ≥2x ÷ your scored calls. a "scored call" is one that has an outcome (the peak is known). unresolved calls don't dilute the denominator — we don't punish you for the snapshotter being slow.

every rate is displayed with its window label. "21% all-time", "30% last 10". a bare percentage is a bug — if you see one, it's wrong. last-10 only surfaces once you have 10 scored calls in the window; below that, the ledger is honest and says "—".

scanning — looking is free

by default, pasting a contract is just a scan. the card lands, you look, you move on. no points exposure. no commitment. looking is free.

calling is a choice. when you mean it — when you'd bet your record on it — tap the button on the scan card. that logs the call at the market cap shown on the card (not the live MC ten minutes later). you can't pump-then-log; the data is anchored to when you decided.

if you'd rather skip the button and just type your intent, include "calling", "aping", "in", or "send it" in the same message as the CA. moss reads the intent and logs immediately.

operators can flip the whole room back to legacy "every paste counts" with /setcallmode paste. for rooms whose culture is built around it, the option stays.

fairness rules

  • no bogus peaks. any ATH over 1000× is treated as a data anomaly and scored at zero. the ledger doesn't pay out on glitches.
  • peaks never regress. once a call hit 5x, it always hit 5x — even if the price falls back later. moss records the high water mark.
  • cross-source verification on big claims. milestones at 5× or higher are verified against a second price source. if the sources disagree by more than 15%, the public post is held until they agree.
  • operators are blind to scoring. they can adjust the floor and the chains, but they can't tweak the math, edit your hit rate, or hide a bad call. the same formula runs in every room.