You want to build AI agents, earn $FNDRY, and ship real code. This doc tells you exactly how.
SolFoundry is an open-source AI agent bounty platform on Solana. Contributors build AI agents and tools, submit PRs, get scored by a multi-LLM review pipeline, and earn $FNDRY tokens on merge.
No applications. No interviews. Ship code, get paid.
You need a Solana wallet to receive $FNDRY payouts. Phantom is recommended.
Copy your wallet address — you'll need it for every PR you submit.
Browse open bounties in the Issues tab. Filter by the bounty label.
Start with a Tier 1 bounty — these are open races. No claiming needed, first quality PR wins.
- Fork this repo to your GitHub account
- Clone your fork locally
- Create a branch for the bounty (e.g.
feat/bounty-18-nav-shell) - Build your solution following the issue requirements exactly
This is the most important part. Follow these rules exactly or your PR will be rejected:
- Title: Descriptive — e.g.
feat: Implement site navigation shell - PR description must include:
Closes #N— where N is the bounty issue number (e.g.Closes #18). Required. PRs without this are auto-closed.- Your Solana wallet address — paste it in the description. No wallet = no payout, and your PR will be closed after 24 hours if you don't add one.
- Push your branch and open the PR against
main
Example PR description:
Implements the site navigation and layout shell with dark theme, responsive sidebar, and mobile menu.
Closes #18
**Wallet:** 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU
Your PR is automatically reviewed by 3 AI models in parallel (GPT-5.4, Gemini 2.5 Pro, Grok 4). This usually takes 1-2 minutes.
- Score ≥ 6.0/10 → PR is approved for merge → $FNDRY sent to your wallet automatically
- Score < 6.0/10 → Changes requested with feedback. Fix the issues and push an update.
- Review feedback is intentionally vague — it points to problem areas without giving exact fixes.
Your PR will be instantly closed if:
- Missing
Closes #Nin the description - Empty or trivial diff (< 5 lines of real code)
- Contains binary files or
node_modules/ - Excessive TODOs/placeholders (AI slop)
- Duplicate — another PR for the same bounty was already merged
Your PR gets a 24-hour warning if:
- Missing Solana wallet address — add it within 24 hours or it's auto-closed
💡 Tip: There's also a temporary star bounty (issue #48) — star the repo and comment with your wallet to earn 10,000 $FNDRY. This is a one-time promo and does NOT count toward tier progression.
- Anyone can submit. No claiming, no prerequisites.
- First clean PR that passes review wins.
- Score minimum: 6.0 / 10
- Reward: listed on each bounty issue
- Deadline: 72 hours from issue creation
- Speed matters. If two PRs both pass, the first one merged wins.
- Requires 4+ merged Tier 1 bounty PRs to unlock.
- Open race — first clean PR wins, same as T1. No claiming needed.
- The claim-guard checks your merged T1 count automatically. If you don't have 4+, your PR gets flagged.
- Score minimum: 6.0 / 10
- Deadline: 7 days from issue creation
- Requires 3+ merged Tier 2 bounty PRs to unlock.
- Comment "claiming" on the issue to reserve it. Only T3 is claim-based.
- Score minimum: 6.0 / 10
- Deadline: 14 days from claim
- Milestones may be defined in the issue for partial payouts.
- Max 2 concurrent T3 claims per contributor
Only real bounty PRs count. Specifically:
- The issue must have both a
bountylabel and a tier label - Star rewards (issue #48) do NOT count
- Content bounties (X posts, videos, articles) do NOT count
- Non-bounty PRs (general fixes, typos, docs) do NOT count
There are no shortcuts here. You level up by shipping bounty code.
Every PR must include a Solana wallet address in the PR description. Use the PR template -- it has a field for this.
- No wallet = no payout. Even if your code is perfect.
- The
wallet-check.ymlGitHub Action will warn you if the wallet is missing. - Payouts are in $FNDRY on Solana.
- Token:
$FNDRY - CA:
C2TvY8E8B75EF2UP8cTpTp3EDUjTgjWmpaGnT74VBAGS
- Token:
- One PR per bounty per person. Don't submit multiple attempts.
- Reference the bounty issue with
Closes #Nin the PR description. - Follow the PR template. Description, wallet address, checklist. All of it.
- Code must be clean, tested, and match the issue spec exactly. Don't over-engineer, don't under-deliver.
- Max 2 concurrent T3 claims per contributor. Finish what you started.
Every PR is reviewed by 3 AI models in parallel:
| Model | Role |
|---|---|
| GPT-5.4 | Primary review |
| Gemini 2.5 Pro | Secondary review |
| Grok 4 | Tertiary review |
Each model scores your PR on a 10-point scale across five dimensions:
- Quality -- code cleanliness, structure, style
- Correctness -- does it do what the issue asks
- Security -- no vulnerabilities, no unsafe patterns
- Performance -- efficient, no unnecessary overhead
- Documentation -- comments, docstrings, clear naming
Minimum to pass: 6.0 / 10
- Spam filter runs first. Empty diffs, AI-generated slop, and low-effort submissions are auto-rejected before models even look at them.
- Three models review independently. Each produces a score and feedback.
- Feedback is intentionally vague. The review points to problem areas without giving you exact fixes. This is by design -- figure it out.
- Disagreements between models escalate to human review.
These actions run automatically on your PR:
| Action | What it does |
|---|---|
claim-guard.yml |
Validates bounty claims and tier eligibility |
pr-review.yml |
Triggers the multi-LLM review pipeline |
bounty-tracker.yml |
Tracks bounty status and contributor progress |
star-reward.yml |
Handles star reward payouts |
wallet-check.yml |
Validates wallet address is present in PR |
We take this seriously.
- 3 rejected PRs = temporary ban. Don't waste everyone's time.
- Bulk-dumped AI slop is auto-filtered. The spam detector catches copy-pasted ChatGPT output. If you didn't write it, don't submit it.
- One PR per bounty per person. No second chances on the same issue.
- Sybil resistance via on-chain reputation tied to your Solana wallet. Alt accounts don't work here.
- Read the bounty issue carefully. Most rejections come from not reading the requirements. Match the spec exactly.
- Always include your Solana wallet in the PR description. No wallet = no payout.
- Always include
Closes #N. No link to the bounty issue = auto-rejected. - Read merged PRs from other contributors. See what a passing submission looks like.
- Don't ask for exact fixes. The vague review feedback is intentional. Read the feedback, read the code, figure it out.
- Speed matters on T1 bounties. First clean PR wins. Don't spend three days polishing when someone else ships in three hours.
- Repo: github.com/SolFoundry/solfoundry
- X / Twitter: @foundrysol
- Token: $FNDRY on Solana --
C2TvY8E8B75EF2UP8cTpTp3EDUjTgjWmpaGnT74VBAGS
Ship code. Earn $FNDRY. Level up.