@oracle-agent/oracle 0.35.40 → 0.35.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/agent-sessions.mjs +11 -11
  2. package/dist/assets/skills/oracle-desk-product/SKILL.md +1 -1
  3. package/dist/bin/desk-server.mjs +28 -28
  4. package/dist/bin/oracle-data-mcp.mjs +19 -19
  5. package/dist/bin/oracle-gateway.mjs +43 -43
  6. package/dist/bin/oracle-investigate.mjs +5 -5
  7. package/dist/bin/oracle-launch-radar-shadow.mjs +6 -6
  8. package/dist/bin/oracle-mev-arb-shadow.mjs +6 -6
  9. package/dist/bin/oracle-mev-shadow.mjs +6 -6
  10. package/dist/bin/oracle-public-server.mjs +5 -5
  11. package/dist/bin/oracle-route.mjs +18 -18
  12. package/dist/bin/oracle-scan.mjs +11 -11
  13. package/dist/cli/commands/agent-session.mjs +18 -18
  14. package/dist/cli/commands/airdrop.mjs +8 -8
  15. package/dist/cli/commands/chat.mjs +207 -207
  16. package/dist/cli/commands/doctor.mjs +9 -9
  17. package/dist/cli/commands/eval.mjs +147 -197
  18. package/dist/cli/commands/farm.mjs +17 -17
  19. package/dist/cli/commands/follow.mjs +17 -17
  20. package/dist/cli/commands/mint.mjs +10 -10
  21. package/dist/cli/commands/model.mjs +211 -211
  22. package/dist/cli/commands/quickstart.mjs +6 -6
  23. package/dist/cli/commands/receipt.mjs +12 -12
  24. package/dist/cli/commands/resolve.mjs +7 -7
  25. package/dist/cli/commands/sign.mjs +4 -4
  26. package/dist/cli/commands/signer.mjs +14 -14
  27. package/dist/cli/commands/snipe.mjs +9 -9
  28. package/dist/cli/commands/strategy.mjs +4 -4
  29. package/dist/cli/commands/swap.mjs +14 -14
  30. package/dist/cli/commands/venues.mjs +2 -2
  31. package/dist/data/desk-data.mjs +26 -26
  32. package/dist/data/names.mjs +3 -3
  33. package/dist/data/providers/farming.mjs +2 -2
  34. package/dist/data/providers/lp-destination-discovery.mjs +4 -4
  35. package/dist/index.mjs +44 -44
  36. package/dist/investigator/index.mjs +2 -2
  37. package/dist/launch-radar/index.mjs +5 -5
  38. package/dist/local-signer/anvil-attestation-worker.mjs +1 -1
  39. package/dist/local-signer/index.mjs +2 -2
  40. package/dist/local-signer/runtime.mjs +8 -8
  41. package/dist/nft/universal-mint-router.mjs +4 -4
  42. package/dist/notifications/index.mjs +7 -7
  43. package/dist/router/index.mjs +3 -3
  44. package/dist/router/prepare-bridge.mjs +2 -2
  45. package/dist/router/prepare-route.mjs +3 -3
  46. package/dist/scanner/index.mjs +4 -4
  47. package/dist/strategy/index.mjs +3 -3
  48. package/dist/tui/standalone-client.mjs +82 -82
  49. package/package.json +4 -4
  50. package/public/eval-report.json +1 -1
  51. package/public/oracle-splash/_variants/ice.html +2 -4
  52. package/public/oracle-splash/_variants/ivory.html +2 -4
  53. package/public/oracle-splash/assets/fonts/LICENSE-Cormorant-Garamond.txt +93 -0
  54. package/public/oracle-splash/assets/fonts/LICENSE-IBM-Plex-Mono.txt +93 -0
  55. package/public/oracle-splash/assets/fonts/LICENSE-Outfit.txt +93 -0
  56. package/public/oracle-splash/assets/fonts/LICENSE-UnifrakturCook.txt +94 -0
  57. package/public/oracle-splash/assets/fonts/font-provenance.json +426 -0
  58. package/public/oracle-splash/assets/fonts/oracle-font-00.woff2 +0 -0
  59. package/public/oracle-splash/assets/fonts/oracle-font-01.woff2 +0 -0
  60. package/public/oracle-splash/assets/fonts/oracle-font-02.woff2 +0 -0
  61. package/public/oracle-splash/assets/fonts/oracle-font-03.woff2 +0 -0
  62. package/public/oracle-splash/assets/fonts/oracle-font-04.woff2 +0 -0
  63. package/public/oracle-splash/assets/fonts/oracle-font-05.woff2 +0 -0
  64. package/public/oracle-splash/assets/fonts/oracle-font-06.woff2 +0 -0
  65. package/public/oracle-splash/assets/fonts/oracle-font-07.woff2 +0 -0
  66. package/public/oracle-splash/assets/fonts/oracle-font-08.woff2 +0 -0
  67. package/public/oracle-splash/assets/fonts/oracle-font-09.woff2 +0 -0
  68. package/public/oracle-splash/assets/fonts/oracle-font-10.woff2 +0 -0
  69. package/public/oracle-splash/assets/fonts/oracle-font-11.woff2 +0 -0
  70. package/public/oracle-splash/assets/fonts/oracle-font-12.woff2 +0 -0
  71. package/public/oracle-splash/assets/fonts/oracle-font-13.woff2 +0 -0
  72. package/public/oracle-splash/assets/fonts/oracle-font-14.woff2 +0 -0
  73. package/public/oracle-splash/assets/fonts/oracle-font-15.woff2 +0 -0
  74. package/public/oracle-splash/assets/fonts/oracle-font-16.woff2 +0 -0
  75. package/public/oracle-splash/assets/fonts/oracle-font-17.woff2 +0 -0
  76. package/public/oracle-splash/assets/fonts/oracle-font-18.woff2 +0 -0
  77. package/public/oracle-splash/assets/fonts/oracle-font-19.woff2 +0 -0
  78. package/public/oracle-splash/assets/fonts/oracle-font-20.woff2 +0 -0
  79. package/public/oracle-splash/assets/fonts/oracle-font-21.woff2 +0 -0
  80. package/public/oracle-splash/assets/fonts/oracle-font-22.woff2 +0 -0
  81. package/public/oracle-splash/assets/fonts/oracle-font-23.woff2 +0 -0
  82. package/public/oracle-splash/assets/fonts/oracle-font-24.woff2 +0 -0
  83. package/public/oracle-splash/assets/fonts/oracle-font-25.woff2 +0 -0
  84. package/public/oracle-splash/assets/fonts/oracle-font-26.woff2 +0 -0
  85. package/public/oracle-splash/assets/fonts/oracle-font-27.woff2 +0 -0
  86. package/public/oracle-splash/assets/fonts/oracle-fonts.css +504 -0
  87. package/public/oracle-splash/assets/transport-probe-sw.js +2 -0
  88. package/public/oracle-splash/docs/browser-and-web/index.html +6 -6
  89. package/public/oracle-splash/docs/connectors/index.html +5 -5
  90. package/public/oracle-splash/docs/docs.css +4 -4
  91. package/public/oracle-splash/docs/docs.js +119 -7
  92. package/public/oracle-splash/docs/getting-started/index.html +5 -5
  93. package/public/oracle-splash/docs/index.html +6 -6
  94. package/public/oracle-splash/docs/reference/index.html +5 -5
  95. package/public/oracle-splash/docs/security/index.html +5 -5
  96. package/public/oracle-splash/docs/using-oracle/index.html +5 -5
  97. package/public/oracle-splash/download/index.html +8 -10
  98. package/public/oracle-splash/downloads/index.html +3 -5
  99. package/public/oracle-splash/eval/index.html +96 -0
  100. package/public/oracle-splash/index.html +16 -18
  101. package/public/oracle-splash/mesh-graph.svg +1 -1
  102. package/public/oracle-splash/pricing/index.html +6 -8
  103. package/public/oracle-splash/security/index.html +3 -5
  104. package/public/oracle-splash/what-it-does/index.html +4 -6
  105. package/public/oracle-splash/where-it-works/index.html +3 -5
  106. package/server.json +2 -2
