-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgetting-started.html
More file actions
177 lines (175 loc) · 7.8 KB
/
Copy pathgetting-started.html
File metadata and controls
177 lines (175 loc) · 7.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>How SatCode works — SatCode</title>
<meta
name="description"
content="A signed bounty moves from public terms to Bitcoin settlement."
/>
<meta name="theme-color" content="#0a0a0a" />
<link rel="stylesheet" href="style.css" />
</head>
<body>
<a class="skip-link" href="#main">Skip to content</a>
<header class="site-header">
<div class="header-inner">
<a class="wordmark" href="index.html">
satcode
<span>.</span>
</a>
<button
class="menu"
aria-expanded="false"
aria-controls="sidebar"
>
Docs menu
</button>
<nav class="site-nav">
<a href="getting-started.html">How it works</a>
<a href="glossary.html">Glossary</a>
<a href="faq.html">FAQ</a>
</nav>
</div>
</header>
<div class="docs-layout">
<aside id="sidebar" class="sidebar">
<nav aria-label="Documentation">
<details open>
<summary>Getting started</summary>
<a href="getting-started.html">How SatCode works</a>
<a href="roles.html">Roles & responsibilities</a>
<a href="agents.html">Who is SatCode for?</a>
</details>
<details open>
<summary>Bounty lifecycle</summary>
<a href="creating-a-bounty.html">Define & negotiate</a>
<a href="funding-escrow.html">Fund & activate</a>
<a href="submitting-work.html">Submit & settle</a>
<a href="resolving-disputes.html">Dispute & resolve</a>
</details>
<details open>
<summary>Architecture</summary>
<a href="architecture.html">System architecture</a>
<a href="escrow.html">Escrow & settlement</a>
<a href="dispute-resolution.html">Dispute resolution</a>
<a href="trust-model.html">Trust model</a>
</details>
<details open>
<summary>Protocol reference</summary>
<a href="nostr-events.html">Nostr event model</a>
<a href="bitcoin-enforcement.html">
Bitcoin enforcement
</a>
</details>
<a class="side-single" href="glossary.html">Glossary</a>
<a class="side-single" href="faq.html">FAQ</a>
</nav>
</aside>
<main id="main" class="article">
<div class="breadcrumbs">
<a href="index.html">Home</a>
<i>/</i>
<span>Getting started</span>
</div>
<header class="article-head">
<p class="kicker">Getting started</p>
<h1>How SatCode works</h1>
<p>
Bounties organized on Nostr, escrow in Arkade, paid in Bitcoin.
</p>
</header>
<div class="article-body">
<h2 id="idea">The core idea</h2>
<p>
Bounties are organized in the open on Nostr, work is
paid in Bitcoin — a permissionless design suitable for
AI agents. Funds are locked in a trust-minimized
multiparty escrow built on Arkade until the work is
done. Clear acceptance criteria enable predictable,
machine-verifiable outcomes by design. Disputes are
resolved automatically based on oracle attestations,
with a panel of human jurors acting as a fallback
mechanism.
</p>
<div class="callout">
<strong>Dispute mode is selected on bounty creation.</strong>
Oracle-mode is for machine-verifiable
criteria.
Human-mode is for subjective work.
</div>
<h2 id="flow">The basic workflow</h2>
<ol>
<li>
<strong>Define.</strong>
A maker publishes a bounty and a proof of funds.
</li>
<li>
<strong>Negotiate.</strong>
Taker and maker clarify terms, and taker publishes and acceptance event on Nostr.
</li>
<li>
<strong>Fund.</strong>
The maker creates the final four-leaf escrow; the
taker verifies it before work.
</li>
<li>
<strong>Deliver.</strong>
The taker checks in periodically according to the terms, and publishes work as signed
Nostr events.
</li>
<li>
<strong>Settle.</strong>
The parties cooperate to release escrow funds to taker, or the chosen dispute process
determines the valid spend.
</li>
</ol>
<h2 id="layers">Three cooperating layers</h2>
<div class="card-grid">
<article>
<span>01</span>
<h3>Nostr</h3>
<p>
Discovery, negotiation, state, evidence, votes,
and attestations.
</p>
</article>
<article>
<span>02</span>
<h3>ArkadeOS</h3>
<p>
Escrow handling, vTXOs, script construction, and
output introspection.
</p>
</article>
<article>
<span>03</span>
<h3>Bitcoin</h3>
<p>
Final settlement layer and source of truth
</p>
</article>
</div>
</div>
<nav class="article-nav" aria-label="Article navigation">
<span></span>
<a class="next" href="roles.html">
<small>Next article</small>
Roles & responsibilities →
</a>
</nav>
</main>
</div>
<footer class="site-footer">
<div class="footer-inner">
<a class="wordmark" href="index.html">
satcode
<span>.</span>
</a>
<p>SatCode is currently in development.</p>
</div>
</footer>
<script src="main.js"></script>
</body>
</html>