@oracle-agent/oracle 0.35.42 → 0.35.43
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/agent-sessions.mjs +25 -24
- package/dist/assets/skills/oracle-desk-product/SKILL.md +1 -1
- package/dist/bin/desk-server.mjs +27 -27
- package/dist/bin/oracle-data-mcp.mjs +18 -18
- package/dist/bin/oracle-gateway.mjs +44 -44
- package/dist/bin/oracle-launch-radar-shadow.mjs +6 -6
- package/dist/bin/oracle-public-server.mjs +5 -5
- package/dist/bin/oracle-route.mjs +16 -16
- package/dist/bin/oracle.mjs +12 -12
- package/dist/cli/commands/agent-session.mjs +27 -26
- package/dist/cli/commands/chat.mjs +245 -224
- package/dist/cli/commands/eval.mjs +181 -161
- package/dist/cli/commands/mint.mjs +11 -11
- package/dist/cli/commands/model.mjs +249 -228
- package/dist/cli/commands/sign.mjs +14 -14
- package/dist/cli/commands/signer.mjs +22 -22
- package/dist/cli/commands/swap.mjs +13 -13
- package/dist/cli/commands/venues.mjs +2 -2
- package/dist/data/desk-data.mjs +25 -25
- package/dist/index.mjs +46 -46
- package/dist/launch-radar/index.mjs +5 -5
- package/dist/local-signer/anvil-attestation-worker.mjs +1 -1
- package/dist/local-signer/index.mjs +3 -3
- package/dist/local-signer/runtime.mjs +19 -19
- package/dist/router/prepare-route.mjs +3 -3
- package/dist/task.mjs +2 -2
- package/dist/teams/index.mjs +6 -6
- package/dist/tui/standalone-client.mjs +115 -95
- package/package.json +1 -1
- package/public/oracle-splash/docs/browser-and-web/index.html +2 -2
- package/public/oracle-splash/docs/connectors/index.html +2 -2
- package/public/oracle-splash/docs/getting-started/index.html +2 -2
- package/public/oracle-splash/docs/index.html +3 -3
- package/public/oracle-splash/docs/reference/index.html +2 -2
- package/public/oracle-splash/docs/security/index.html +2 -2
- package/public/oracle-splash/docs/using-oracle/index.html +2 -2
- package/public/oracle-splash/eval/benchmarks/evm-escrow-20260827.json +170 -0
- package/public/oracle-splash/eval/eval-story.css +722 -0
- package/public/oracle-splash/eval/eval-story.js +198 -0
- package/public/oracle-splash/eval/index.html +49 -11
- package/public/oracle-splash/eval/live-eval.js +546 -0
- package/server.json +2 -2
package/dist/bin/oracle.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{realpathSync as N}from"node:fs";import{fileURLToPath as
|
|
2
|
+
import{realpathSync as N}from"node:fs";import{fileURLToPath as de}from"node:url";import m from"node:fs";import h from"node:path";import{pathToFileURL as T}from"node:url";import d from"node:fs";import F from"node:os";import c from"node:path";import{fileURLToPath as q}from"node:url";var B=c.dirname(q(import.meta.url)),l=c.resolve(B,"../..");function u(){return process.env.ORACLE_FAKE_HOME||F.homedir()}function w(){return process.env.ORACLE_PUBLIC_DESKTOP==="1"}function f(){return w()?process.env.ORACLE_CONFIG_DIR||c.join(u(),".config","oracle"):c.join(u(),".config","oracle")}function K(){return c.join(f(),"exec.env")}function C(){return c.join(f(),"desk.json")}function v(){return c.join(f(),"env")}function p({force:e=!1}={}){if(p._done&&!e)return p._result||null;p._done=!0;let o={},n=(t,r)=>{if(r==null)return;let s=String(r).trim();s&&(process.env[t]!=null&&String(process.env[t]).trim()!==""||(process.env[t]=s,o[t]=s))};try{let t=v();if(d.existsSync(t))for(let r of d.readFileSync(t,"utf8").split(/\r?\n/)){let s=r.match(/^\s*([A-Z0-9_]+)\s*=\s*(.*?)\s*$/);if(!s||s[2].startsWith("#"))continue;let i=s[2];(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))&&(i=i.slice(1,-1)),n(s[1],i)}}catch{}try{let t=C();if(d.existsSync(t)){let r=JSON.parse(d.readFileSync(t,"utf8"));r&&typeof r=="object"&&(n("ORACLE_DESK_URL",r.deskUrl||r.dataUrl||r.url),n("ORACLE_DATA_URL",r.dataUrl||r.deskUrl||r.url),n("ORACLE_API_URL",r.apiUrl||r.dataUrl||r.deskUrl),n("ORACLE_PUBLIC_URL",r.publicUrl||r.deskUrl||r.dataUrl),n("ORACLE_EXEC_URL",r.execUrl),n("MAD_DESK_URL",r.deskUrl||r.dataUrl))}}catch{}let a=process.env.ORACLE_DESK_URL||process.env.ORACLE_DATA_URL||"";return a&&(n("ORACLE_DESK_URL",a),n("ORACLE_DATA_URL",a),n("ORACLE_API_URL",a),n("ORACLE_PUBLIC_URL",a),n("MAD_DESK_URL",a)),p._result=Object.keys(o).length?o:null,p._result}try{p()}catch{}function G(){return process.env.HERMES_HOME?c.resolve(process.env.HERMES_HOME):c.join(u(),".hermes")}function V(){return c.join(u(),".claude.json")}function W(e=process.cwd()){return c.join(e,".mcp.json")}function J(){return process.platform==="darwin"?c.join(u(),"Library","Application Support","Claude","claude_desktop_config.json"):c.join(u(),".config","Claude","claude_desktop_config.json")}function Y(){return c.join(u(),".codex","config.toml")}function O(){return c.join(f(),"connectors")}function z(){return c.join(O(),"chatgpt-openapi.json")}function X(){return c.join(f(),"active-chain.json")}function y(e){let o=[c.join(l,"bin",e),c.join(l,"dist","bin",e),c.join(l,"..","bin",e)];return o.find(n=>d.existsSync(n))||o[0]}function Z(e){return d.mkdirSync(e,{recursive:!0}),e}var S={homeDir:u,isPublicDesktop:w,oracleConfigDir:f,oracleExecEnvPath:K,oracleDeskJsonPath:C,oracleEnvFilePath:v,loadDeskRouting:p,hermesRoot:G,activeChainPath:X,claudeCodeUserConfigPath:V,claudeCodeProjectMcpPath:W,claudeDesktopConfigPath:J,codexConfigPath:Y,chatgptConnectorDir:O,chatgptOpenApiPath:z,packageBin:y,ensureDir:Z,PACKAGE_ROOT:l};import{execFile as Q}from"node:child_process";import{existsSync as Re,mkdirSync as we,readFileSync as ee,realpathSync as Ce,writeFileSync as ve}from"node:fs";import L from"node:path";import{promisify as re}from"node:util";var Le=re(Q);var ke=1440*60*1e3;function k(e,o){let n=r=>String(r).replace(/^v/,"").split("-")[0].split(".").map(s=>Number.parseInt(s,10)||0),a=n(e),t=n(o);for(let r=0;r<Math.max(a.length,t.length);r+=1){let s=a[r]??0,i=t[r]??0;if(s>i)return 1;if(s<i)return-1}return 0}function te(e){let o=e?.stateDir||L.join(process.env.HOME||".",".oracle");return L.join(o,"update-check.json")}function b(e){try{return JSON.parse(ee(te(e),"utf8"))}catch{return null}}var oe="\u25C7 ORACLE // self-custody multichain agent control plane",ne=`START
|
|
3
3
|
oracle open the native Oracle chat (TTY)
|
|
4
4
|
oracle chat open chat explicitly
|
|
5
5
|
oracle setup connect a model and optional messaging
|
|
@@ -63,16 +63,16 @@ BOUNDARY
|
|
|
63
63
|
MEV observe is read-only. Flash-loan execute needs ORACLE_MEV_EXECUTE_ENABLED=1
|
|
64
64
|
and literal --execute. There is no autonomous MEV loop.
|
|
65
65
|
Use oracle <command> --help for command details.
|
|
66
|
-
`;function
|
|
67
|
-
Update available: ${e} \u2192 ${
|
|
68
|
-
`}function
|
|
66
|
+
`;function U(){try{return JSON.parse(m.readFileSync(h.join(l,"package.json"),"utf8")).version||"0.0.0"}catch{return"0.0.0"}}function H(){let e=h.join(l,"src","cli","commands");return m.existsSync(e)?e:h.join(l,"dist","cli","commands")}var P=Object.freeze({clients:"harness"});function I(){let e=H();return m.existsSync(e)?new Map(m.readdirSync(e).filter(o=>o.endsWith(".mjs")).map(o=>[o.replace(/\.mjs$/,""),h.join(e,o)])):new Map}function se(){return[...new Set([...I().keys(),...Object.keys(P)])].sort()}async function g(e){let o=P[e]||e,n=I().get(o);if(!n)return null;try{let t=(await import(T(n).href)).default;if(!t||typeof t!="object"||typeof t.run!="function")return null;let r=t.name||o,s={...t,name:r,__file:n};return e!==o?{...s,name:e,aliasFor:r}:s}catch(a){return process.env.ORACLE_CLI_DEBUG&&console.error(`oracle: failed loading command ${o}: ${a.message}`),null}}async function E(){let e=H(),o=new Map;if(!m.existsSync(e))return o;let n=m.readdirSync(e).filter(a=>a.endsWith(".mjs")).sort();for(let a of n){let t=h.join(e,a);try{let s=(await import(T(t).href+`?t=${Date.now()}`)).default;if(!s||typeof s!="object"||typeof s.run!="function")continue;let i=s.name||a.replace(/\.mjs$/,""),x={...s,name:i,__file:t};o.set(i,x);for(let R of Array.isArray(s.aliases)?s.aliases:[])o.set(R,{...x,name:R,aliasFor:i})}catch(r){process.env.ORACLE_CLI_DEBUG&&console.error(`oracle: failed loading command ${a}: ${r.message}`)}}return o}function ae(e,o=b()){return!o?.latest||!e||k(o.latest,e)<=0?"":`
|
|
67
|
+
Update available: ${e} \u2192 ${o.latest}. Run 'oracle update'.
|
|
68
|
+
`}function _(e,o){let n=[];n.push(`${oe} (v${e})`),n.push(""),n.push(ne.trimEnd());let a=[];for(let t of o.values()){if(["help","version"].includes(t.name))continue;!new Set(["init","doctor","chat","model","auth","chain","setup","data","data-mcp","scan","route","prepare","swap","farm","airdrop","follow","equities","strategy","shadow","mint","mev","snipe","public","mcp","plugins","harness","clients","upgrade","bootstrap","eval","fees","sign","signer","project","context","lifecycle","x402"]).has(t.name)&&t.summary&&a.push(` oracle ${t.name.padEnd(20)} ${t.summary}`)}return a.length&&(n.push(""),n.push("ADDITIONAL"),n.push(...a)),n.join(`
|
|
69
69
|
`)+`
|
|
70
|
-
`+ae(e)}function
|
|
70
|
+
`+ae(e)}function j(e,o){let n=o?[...o.keys()].sort():se(),a=n.length?n.join(", "):"(none loaded yet)";return`oracle: unknown command '${e}'. Known: ${a}
|
|
71
71
|
Try: oracle --help
|
|
72
|
-
`}function
|
|
73
|
-
`),
|
|
74
|
-
`),0):(process.stderr.write(
|
|
75
|
-
`),
|
|
76
|
-
`),0;try{let
|
|
77
|
-
`),1}}return process.stderr.write(
|
|
78
|
-
`),0}function
|
|
72
|
+
`}function A(e){return{argv:e,root:l,bin:y,paths:S}}async function $(e=[]){let o=U();if(e.includes("--version")||e.includes("-V"))return D();if(e[0]==="--help"||e[0]==="-h"){let r=await E();return process.stdout.write(_(o,r)),0}if(e.length===0){if(ce(e)){let s=await g("chat");if(s)return s.run(A([]))}let r=await E();return process.stdout.write(_(o,r)),0}if(ie(e[0])){let r=await g("chat");if(r)return r.run(A(e))}let n=e[0],a=e.slice(1);if(n==="version")return D();if(n==="help"){if(a[0]){let s=await g(a[0]);return s?(process.stdout.write((s.usage||`oracle ${s.name}`)+`
|
|
73
|
+
`),s.summary&&process.stdout.write(s.summary+`
|
|
74
|
+
`),0):(process.stderr.write(j(a[0])),1)}let r=await E();return process.stdout.write(_(o,r)),0}let t=await g(n);if(t){if(a[0]==="--help"||a[0]==="-h")return process.stdout.write((t.usage||`oracle ${t.name}`)+`
|
|
75
|
+
`),t.summary&&process.stdout.write(t.summary+`
|
|
76
|
+
`),0;try{let r=await t.run(A(a));return typeof r=="number"?r:0}catch(r){return process.stderr.write(`oracle ${n}: ${r?.message||r}
|
|
77
|
+
`),1}}return process.stderr.write(j(n)),1}async function D(){let e=U();return process.stdout.write(`oracle ${e}
|
|
78
|
+
`),0}function ce(e=[],o={stdin:process.stdin,stdout:process.stdout}){return e.length!==0?!1:process.env.ORACLE_FORCE_CHAT==="1"?!0:o.stdin?.isTTY===!0&&o.stdout?.isTTY===!0}function ie(e){return["-m","--model","--provider","-q","--query","-Q","--quiet","-c","--continue","-r","--resume","-s","--skills","-t","--toolsets","--reasoning","--tui","--cli","--yolo","--checkpoints","--source","--max-turns"].includes(String(e||""))}var le="x-oracle-sidecar-token",ue=e=>typeof e=="string"&&/^[A-Za-z0-9_-]{43}$/.test(e);function pe(e,o=process.env){if(o.ORACLE_HOSTED_SIDECAR!=="1")return e;if(!ue(o.ORACLE_HOSTED_SIDECAR_TOKEN))throw new Error("Hosted service authentication is missing");let n=new Set([o.ORACLE_DATA_URL,o.ORACLE_PUBLIC_URL].map(a=>{let t=new URL(a);if(t.origin!==a||t.protocol!=="http:"||t.hostname!=="127.0.0.1"||!t.port||t.username||t.password)throw new Error("Hosted services must use exact loopback origins");return t.origin}));return function(t,r={}){let s=new URL(t instanceof Request?t.url:t);if(!n.has(s.origin))return e(t,r);if(s.username||s.password)throw new Error("Hosted service URL contains credentials");let i=new Headers(r.headers??(t instanceof Request?t.headers:void 0));return i.set(le,o.ORACLE_HOSTED_SIDECAR_TOKEN),e(t,{...r,headers:i,redirect:"error"})}}function M(e=process.env){if(e.ORACLE_HOSTED_SIDECAR!=="1")return;let o=Symbol.for("oracle.hosted.sidecar-fetch");globalThis[o]||(globalThis.fetch=pe(globalThis.fetch.bind(globalThis),e),globalThis[o]=!0)}var qe=Object.freeze({data:"./desk-server.mjs",public:"./oracle-public-server.mjs","data-mcp":"./oracle-data-mcp.mjs",init:"./oracle-init.mjs",upgrade:"./oracle-upgrade.mjs",scan:"./oracle-scan.mjs",route:"./oracle-route.mjs",equities:"./oracle-equities.mjs"});function fe(){if(!process.argv[1])return!1;try{return N(de(import.meta.url))===N(process.argv[1])}catch{return!1}}async function me(e=process.argv.slice(2)){return M(),$(e)}if(fe()){let e=await me();process.exit(typeof e=="number"?e:0)}export{qe as COMMANDS,me as main};
|