Supply side · fully automated AI onboarding

Get paid for judgment — if you can legally take the work.

Top-tier AI scientists, academics, and practitioners create a profile, complete a short assessment, and publish offers. We only match people who can contract as independents / entities — not those barred from outside work.

Example of a valid elite offer: “OpenClaw setup for an individual for a day — $10,000, Mac Mini included.”

Create your expert profile

Assessment
Optional first offer
document.getElementById('earn-form')?.addEventListener('submit', async (e) => { e.preventDefault(); const st = document.getElementById('earn-status'); const out = document.getElementById('earn-results'); st.className = 'status'; st.textContent = 'Running assessment…'; const fd = new FormData(e.target); const body = { name: fd.get('name'), email: fd.get('email'), headline: fd.get('headline'), credentials: fd.get('credentials'), specialties: fd.get('specialties'), entity_type: fd.get('entity_type'), answers: { q_legal: fd.get('q_legal'), q_judgment: fd.get('q_judgment'), q_scope: fd.get('q_scope'), q_rate: fd.get('q_rate'), }, offer_title: fd.get('offer_title') || undefined, offer_price_usd: fd.get('offer_price_usd') ? Number(fd.get('offer_price_usd')) : undefined, offer_description: fd.get('offer_description') || undefined, includes_hardware: fd.get('includes_hardware') || undefined, }; try { const res = await fetch('/api/onboard/expert', { method: 'POST', headers: { 'content-type': 'application/json' }, body: JSON.stringify(body), }); const data = await res.json(); if (!res.ok) throw new Error(data.error || 'Onboard failed'); st.textContent = 'Profile created · score ' + data.assessment.score; out.style.display = 'block'; out.innerHTML = `
${data.assessment.badge}

Results for ${esc(data.expert.name)}

${data.assessment.score}Assessment score · ${esc(data.expert.tier)} tier

${esc(data.expert.headline)}

What the AI concluded
Your next steps
    ${(data.next_steps||[]).map(n => '
  1. '+esc(n)+'
  2. ').join('')}
${data.offer ? '

Offer published: '+esc(data.offer.title)+' — $'+Number(data.offer.price_usd).toLocaleString()+'

' : '

No offer published yet — legal hold or skipped offer fields.

'}
View marketplace See buyer flow
`; } catch (err) { st.className = 'status err'; st.textContent = String(err.message || err); } }); function esc(s){return String(s||'').replace(/[&<>"']/g,c=>({'&':'&','<':'<','>':'>','"':'"',"'":'''}[c]));}