@oracle-agent/oracle 0.35.20 → 0.35.21
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.
- package/dist/assets/skills/oracle-desk-product/SKILL.md +23 -17
- package/dist/assets/skills/oracle-mcp-install/SKILL.md +17 -22
- package/dist/assets/skills/protocol-api-key-integration/SKILL.md +14 -11
- package/dist/assets/skills/self-custodial-onchain-execution/SKILL.md +14 -13
- package/dist/assets/skills/trade-loop-circuit-breaker/SKILL.md +1 -1
- package/dist/bin/desk-server.mjs +30 -30
- package/dist/bin/oracle-data-mcp.mjs +17 -17
- package/dist/bin/oracle-public-server.mjs +5 -5
- package/dist/cli/commands/chat.mjs +200 -200
- package/dist/cli/commands/doctor.mjs +7 -7
- package/dist/cli/commands/eval.mjs +113 -113
- package/dist/cli/commands/extension-policy.mjs +1 -1
- package/dist/cli/commands/governance-prepare.mjs +5 -0
- package/dist/cli/commands/model.mjs +204 -204
- package/dist/cli/commands/portfolio-risk.mjs +4 -0
- package/dist/cli/commands/position-health.mjs +4 -0
- package/dist/cli/commands/safety-intelligence.mjs +4 -0
- package/dist/cli/commands/swap.mjs +13 -13
- package/dist/cli/commands/tax-lots.mjs +4 -0
- package/dist/data/desk-data.mjs +26 -26
- package/dist/index.mjs +40 -40
- package/package.json +1 -1
- package/public/eval-report.json +2 -2
- package/public/oracle-splash/index.html +1 -1
- package/server.json +2 -2
- package/dist/assets/skills/oracle-best-execution.md +0 -27
- package/dist/assets/skills/oracle-desk.md +0 -27
- package/dist/assets/skills/oracle-receipts.md +0 -29
package/package.json
CHANGED
package/public/eval-report.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"node": "v26.7.0"
|
|
9
9
|
},
|
|
10
10
|
"package": "@oracle-agent/oracle",
|
|
11
|
-
"packageVersion": "0.35.
|
|
11
|
+
"packageVersion": "0.35.21",
|
|
12
12
|
"methodology": "Reproduce locally: npx @oracle-agent/oracle eval guards|adversarial|fidelity --json. Dated, commit-stamped output; no chain state or live keys involved. A report is evidence of the pinned commit only.",
|
|
13
13
|
"suites": {
|
|
14
14
|
"guards": {
|
|
@@ -98,4 +98,4 @@
|
|
|
98
98
|
"exact-confirm",
|
|
99
99
|
"receipt"
|
|
100
100
|
]
|
|
101
|
-
}
|
|
101
|
+
}
|
|
@@ -1326,7 +1326,7 @@ footer{margin-top:clamp(72px,12vh,120px);border-top:1px solid var(--line);paddin
|
|
|
1326
1326
|
<div class="home-stats rv" aria-label="Oracle surface metrics">
|
|
1327
1327
|
<div class="home-stat"><b id="hero-protocol-count" data-count="220">220</b><span>protocols / venues wired</span></div>
|
|
1328
1328
|
<div class="home-stat"><b id="hero-provider-count" data-count="122">122</b><span>data providers</span></div>
|
|
1329
|
-
<div class="home-stat"><b id="hero-op-count" data-count="
|
|
1329
|
+
<div class="home-stat"><b id="hero-op-count" data-count="527">527</b><span>data operations</span></div>
|
|
1330
1330
|
<div class="home-stat"><b id="hero-chain-count">14 + EVM</b><span>chains wired</span></div>
|
|
1331
1331
|
</div>
|
|
1332
1332
|
</div>
|
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.
|
|
6
|
+
"version": "0.35.21",
|
|
7
7
|
"packages": [
|
|
8
8
|
{
|
|
9
9
|
"registryType": "npm",
|
|
10
10
|
"identifier": "@oracle-agent/oracle",
|
|
11
|
-
"version": "0.35.
|
|
11
|
+
"version": "0.35.21",
|
|
12
12
|
"transport": {
|
|
13
13
|
"type": "stdio"
|
|
14
14
|
},
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: oracle-best-execution
|
|
3
|
-
description: Use whenever swapping or bridging. The rule that the highest-output route wins.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Best execution
|
|
7
|
-
|
|
8
|
-
## One rule
|
|
9
|
-
The highest **net output** (after gas + bridge + impact) wins. Not the best quote, not the shortest route, not the prettiest UI.
|
|
10
|
-
|
|
11
|
-
## Swap flow
|
|
12
|
-
1. `data dex_search` → resolve token to chain + address
|
|
13
|
-
2. `data dex_token` → get live pairs, liquidity, price
|
|
14
|
-
3. `exec evm_quote` → exact-input quote from Uniswap V3
|
|
15
|
-
4. `data best_swap_route` → compare across aggregators (Li.Fi, Paraswap, 0x, CoW)
|
|
16
|
-
5. `data best_bridge_route` → if cross-chain, rank by net output
|
|
17
|
-
6. `exec evm_prepare` → build unsigned tx
|
|
18
|
-
7. Report: best route, net output, slippage, gas estimate
|
|
19
|
-
|
|
20
|
-
## Comparison always in USD
|
|
21
|
-
Convert gas + bridge fees to USD. 0.001 ETH ≠ 0.001 ETH across chains.
|
|
22
|
-
|
|
23
|
-
## Slippage
|
|
24
|
-
- Stable pools: 0.1% default
|
|
25
|
-
- Volatile pools: 0.5% default
|
|
26
|
-
- Memecoins: 1-3% or auto-detect from depth
|
|
27
|
-
- Block >1% slippage without explicit user approval
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: oracle-desk
|
|
3
|
-
description: Use when routing a crypto request to the right lane or comparing options across chains.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Oracle desk routing
|
|
7
|
-
|
|
8
|
-
1. **Which chain?** Resolve via DexScreener or user input. Never guess.
|
|
9
|
-
2. **Which lane?** Use public data and prepare providers for the resolved chain. Return unsigned transactions or typed-data intents for connected-wallet approval.
|
|
10
|
-
3. **Multi-chain?** Quote each option, synthesize. Same notional, include gas in USD, include bridge cost.
|
|
11
|
-
4. **Ambiguous?** Ask.
|
|
12
|
-
|
|
13
|
-
## Comparison rules
|
|
14
|
-
- Same notional on each chain
|
|
15
|
-
- Gas in USD (not native units)
|
|
16
|
-
- Include bridge cost + time if cross-chain
|
|
17
|
-
- Include price impact at request size
|
|
18
|
-
- Note liquidity depth — cheapest at $100 may not be cheapest at $50k
|
|
19
|
-
|
|
20
|
-
## Capability tiers
|
|
21
|
-
- `read-only` — data only
|
|
22
|
-
- `quote-only` — can price a route
|
|
23
|
-
- `prepare` — returns unsigned tx
|
|
24
|
-
- `intent` — typed-data order to sign
|
|
25
|
-
|
|
26
|
-
## Confidence
|
|
27
|
-
State explicitly: high / moderate / low / unknown. Never invent chain facts.
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: oracle-receipts
|
|
3
|
-
description: Use whenever reporting the outcome of any on-chain action (swap, bridge, mint, send, list, accept-offer).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Receipt format
|
|
7
|
-
|
|
8
|
-
## Required fields
|
|
9
|
-
- tx hash (full, with chain explorer link)
|
|
10
|
-
- chain + chainId
|
|
11
|
-
- action (swap/bridge/mint/send/list/accept-offer)
|
|
12
|
-
- from → to (addresses)
|
|
13
|
-
- amount in → amount out (with token symbols)
|
|
14
|
-
- gas used + gas cost in USD
|
|
15
|
-
- status: confirmed / pending / failed
|
|
16
|
-
|
|
17
|
-
## Explorer links
|
|
18
|
-
- Ethereum: https://etherscan.io/tx/{hash}
|
|
19
|
-
- Base: https://basescan.org/tx/{hash}
|
|
20
|
-
- Arbitrum: https://arbiscan.io/tx/{hash}
|
|
21
|
-
- Optimism: https://optimistic.etherscan.io/tx/{hash}
|
|
22
|
-
- Polygon: https://polygonscan.com/tx/{hash}
|
|
23
|
-
- BSC: https://bscscan.com/tx/{hash}
|
|
24
|
-
- HyperEVM: https://www.hyperscan.com/tx/{hash}
|
|
25
|
-
|
|
26
|
-
## Never claim
|
|
27
|
-
- "submitted" = confirmed. Only tx receipt with status=1 is confirmed.
|
|
28
|
-
- A prepare is not a fill. Report prepare as "prepared, unsigned."
|
|
29
|
-
- A sign is not a send. Report sign as "signed, not broadcast."
|