@@ -0,0 +1,96 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <meta name="color-scheme" content="dark">
7
+ <meta name="description" content="Commit-pinned Oracle evaluation evidence.">
8
+ <title>Evaluation evidence · Oracle</title>
9
+ <style>
10
+ :root{--ink:#eef3ed;--muted:#98a39b;--line:#273029;--panel:#111713;--panel-2:#151d18;--green:#a8f0bd;--red:#ff9e96;--amber:#efcf89;--blue:#9bbfff;--bg:#080b09;--serif:Georgia,"Times New Roman",serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
11
+ *{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 82% -8%,#1e3828 0,transparent 32rem),linear-gradient(180deg,#0b100c 0,var(--bg) 42rem);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
12
+ body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 76%)}
13
+ a{color:inherit}a:focus-visible{outline:2px solid var(--green);outline-offset:5px;border-radius:2px}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.skip{position:fixed;z-index:10;top:12px;left:12px;padding:10px 14px;background:var(--ink);color:var(--bg);transform:translateY(-150%)}.skip:focus{transform:none}
14
+ nav{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line)}.brand{font:700 14px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.nav-meta{font:12px/1.4 var(--mono);color:var(--muted)}
15
+ .hero{min-height:70vh;padding:clamp(76px,12vw,150px) 0 64px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:clamp(34px,7vw,100px);align-items:end}.eyebrow{display:flex;gap:12px;align-items:center;color:var(--green);font:12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"";width:42px;border-top:1px solid currentColor}h1{max-width:800px;margin:22px 0 24px;font:400 clamp(54px,9vw,124px)/.88 var(--serif);letter-spacing:-.055em}h1 em{color:var(--green);font-weight:400}.dek{max-width:650px;margin:0;color:#bdc6be;font-size:clamp(17px,2vw,21px)}
16
+ .verdict{border-top:1px solid var(--line);padding-top:22px}.verdict-label,.kicker{font:11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.verdict-value{margin:10px 0 6px;font:700 21px/1.2 var(--mono)}.verdict[data-state="passed"] .verdict-value{color:var(--green)}.verdict[data-state="attention"] .verdict-value{color:var(--amber)}
17
+ .warning{margin:0 0 88px;padding:24px 26px;display:grid;grid-template-columns:170px minmax(0,1fr);gap:28px;background:#211d12;border:1px solid #6a5725;border-left:4px solid var(--amber)}.warning h2{margin:0;color:var(--amber);font:700 12px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase}.warning p{min-width:0;margin:0;color:#e4d8bb}.warning strong{color:#fff0c7}.warning code{overflow-wrap:anywhere;word-break:break-word}
18
+ section{padding:80px 0;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:170px 1fr;gap:28px;margin-bottom:38px}.section-head h2{margin:0;font:400 clamp(36px,5vw,66px)/1 var(--serif);letter-spacing:-.035em}.section-head p{max-width:620px;margin:12px 0 0;color:var(--muted)}
19
+ .suite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.suite-card{min-height:240px;padding:24px;background:linear-gradient(145deg,rgba(255,255,255,.025),transparent);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.suite-card[data-state="unavailable"]{min-height:178px;background:rgba(255,255,255,.012)}.suite-card:hover{background-color:rgba(255,255,255,.025)}.suite-topline{display:flex;justify-content:space-between;gap:12px}.slice-index{color:#819087;font:12px/1 var(--mono)}.state-pill{font:700 11px/1.25 var(--mono);letter-spacing:.07em;text-transform:uppercase}.suite-card[data-state="passed"] .state-pill{color:var(--green)}.suite-card[data-state="failed"] .state-pill,.suite-card[data-state="blocked"] .state-pill{color:var(--red)}.suite-card[data-state="skipped"] .state-pill,.suite-card[data-state="unavailable"] .state-pill,.suite-card[data-state="unattested"] .state-pill{color:var(--amber)}.suite-card h3{margin:42px 0 16px;font:400 31px/1 var(--serif);text-transform:capitalize}.suite-card[data-state="unavailable"] h3{margin-top:30px}.suite-card ul{margin:0;padding:0;list-style:none;color:#aab5ad;font:13px/1.6 var(--mono)}
20
+ .coverage{display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:0;list-style:none;border-top:1px solid var(--line);border-left:1px solid var(--line)}.coverage li{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:#b5c7d9;font:13px/1.4 var(--mono)}
21
+ .provenance{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.datum{min-width:0;padding:24px;background:var(--panel)}.datum dt{margin-bottom:10px;color:var(--muted);font:10px/1.4 var(--mono);letter-spacing:.13em;text-transform:uppercase}.datum dd{margin:0;overflow-wrap:anywhere;font:13px/1.6 var(--mono)}code{color:var(--green);font:inherit}.method{grid-column:1/-1}.method dd{max-width:900px}.reproduce{display:block;margin-top:18px;padding:16px 18px;background:#090d0a;border-left:2px solid var(--green)}
22
+ footer{padding:38px 0 54px;display:flex;justify-content:space-between;gap:24px;color:#738078;font:11px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.1em}
23
+ @media (max-width:820px){.hero{min-height:auto;grid-template-columns:1fr;padding-top:80px}.warning,.section-head{grid-template-columns:1fr}.suite-grid{grid-template-columns:1fr 1fr}.coverage{grid-template-columns:1fr 1fr}.provenance{grid-template-columns:1fr}.method{grid-column:auto}}
24
+ @media (max-width:540px){.wrap{width:min(100% - 24px,1180px)}nav{padding:18px 0}.nav-meta{display:none}h1{font-size:clamp(42px,14vw,60px);line-height:.94}.hero{padding-top:58px;padding-bottom:38px;gap:28px}.warning{margin-bottom:46px;padding:18px}.suite-grid,.coverage{grid-template-columns:1fr}.suite-card{min-height:190px}.suite-card[data-state="unavailable"]{min-height:0;padding:16px 20px}.suite-card[data-state="unavailable"] h3{margin:18px 0 7px;font-size:25px}.suite-card[data-state="unavailable"] ul{font-size:12px}.section-head{margin-bottom:28px}section{padding:52px 0}.provenance{display:block}.datum+.datum{border-top:1px solid var(--line)}footer{flex-direction:column;font-size:12px}}
25
+ @media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
26
+ </style>
27
+ </head>
28
+ <body>
29
+ <a class="skip" href="#evidence">Skip to evidence</a>
30
+ <div class="wrap">
31
+ <nav aria-label="Evaluation navigation"><a class="brand" href="../">Oracle / Eval</a><span class="nav-meta">commit-pinned · static evidence</span></nav>
32
+ <header class="hero">
33
+ <div><p class="eyebrow">Public evaluation record</p><h1>Evaluation <em>evidence</em></h1><p class="dek">A dated, immutable view of what the Oracle evaluation harness actually recorded. Missing evidence remains visible as missing.</p></div>
34
+ <aside class="verdict" data-state="attention" aria-label="Snapshot verdict"><span class="verdict-label">Verdict</span><p class="verdict-value">HISTORICAL SNAPSHOT · NOT RELEASE EVIDENCE</p><span class="nav-meta">3 reported suites · 8 required slices</span></aside>
35
+ </header>
36
+ <aside class="warning" aria-labelledby="historical-title"><h2 id="historical-title">Historical snapshot</h2><p><strong>This is evidence for the report commit only.</strong> The exact report commit <code>8f01446de5819018793c2bc5384b0df16179425f</code> does not match the current tree. Do not read this page as a claim about untested changes.</p></aside>
37
+ </div>
38
+ <main id="evidence">
39
+ <section aria-labelledby="suite-title"><div class="wrap"><div class="section-head"><span class="kicker">01 / Evidence map</span><div><h2 id="suite-title">Expected eval slices</h2><p>Every expected slice has a place. Absent, blocked, skipped, and unavailable results are neutral or adverse states—never green and never counted as zero.</p></div></div><div class="suite-grid">
40
+ <article class="suite-card" data-slice="guards" data-state="unattested" aria-labelledby="suite-guards">
41
+ <div class="suite-topline"><span class="slice-index">01</span><span class="state-pill">recorded pass · unattested</span></div>
42
+ <h3 id="suite-guards">guards</h3>
43
+ <ul><li>5 of 5 checks passed</li><li>0 failures</li></ul>
44
+ </article>
45
+ <article class="suite-card" data-slice="fidelity" data-state="unattested" aria-labelledby="suite-fidelity">
46
+ <div class="suite-topline"><span class="slice-index">02</span><span class="state-pill">recorded pass · unattested</span></div>
47
+ <h3 id="suite-fidelity">fidelity</h3>
48
+ <ul><li>summary: 3/3 ok, 0 prepare-fail, 0 structural-fail, 0 sim-fail, 3 simulated</li></ul>
49
+ </article>
50
+ <article class="suite-card" data-slice="hybrid" data-state="unavailable" aria-labelledby="suite-hybrid">
51
+ <div class="suite-topline"><span class="slice-index">03</span><span class="state-pill">not in this snapshot</span></div>
52
+ <h3 id="suite-hybrid">hybrid</h3>
53
+ <ul><li>No result was recorded for this slice.</li></ul>
54
+ </article>
55
+ <article class="suite-card" data-slice="desk" data-state="unavailable" aria-labelledby="suite-desk">
56
+ <div class="suite-topline"><span class="slice-index">04</span><span class="state-pill">not in this snapshot</span></div>
57
+ <h3 id="suite-desk">desk</h3>
58
+ <ul><li>No result was recorded for this slice.</li></ul>
59
+ </article>
60
+ <article class="suite-card" data-slice="agentic" data-state="unavailable" aria-labelledby="suite-agentic">
61
+ <div class="suite-topline"><span class="slice-index">05</span><span class="state-pill">not in this snapshot</span></div>
62
+ <h3 id="suite-agentic">agentic</h3>
63
+ <ul><li>No result was recorded for this slice.</li></ul>
64
+ </article>
65
+ <article class="suite-card" data-slice="adversarial" data-state="unattested" aria-labelledby="suite-adversarial">
66
+ <div class="suite-topline"><span class="slice-index">06</span><span class="state-pill">recorded pass · unattested</span></div>
67
+ <h3 id="suite-adversarial">adversarial</h3>
68
+ <ul><li>160 of 160 package tests passed</li><li>0 package-test failures</li><li>7 named guard scenarios</li></ul>
69
+ </article>
70
+ <article class="suite-card" data-slice="contracts" data-state="unavailable" aria-labelledby="suite-contracts">
71
+ <div class="suite-topline"><span class="slice-index">07</span><span class="state-pill">not in this snapshot</span></div>
72
+ <h3 id="suite-contracts">contracts</h3>
73
+ <ul><li>No result was recorded for this slice.</li></ul>
74
+ </article>
75
+ <article class="suite-card" data-slice="rlm" data-state="unavailable" aria-labelledby="suite-rlm">
76
+ <div class="suite-topline"><span class="slice-index">08</span><span class="state-pill">not in this snapshot</span></div>
77
+ <h3 id="suite-rlm">rlm</h3>
78
+ <ul><li>No result was recorded for this slice.</li></ul>
79
+ </article>
80
+ <article class="suite-card" data-slice="native" data-state="unavailable" aria-labelledby="suite-native">
81
+ <div class="suite-topline"><span class="slice-index">09</span><span class="state-pill">not in this snapshot</span></div>
82
+ <h3 id="suite-native">native</h3>
83
+ <ul><li>No result was recorded for this slice.</li></ul>
84
+ </article>
85
+ </div></div></section>
86
+ <section aria-labelledby="coverage-title"><div class="wrap"><div class="section-head"><span class="kicker">02 / Attack surface</span><div><h2 id="coverage-title">Adversarial coverage</h2><p>Classes explicitly named by the committed report. No inferred coverage and no synthetic score.</p></div></div><ul class="coverage"><li>replay</li><li>mutation</li><li>finality</li><li>exact-confirm</li><li>receipt</li></ul></div></section>
87
+ <section aria-labelledby="provenance-title"><div class="wrap"><div class="section-head"><span class="kicker">03 / Provenance</span><div><h2 id="provenance-title">Pin the claim</h2><p>The timestamp, package, commit, and reproduction command define the boundary of this evidence.</p></div></div><dl class="provenance">
88
+ <div class="datum"><dt>Exact report commit</dt><dd>8f01446de5819018793c2bc5384b0df16179425f</dd></div>
89
+ <div class="datum"><dt>Generated at</dt><dd><time datetime="2026-09-03T04:39:20.463Z">2026-09-03T04:39:20.463Z</time></dd></div>
90
+ <div class="datum"><dt>Package version</dt><dd>@oracle-agent/oracle · 0.35.40</dd></div>
91
+ <div class="datum method"><dt>Methodology and reproduction</dt><dd>Reproduce locally with the listed individual eval commands. Fidelity reads latest chain state using eth_call and eth_estimateGas but changes no chain state and uses no signing keys. A report is evidence of the pinned commit only.<code class="reproduce">npx @oracle-agent/oracle eval guards --json &amp;&amp; npx @oracle-agent/oracle eval adversarial --json &amp;&amp; npx @oracle-agent/oracle eval fidelity --json</code></dd></div>
92
+ </dl></div></section>
93
+ </main>
94
+ <div class="wrap"><footer><span>Oracle evaluation evidence</span><span>Static artifact · no live claims</span></footer></div>
95
+ </body>
96
+ </html>
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>ORACLE | The control plane between AI and on-chain action</title>
7
- <link rel="icon" href="/favicon.svg" type="image/svg+xml">
8
- <link rel="shortcut icon" href="/favicon.ico">
7
+ <link rel="icon" href="favicon.svg" type="image/svg+xml">
8
+ <link rel="shortcut icon" href="favicon.ico">
9
9
  <meta name="description" content="Oracle reads chain state, prices routes, and prepares unsigned transactions across 15+ chains. Your wallet signs.">
10
10
  <meta name="theme-color" content="#0B1018" />
11
11
  <meta name="robots" content="index,follow" />
@@ -20,9 +20,7 @@
20
20
  <meta name="twitter:title" content="ORACLE | The all-in-one multichain agent">
21
21
  <meta name="twitter:description" content="Trade, research, and build across Oracle's working chain surfaces, with extensible EVM support and self-custodial signing.">
22
22
  <meta name="twitter:image" content="https://oracle.demi.la/assets/hero/orb-poster.jpg">
23
- <link rel="preconnect" href="https://fonts.googleapis.com" />
24
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
25
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700&family=UnifrakturCook:wght@700&display=swap" rel="stylesheet" />
23
+ <link href="assets/fonts/oracle-fonts.css" rel="stylesheet" />
26
24
  <style>
27
25
  :root{
28
26
  --bg:#0B1018;
@@ -1609,7 +1607,7 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1609
1607
  <div class="hero-lede">
1610
1608
  <p class="home-kicker rv">control plane between AI and on-chain action</p>
1611
1609
  <h1 class="home-title rv" data-split>Trade, build, mint, scan across <em>15+</em> chains</h1>
1612
- <p class="hero-sub rv">AI agents execute. You sign. Oracle is the control plane between AI and on-chain action across 15+ chains, inside any MCP client. Public routing stays unsigned. Self-hosted execution stays local, owner-gated, bounded, and receipt-verified.</p>
1610
+ <p class="hero-sub rv">Agents prepare. You authorize and sign. Oracle is the control plane between AI and on-chain action across 15+ chains, inside any MCP client. Public routing stays unsigned. Self-hosted execution stays local, owner-gated, bounded, and receipt-verified.</p>
1613
1611
  <div class="home-actions">
1614
1612
  <a class="enter-cta primary" href="/download/">Download desktop</a>
1615
1613
  <a class="enter-cta ghost" href="/what-it-does/">How Oracle works</a>
@@ -1632,9 +1630,9 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1632
1630
  poster="assets/hero/orb-poster.jpg?v=2026080623"
1633
1631
  muted loop playsinline autoplay preload="metadata"
1634
1632
  aria-label="Oracle mark">
1635
- <source src="/assets/hero/orb.webm?v=2026080623" type="video/webm">
1633
+ <source src="assets/hero/orb.webm?v=2026080623" type="video/webm">
1636
1634
  </video>
1637
- <img id="orb-still" src="/assets/hero/orb-poster.jpg?v=2026080623" alt="Oracle mark" width="900" height="900" loading="eager" fetchpriority="high" decoding="async">
1635
+ <img id="orb-still" src="assets/hero/orb-poster.jpg?v=2026080623" alt="Oracle mark" width="900" height="900" loading="eager" fetchpriority="high" decoding="async">
1638
1636
  </div>
1639
1637
  <figcaption>the future is agentic</figcaption>
1640
1638
  </figure>
@@ -1658,9 +1656,9 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1658
1656
  <div class="hero-install-meta"><span>Windows · CLI</span></div>
1659
1657
  </div>
1660
1658
  <div class="os-dl">
1661
- <a class="os-link" href="/downloads/artifacts/Oracle-0.4.16.AppImage">Linux AppImage</a>
1662
- <a class="os-link" href="/downloads/artifacts/Oracle-0.4.16-arm64.dmg">macOS DMG</a>
1663
- <a class="os-link" href="/downloads/artifacts/Oracle-Setup-0.4.16.exe">Windows Setup</a>
1659
+ <a class="os-link" href="/downloads/artifacts/Oracle-0.4.19.AppImage">Linux AppImage</a>
1660
+ <a class="os-link" href="/downloads/artifacts/Oracle-0.4.19-arm64.dmg">macOS DMG</a>
1661
+ <a class="os-link" href="/downloads/artifacts/Oracle-Setup-0.4.19.exe">Windows Setup</a>
1664
1662
  </div>
1665
1663
  </div>
1666
1664
 
@@ -1763,7 +1761,7 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1763
1761
  <div class="convert-grid rv">
1764
1762
  <div>
1765
1763
  <figure class="cli-frame cli-proof">
1766
- <img id="cli-still" src="/assets/oracle-cli-v035-poster.jpg?v=20260830b" alt="Oracle CLI boot: globe wordmark, THE FUTURE IS AGENTIC, local signer ready, gpt-5.6-sol, Hyperliquid, ←/→ sessions" width="1600" height="815" loading="eager" fetchpriority="high" />
1764
+ <img id="cli-still" src="assets/oracle-cli-v035-poster.jpg?v=20260830b" alt="Oracle CLI boot: globe wordmark, THE FUTURE IS AGENTIC, local signer ready, gpt-5.6-sol, Hyperliquid, ←/→ sessions" width="1600" height="815" loading="eager" fetchpriority="high" />
1767
1765
  </figure>
1768
1766
  <p class="cli-cap">what you see when you type oracle</p>
1769
1767
  </div>
@@ -1781,13 +1779,13 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1781
1779
  </div>
1782
1780
  <h2 class="section-title app-shot-title">Oracle Desktop App <sup style="font-size:14px;color:var(--blue);font-weight:400">beta</sup></h2>
1783
1781
  <figure class="app-shot">
1784
- <img src="/assets/desktop-app.jpg?v=20260830" width="1280" height="860" loading="lazy" decoding="async" alt="Oracle desktop 0.4.16 setup: connect Claude, Codex or Grok, local llama.cpp or Ollama, then pick model and chain.">
1782
+ <img src="assets/desktop-app.jpg?v=20260830" width="1280" height="860" loading="lazy" decoding="async" alt="Oracle desktop 0.4.19 setup: connect Claude, Codex or Grok, local llama.cpp or Ollama, then pick model and chain.">
1785
1783
  <figcaption>Native desktop. Connect a provider, then chat.</figcaption>
1786
1784
  </figure>
1787
1785
  <div class="os-dl">
1788
- <a class="os-link" href="/downloads/artifacts/Oracle-0.4.16.AppImage">Linux AppImage</a>
1789
- <a class="os-link" href="/downloads/artifacts/Oracle-0.4.16-arm64.dmg">macOS DMG</a>
1790
- <a class="os-link" href="/downloads/artifacts/Oracle-Setup-0.4.16.exe">Windows Setup</a>
1786
+ <a class="os-link" href="/downloads/artifacts/Oracle-0.4.19.AppImage">Linux AppImage</a>
1787
+ <a class="os-link" href="/downloads/artifacts/Oracle-0.4.19-arm64.dmg">macOS DMG</a>
1788
+ <a class="os-link" href="/downloads/artifacts/Oracle-Setup-0.4.19.exe">Windows Setup</a>
1791
1789
  </div>
1792
1790
  </section>
1793
1791
  </main>
@@ -1927,8 +1925,8 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1927
1925
  ' <img src="' + ICON + c.logo + '?w=36&h=36" alt="' + c.name + ' logo" loading="lazy"></div></div><div class="meta"><span>' + c.note + '</span><span class="' + cls + '">' + label + '</span></div></article>';
1928
1926
  }).join("");
1929
1927
 
1930
- var WM = "/assets/wordmarks/";
1931
- var BRAND = "/brand/";
1928
+ var WM = "./assets/wordmarks/";
1929
+ var BRAND = "./brand/";
1932
1930
  var PROTOS_A = [
1933
1931
  { n: "Uniswap V3", wm: "uniswap.svg", cap: "read + quote + prepare + policy", u: "https://app.uniswap.org/" },
1934
1932
  { n: "Aerodrome Slipstream", wm: "aerodrome.svg", cap: "read + quote + prepare", u: "https://aerodrome.finance/" },
@@ -1,7 +1,7 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1400 900" width="1400" height="900">
2
2
  <defs>
3
3
  <style>
4
- @import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&amp;family=Outfit:wght@300;400;500&amp;family=IBM+Plex+Mono:wght@400;500&amp;display=swap');
4
+ @import url('/assets/fonts/oracle-fonts.css');
5
5
  </style>
6
6
  <radialGradient id="bg" cx="50%" cy="35%" r="70%">
7
7
  <stop offset="0%" stop-color="#111925"/>
@@ -4,9 +4,9 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>Pricing | ORACLE</title>
7
- <link rel="icon" href="/favicon.svg" type="image/svg+xml">
8
- <link rel="shortcut icon" href="/favicon.ico">
9
- <meta name="description" content="5 basis points on routed swaps. Zero for Locals Only NFT holders. Free to install and run.">
7
+ <link rel="icon" href="../favicon.svg" type="image/svg+xml">
8
+ <link rel="shortcut icon" href="../favicon.ico">
9
+ <meta name="description" content="5 basis points on fee-bearing routed swaps. Zero Oracle routing fee for Locals Only NFT holders. No seat or subscription fee.">
10
10
  <meta name="theme-color" content="#0B1018" />
11
11
  <meta name="robots" content="index,follow" />
12
12
  <meta property="og:title" content="ORACLE | The all-in-one multichain agent">
@@ -20,9 +20,7 @@
20
20
  <meta name="twitter:title" content="ORACLE | The all-in-one multichain agent">
21
21
  <meta name="twitter:description" content="Trade, research, and build across Oracle's working chain surfaces, with extensible EVM support and self-custodial signing.">
22
22
  <meta name="twitter:image" content="https://oracle.demi.la/assets/hero/orb-poster.jpg">
23
- <link rel="preconnect" href="https://fonts.googleapis.com" />
24
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
25
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700&family=UnifrakturCook:wght@700&display=swap" rel="stylesheet" />
23
+ <link href="../assets/fonts/oracle-fonts.css" rel="stylesheet" />
26
24
  <style>
27
25
  :root{
28
26
  --bg:#0B1018;
@@ -1597,7 +1595,7 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1597
1595
  <section class="section" id="fees">
1598
1596
  <p class="section-label rv">Pricing</p>
1599
1597
  <h2 class="section-title rv" data-split>5 bps. <em>Holders zero.</em></h2>
1600
- <p class="section-lede rv">5 basis points (0.05%) on swaps Oracle routes. Zero if you hold a <a href="https://opensea.io/collection/locals-only-hyperevm" target="_blank" rel="noopener noreferrer">Locals Only NFT</a>. Everything else is free.</p>
1598
+ <p class="section-lede rv">5 basis points (0.05%) on swaps Oracle routes. Zero if you hold a <a href="https://opensea.io/collection/locals-only-hyperevm" target="_blank" rel="noopener noreferrer">Locals Only NFT</a>. No other Oracle fee; network, gas, venue, and provider costs may still apply.</p>
1601
1599
  <div class="moat-grid rv">
1602
1600
  <article class="moat-card">
1603
1601
  <div class="n">swap fee</div>
@@ -1610,7 +1608,7 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1610
1608
  <p>Hold a <a href="https://opensea.io/collection/locals-only-hyperevm" target="_blank" rel="noopener noreferrer">Locals Only NFT</a> in the wallet Oracle reads and eligible swaps carry zero Oracle fees. No claim, no dashboard, no toggle.</p>
1611
1609
  </article>
1612
1610
  <article class="moat-card">
1613
- <div class="n">operator seat</div>
1611
+ <div class="n">agent seat</div>
1614
1612
  <h3>Run your own instance</h3>
1615
1613
  <p>The public package is free to install. In a self-hosted setup, Oracle orchestration runs on your machine while providers and chains remain external services. The routed fee applies only when your agent uses an Oracle fee-bearing route.</p>
1616
1614
  </article>
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>Security and custody | ORACLE</title>
7
- <link rel="icon" href="/favicon.svg" type="image/svg+xml">
8
- <link rel="shortcut icon" href="/favicon.ico">
7
+ <link rel="icon" href="../favicon.svg" type="image/svg+xml">
8
+ <link rel="shortcut icon" href="../favicon.ico">
9
9
  <meta name="description" content="Public routing stays unsigned. Self-hosted keys stay local behind bound grants, evidence, and fail-closed policy.">
10
10
  <meta name="theme-color" content="#0B1018" />
11
11
  <meta name="robots" content="index,follow" />
@@ -20,9 +20,7 @@
20
20
  <meta name="twitter:title" content="ORACLE | The all-in-one multichain agent">
21
21
  <meta name="twitter:description" content="Trade, research, and build across Oracle's working chain surfaces, with extensible EVM support and self-custodial signing.">
22
22
  <meta name="twitter:image" content="https://oracle.demi.la/assets/hero/orb-poster.jpg">
23
- <link rel="preconnect" href="https://fonts.googleapis.com" />
24
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
25
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700&family=UnifrakturCook:wght@700&display=swap" rel="stylesheet" />
23
+ <link href="../assets/fonts/oracle-fonts.css" rel="stylesheet" />
26
24
  <style>
27
25
  :root{
28
26
  --bg:#0B1018;
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>What Oracle does | ORACLE</title>
7
- <link rel="icon" href="/favicon.svg" type="image/svg+xml">
8
- <link rel="shortcut icon" href="/favicon.ico">
7
+ <link rel="icon" href="../favicon.svg" type="image/svg+xml">
8
+ <link rel="shortcut icon" href="../favicon.ico">
9
9
  <meta name="description" content="Read, route, bound, prepare, sign. The five steps between your instruction and a signed transaction.">
10
10
  <meta name="theme-color" content="#0B1018" />
11
11
  <meta name="robots" content="index,follow" />
@@ -20,9 +20,7 @@
20
20
  <meta name="twitter:title" content="ORACLE | The all-in-one multichain agent">
21
21
  <meta name="twitter:description" content="Trade, research, and build across Oracle's working chain surfaces, with extensible EVM support and self-custodial signing.">
22
22
  <meta name="twitter:image" content="https://oracle.demi.la/assets/hero/orb-poster.jpg">
23
- <link rel="preconnect" href="https://fonts.googleapis.com" />
24
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
25
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700&family=UnifrakturCook:wght@700&display=swap" rel="stylesheet" />
23
+ <link href="../assets/fonts/oracle-fonts.css" rel="stylesheet" />
26
24
  <style>
27
25
  :root{
28
26
  --bg:#0B1018;
@@ -1646,7 +1644,7 @@ footer{margin-top:clamp(64px,10vh,100px);border-top:1px solid var(--line);paddin
1646
1644
 
1647
1645
  <div class="stack-body">
1648
1646
  <h3>Sign</h3>
1649
- <p>Your wallet closes the loop. Prepare is not sign, sign is not broadcast, and broadcast needs explicit arming and local signer approval.</p>
1647
+ <p>Oracle prepares. Your wallet signs by default. Broadcast requires explicit user or grant authority; an optional local signer is a separate, explicitly initialized path.</p>
1650
1648
  </div>
1651
1649
  <div class="stack-sig">you sign</div>
1652
1650
  </li>
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>Where Oracle works | ORACLE</title>
7
- <link rel="icon" href="/favicon.svg" type="image/svg+xml">
8
- <link rel="shortcut icon" href="/favicon.ico">
7
+ <link rel="icon" href="../favicon.svg" type="image/svg+xml">
8
+ <link rel="shortcut icon" href="../favicon.ico">
9
9
  <meta name="description" content="Oracle runs in any MCP client and operates across 15+ chains and venues.">
10
10
  <meta name="theme-color" content="#0B1018" />
11
11
  <meta name="robots" content="index,follow" />
@@ -20,9 +20,7 @@
20
20
  <meta name="twitter:title" content="ORACLE | The all-in-one multichain agent">
21
21
  <meta name="twitter:description" content="Trade, research, and build across Oracle's working chain surfaces, with extensible EVM support and self-custodial signing.">
22
22
  <meta name="twitter:image" content="https://oracle.demi.la/assets/hero/orb-poster.jpg">
23
- <link rel="preconnect" href="https://fonts.googleapis.com" />
24
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
25
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@300;400;500;600;700&family=UnifrakturCook:wght@700&display=swap" rel="stylesheet" />
23
+ <link href="../assets/fonts/oracle-fonts.css" rel="stylesheet" />
26
24
  <style>
27
25
  :root{
28
26
  --bg:#0B1018;
package/server.json CHANGED
@@ -3,12 +3,12 @@
3
3
  "name": "io.github.demi-hl/oracle",
4
4
  "description": "Keyless multichain crypto desk: chain reads + prepare-only unsigned txs. Your wallet signs.",
5
5
  "websiteUrl": "https://oracle.demi.la",
6
- "version": "0.35.40",
6
+ "version": "0.35.41",
7
7
  "packages": [
8
8
  {
9
9
  "registryType": "npm",
10
10
  "identifier": "@oracle-agent/oracle",
11
- "version": "0.35.40",
11
+ "version": "0.35.41",
12
12
  "transport": {
13
13
  "type": "stdio"
14
14
  },