@pheem49/mint 1.4.2 → 1.5.1
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/GUIDE_TH.md +113 -0
- package/README.md +267 -78
- package/assets/CLI_Screen.png +0 -0
- package/main.js +76 -890
- package/mint-cli-logic.js +3 -107
- package/mint-cli.js +594 -29
- package/models/Shiroko_Model/Shiroko/Shiroko_Core/72d86db84cfa9730b894c241fd24c0db.png +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core/items_pinned_to_model.json +14 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//345/221/206/347/214/253.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//345/221/206/347/214/253/347/234/274/347/217/240/346/221/207/346/231/203.exp3.json +15 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//345/233/264/350/243/231.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//346/213/215/347/205/247.exp3.json +50 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//346/213/277/347/254/224.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//347/202/271/344/270/200/344/270/213.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//347/214/253/345/222/252/346/273/244/351/225/234.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//347/234/274/351/225/234.exp3.json +10 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.4096/texture_00.png +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.4096/texture_01.png +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.4096/texture_02.png +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.4096/texture_03.png +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.cdi3.json +1498 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.moc3 +0 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.model3.json +47 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.physics3.json +6658 -0
- package/models/Shiroko_Model/Shiroko/Shiroko_Core//351/235/242/351/245/2740.vtube.json +1299 -0
- package/models/Shiroko_Model/Shiroko//342/232/241/351/253/230/344/272/256/342/232/241/344/275/277/347/224/250/346/225/231/347/250/213/344/270/216/346/263/250/346/204/217/344/272/213/351/241/271.txt +23 -0
- package/package.json +37 -4
- package/src/AI_Brain/Gemini_API.js +223 -65
- package/src/AI_Brain/autonomous_brain.js +11 -0
- package/src/AI_Brain/behavior_memory.js +26 -5
- package/src/AI_Brain/headless_agent.js +4 -0
- package/src/AI_Brain/knowledge_base.js +61 -8
- package/src/AI_Brain/memory_store.js +354 -10
- package/src/Automation_Layer/file_operations.js +1 -1
- package/src/CLI/chat_router.js +20 -7
- package/src/CLI/chat_ui.js +596 -825
- package/src/CLI/code_agent.js +347 -56
- package/src/CLI/gmail_auth.js +210 -0
- package/src/CLI/image_input.js +90 -0
- package/src/CLI/list_features.js +2 -0
- package/src/CLI/onboarding.js +364 -55
- package/src/CLI/updater.js +210 -0
- package/src/Channels/brave_search_bridge.js +35 -0
- package/src/Channels/discord_bridge.js +68 -0
- package/src/Channels/google_search_bridge.js +38 -0
- package/src/Channels/line_bridge.js +60 -0
- package/src/Channels/slack_bridge.js +53 -0
- package/src/Channels/telegram_bridge.js +49 -0
- package/src/Channels/whatsapp_bridge.js +55 -0
- package/src/Command_Parser/parser.js +12 -1
- package/src/Plugins/gmail.js +251 -0
- package/src/Plugins/google_calendar.js +245 -19
- package/src/Plugins/notion.js +256 -0
- package/src/System/action_executor.js +178 -0
- package/src/System/bridge_manager.js +76 -0
- package/src/System/chat_history_manager.js +23 -5
- package/src/System/config_manager.js +71 -7
- package/src/System/custom_workflows.js +31 -2
- package/src/System/google_tts_urls.js +51 -0
- package/src/System/granular_automation.js +122 -53
- package/src/System/ipc_handlers.js +238 -0
- package/src/System/proactive_loop.js +153 -0
- package/src/System/safety_manager.js +273 -0
- package/src/System/sandbox_runner.js +182 -0
- package/src/System/screen_capture.js +175 -0
- package/src/System/system_automation.js +127 -81
- package/src/System/system_info.js +70 -0
- package/src/System/task_manager.js +15 -5
- package/src/System/tool_registry.js +280 -0
- package/src/System/window_manager.js +212 -0
- package/src/UI/live2d_manager.js +368 -0
- package/src/UI/renderer.js +208 -24
- package/src/UI/settings.html +24 -0
- package/src/UI/settings.js +14 -4
- package/src/UI/styles.css +466 -32
- package/.codex +0 -0
- package/docs/assets/Agent_Mint.png +0 -0
- package/docs/assets/CLI_Screen.png +0 -0
- package/docs/assets/Settings.png +0 -0
- package/docs/assets/icon.png +0 -0
- package/docs/index.html +0 -132
- package/docs/style.css +0 -579
- package/index.html +0 -16
- package/src/UI/index.html +0 -126
- package/tech_news.txt +0 -3
- package/test_knowledge.txt +0 -3
- package/tests/agent_orchestrator.test.js +0 -41
- package/tests/chat_router.test.js +0 -42
- package/tests/code_agent.test.js +0 -69
- package/tests/config_manager.test.js +0 -141
- package/tests/docker.test.js +0 -46
- package/tests/file_operations.test.js +0 -57
- package/tests/memory_store.test.js +0 -185
- package/tests/provider_routing.test.js +0 -67
- package/tests/spotify.test.js +0 -201
- package/tests/system_monitor.test.js +0 -37
- package/tests/workspace_manager.test.js +0 -56
package/src/UI/styles.css
CHANGED
|
@@ -77,11 +77,13 @@ body {
|
|
|
77
77
|
/* Header - Drag Region */
|
|
78
78
|
.drag-region {
|
|
79
79
|
-webkit-app-region: drag;
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
min-height: 66px;
|
|
81
|
+
padding: 10px 14px 10px 18px;
|
|
82
|
+
display: grid;
|
|
83
|
+
grid-template-columns: minmax(150px, 1fr) auto minmax(220px, 1fr) auto;
|
|
84
|
+
gap: 14px;
|
|
83
85
|
align-items: center;
|
|
84
|
-
background: rgba(
|
|
86
|
+
background: rgba(9, 14, 28, 0.76);
|
|
85
87
|
backdrop-filter: var(--glass-blur);
|
|
86
88
|
-webkit-backdrop-filter: var(--glass-blur);
|
|
87
89
|
border-bottom: 1px solid var(--border);
|
|
@@ -93,6 +95,7 @@ body {
|
|
|
93
95
|
display: flex;
|
|
94
96
|
align-items: center;
|
|
95
97
|
gap: 12px;
|
|
98
|
+
min-width: 0;
|
|
96
99
|
}
|
|
97
100
|
|
|
98
101
|
.status-indicator {
|
|
@@ -128,14 +131,77 @@ h1 {
|
|
|
128
131
|
-webkit-text-fill-color: transparent;
|
|
129
132
|
}
|
|
130
133
|
|
|
131
|
-
.
|
|
134
|
+
.header-actions,
|
|
135
|
+
.header-utility,
|
|
136
|
+
.window-controls {
|
|
137
|
+
-webkit-app-region: no-drag;
|
|
138
|
+
display: flex;
|
|
139
|
+
align-items: center;
|
|
140
|
+
gap: 8px;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.header-actions {
|
|
144
|
+
justify-content: center;
|
|
145
|
+
padding: 4px;
|
|
146
|
+
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
147
|
+
border-radius: 14px;
|
|
148
|
+
background: rgba(255, 255, 255, 0.035);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.header-utility {
|
|
152
|
+
justify-content: flex-end;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.window-controls {
|
|
156
|
+
justify-content: flex-end;
|
|
157
|
+
gap: 4px;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.toggle-model-btn,
|
|
161
|
+
.change-expression-btn,
|
|
162
|
+
.interaction-guide-btn,
|
|
163
|
+
.clear-btn,
|
|
164
|
+
.settings-btn {
|
|
165
|
+
-webkit-app-region: no-drag;
|
|
166
|
+
min-width: 0;
|
|
167
|
+
height: 36px;
|
|
168
|
+
border: 1px solid transparent;
|
|
169
|
+
background: transparent;
|
|
170
|
+
color: var(--text-muted);
|
|
171
|
+
cursor: pointer;
|
|
172
|
+
border-radius: 10px;
|
|
173
|
+
display: inline-flex;
|
|
174
|
+
align-items: center;
|
|
175
|
+
justify-content: center;
|
|
176
|
+
gap: 7px;
|
|
177
|
+
padding: 0 11px;
|
|
178
|
+
font-size: 0.78rem;
|
|
179
|
+
font-weight: 600;
|
|
180
|
+
line-height: 1;
|
|
181
|
+
white-space: nowrap;
|
|
182
|
+
transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.toggle-model-btn svg,
|
|
186
|
+
.change-expression-btn svg,
|
|
187
|
+
.interaction-guide-btn svg,
|
|
188
|
+
.clear-btn svg,
|
|
189
|
+
.settings-btn svg {
|
|
190
|
+
flex: 0 0 auto;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
.close-btn,
|
|
194
|
+
.maximize-btn,
|
|
195
|
+
.minimize-btn {
|
|
132
196
|
-webkit-app-region: no-drag;
|
|
133
197
|
background: transparent;
|
|
134
198
|
border: none;
|
|
135
199
|
color: var(--text-muted);
|
|
136
200
|
cursor: pointer;
|
|
137
|
-
|
|
138
|
-
|
|
201
|
+
width: 34px;
|
|
202
|
+
height: 34px;
|
|
203
|
+
padding: 0;
|
|
204
|
+
border-radius: 9px;
|
|
139
205
|
display: flex;
|
|
140
206
|
align-items: center;
|
|
141
207
|
justify-content: center;
|
|
@@ -152,50 +218,357 @@ h1 {
|
|
|
152
218
|
color: #ef4444;
|
|
153
219
|
}
|
|
154
220
|
|
|
221
|
+
.toggle-model-btn:hover {
|
|
222
|
+
background: rgba(139, 92, 246, 0.15);
|
|
223
|
+
border-color: rgba(139, 92, 246, 0.2);
|
|
224
|
+
color: var(--accent);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
.toggle-model-btn.active {
|
|
228
|
+
background: rgba(139, 92, 246, 0.26);
|
|
229
|
+
border-color: rgba(139, 92, 246, 0.42);
|
|
230
|
+
color: white;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.change-expression-btn:hover {
|
|
234
|
+
background: rgba(251, 191, 36, 0.15);
|
|
235
|
+
border-color: rgba(251, 191, 36, 0.2);
|
|
236
|
+
color: #fbbf24;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
.interaction-guide-btn:hover {
|
|
240
|
+
background: rgba(34, 211, 238, 0.14);
|
|
241
|
+
border-color: rgba(34, 211, 238, 0.2);
|
|
242
|
+
color: #67e8f9;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.interaction-guide-btn.active {
|
|
246
|
+
background: rgba(34, 211, 238, 0.22);
|
|
247
|
+
border-color: rgba(34, 211, 238, 0.34);
|
|
248
|
+
color: #67e8f9;
|
|
249
|
+
}
|
|
250
|
+
|
|
155
251
|
.maximize-btn:hover {
|
|
156
252
|
background: rgba(255, 255, 255, 0.1);
|
|
157
253
|
color: var(--text-color);
|
|
158
254
|
}
|
|
159
255
|
|
|
160
|
-
.clear-btn {
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
256
|
+
.clear-btn:hover {
|
|
257
|
+
background: rgba(251, 191, 36, 0.15);
|
|
258
|
+
border-color: rgba(251, 191, 36, 0.2);
|
|
259
|
+
color: #fbbf24;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.settings-btn:hover {
|
|
263
|
+
background: rgba(139, 92, 246, 0.15);
|
|
264
|
+
border-color: rgba(139, 92, 246, 0.2);
|
|
265
|
+
color: var(--accent);
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
/* Chat Area */
|
|
269
|
+
.assistant-workspace {
|
|
270
|
+
flex: 1;
|
|
271
|
+
min-height: 0;
|
|
272
|
+
display: flex;
|
|
273
|
+
gap: 22px;
|
|
274
|
+
padding: 22px;
|
|
275
|
+
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.assistant-workspace.model-hidden {
|
|
279
|
+
padding: 22px 120px;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.model-stage {
|
|
283
|
+
flex: 1 1 54%;
|
|
284
|
+
min-width: 420px;
|
|
168
285
|
display: flex;
|
|
169
286
|
align-items: center;
|
|
170
287
|
justify-content: center;
|
|
171
|
-
|
|
288
|
+
position: relative;
|
|
289
|
+
overflow: hidden;
|
|
290
|
+
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
|
|
291
|
+
opacity: 1;
|
|
292
|
+
transform: scale(1);
|
|
172
293
|
}
|
|
173
294
|
|
|
174
|
-
.
|
|
175
|
-
|
|
176
|
-
|
|
295
|
+
.assistant-workspace.model-hidden .model-stage {
|
|
296
|
+
flex: 0 0 0;
|
|
297
|
+
min-width: 0;
|
|
298
|
+
opacity: 0;
|
|
299
|
+
pointer-events: none;
|
|
300
|
+
transform: scale(0.9);
|
|
301
|
+
margin-right: -22px;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.model-shell {
|
|
305
|
+
width: 100%;
|
|
306
|
+
height: 100%;
|
|
307
|
+
max-width: 620px;
|
|
308
|
+
max-height: 720px;
|
|
309
|
+
min-height: 480px;
|
|
310
|
+
display: grid;
|
|
311
|
+
place-items: center;
|
|
312
|
+
position: relative;
|
|
313
|
+
background: rgba(0, 0, 0, 0.2);
|
|
314
|
+
border-radius: 24px;
|
|
315
|
+
border: 1px solid rgba(255, 255, 255, 0.06);
|
|
316
|
+
box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.2);
|
|
317
|
+
overflow: hidden;
|
|
177
318
|
}
|
|
178
319
|
|
|
179
|
-
.
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
320
|
+
.model-glow {
|
|
321
|
+
position: absolute;
|
|
322
|
+
width: 85%;
|
|
323
|
+
aspect-ratio: 1;
|
|
324
|
+
border-radius: 50%;
|
|
325
|
+
background: radial-gradient(circle, rgba(139, 92, 246, 0.12), rgba(139, 92, 246, 0.02) 48%, transparent 72%);
|
|
326
|
+
filter: blur(20px);
|
|
327
|
+
transform: translateY(2%);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
.model-mount {
|
|
331
|
+
width: 100%;
|
|
332
|
+
height: 100%;
|
|
333
|
+
position: relative;
|
|
334
|
+
z-index: 1;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
.model-mount canvas {
|
|
338
|
+
position: absolute;
|
|
339
|
+
inset: 0;
|
|
340
|
+
width: 100%;
|
|
341
|
+
height: 100%;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
.expression-toast {
|
|
345
|
+
position: absolute;
|
|
346
|
+
left: 50%;
|
|
347
|
+
top: 18px;
|
|
348
|
+
z-index: 4;
|
|
349
|
+
transform: translate(-50%, -8px);
|
|
350
|
+
opacity: 0;
|
|
351
|
+
pointer-events: none;
|
|
352
|
+
padding: 7px 12px;
|
|
353
|
+
border-radius: 999px;
|
|
354
|
+
background: rgba(15, 23, 42, 0.72);
|
|
355
|
+
border: 1px solid rgba(255, 255, 255, 0.12);
|
|
356
|
+
color: #f8fafc;
|
|
357
|
+
font-size: 0.76rem;
|
|
358
|
+
font-weight: 600;
|
|
359
|
+
line-height: 1;
|
|
360
|
+
white-space: nowrap;
|
|
361
|
+
box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
|
|
362
|
+
backdrop-filter: blur(10px);
|
|
363
|
+
transition: opacity 0.18s ease, transform 0.18s ease;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
.expression-toast.is-visible {
|
|
367
|
+
opacity: 1;
|
|
368
|
+
transform: translate(-50%, 0);
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
.interaction-guide {
|
|
372
|
+
position: absolute;
|
|
373
|
+
inset: 0;
|
|
374
|
+
z-index: 3;
|
|
375
|
+
pointer-events: none;
|
|
376
|
+
opacity: 0;
|
|
377
|
+
transition: opacity 0.2s ease;
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
.model-shell.show-interaction-guide .interaction-guide {
|
|
381
|
+
opacity: 1;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
.interaction-zone {
|
|
385
|
+
position: absolute;
|
|
386
|
+
border: 1px solid rgba(103, 232, 249, 0.46);
|
|
387
|
+
background: rgba(14, 165, 233, 0.08);
|
|
388
|
+
box-shadow: 0 0 18px rgba(34, 211, 238, 0.12), inset 0 0 18px rgba(255, 255, 255, 0.04);
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
.interaction-zone span {
|
|
392
|
+
position: absolute;
|
|
393
|
+
left: 50%;
|
|
394
|
+
top: 50%;
|
|
395
|
+
transform: translate(-50%, -50%);
|
|
396
|
+
padding: 4px 8px;
|
|
397
|
+
border-radius: 999px;
|
|
398
|
+
background: rgba(3, 7, 18, 0.72);
|
|
399
|
+
border: 1px solid rgba(255, 255, 255, 0.12);
|
|
400
|
+
color: #e0f2fe;
|
|
401
|
+
font-size: 0.68rem;
|
|
402
|
+
font-weight: 600;
|
|
403
|
+
line-height: 1;
|
|
404
|
+
white-space: nowrap;
|
|
405
|
+
text-shadow: 0 1px 8px rgba(0, 0, 0, 0.65);
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
.zone-head {
|
|
409
|
+
left: 35%;
|
|
410
|
+
top: 30%;
|
|
411
|
+
width: 29%;
|
|
412
|
+
height: 9%;
|
|
413
|
+
border-radius: 48% 48% 42% 42%;
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
.zone-face {
|
|
417
|
+
left: 37%;
|
|
418
|
+
top: 39.5%;
|
|
419
|
+
width: 25%;
|
|
420
|
+
height: 13%;
|
|
421
|
+
border-radius: 50%;
|
|
422
|
+
background: rgba(244, 114, 182, 0.1);
|
|
423
|
+
border-color: rgba(244, 114, 182, 0.5);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
.zone-left-hand {
|
|
427
|
+
left: 17%;
|
|
428
|
+
top: 65%;
|
|
429
|
+
width: 19%;
|
|
430
|
+
height: 17%;
|
|
431
|
+
border-radius: 48% 42% 56% 44%;
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
.zone-right-hand {
|
|
435
|
+
left: 70%;
|
|
436
|
+
top: 67%;
|
|
437
|
+
width: 17%;
|
|
438
|
+
height: 17%;
|
|
439
|
+
border-radius: 42% 54% 44% 56%;
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
.zone-body {
|
|
443
|
+
left: 36%;
|
|
444
|
+
top: 55%;
|
|
445
|
+
width: 29%;
|
|
446
|
+
height: 15%;
|
|
447
|
+
border-radius: 38% 38% 48% 48%;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
.zone-lower {
|
|
451
|
+
left: 31%;
|
|
452
|
+
top: 76%;
|
|
453
|
+
width: 38%;
|
|
454
|
+
height: 24%;
|
|
455
|
+
border-radius: 46% 46% 24% 24%;
|
|
456
|
+
background: rgba(251, 191, 36, 0.08);
|
|
457
|
+
border-color: rgba(251, 191, 36, 0.45);
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
.model-placeholder {
|
|
461
|
+
width: 100%;
|
|
462
|
+
max-height: 100%;
|
|
463
|
+
object-fit: contain;
|
|
464
|
+
filter: drop-shadow(0 22px 34px rgba(0, 0, 0, 0.26));
|
|
465
|
+
animation: modelFloat 4.5s ease-in-out infinite;
|
|
466
|
+
transition: opacity 0.6s ease-out;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
.model-shell.is-live2d-ready .model-placeholder {
|
|
470
|
+
opacity: 0 !important;
|
|
471
|
+
pointer-events: none;
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
.model-status {
|
|
475
|
+
position: absolute;
|
|
476
|
+
left: 50%;
|
|
477
|
+
bottom: 24px;
|
|
478
|
+
max-width: min(88%, 460px);
|
|
479
|
+
transform: translateX(-50%);
|
|
183
480
|
color: var(--text-muted);
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
481
|
+
font-size: 0.78rem;
|
|
482
|
+
line-height: 1.35;
|
|
483
|
+
text-align: center;
|
|
484
|
+
user-select: text;
|
|
485
|
+
z-index: 2;
|
|
187
486
|
display: flex;
|
|
487
|
+
flex-direction: column;
|
|
188
488
|
align-items: center;
|
|
489
|
+
gap: 8px;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
.model-status.is-error {
|
|
493
|
+
color: #fca5a5;
|
|
494
|
+
display: block;
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
.loader-dots {
|
|
498
|
+
display: flex;
|
|
499
|
+
gap: 6px;
|
|
189
500
|
justify-content: center;
|
|
190
|
-
|
|
501
|
+
align-items: center;
|
|
502
|
+
margin-bottom: 4px;
|
|
191
503
|
}
|
|
192
504
|
|
|
193
|
-
.
|
|
194
|
-
|
|
195
|
-
|
|
505
|
+
.loader-dots span {
|
|
506
|
+
width: 8px;
|
|
507
|
+
height: 8px;
|
|
508
|
+
background-color: var(--accent);
|
|
509
|
+
border-radius: 50%;
|
|
510
|
+
display: inline-block;
|
|
511
|
+
animation: dot-pulse 1.4s infinite ease-in-out both;
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
.loader-dots span:nth-child(1) { animation-delay: -0.32s; }
|
|
515
|
+
.loader-dots span:nth-child(2) { animation-delay: -0.16s; }
|
|
516
|
+
|
|
517
|
+
@keyframes dot-pulse {
|
|
518
|
+
0%, 80%, 100% { transform: scale(0); opacity: 0.3; }
|
|
519
|
+
40% { transform: scale(1.0); opacity: 1; }
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
.model-shell.is-live2d-ready .model-status {
|
|
523
|
+
display: none;
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
.model-shadow {
|
|
527
|
+
position: absolute;
|
|
528
|
+
bottom: 12%;
|
|
529
|
+
width: 44%;
|
|
530
|
+
height: 22px;
|
|
531
|
+
border-radius: 50%;
|
|
532
|
+
background: rgba(0, 0, 0, 0.24);
|
|
533
|
+
filter: blur(10px);
|
|
534
|
+
transform: scaleX(1.2);
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
@keyframes modelFloat {
|
|
538
|
+
0%,
|
|
539
|
+
100% {
|
|
540
|
+
transform: translateY(0);
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
50% {
|
|
544
|
+
transform: translateY(-10px);
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
.conversation-panel {
|
|
549
|
+
flex: 0 1 460px;
|
|
550
|
+
min-width: 400px;
|
|
551
|
+
display: flex;
|
|
552
|
+
flex-direction: column;
|
|
553
|
+
min-height: 0;
|
|
554
|
+
overflow: hidden;
|
|
555
|
+
background: var(--panel-bg);
|
|
556
|
+
backdrop-filter: var(--glass-blur);
|
|
557
|
+
-webkit-backdrop-filter: var(--glass-blur);
|
|
558
|
+
border: 1px solid var(--border);
|
|
559
|
+
border-top-color: var(--border-light);
|
|
560
|
+
border-left-color: var(--border-light);
|
|
561
|
+
border-radius: 16px;
|
|
562
|
+
box-shadow: 0 20px 52px rgba(0, 0, 0, 0.24);
|
|
563
|
+
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
.assistant-workspace.model-hidden .conversation-panel {
|
|
567
|
+
flex: 1;
|
|
568
|
+
max-width: 900px;
|
|
569
|
+
margin: 0 auto;
|
|
196
570
|
}
|
|
197
571
|
|
|
198
|
-
/* Chat Area */
|
|
199
572
|
.chat-container {
|
|
200
573
|
flex: 1;
|
|
201
574
|
padding: 20px;
|
|
@@ -251,6 +624,19 @@ h1 {
|
|
|
251
624
|
padding: 0 6px;
|
|
252
625
|
opacity: 0.7;
|
|
253
626
|
font-weight: 400;
|
|
627
|
+
display: flex;
|
|
628
|
+
align-items: center;
|
|
629
|
+
gap: 8px;
|
|
630
|
+
flex-wrap: wrap;
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
.provider-badge {
|
|
634
|
+
max-width: min(320px, 70vw);
|
|
635
|
+
overflow: hidden;
|
|
636
|
+
text-overflow: ellipsis;
|
|
637
|
+
white-space: nowrap;
|
|
638
|
+
color: var(--accent);
|
|
639
|
+
font-weight: 600;
|
|
254
640
|
}
|
|
255
641
|
|
|
256
642
|
@keyframes messagePopIn {
|
|
@@ -648,4 +1034,52 @@ input:checked + .slider:before {
|
|
|
648
1034
|
|
|
649
1035
|
.suggestion-chip:active {
|
|
650
1036
|
transform: scale(0.97);
|
|
651
|
-
}
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
@media (max-width: 760px) {
|
|
1040
|
+
.drag-region {
|
|
1041
|
+
grid-template-columns: auto 1fr auto;
|
|
1042
|
+
gap: 8px;
|
|
1043
|
+
padding: 9px 10px 9px 12px;
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
.header-content h1 {
|
|
1047
|
+
display: none;
|
|
1048
|
+
}
|
|
1049
|
+
|
|
1050
|
+
.header-actions {
|
|
1051
|
+
justify-content: flex-start;
|
|
1052
|
+
overflow: hidden;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
.header-utility {
|
|
1056
|
+
display: none;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1059
|
+
.toggle-model-btn,
|
|
1060
|
+
.change-expression-btn,
|
|
1061
|
+
.interaction-guide-btn {
|
|
1062
|
+
width: 34px;
|
|
1063
|
+
padding: 0;
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1066
|
+
.toggle-model-btn span,
|
|
1067
|
+
.change-expression-btn span,
|
|
1068
|
+
.interaction-guide-btn span {
|
|
1069
|
+
display: none;
|
|
1070
|
+
}
|
|
1071
|
+
|
|
1072
|
+
.assistant-workspace {
|
|
1073
|
+
padding: 12px;
|
|
1074
|
+
gap: 12px;
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
.model-stage {
|
|
1078
|
+
display: none;
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
.conversation-panel {
|
|
1082
|
+
flex: 1;
|
|
1083
|
+
min-width: 0;
|
|
1084
|
+
}
|
|
1085
|
+
}
|
package/.codex
DELETED
|
File without changes
|
|
Binary file
|
|
Binary file
|
package/docs/assets/Settings.png
DELETED
|
Binary file
|
package/docs/assets/icon.png
DELETED
|
Binary file
|
package/docs/index.html
DELETED
|
@@ -1,132 +0,0 @@
|
|
|
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.0">
|
|
6
|
-
<title>Mint | Experience the Future of Desktop Assistance</title>
|
|
7
|
-
<meta name="description" content="A powerful Electron-based AI desktop assistant powered by Google Gemini, featuring screen vision, web automation, and proactive suggestions.">
|
|
8
|
-
<link rel="stylesheet" href="style.css">
|
|
9
|
-
<script src="https://unpkg.com/@phosphor-icons/web"></script>
|
|
10
|
-
<link rel="icon" type="image/png" href="assets/icon.png">
|
|
11
|
-
</head>
|
|
12
|
-
<body>
|
|
13
|
-
<div class="bg-glow"></div>
|
|
14
|
-
<div class="floating-blobs">
|
|
15
|
-
<div class="blob blob-1"></div>
|
|
16
|
-
<div class="blob blob-2"></div>
|
|
17
|
-
<div class="blob blob-3"></div>
|
|
18
|
-
</div>
|
|
19
|
-
<nav>
|
|
20
|
-
<div class="logo-container">
|
|
21
|
-
<img src="assets/icon.png" alt="Mint Logo">
|
|
22
|
-
<span>Agent Mint</span>
|
|
23
|
-
</div>
|
|
24
|
-
<div class="nav-links">
|
|
25
|
-
<a href="#features">Features</a>
|
|
26
|
-
<a href="https://www.npmjs.com/package/@pheem49/mint">Resources</a>
|
|
27
|
-
<a href="https://github.com/Pheem49/Mint" class="github-link">GitHub</a>
|
|
28
|
-
</div>
|
|
29
|
-
</nav>
|
|
30
|
-
|
|
31
|
-
<header class="hero">
|
|
32
|
-
<h1>Experience the Future <br>of Desktop Assistance</h1>
|
|
33
|
-
<p>Mint combines screen vision, web automation, and proactive AI to supercharge your workflow. Built with Google Gemini 2.5 Flash.</p>
|
|
34
|
-
|
|
35
|
-
<div class="install-container" id="install-cmd">
|
|
36
|
-
<span>$</span>
|
|
37
|
-
<code>npm install -g @pheem49/mint@latest</code>
|
|
38
|
-
<button class="copy-btn" title="Copy to clipboard" onclick="copyCommand()">
|
|
39
|
-
<i class="ph ph-copy"></i>
|
|
40
|
-
</button>
|
|
41
|
-
</div>
|
|
42
|
-
|
|
43
|
-
<div class="hero-preview">
|
|
44
|
-
<div class="preview-badge">Terminal Interface</div>
|
|
45
|
-
<img src="assets/CLI_Screen.png" alt="Mint CLI Preview">
|
|
46
|
-
</div>
|
|
47
|
-
|
|
48
|
-
<section class="desktop-showcase">
|
|
49
|
-
<div class="showcase-header">
|
|
50
|
-
<img src="assets/icon.png" alt="Mint Icon" class="section-icon">
|
|
51
|
-
<h2>Modern Desktop Interface</h2>
|
|
52
|
-
<p>Enjoy a premium, glassmorphism-inspired GUI designed for the modern desktop environment. Manage your AI companion and customize your experience with ease.</p>
|
|
53
|
-
</div>
|
|
54
|
-
|
|
55
|
-
<div class="showcase-group">
|
|
56
|
-
<div class="showcase-images">
|
|
57
|
-
<div class="image-wrapper main-ui">
|
|
58
|
-
<img src="assets/Agent_Mint.png" alt="Agent Mint Main UI">
|
|
59
|
-
<span>Main Interface</span>
|
|
60
|
-
</div>
|
|
61
|
-
<div class="image-wrapper settings-ui">
|
|
62
|
-
<img src="assets/Settings.png" alt="Mint Settings UI">
|
|
63
|
-
<span>Settings & Controls</span>
|
|
64
|
-
</div>
|
|
65
|
-
</div>
|
|
66
|
-
|
|
67
|
-
<div class="showcase-text-combined">
|
|
68
|
-
<div class="text-block">
|
|
69
|
-
<h3><i class="ph ph-sparkle"></i> Intelligent Companion</h3>
|
|
70
|
-
<p>A sleek, floating chat interface that provides powerful AI capabilities without cluttering your workspace.</p>
|
|
71
|
-
</div>
|
|
72
|
-
<div class="text-block">
|
|
73
|
-
<h3><i class="ph ph-sliders"></i> Granular Controls</h3>
|
|
74
|
-
<p>Fully customize your experience. Manage API keys, switch models, and toggle proactive features with ease.</p>
|
|
75
|
-
</div>
|
|
76
|
-
</div>
|
|
77
|
-
</div>
|
|
78
|
-
</section>
|
|
79
|
-
|
|
80
|
-
<section class="downloads">
|
|
81
|
-
<div class="download-container">
|
|
82
|
-
<h2>Get the Latest Release</h2>
|
|
83
|
-
<p>Download the latest stable binaries for Linux including <b>.deb</b> and <b>.AppImage</b> formats directly from our GitHub releases page.</p>
|
|
84
|
-
<a href="https://github.com/Pheem49/Mint/releases" class="download-btn" target="_blank">
|
|
85
|
-
<i class="ph ph-download-simple"></i>
|
|
86
|
-
Download Latest Binaries
|
|
87
|
-
</a>
|
|
88
|
-
</div>
|
|
89
|
-
</section>
|
|
90
|
-
</header>
|
|
91
|
-
|
|
92
|
-
<section class="features" id="features">
|
|
93
|
-
<div class="feature-card">
|
|
94
|
-
<div class="feature-icon">
|
|
95
|
-
<i class="ph ph-eye"></i>
|
|
96
|
-
</div>
|
|
97
|
-
<h3>Screen Vision</h3>
|
|
98
|
-
<p>Mint can see what you see. It understands your active applications and provides context-aware assistance.</p>
|
|
99
|
-
</div>
|
|
100
|
-
<div class="feature-card">
|
|
101
|
-
<div class="feature-icon">
|
|
102
|
-
<i class="ph ph-browser"></i>
|
|
103
|
-
</div>
|
|
104
|
-
<h3>Web Automation</h3>
|
|
105
|
-
<p>Automate repetitive web tasks effortlessly. Mint can browse, interact, and extract data for you.</p>
|
|
106
|
-
</div>
|
|
107
|
-
<div class="feature-card">
|
|
108
|
-
<div class="feature-icon">
|
|
109
|
-
<i class="ph ph-lightning"></i>
|
|
110
|
-
</div>
|
|
111
|
-
<h3>Proactive Suggests</h3>
|
|
112
|
-
<p>Mint doesn't just wait for you. It suggests optimizations and help before you even ask.</p>
|
|
113
|
-
</div>
|
|
114
|
-
</section>
|
|
115
|
-
|
|
116
|
-
<footer>
|
|
117
|
-
<p>© 2026 Mint Project. Powered by Google Gemini. Created by Pheem49.</p>
|
|
118
|
-
</footer>
|
|
119
|
-
|
|
120
|
-
<script>
|
|
121
|
-
function copyCommand() {
|
|
122
|
-
const cmd = "npm install -g @pheem49/mint@latest";
|
|
123
|
-
navigator.clipboard.writeText(cmd);
|
|
124
|
-
const icon = document.querySelector('.copy-btn i');
|
|
125
|
-
icon.classList.replace('ph-copy', 'ph-check');
|
|
126
|
-
setTimeout(() => {
|
|
127
|
-
icon.classList.replace('ph-check', 'ph-copy');
|
|
128
|
-
}, 2000);
|
|
129
|
-
}
|
|
130
|
-
</script>
|
|
131
|
-
</body>
|
|
132
|
-
</html>
|