DOCS // READ THIS FIRST
[ 00 ] WHAT IS SILICON GUILD
The open marketplace accelerating agentic adoption on Solana. Independent builders list runnable code bundles at an author-set USD price per call; anyone can call them from the CLI; settlement is $SGLD at the live rate — the author receives 90% and the protocol takes 10%.
[ 01 ] QUICKSTART — THE CLI
The CLI logs in with your wallet and runs any validated module from your terminal. Every module is invoked the same way — we standardise the envelope, not the agent's internals.
# install (publishes with Phase 1 — until then, build from source) npm i -g @sgld/cli # log in — opens your browser, you sign a challenge with Phantom sgld login # one call = one invoke; JSON in, envelope out. Lister quotes USD; caller pays $SGLD at the live rate sgld run <module-id> --bundle module.zip --input '{"text":"hello"}' # named secrets only — values stay in YOUR env, never in the listing sgld run <module-id> --listing ./path --secret OPENROUTER_API_KEY --input '{"text":"hello"}' # validate a listing on disk (no live registry required) sgld validate ./path-to-listing # browse the registry (control plane — Phase 2) sgld search odds
The response is always { "ok", "output", "usage", "error"? }. --input must match that module's input_schema — modules do not share a global field list. A hanging tool dies at --timeout (default 30000 ms). Undeclared network, browse, or LLM is a reject — v1 has no write-grant flag.
[ 02 ] SUBMIT A MODULE
- No GitHub required — the submission form lives in the app at siliguild.com/app/.
- Describe what it does in plain words and upload a zip with
module.yaml,README.md, and source (usuallysrc/main.py). - The bundle must pass the module contract below. Missing docs or missing source is a reject — same as a missing manifest. Leaked secret values reject the zip.
- Every submission also passes the sanitization pipeline: listing gate → static scan → LLM review → no-network sandbox → reproducibility runs → human review → continuous monitoring.
- A listing must declare a USD price per call — the author’s quote. $SGLD is calculated at call time from the live rate.
- On each settled call the author receives 90% in $SGLD; the protocol receives 10%.
Submissions open with the app — head to the app.
[ 03 ] MODULE CONTRACT / LISTING REQUIREMENTS
An open marketplace means other people list agents that take different inputs, emit different outputs, and need different tools (browse, HTTP, Solana, secrets). We do not make every agent accept the same fields. We standardise the envelope so they compose.
Call:
sgld run <module-id> --input '<json>'
Response — always this shape:
{
"ok": true,
"output": { },
"usage": { "credits": 0, "latency_ms": 12 },
"error": { "code": "SCHEMA_MISMATCH", "message": "…" }
}
A listing is rejected unless it ships module.yaml (or module.json) with:
- id, name, version (semver), summary
- input_schema + output_schema as JSON Schema — this is where a module's unique I/O lives
- capabilities from the allowlist:
none,http.allowlist,browse,llm,filesystem.none - secrets — named keys the runtime must supply (e.g.
BROWSE_API_KEY). Never raw values in the listing - runtime — high-level only:
http/wasm/container - pricing —
usd_per_call(author-set USD; $SGLD is quoted at call time) - docs — path to README.md or docs.md. Hard requirement.
- interface_version — currently
1, so the envelope can evolve without breaking old modules
The README (or docs.md) must teach a stranger to call it: what it does, input/output examples, required capabilities/secrets, cost/side-effects, failure modes, and a sgld run or curl example. Empty or missing docs fail the listing gate.
Calling stays smooth because the wrapper — not each agent — handles the chaos:
- Bad input → validate against
input_schemabefore invoke →SCHEMA_MISMATCH - Browse/fetch/write without declaring it → runtime deny
- Missing secret → fail closed; caller sees the name, never the value
- Hang → envelope deadline (
--timeout) - Output that doesn't match
output_schema→ call failed; author is not paid - Pin
version;interface_versionversions the envelope
[ 04 ] TOKENOMICS IN SIX LINES
- Lister sets the USD price per call — a quote for the capability, not a compute-cost pass-through.
- Caller pays that USD amount in $SGLD at the live rate (
sgld run <id> --bundle … --input …/ one API run). - Protocol tax = 10% of the call price. Author receives 90%.
- The 10% funds buybacks, burns, airdrops, and staking. Allocation is not locked.
- Tax lands in the treasury wallet (tax receiver, not the mint CA):
7eeaLhUmRmT1en4YoeGew8hCMTjiciJ8YbeH1PnZBTCk. - Listing and calling are open in the app. Pay is a wallet-signed 90/10 $SGLD transfer after
ok: true. Bounties post in USD; $SGLD locks at the live rate when you post; the poster pays that locked $SGLD after they verify — no escrow, same 90/10. The fee router is not built. Local leaderboards rank wallets from paid calls and bounties in that browser. Staking stays coming soon.
Mint CA: BUHA2WFLgZTTDEyYAJRyiNtiyVxmEtWR5qr7SWhcpump · Solscan ↗ · Buy on pump.fun ↗
The written model is docs/tokenomics/silicon-token-model.md. The fee router is not built yet — this is the split it will implement.
[ 05 ] LEGAL
Terms of Service · Privacy Policy