-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathsample.env
More file actions
443 lines (417 loc) · 18.8 KB
/
Copy pathsample.env
File metadata and controls
443 lines (417 loc) · 18.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
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
# General
ARCHON_UID=1000
ARCHON_GID=1000
ARCHON_DEBUG=false
ARCHON_NODE_ID=mynodeID
ARCHON_NODE_NAME=mynodeName
# Docker Compose optional service profiles. Leave empty for only the core
# services, or enable optional fragments by comma-separated profile name.
# Available profiles: hyperswarm, cli, explorer, gatekeeper-client,
# keymaster-client, react-wallet, observability, btc-mainnet, btc-signet,
# btc-testnet4, btc-testnet4-hosted, lightning, drawbridge, herald, tor, didcomm,
# zcash-mainnet, eth-mainnet, eth-sepolia, sol-mainnet, sol-devnet, pinning, filecoin.
# NOTE: the `didcomm` profile also requires ARCHON_DIDCOMM_URL to be set (see below) —
# the profile runs the relay; the URL tells Drawbridge to offer it. Both or neither.
#
# Drawbridge and the services it fronts are now separate profiles, each named after what
# it starts. Combine them freely:
#
# drawbridge the front-door proxy (drawbridge + drawbridge-client)
# lightning CLN + LNbits + RTL + lightning-mediator (L402, zaps, /invoice/:did)
# herald herald + herald-client (/names/*, /.well-known/*)
# tor the onion hidden service
#
# `drawbridge` no longer implies any of the others — that is the point of the split.
# Enabling one WITHOUT `drawbridge` is valid and starts its containers, but nothing
# fronts them (tor's hidden service targets drawbridge:4222; herald-client calls
# drawbridge's /names/api), so pair them with `drawbridge` unless you know why you aren't.
#
# The default below keeps the FULL stack — same service set as before the split.
# For a LEAN, egress-free DIDComm-only drawbridge (e.g. a sealed pi node — the keymaster's
# DIDComm gateway is `<nodeUrl>/didcomm`, so a front-door proxy is what makes
# didcomm-direct work):
#
# COMPOSE_PROFILES=...,didcomm,drawbridge
# ARCHON_DIDCOMM_URL=http://didcomm:4236
#
# and BLANK the two upstream URLs below, otherwise Drawbridge still advertises those
# capabilities and proxies to containers that are not running (connection errors, not 501s):
#
# ARCHON_LIGHTNING_MEDIATOR_URL= (without the `lightning` profile)
# ARCHON_HERALD_URL= (without the `herald` profile)
# ARCHON_EXPLORER_URL= (without the `explorer` profile)
#
# Separately, blank the DIDComm relay's Tor proxy when running without `tor`.
# This is NOT a Drawbridge capability: didcomm stays enabled via ARCHON_DIDCOMM_URL, and
# only .onion delivery is affected — empty gives a clean 502 naming the unset variable,
# whereas a stale `tor:9050` fails on connect:
#
# ARCHON_DIDCOMM_TOR_PROXY= (without the `tor` profile)
#
# Each is set to its full-stack value further down and marked with the profile it belongs to.
COMPOSE_PROFILES=hyperswarm,cli,explorer,gatekeeper-client,keymaster-client,react-wallet,observability,btc-mainnet,btc-signet,lightning,drawbridge,herald,tor
# Security — set these in production deployments
# Bind services to localhost when behind a reverse proxy (nginx, Caddy, etc.)
ARCHON_BIND_ADDRESS=0.0.0.0
# REQUIRED. Protects admin API routes (wallet, db reset, batch import/export,
# queue management). Gatekeeper refuses to start without it, and admin routes
# return 403 when it is unset. Mediators and the CLI read the same value to
# authenticate against Gatekeeper, so it must be set once here for the stack.
# Generate with: openssl rand -hex 32
ARCHON_ADMIN_API_KEY=CHANGE_ME
# Gatekeeper
# Implementation flavor: `ts` (default) or `rust`. Selects which
# docker/compose/gatekeeper-*.yml is pulled in by docker-compose.yml.
ARCHON_GATEKEEPER_FLAVOR=ts
ARCHON_GATEKEEPER_PORT=4224
ARCHON_GATEKEEPER_DID_PREFIX=did:cid
# redis, sqlite, mongodb, json or json-cache. Any database setting in this file
# -- gatekeeper, keymaster, or a chain mediator -- set to mongodb also needs
# mongodb in COMPOSE_PROFILES. On x86_64 that requires a CPU with AVX.
ARCHON_GATEKEEPER_DB=redis
ARCHON_GATEKEEPER_REGISTRIES=hyperswarm
ARCHON_GATEKEEPER_REGISTRIES_PIN=
ARCHON_GATEKEEPER_JSON_LIMIT=10mb
ARCHON_GATEKEEPER_UPLOAD_LIMIT=10mb
ARCHON_GATEKEEPER_GC_INTERVAL=60
ARCHON_GATEKEEPER_STATUS_INTERVAL=1
# Docker startup grace; accepts durations such as 120s or 5m.
ARCHON_GATEKEEPER_START_PERIOD=120s
ARCHON_GATEKEEPER_FALLBACK_URL=https://dev.uniresolver.io
ARCHON_GATEKEEPER_FALLBACK_TIMEOUT=5000
ARCHON_GATEKEEPER_CONFIRM_FALLBACK_URL=https://archon.technology
# Keymaster
# Implementation flavor: `ts` (default) or `py`. Selects which
# docker/compose/keymaster-*.yml is pulled in by docker-compose.yml.
ARCHON_KEYMASTER_FLAVOR=ts
# Keep Keymaster off public interfaces by default; use a private/VPN address
# here only when remote admin access is intentional.
ARCHON_KEYMASTER_HOST_BIND=127.0.0.1
ARCHON_KEYMASTER_PORT=4226
# json, sqlite, mongodb or redis. See ARCHON_GATEKEEPER_DB above for mongodb.
ARCHON_KEYMASTER_DB=json
# Encrypts the wallet mnemonic, and is what the CLI, the lightning scripts and
# the MCP server read too, so one value serves all of them.
# ARCHON_ENCRYPTED_PASSPHRASE is the older name for it and is still read.
ARCHON_PASSPHRASE=CHANGE_ME
ARCHON_WALLET_CACHE=false
ARCHON_DEFAULT_REGISTRY=hyperswarm
ARCHON_KEYMASTER_UPLOAD_LIMIT=10mb
# React-Wallet
ARCHON_REACT_WALLET_PORT=4228
# Optional build-time override for the React wallet backend URL.
# If unset, the wallet keeps its default from apps/react-wallet/.env.production.
ARCHON_REACT_WALLET_GATEKEEPER_URL=
# Herald
# Set only one of the next two values:
# - ARCHON_HERALD_KEYMASTER_URL for shared Keymaster mode
# - ARCHON_HERALD_WALLET_PASSPHRASE for standalone Herald wallet mode
# To migrate a legacy name-service wallet/DB:
# - set ARCHON_HERALD_KEYMASTER_URL= and set ARCHON_HERALD_WALLET_PASSPHRASE
# - copy the old wallet.json and db.json into data/herald/
ARCHON_HERALD_PORT=4230
ARCHON_HERALD_CLIENT_PORT=4231
ARCHON_HERALD_NAME=herald
ARCHON_HERALD_DOMAIN=localhost
ARCHON_HERALD_WALLET_PASSPHRASE=
ARCHON_HERALD_KEYMASTER_URL=http://keymaster:4226
ARCHON_HERALD_WALLET_URL=https://wallet.your-domain.example
# Origin serving the herald client, used for og:url in the link previews of
# /id/<name> pages. This is the host the identity pages are reached at --
# conventionally names.<domain> -- and not the Drawbridge origin that fronts
# /names/*. Left empty, previews still carry a title and description but no url.
ARCHON_HERALD_PUBLIC_URL=
ARCHON_HERALD_DB=json
ARCHON_HERALD_SESSION_SECRET=
ARCHON_HERALD_IPNS_KEY_NAME=herald
ARCHON_HERALD_MEMBERSHIP_SCHEMA_DID=did:cid:bagaaieravnv5onsflewvrz6urhwfjixfnwq7bgc3ejhlrj2nekx75ddhdupq
ARCHON_HERALD_OWNER_DID=
# Tor SOCKS proxy for onion egress. Defaults to the `tor` profile's tor service;
# set empty to disable when running `herald` without the `tor` profile.
# ARCHON_HERALD_TOR_PROXY=tor:9050
# Herald Email Bridge (optional — omit SENDGRID_API_KEY to disable)
ARCHON_HERALD_SENDGRID_API_KEY=
ARCHON_HERALD_SENDGRID_FROM_EMAIL=dmail@your-domain.example
ARCHON_HERALD_SENDGRID_PARSE_DOMAIN=parse.your-domain.example
ARCHON_HERALD_WEBHOOK_SECRET= # webhook secret; use the same value in SendGrid Inbound Parse URL: https://host/names/api/inbound-email?secret=<this-value>
# CLI
ARCHON_GATEKEEPER_URL=http://localhost:4224
ARCHON_KEYMASTER_URL=http://localhost:4226
# Hyperswarm
ARCHON_HYPR_EXPORT_INTERVAL=2
# The hyperswarm topic, which is sha256 of this string, so nodes only meet peers
# that set it identically. It names the wire format, not the release: it moves
# only when what nodes exchange changes, and stays put otherwise. Setting it here
# pins it, so this node would miss exactly the bumps that matter and sit alone on
# the old topic, still running and still anchoring. Only set it to join a network
# deliberately kept apart from the default one.
# ARCHON_PROTOCOL=/ARCHON/v0.13-beta
# Bitcoin mediator
ARCHON_BTC_HOST=localhost
ARCHON_BTC_CHAIN=BTC
ARCHON_BTC_NETWORK=bitcoin
ARCHON_BTC_START_BLOCK=934000
# Blocks re-read after a reorg. Unset uses 6.
#ARCHON_BTC_REORG_DEPTH=6
ARCHON_BTC_PORT=8332
ARCHON_BTC_USER=bitcoin
ARCHON_BTC_PASS=bitcoin
ARCHON_BTC_FALLBACK_RPC_URL=
ARCHON_BTC_IMPORT_INTERVAL=1
ARCHON_BTC_EXPORT_INTERVAL=1
ARCHON_BTC_FEE_BLOCK_TARGET=1
ARCHON_BTC_FEE_FALLBACK_SAT_BYTE=10
ARCHON_BTC_FEE_MAX=0.00010000
ARCHON_BTC_FEE_ORACLE_URL=https://mempool.space/api/v1/fees/recommended
ARCHON_BTC_RBF_ENABLED=true
ARCHON_BTC_REIMPORT=true
ARCHON_BTC_DB=json
# Bitcoin testnet4 mediator
ARCHON_BTC_T4_HOST=localhost
ARCHON_BTC_T4_CHAIN=BTC:testnet4
ARCHON_BTC_T4_NETWORK=testnet
ARCHON_BTC_T4_START_BLOCK=120000
# Blocks re-read after a reorg. Unset uses 6.
#ARCHON_BTC_T4_REORG_DEPTH=6
ARCHON_BTC_T4_PORT=48332
ARCHON_BTC_T4_USER=testnet4
ARCHON_BTC_T4_PASS=testnet4
# Hosted testnet4 mode uses a full JSON-RPC URL and Esplora-compatible UTXO API URL.
# Keep API keys in local .env only.
ARCHON_BTC_T4_RPC_URL=https://bitcoin-testnet4.g.alchemy.com/v2/<api-key>
ARCHON_BTC_T4_FALLBACK_RPC_URL=
ARCHON_BTC_T4_UTXO_URL=https://mempool.space/testnet4/api
ARCHON_BTC_T4_IMPORT_INTERVAL=1
ARCHON_BTC_T4_EXPORT_INTERVAL=1
ARCHON_BTC_T4_FEE_BLOCK_TARGET=1
ARCHON_BTC_T4_FEE_FALLBACK_SAT_BYTE=10
ARCHON_BTC_T4_FEE_MAX=0.00200000
ARCHON_BTC_T4_FEE_ORACLE_URL=
ARCHON_BTC_T4_RBF_ENABLED=false
ARCHON_BTC_T4_REIMPORT=true
ARCHON_BTC_T4_DB=json
# BTC signet mediator
ARCHON_SIGNET_HOST=localhost
ARCHON_SIGNET_START_BLOCK=288000
# Blocks re-read after a reorg. Unset uses 6.
#ARCHON_SIGNET_REORG_DEPTH=6
ARCHON_SIGNET_PORT=38332
ARCHON_SIGNET_USER=signet
ARCHON_SIGNET_PASS=signet
ARCHON_SIGNET_WALLET=archon
ARCHON_SIGNET_IMPORT_INTERVAL=1
ARCHON_SIGNET_EXPORT_INTERVAL=1
ARCHON_SIGNET_FEE_BLOCK_TARGET=1
ARCHON_SIGNET_FEE_FALLBACK_SAT_BYTE=10
ARCHON_SIGNET_FEE_MAX=0.00003000
ARCHON_SIGNET_FEE_ORACLE_URL=
ARCHON_SIGNET_RBF_ENABLED=false
ARCHON_SIGNET_REIMPORT=true
ARCHON_SIGNET_DB=json
# BTC signet inscribed mediator
ARCHON_SIGNET_INS_HOST=localhost
ARCHON_SIGNET_INS_START_BLOCK=262868
ARCHON_SIGNET_INS_PORT=38332
ARCHON_SIGNET_INS_USER=signet
ARCHON_SIGNET_INS_PASS=signet
ARCHON_SIGNET_INS_WALLET=archon
ARCHON_SIGNET_INS_IMPORT_INTERVAL=1
ARCHON_SIGNET_INS_EXPORT_INTERVAL=1
ARCHON_SIGNET_INS_FEE_BLOCK_TARGET=1
ARCHON_SIGNET_INS_FEE_FALLBACK_SAT_BYTE=10
ARCHON_SIGNET_INS_FEE_MAX=0.00200000
ARCHON_SIGNET_INS_RBF_ENABLED=false
ARCHON_SIGNET_INS_REIMPORT=true
ARCHON_SIGNET_INS_DB=json
# IPFS mediator
ARCHON_IPFS_INTERVAL=60
ARCHON_IPFS_BATCH_SIZE=100
ARCHON_IPFS_CONCURRENCY=10
# Core Lightning (cl-hive)
ARCHON_CLN_VERSION=3.1.0
ARCHON_CLN_ALIAS=archon
ARCHON_CLN_RGB=e33502
ARCHON_CLN_PORT=9736
ARCHON_CLN_NETWORK_MODE=tor
ARCHON_CLN_ANNOUNCE_ADDR=
ARCHON_CLN_GOVERNANCE_MODE=advisor
ARCHON_CLN_ARCHON_VERSION=v0.1.0
ARCHON_CLN_LOG_LEVEL=info
# RTL (Ride The Lightning)
ARCHON_RTL_PORT=3002
ARCHON_RTL_PASSWORD=changeme
# Interface RTL's admin UI publishes on. Loopback by default because Docker
# publishes ports ahead of the host firewall; set to 0.0.0.0 to expose it on
# every interface, or to a tailnet IP to expose it there only.
# ARCHON_RTL_BIND=127.0.0.1
# LNbits
ARCHON_LNBITS_PORT=5000
ARCHON_LNBITS_CLNREST_WAIT_TIMEOUT=600
# Interface the LNbits admin UI publishes on. Loopback by default (it is the
# custodial wallet backend); set to 0.0.0.0 to expose it deliberately.
# ARCHON_LNBITS_BIND=127.0.0.1
# Drawbridge (L402 API Gateway)
# ARCHON_DRAWBRIDGE_L402_ENABLED=true
# INSECURE DEV STUB (#121): enables subscription-auth, which treats any request
# carrying an X-Subscription-DID header as paid/authenticated WITHOUT verifying
# a credential, bypassing L402 payment enforcement. Never enable in production.
# ARCHON_DRAWBRIDGE_SUBSCRIPTIONS_ENABLED=true
ARCHON_DRAWBRIDGE_PORT=4222
# Public base URL this node is reachable at (clearnet host or Tor onion).
# `publish-didcomm` (with no endpoint) auto-advertises <host>/didcomm; when this
# is unset it falls back to the node's Tor onion (if the `tor` profile's
# hidden service is running).
ARCHON_DRAWBRIDGE_PUBLIC_HOST=
# Upstream Lightning mediator. Belongs to the `lightning` profile —
# BLANK this when that profile is off, or /capabilities reports lightning:true and
# /lightning/* + /invoice/:did proxy to a container that isn't running.
ARCHON_LIGHTNING_MEDIATOR_URL=http://lightning-mediator:4235
# Upstream Herald name service. Belongs to the `herald` profile — BLANK
# this when that profile is off, or /capabilities reports names:true and /names/* +
# /.well-known/* proxy to a container that isn't running.
ARCHON_HERALD_URL=http://herald:4230
# Upstream explorer. Belongs to the `explorer` profile — BLANK this when that
# profile is off, or /explorer proxies to a container that isn't running instead
# of answering 501. Herald links here by default, so leaving it set without the
# profile gives visitors a broken link.
ARCHON_EXPLORER_URL=http://explorer:4000
ARCHON_DRAWBRIDGE_DEFAULT_PRICE_SATS=10
ARCHON_DRAWBRIDGE_INVOICE_EXPIRY=3600
ARCHON_DRAWBRIDGE_RATE_LIMIT_MAX=100
ARCHON_DRAWBRIDGE_RATE_LIMIT_WINDOW=60
# Drawbridge only needs the macaroon secret locally; Lightning backends now live in lightning-mediator.
# ARCHON_DRAWBRIDGE_MACAROON_SECRET=
# DIDComm relay URL that Drawbridge reverse-proxies at /didcomm. OPTIONAL SERVICE,
# OFF BY DEFAULT: when empty, /capabilities reports didcomm:false, the /didcomm
# mount returns 501, and keymaster clients fail fast with a clear message instead
# of a transport error. To ENABLE server-side DIDComm you need all of:
# 1. add `didcomm` to COMPOSE_PROFILES (runs the relay container), and
# 2. uncomment ARCHON_DIDCOMM_URL (point Drawbridge at the relay), and
# 3. uncomment ARCHON_KEYMASTER_GATEKEEPER_URL (point Keymaster at Drawbridge).
# ARCHON_DIDCOMM_URL=http://didcomm:4236
# ARCHON_KEYMASTER_GATEKEEPER_URL=http://drawbridge:4222
# Optional upstream credential, only for a trusted Gatekeeper/Drawbridge. A
# matching Drawbridge admin key exempts internal calls from its L402 paywall.
# Compose maps this to ARCHON_GATEKEEPER_API_KEY in both Keymaster runtimes.
# ARCHON_KEYMASTER_GATEKEEPER_API_KEY=${ARCHON_ADMIN_API_KEY}
# (Lightning + names work the same way: ARCHON_LIGHTNING_MEDIATOR_URL and
# ARCHON_HERALD_URL default ON since they're in the default profiles — set either
# empty to disable that service. Empty disables; unset keeps the default.)
# DIDComm relay (mailbox) — optional, enable with the `didcomm` profile.
# Store-and-forward relay for DIDComm v2 encrypted messages, addressed by
# recipient DID and held until the key-holder fetches them.
ARCHON_DIDCOMM_PORT=4236
# Keep the relay off public interfaces by default; expose it via Drawbridge.
ARCHON_DIDCOMM_HOST_BIND=127.0.0.1
# Mailbox store backend: `memory` (default) or `redis` (uses the redis service).
ARCHON_DIDCOMM_DB=memory
# Max inbound envelope size (default 5mb) and how long undelivered messages are
# retained before pruning (default 7 days, in milliseconds).
# ARCHON_DIDCOMM_UPLOAD_LIMIT=5mb
# ARCHON_DIDCOMM_MESSAGE_TTL_MS=604800000
# Redis URL when ARCHON_DIDCOMM_DB=redis (compose wires redis://redis:6379).
# ARCHON_REDIS_URL=redis://localhost:6379
# Outbound delivery: keymaster derives Drawbridge's /didcomm proxy from its
# Gatekeeper URL when ARCHON_KEYMASTER_GATEKEEPER_URL points at Drawbridge. The
# relay performs egress:
# Tor SOCKS proxy the relay uses to deliver to .onion recipients (needs the
# `tor` profile's tor service). Clearnet delivery needs no proxy.
# BLANK this when that profile is off: empty gives a clean 502 explaining the
# proxy is unset, whereas a stale `tor:9050` fails on connect.
ARCHON_DIDCOMM_TOR_PROXY=tor:9050
# Clearnet delivery must be https, and is not filtered by address: private and
# loopback https destinations are allowed. POST /deliver authenticates any
# resolvable DID rather than a local identity, so the relay can be made to POST
# attacker-chosen bytes to any https host it can reach. Place it accordingly.
# Lightning mediator
ARCHON_LIGHTNING_MEDIATOR_CLN_REST_URL=https://cln:3001
ARCHON_LIGHTNING_MEDIATOR_LNBITS_URL=http://lnbits:5000
# ARCHON_LIGHTNING_MEDIATOR_CLN_RUNE=
# ARCHON_LIGHTNING_MEDIATOR_PUBLIC_HOST=
# Tor SOCKS proxy for onion egress. Defaults to the `tor` profile's tor service;
# set empty to disable when running `lightning` without the `tor` profile.
# ARCHON_LIGHTNING_MEDIATOR_TOR_PROXY=tor:9050
# Observability (Grafana)
GRAFANA_ADMIN_USER=admin
GRAFANA_ADMIN_PASSWORD=admin
# Interface Grafana publishes on. Loopback by default because Docker publishes
# ports ahead of the host firewall; set to 0.0.0.0 to expose it deliberately.
# ARCHON_GRAFANA_BIND=127.0.0.1
# Zcash transparent wallet / Zebra RPC
ARCHON_ZEC_HOST=100.70.86.134
ARCHON_ZEC_PORT=8232
ARCHON_ZEC_USER=
ARCHON_ZEC_PASS=
ARCHON_WALLET_ZEC_FALLBACK_FEE_ZAT_KB=10000
ARCHON_ZEC_CHAIN=ZEC:mainnet
ARCHON_ZEC_NETWORK=mainnet
ARCHON_ZEC_START_BLOCK=3339235
# Blocks re-read after a reorg. Unset uses 6.
#ARCHON_ZEC_REORG_DEPTH=6
ARCHON_ZEC_IMPORT_INTERVAL=1
ARCHON_ZEC_EXPORT_INTERVAL=1
ARCHON_ZEC_FEE_BLOCK_TARGET=1
ARCHON_ZEC_FEE_FALLBACK_ZAT_BYTE=10
ARCHON_ZEC_FEE_MAX=0.00010000
ARCHON_ZEC_FEE_ORACLE_URL=
ARCHON_ZEC_RBF_ENABLED=false
ARCHON_ZEC_REIMPORT=true
ARCHON_ZEC_DB=json
# Ethereum mediator
ARCHON_ETH_CHAIN=ETH:mainnet
ARCHON_ETH_NETWORK=mainnet
ARCHON_ETH_CHAIN_ID=1
ARCHON_ETH_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/<api-key>
ARCHON_ETH_CONTRACT=0xAe75AdA1B916409E8a59Ca3135E5c958E091C18F
ARCHON_ETH_START_BLOCK=25189306
# Sepolia reference values:
# ARCHON_ETH_CHAIN=ETH:sepolia
# ARCHON_ETH_NETWORK=sepolia
# ARCHON_ETH_CHAIN_ID=11155111
# ARCHON_ETH_RPC_URL=https://eth-sepolia.g.alchemy.com/v2/<api-key>
# ARCHON_ETH_CONTRACT=0x9Bb792221a7424f683dDF40d9ee12923b4BB45B6
# ARCHON_ETH_START_BLOCK=10887493
ARCHON_ETH_LOG_CHUNK_SIZE=10
ARCHON_ETH_PENDING_TX_TIMEOUT_BLOCKS=120
ARCHON_ETH_MIN_GAS_BALANCE_WEI=1000000000000000
ARCHON_ETH_IMPORT_INTERVAL=1
ARCHON_ETH_EXPORT_INTERVAL=1
ARCHON_ETH_REIMPORT=true
ARCHON_ETH_DB=json
ARCHON_WALLET_ETH_DERIVATION_PATH=m/44'/60'/0'/0/0
# Solana mediator
ARCHON_SOL_CHAIN=SOL:mainnet-beta
ARCHON_SOL_NETWORK=mainnet-beta
ARCHON_SOL_RPC_URL=https://api.mainnet-beta.solana.com
ARCHON_SOL_COMMITMENT=confirmed
ARCHON_SOL_MEMO_PROGRAM_ID=MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr
ARCHON_SOL_START_BLOCK=400716100
# Devnet reference values:
# ARCHON_SOL_CHAIN=SOL:devnet
# ARCHON_SOL_NETWORK=devnet
# ARCHON_SOL_RPC_URL=https://api.devnet.solana.com
# ARCHON_SOL_START_BLOCK=452082400
ARCHON_SOL_SIGNATURE_PAGE_LIMIT=100
ARCHON_SOL_SIGNATURE_PAGE_MAX=20
ARCHON_SOL_PENDING_TX_TIMEOUT_SLOTS=150
ARCHON_SOL_MIN_BALANCE_LAMPORTS=10000000
ARCHON_SOL_IMPORT_INTERVAL=1
ARCHON_SOL_EXPORT_INTERVAL=1
ARCHON_SOL_REIMPORT=true
ARCHON_SOL_DB=json
ARCHON_WALLET_SOL_DERIVATION_PATH=m/44'/501'/0'/0'
# Filecoin storage mediator
ARCHON_FIL_NETWORK=calibration
ARCHON_FIL_RPC_URL=
ARCHON_FIL_IMPORT_INTERVAL=1
ARCHON_WALLET_FIL_DERIVATION_PATH=m/44'/461'/0'/0/0
# Generic IPFS pinning mediator
# Pinning mediators self-register by polling the generic `pin` queue.
# Provider examples:
# filebase: https://api.filebase.io/v1/ipfs
# pinata: https://api.pinata.cloud/psa
ARCHON_PIN_PROVIDER=filebase
ARCHON_PIN_API_URL=https://api.filebase.io/v1/ipfs
ARCHON_PIN_API_TOKEN=
ARCHON_PIN_ORIGINS=
ARCHON_PIN_IMPORT_INTERVAL=1