nyxora 1.5.0 → 1.5.2
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/CHANGELOG.md +43 -0
- package/README.md +53 -33
- package/SECURITY.md +58 -15
- package/bin/nyxora.js +3 -0
- package/dist/gateway/server.js +13 -1
- package/launcher.js +43 -0
- package/launcher.ts +51 -0
- package/nyxora-1.5.2.tgz +0 -0
- package/package.json +28 -57
- package/packages/core/package.json +18 -0
- package/packages/dashboard/dist/assets/index-BK4qmIy6.js +200 -0
- package/packages/dashboard/dist/assets/index-C1m4ohce.css +1 -0
- package/{dashboard → packages/dashboard}/dist/index.html +2 -2
- package/packages/dashboard/index.html +13 -0
- package/packages/dashboard/package-lock.json +2748 -0
- package/packages/dashboard/package.json +31 -0
- package/packages/dashboard/public/favicon.svg +1 -0
- package/packages/dashboard/public/icons.svg +24 -0
- package/packages/dashboard/tsconfig.app.json +25 -0
- package/packages/dashboard/tsconfig.json +7 -0
- package/packages/dashboard/tsconfig.node.json +24 -0
- package/packages/dashboard/vite.config.ts +7 -0
- package/packages/policy/package.json +12 -0
- package/packages/signer/package.json +11 -0
- package/security_policy.md +2 -0
- package/tsconfig.json +18 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/dashboard/dist/assets/index-Cy7yprIz.css +0 -1
- package/dashboard/dist/assets/index-L20NVlIh.js +0 -9
- package/dist/src/agent/reasoning.js +0 -96
- package/dist/src/config/parser.js +0 -25
- package/dist/src/gateway/cli.js +0 -79
- package/dist/src/memory/logger.js +0 -50
- package/dist/src/web3/config.js +0 -80
- package/dist/src/web3/skills/getBalance.js +0 -43
- /package/{dashboard → packages/dashboard}/README.md +0 -0
- /package/{dashboard → packages/dashboard}/dist/favicon.svg +0 -0
- /package/{dashboard → packages/dashboard}/dist/icons.svg +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--bg-color: #0f172a;--bg-secondary: #1e293b;--bg-sidebar: #0b1120;--text-primary: #f8fafc;--text-secondary: #94a3b8;--accent: #3b82f6;--accent-hover: #2563eb;--glass-bg: rgba(30, 41, 59, .7);--glass-border: rgba(255, 255, 255, .1);--chat-user: #3b82f6;--chat-agent: #1e293b;--tool-bg: #0f172a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-color);color:var(--text-primary);height:100vh;overflow:hidden}#root{display:flex;height:100vh;width:100vw}.sidebar{width:280px;background-color:#0b1120d9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;box-shadow:10px 0 30px -10px #00000080;z-index:100}.agent-identity-card{padding:24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:8px;background:linear-gradient(180deg,rgba(59,130,246,.05) 0%,transparent 100%)}.agent-avatar{background:#3b82f626;padding:12px;border-radius:16px;border:1px solid rgba(59,130,246,.3);box-shadow:0 0 20px #3b82f633;display:flex;justify-content:center;align-items:center}.agent-info{display:flex;flex-direction:column;gap:4px}.agent-name{font-size:1.1rem;font-weight:700;color:#fff;letter-spacing:-.025em}.agent-status{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#4ade80;font-weight:600;letter-spacing:.05em}.status-dot{width:8px;height:8px;background-color:#4ade80;border-radius:50%;box-shadow:0 0 8px #4ade80;animation:pulse-green 2s infinite}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #4ade80b3}70%{transform:scale(1);box-shadow:0 0 0 6px #4ade8000}to{transform:scale(.95);box-shadow:0 0 #4ade8000}}.sidebar-scroll-area{flex:1;overflow-y:auto;padding-bottom:24px}.sidebar-scroll-area::-webkit-scrollbar{width:4px}.sidebar-scroll-area::-webkit-scrollbar-thumb{background:#ffffff0d}.sidebar-section{padding:24px 24px 12px;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:#64748b;font-weight:700}.sidebar-nav{display:flex;flex-direction:column;gap:4px;padding:0 16px}.nav-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:12px;color:#94a3b8;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border:1px solid transparent}.nav-icon{transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-item:hover{background-color:#ffffff08;color:#fff;transform:translate(4px)}.nav-item:hover .nav-icon{transform:scale(1.1);color:var(--accent)}.nav-item.active{background:linear-gradient(90deg,rgba(59,130,246,.15) 0%,transparent 100%);color:#fff;border-left:3px solid var(--accent);border-radius:4px 12px 12px 4px;font-weight:600}.nav-item.active .nav-icon{color:var(--accent)}.main-content{flex:1;display:flex;flex-direction:column;background-image:radial-gradient(at 0% 0%,rgba(59,130,246,.1) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(139,92,246,.1) 0px,transparent 50%)}.topbar{height:64px;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#0f172a99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-left{display:flex;align-items:center;gap:16px;font-size:.95rem;font-weight:500;color:var(--text-secondary)}.topbar-right{display:flex;align-items:center;gap:12px}.config-dropdown{background:var(--bg-secondary);border:1px solid var(--glass-border);color:#fff;padding:8px 12px;border-radius:6px;font-size:.85rem;outline:none;cursor:pointer;transition:all .2s;min-width:120px}.config-dropdown:hover{border-color:var(--accent)}.config-dropdown:focus{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f633}.workspace-container{display:flex;height:calc(100vh - 64px);width:100%}.chat-wrapper{display:flex;flex-direction:column;padding:24px 0;height:100%}.resizer{width:6px;background:var(--glass-border);cursor:col-resize;transition:background .2s;z-index:10}.resizer:hover,.resizer:active{background:var(--accent)}.canvas-panel{flex:1;display:flex;flex-direction:column;background:var(--bg-sidebar);padding:32px;overflow-y:auto;position:relative;background-image:radial-gradient(at 50% 50%,rgba(59,130,246,.05) 0px,transparent 80%)}.canvas-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:16px}.canvas-title{font-family:monospace;color:#94a3b8;font-size:.85rem;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.05em}.canvas-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#475569;gap:16px}.chat-container{flex:1;overflow-y:auto;padding:0 24px;display:flex;flex-direction:column;gap:20px}.chat-container::-webkit-scrollbar{width:6px}.chat-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.message-wrapper{display:flex;flex-direction:column;max-width:85%;animation:fadeIn .3s ease-out forwards}.message-wrapper.user{align-self:flex-end}.message-wrapper.agent{align-self:flex-start}.message-bubble{padding:14px 18px;border-radius:18px;line-height:1.6;font-size:.95rem;box-shadow:0 4px 6px -1px #0000001a;white-space:pre-wrap}.user .message-bubble{background-color:var(--chat-user);color:#fff;border-bottom-right-radius:4px}.agent .message-bubble{background-color:var(--chat-agent);border:1px solid var(--glass-border);border-bottom-left-radius:4px}.tool-call{font-size:.85rem;color:var(--text-secondary);background:var(--tool-bg);padding:10px 14px;border-radius:12px;margin-top:10px;border:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:8px}.tool-call code{color:#a78bfa;font-family:monospace}.input-area{padding:20px 24px 0}.input-form{display:flex;gap:12px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:16px;padding:8px;transition:all .2s}.input-form:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f633}.chat-input{flex:1;background:transparent;border:none;padding:12px 16px;color:#fff;font-size:.95rem;font-family:inherit;outline:none}.send-button{background:var(--accent);color:#fff;border:none;width:44px;height:44px;border-radius:12px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:all .2s}.voice-button{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--glass-border);width:44px;height:44px;border-radius:12px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:all .2s}.voice-button:hover{color:#fff;border-color:#ef4444}.voice-button.listening{background:#ef444433;color:#ef4444;border-color:#ef4444;animation:pulse-red 1.5s infinite}.voice-button.active-mode{border-color:#3b82f6;color:#3b82f6}.voice-button.speaking{background:#3b82f633;color:#3b82f6;border-color:#3b82f6;animation:pulse-blue 1.5s infinite}@keyframes pulse-red{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes pulse-blue{0%{box-shadow:0 0 #3b82f666}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.send-button:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.05)}.send-button:disabled{opacity:.5;cursor:not-allowed}.typing-indicator{display:flex;gap:4px;padding:14px 18px;background-color:var(--chat-agent);border:1px solid var(--glass-border);border-radius:18px 18px 18px 4px;width:fit-content;align-self:flex-start}.dot{width:6px;height:6px;background:var(--text-secondary);border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.overview-container{padding:24px;overflow-y:auto;height:calc(100vh - 64px);color:#fff;font-family:Inter,sans-serif;max-width:1200px;margin:0 auto}.overview-container::-webkit-scrollbar{width:6px}.overview-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.overview-header h1{font-size:1.5rem;font-weight:600;margin-bottom:4px}.overview-header p{color:var(--text-secondary);font-size:.9rem;margin-bottom:24px}.panel{background:#14182099;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:20px;margin-bottom:24px}.panel-header h3{font-size:1.1rem;font-weight:600;margin-bottom:4px}.panel-header p{color:var(--text-secondary);font-size:.85rem;margin-bottom:16px}.form-group{margin-bottom:16px}.form-row{display:flex;gap:16px}.flex-1{flex:1}label{display:block;font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);margin-bottom:8px;letter-spacing:.05em}input,select{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:10px 12px;border-radius:8px;color:#fff;font-size:.9rem;font-family:monospace}input:read-only{color:var(--text-secondary)}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;right:12px;color:var(--text-secondary);cursor:pointer}.form-actions{display:flex;align-items:center;gap:12px;margin-top:20px}.btn-primary{background:#3b82f6;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9rem;cursor:pointer}.btn-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:6px;font-size:.9rem;cursor:pointer}.action-hint{color:var(--text-secondary);font-size:.85rem;margin-left:8px}.snapshot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-val{font-size:1.5rem;font-weight:700;margin-bottom:4px}.text-green{color:#22c55e}.stat-block p{color:var(--text-secondary);font-size:.8rem;margin-top:8px;line-height:1.4}.metrics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:32px}.metric-card{background:#14182099;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:16px}.metric-val{font-size:1.5rem;font-weight:700;margin-bottom:4px}.metric-sub{color:var(--text-secondary);font-size:.75rem}.section-title{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);margin-bottom:12px;letter-spacing:.05em}.session-item{display:flex;justify-content:space-between;padding:16px 20px;margin-bottom:24px}.text-secondary{color:var(--text-secondary)}.attention-panel{background:#eab3081a;border:1px solid rgba(234,179,8,.2);border-radius:12px;padding:16px 20px;margin-bottom:24px;display:flex;flex-direction:column}.attention-header{display:flex;align-items:center;gap:8px;color:#eab308;margin-bottom:8px}.attention-header h4{font-size:1rem;font-weight:600}.attention-content p{font-size:.95rem;margin-bottom:4px}.attention-content span{font-size:.85rem}.logs-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.log-panel{background:#0a0c10cc;border:1px solid rgba(255,255,255,.05);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;height:300px}.log-header{padding:12px 16px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.05);font-size:.85rem;font-weight:600}.badge{background:#ffffff1a;padding:2px 6px;border-radius:10px;font-size:.7rem;margin-left:8px}.log-content{padding:12px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.log-content code,.log-json{font-family:Consolas,Monaco,monospace;font-size:.75rem;color:#a3a3a3;line-height:1.4;word-break:break-all}.log-row{display:flex;gap:12px;font-family:Consolas,Monaco,monospace;font-size:.75rem;margin-bottom:4px}.log-time{color:#fb923c;min-width:60px}.log-msg{color:#d1d5db}.log-meta{color:#6b7280}.gateway-row{margin-bottom:2px}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>Nyxora Dashboard</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-BK4qmIy6.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-C1m4ohce.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div id="root"></div>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>Nyxora Dashboard</title>
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
<div id="root"></div>
|
|
11
|
+
<script type="module" src="/src/main.tsx"></script>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|