Models are benchmarked constantly. The people operating them are not. SigRank turns privacy-preserving token telemetry into a repeatable performance evaluation: your Yield, workflow signature, benchma
翻譯準備中
資料TypeScript · JavaScriptGitHub @SunrisesIllNeverSee上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
SigRank SignalAF — AI operator evaluation leaderboard. Ranks how efficiently you use AI by token cascade efficiency (Υ = cache_read × output / input²). Privacy-preserving: token counts only, never prompts. signalaf.com
翻譯準備中
正在載入完整 README。 以下為已儲存的摘錄。
SignalAF — Upsilon Measurement Engine + SigRank Proof Surface
Upsilon is the privacy-preserving measurement engine. SigRank is the
public leaderboard and proof surface at signalaf.com.
Run npx sigrank to calculate Yield from four token counts. Never prompts or code.
Upsilon measures. SigRank proves. MO§ES™ governs. SignalAF is the brand.
SigRank evaluates the human using the AI, not the AI model itself. Most platforms reward volume. SigRank SignalAF rewards structure.檢視完整 README ↗Browse AI operator token telemetry, explore personal profiles, and compare token-cascade metrics on signalaf.com.
Live site · Leaderboard · Methodology · CLI & MCP · Local setup
This repository contains the Next.js application: the leaderboard homepage, operator profiles, Compare, Hall of Signal, editorial pages, accounts, billing, and server APIs.
| Surface | What you can do |
|---|---|
| Leaderboard / homepage | Filter the field by window and platform; inspect RAW and derived metrics |
| Operator profiles | View personal stats, submission history, badges, and account settings |
| Compare | Examine two operators' telemetry and metric differences |
| Hall of Signal | Browse records and the badge directory |
| SigRank overview | Understand the measurement and enrollment flow |
| Field, Articles, Blog, Wiki | Read research, explanations, and metric definitions |
Some features are gated; see Feature flags. This README describes the source tree, not a promise that every optional integration is configured on every deployment.
You do not need to clone this application to use it. Run the CLI/MCP package:
npx sigrank # inspect local usage in the terminal
npx sigrank enroll # bind your device using a Settings connect code
npx sigrank submit --dry-run # inspect the payload without sending it
npx sigrank submit # publish a signed snapshot
Sign in at signalaf.com to create a connect code. Claims for profiles from the original board require ownership verification through [email protected].
Four token pillars feed the cascade: input, output, cache-write, and cache-read. Yield is calculated as:
Υ = (cache_read × output) / input²
The server verifies and re-scores submissions. Leverage, Velocity, SNR, and 10xDEV describe token-processing patterns; they are not measures of model quality, work quality, productivity, or business outcomes.
Upsilon is the measurement engine; SigRank is the public leaderboard and proof surface on SignalAF. Protocol semantics belong to TTEOP. See the methodology and wiki for definitions and limitations.
Ranked telemetry does not require prompt text, responses, or source code. Submissions also carry identity, device/signature, platform, and report metadata; see the CLI privacy details.
Requires Node 22.x (engines in package.json, .nvmrc).
npm install
cp .env.example .env.local # optional; see Environment
npm run dev # http://localhost:3000
Unconfigured local development can use snapshot or demo data on supported read paths. This is not live telemetry. Live board data, authentication, signed writes, and billing need their corresponding services configured. A configured database with no matching records returns an empty result rather than a fabricated operator history.
| Command | What it does |
|---|---|
npm run dev | Start the dev server |
npm run build | Build for production (next build --webpack) |
npm run start | Serve the production build |
npm run lint | Run ESLint |
npm test | Run the Node test suites in __tests__/ |
npm run test:ui | Run Vitest component tests |
npm run test:canonical | Check canonical ingest parity (MO§ES Υ 18436.98) |
npm run test:coverage | Run npm test with c8 coverage |
npm run e2e | Run Playwright tests (e2e:local targets localhost:3000) |
npm run verify | Run tsc --noEmit, the canonical test, and npm test |
npm run db:parity | Check local migrations against the remote ledger (db:parity:ci for CI) |
npm run snapshot | Refresh the cold-store board snapshot |
npm run sitemap:validate | Validate the sitemap (:live checks production) |
Before opening a PR, run npm run verify and npm run build.
Copy .env.example to .env.local. It lists every variable with notes. Never commit values. Production values live in Vercel environment variables.
| Variable | Used for |
|---|---|
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY, SUPABASE_SERVICE_ROLE_KEY | Live Supabase reads and service-role writes. The server client needs all three. |
STRIPE_SECRET_KEY, NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET, STRIPE_PRICE_* | Billing and webhooks |
NEXT_PUBLIC_SITE_URL | Stripe redirects and public URLs |
UPSTASH_REDIS_REST_URL, UPSTASH_REDIS_REST_TOKEN (or Vercel's KV_REST_API_URL, KV_REST_API_TOKEN) | Shared rate limiter. Without Upstash, the limiter uses Supabase Postgres (api_rate_limit_hit, migration 0055), then a per-instance in-memory counter. Sensitive write routes fail closed. |
SIGRANK_RULESET | Server-only RS.xx scoring overrides |
SIGRANK_API_KEY | Trusted bulk-read key for the public API (x-api-key) |
SIGRANK_INGEST_WRITE | 1 enables persistence of verified snapshots to the board. |
CRON_SECRET | Bearer token for /api/cron/recompute |
NEXT_PUBLIC_POSTHOG_KEY, NEXT_PUBLIC_POSTHOG_HOST, POSTHOG_KEY | Product analytics |
RESEND_API_KEY, *AGENTMAIL_API_KEY | Contact form and exchange email |
ALGOLIA_*, EXA_API_KEY, MOTHERDUCK_*, AI_GATEWAY_*, VERCEL_CLIENT_*, SIGNALAF_LIVE_TOKEN | Search, enrichment, analytics, AI gateway, Vercel integration, live demo |
NEXT_PUBLIC_REALTIME_ENABLED | Set to false to disable live board updates |
lib/features.ts defines the flags. All gated flags default to off and accept 1 or true.
| Flag | Gates |
|---|---|
NEXT_PUBLIC_GATE_CHALLENGES | Throw-down challenges. Also needs NEXT_PUBLIC_GATE_ARENA. Off: /api/v1/challenges returns 404. |
NEXT_PUBLIC_GATE_ARENA | Challenge submission interface (required with the challenges gate) |
NEXT_PUBLIC_GATE_SIGNAL_DROP | Weekly signal drop |
NEXT_PUBLIC_GATE_BRACKETS | Blind bracket / Circle Wars |
NEXT_PUBLIC_GATE_TRADING_CARD_SPECIES | Species badge on trading cards |
Migrations live in supabase/migrations/. Use that directory and npm run db:parity for the current schema and remote-ledger status rather than relying on a hard-coded migration count. Apply required migrations before deploying code that depends on them; review the pending SQL and target project first.
Row Level Security policies, seed data, and security tests live in supabase/. See supabase/README.md to run your own instance.
| Path | Contents |
|---|---|
app/ | App Router pages and API routes |
app/api/v1/ | Public API: ingest, claim, devices, billing, metrics, leaderboard |
app/api/mcp/, app/api/plugins/sigrank/mcp/, app/api/exchange/mcp/ | MCP endpoints (main server, analyst plugin, exchange) |
app/exchange/, app/api/exchange/ | Contribution exchange UI and API |
components/ | UI components |
lib/board/ | Board reads: Supabase, snapshot, mock fallback |
lib/ingest/ | Payload parsing, signature checks, cascade materialization |
lib/analytics/ | Scoring engine and server-only ruleset boundary |
lib/exchange/, lib/exchange-gateway/ | Exchange server logic and portable gateway reference |
lib/infra/ | Supabase clients, Stripe, rate limiting, API gates |
supabase/ | Migrations, policies, seeds, SQL tests, edge functions |
__tests__/, e2e/ | Node, Vitest, and Playwright tests |
Development conventions:
'use client' only for hooks, handlers, or browser APIs.Pushes to main deploy to Vercel (vercel.json). A daily cron calls /api/cron/recompute. Set environment variables in Vercel. An OpenNext Cloudflare path exists (npm run preview, npm run deploy, wrangler.jsonc).
Report vulnerabilities privately. Email the maintainer or open a private GitHub security advisory. Do not file public issues for vulnerabilities. See SECURITY.md.
npx sigrank CLI, TUI, and MCP serverOpen an issue with repro steps and your Node version. For code changes, branch from main, keep the change small, run npm run verify, and open a PR. See Contributing and the Code of Conduct.
MIT. See LICENSE.