@mazees/mark 5.0.0
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/LICENSE +29 -0
- package/README.md +209 -0
- package/bin/mark.js +27 -0
- package/out/renderer/assets/icon-DHo2CYph.svg +1 -0
- package/out/renderer/assets/index-G2fADWO-.js +4768 -0
- package/out/renderer/assets/index-f3mVse3c.css +1 -0
- package/out/renderer/assets/music-cover-CG4vi3kZ.png +0 -0
- package/out/renderer/assets/poppins-devanagari-400-normal-CJDn6rn8.woff2 +0 -0
- package/out/renderer/assets/poppins-devanagari-400-normal-CqVvlrh5.woff +0 -0
- package/out/renderer/assets/poppins-devanagari-500-normal-BIdkeU1p.woff2 +0 -0
- package/out/renderer/assets/poppins-devanagari-500-normal-DMPDjHtT.woff +0 -0
- package/out/renderer/assets/poppins-devanagari-600-normal-ClASKHrr.woff +0 -0
- package/out/renderer/assets/poppins-devanagari-600-normal-STEjXBNN.woff2 +0 -0
- package/out/renderer/assets/poppins-devanagari-700-normal-O-jipLrW.woff2 +0 -0
- package/out/renderer/assets/poppins-devanagari-700-normal-fHs-vx92.woff +0 -0
- package/out/renderer/assets/poppins-latin-400-normal-BOb3E3N0.woff +0 -0
- package/out/renderer/assets/poppins-latin-400-normal-cpxAROuN.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-500-normal-C8OXljZJ.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-500-normal-DGXqpDMm.woff +0 -0
- package/out/renderer/assets/poppins-latin-600-normal-BJdTmd5m.woff +0 -0
- package/out/renderer/assets/poppins-latin-600-normal-zEkxB9Mr.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-700-normal-BVuQR_eA.woff +0 -0
- package/out/renderer/assets/poppins-latin-700-normal-Qrb0O0WB.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-ext-400-normal-DaBSavcJ.woff +0 -0
- package/out/renderer/assets/poppins-latin-ext-400-normal-by3JarPu.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-ext-500-normal-CK-6C4Hw.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-ext-500-normal-CgAe2rWW.woff +0 -0
- package/out/renderer/assets/poppins-latin-ext-600-normal-CAhIAdZj.woff2 +0 -0
- package/out/renderer/assets/poppins-latin-ext-600-normal-Df5ffKXP.woff +0 -0
- package/out/renderer/assets/poppins-latin-ext-700-normal-DctTR6Tg.woff +0 -0
- package/out/renderer/assets/poppins-latin-ext-700-normal-cby-RkWa.woff2 +0 -0
- package/out/renderer/favicon.ico +0 -0
- package/out/renderer/icon-256.png +0 -0
- package/out/renderer/icon.svg +1 -0
- package/out/renderer/index.html +25 -0
- package/out/renderer/manifest.json +25 -0
- package/out/renderer/robot-simulator.html +1640 -0
- package/package.json +106 -0
- package/src/cli/index.js +332 -0
- package/src/cli/monitor.js +413 -0
- package/src/cli/theme.js +347 -0
- package/src/launcher/MarkTray.cs +227 -0
- package/src/main/browser-agent.js +1132 -0
- package/src/main/git-service.js +90 -0
- package/src/main/google/google-calendar.js +69 -0
- package/src/main/google/google-drive.js +263 -0
- package/src/main/google/google-gmail.js +131 -0
- package/src/main/google/google-service.js +241 -0
- package/src/main/node-tools.js +23 -0
- package/src/main/pc-agent-scripts/mouse-locker.ps1 +76 -0
- package/src/main/pc-agent-scripts/ocr-region.ps1 +185 -0
- package/src/main/pc-agent-scripts/pc-daemon.ps1 +726 -0
- package/src/main/pc-agent-scripts/pc-overlay.ps1 +253 -0
- package/src/main/pc-agent-scripts/pick-folder.ps1 +33 -0
- package/src/main/pc-agent-scripts/read-ui.ps1 +181 -0
- package/src/main/pc-agent-scripts/take-screenshot.ps1 +24 -0
- package/src/main/pc-agent-scripts/win-action.ps1 +380 -0
- package/src/main/plugins/plugin-loader.js +306 -0
- package/src/main/skills/skill-manager.js +265 -0
- package/src/main/syntax-validator.js +455 -0
- package/src/main/task-daemon.js +117 -0
- package/src/main/telegram/telegram-service.js +835 -0
- package/src/main/tools/browser-tools.js +516 -0
- package/src/main/tools/file-tools.js +1126 -0
- package/src/main/tools/git-tools.js +79 -0
- package/src/main/tools/google-tools.js +566 -0
- package/src/main/tools/index.js +36 -0
- package/src/main/tools/media-tools.js +42 -0
- package/src/main/tools/system-tools.js +295 -0
- package/src/main/tools/task-tools.js +73 -0
- package/src/main/tools/telegram-tools.js +101 -0
- package/src/renderer/index.html +24 -0
- package/src/renderer/public/favicon.ico +0 -0
- package/src/renderer/public/icon-256.png +0 -0
- package/src/renderer/public/icon.svg +1 -0
- package/src/renderer/public/manifest.json +25 -0
- package/src/renderer/public/robot-simulator.html +1640 -0
- package/src/renderer/src/App.jsx +304 -0
- package/src/renderer/src/api/ai/awareness.js +294 -0
- package/src/renderer/src/api/ai/chatSummarizer.js +79 -0
- package/src/renderer/src/api/ai/contextCompactor.js +129 -0
- package/src/renderer/src/api/ai/contextManager.js +1130 -0
- package/src/renderer/src/api/ai/core.js +167 -0
- package/src/renderer/src/api/ai/index.js +4 -0
- package/src/renderer/src/api/ai/memoryGroomer.js +101 -0
- package/src/renderer/src/api/ai/persona.js +115 -0
- package/src/renderer/src/api/ai/planning.js +317 -0
- package/src/renderer/src/api/ai/relationship.js +177 -0
- package/src/renderer/src/api/ai/skillSynthesizer.js +168 -0
- package/src/renderer/src/api/ai/tools.js +167 -0
- package/src/renderer/src/api/ai/utils.js +359 -0
- package/src/renderer/src/api/db.js +1013 -0
- package/src/renderer/src/api/oramaStore.js +592 -0
- package/src/renderer/src/api/ragPipeline.js +87 -0
- package/src/renderer/src/api/subagent/subagentExecutor.js +780 -0
- package/src/renderer/src/api/subagent/subagentPrompt.js +44 -0
- package/src/renderer/src/api/subagent/subagentStore.js +173 -0
- package/src/renderer/src/api/taskExecutor.js +18 -0
- package/src/renderer/src/api/taskStore.js +315 -0
- package/src/renderer/src/api/tools/core-tools.js +707 -0
- package/src/renderer/src/api/tools/index.js +151 -0
- package/src/renderer/src/api/turnPairMigrator.js +200 -0
- package/src/renderer/src/api/vectorMemory.js +136 -0
- package/src/renderer/src/api/wakeWord.js +101 -0
- package/src/renderer/src/api/web-bridge.js +885 -0
- package/src/renderer/src/api/webSpeech.js +178 -0
- package/src/renderer/src/api/workspaceRag.js +76 -0
- package/src/renderer/src/assets/electron.svg +10 -0
- package/src/renderer/src/assets/icon.svg +1 -0
- package/src/renderer/src/assets/main.css +589 -0
- package/src/renderer/src/assets/music-cover.png +0 -0
- package/src/renderer/src/assets/wavy-lines.svg +25 -0
- package/src/renderer/src/components/Chat/ApprovalBubble.jsx +127 -0
- package/src/renderer/src/components/Chat/CodeBlock.jsx +83 -0
- package/src/renderer/src/components/Chat/DurableTaskBubble.jsx +455 -0
- package/src/renderer/src/components/Chat/FileDiffModal.jsx +328 -0
- package/src/renderer/src/components/Chat/GeminiWidgets.jsx +82 -0
- package/src/renderer/src/components/Chat/MemoryFooterBubble.jsx +34 -0
- package/src/renderer/src/components/Chat/MessageBubble.jsx +459 -0
- package/src/renderer/src/components/Chat/PluginExecutionBubble.jsx +41 -0
- package/src/renderer/src/components/Chat/ThinkingBubble.jsx +316 -0
- package/src/renderer/src/components/Chat/YoutubeSearchBubble.jsx +43 -0
- package/src/renderer/src/components/Chat/YoutubeSummaryBubble.jsx +40 -0
- package/src/renderer/src/components/Chat/index.js +11 -0
- package/src/renderer/src/components/ChatList.jsx +434 -0
- package/src/renderer/src/components/GlobalCameraManager.jsx +67 -0
- package/src/renderer/src/components/Versions.jsx +15 -0
- package/src/renderer/src/components/YoutubeMusicPlayer.jsx +375 -0
- package/src/renderer/src/components/camera/CameraPreview.jsx +236 -0
- package/src/renderer/src/components/config/AiEngineSection.jsx +363 -0
- package/src/renderer/src/components/config/CameraSection.jsx +100 -0
- package/src/renderer/src/components/config/PermissionsSection.jsx +130 -0
- package/src/renderer/src/components/config/ShortcutSection.jsx +102 -0
- package/src/renderer/src/components/config/VoiceSection.jsx +110 -0
- package/src/renderer/src/components/config/index.js +5 -0
- package/src/renderer/src/components/core/Avatar.jsx +2197 -0
- package/src/renderer/src/components/core/ConfirmModal.jsx +80 -0
- package/src/renderer/src/components/core/DraggableHoloCard.jsx +125 -0
- package/src/renderer/src/components/core/FloatingMenu.jsx +272 -0
- package/src/renderer/src/components/core/HoloCard.jsx +64 -0
- package/src/renderer/src/components/core/InputBar.jsx +1346 -0
- package/src/renderer/src/components/core/ProcessPanel.jsx +216 -0
- package/src/renderer/src/components/core/ResponseArea.jsx +149 -0
- package/src/renderer/src/components/core/StatusIndicator.jsx +59 -0
- package/src/renderer/src/components/core/ThoughtNeuralFlow.jsx +168 -0
- package/src/renderer/src/components/core/ToolClustersDeck.jsx +210 -0
- package/src/renderer/src/components/core/native-skills.js +43 -0
- package/src/renderer/src/components/neural-core/EmotionalCortexLobe.jsx +359 -0
- package/src/renderer/src/components/neural-core/NodeDissectionModal.jsx +57 -0
- package/src/renderer/src/components/neural-core/ProceduralMatrixLobe.jsx +193 -0
- package/src/renderer/src/components/neural-core/ProceduralSkillModal.jsx +53 -0
- package/src/renderer/src/components/neural-core/ResetAiModal.jsx +198 -0
- package/src/renderer/src/components/neural-core/SynapticMemoryLobe.jsx +204 -0
- package/src/renderer/src/components/neural-core/traitMeta.js +102 -0
- package/src/renderer/src/components/subagent/AgentChatFeed.jsx +603 -0
- package/src/renderer/src/components/subagent/AgentInspector.jsx +224 -0
- package/src/renderer/src/components/subagent/AgentSidebar.jsx +216 -0
- package/src/renderer/src/components/subagent/SubagentIntercom.jsx +572 -0
- package/src/renderer/src/components/subagent/SubagentTopologyMap.jsx +423 -0
- package/src/renderer/src/contexts/ApprovalContext.jsx +425 -0
- package/src/renderer/src/contexts/ChatContext.jsx +61 -0
- package/src/renderer/src/contexts/YoutubeMusicContext.jsx +333 -0
- package/src/renderer/src/data/faqData.js +202 -0
- package/src/renderer/src/hooks/agent/executeAgentTool.js +895 -0
- package/src/renderer/src/hooks/agent/index.js +4 -0
- package/src/renderer/src/hooks/agent/useMarkMusic.js +75 -0
- package/src/renderer/src/hooks/agent/useMarkPlan.js +2739 -0
- package/src/renderer/src/hooks/agent/useMarkState.js +173 -0
- package/src/renderer/src/hooks/agent/useMarkYoutube.js +82 -0
- package/src/renderer/src/hooks/agent/useRelationalGrowth.js +201 -0
- package/src/renderer/src/hooks/telegram/useTelegramBot.js +63 -0
- package/src/renderer/src/hooks/useAwareness.js +289 -0
- package/src/renderer/src/hooks/useChatArchiver.js +52 -0
- package/src/renderer/src/hooks/useConfirm.jsx +68 -0
- package/src/renderer/src/hooks/useMarkAgent.js +454 -0
- package/src/renderer/src/hooks/useMemoryGroomer.js +152 -0
- package/src/renderer/src/hooks/useVAD.js +511 -0
- package/src/renderer/src/hooks/useWebSpeechWakeWord.js +122 -0
- package/src/renderer/src/main.jsx +12 -0
- package/src/renderer/src/pages/ChatStudio.jsx +922 -0
- package/src/renderer/src/pages/Configuration.jsx +360 -0
- package/src/renderer/src/pages/GoogleWorkspace.jsx +293 -0
- package/src/renderer/src/pages/Guidebook.jsx +917 -0
- package/src/renderer/src/pages/Knowledge.jsx +241 -0
- package/src/renderer/src/pages/MarkHome.jsx +491 -0
- package/src/renderer/src/pages/NeuralCore.jsx +786 -0
- package/src/renderer/src/pages/Plugins.jsx +630 -0
- package/src/renderer/src/pages/SkillEditor.jsx +380 -0
- package/src/renderer/src/pages/Skills.jsx +219 -0
- package/src/renderer/src/pages/Subagents.jsx +342 -0
- package/src/renderer/src/pages/TelegramBot.jsx +343 -0
- package/src/renderer/src/utils/chatContentParser.js +203 -0
- package/src/renderer/src/utils/toolClusters.js +201 -0
- package/src/server/bin/sha3_wasm_bg.wasm +0 -0
- package/src/server/config-manager.js +57 -0
- package/src/server/index.js +195 -0
- package/src/server/launcher.js +87 -0
- package/src/server/memory/db-store.js +758 -0
- package/src/server/memory/orama-store.js +177 -0
- package/src/server/memory/vector-engine.js +109 -0
- package/src/server/routes/ai.routes.js +280 -0
- package/src/server/routes/awareness.routes.js +62 -0
- package/src/server/routes/chat.routes.js +61 -0
- package/src/server/routes/config.routes.js +41 -0
- package/src/server/routes/index.js +35 -0
- package/src/server/routes/integrations.routes.js +116 -0
- package/src/server/routes/memory.routes.js +256 -0
- package/src/server/routes/plugins.routes.js +72 -0
- package/src/server/routes/skills.routes.js +139 -0
- package/src/server/routes/subagents.routes.js +70 -0
- package/src/server/routes/tasks.routes.js +175 -0
- package/src/server/routes/workspace.routes.js +127 -0
- package/src/server/services/ai/ai-utils.js +161 -0
- package/src/server/services/ai/openai-provider.js +757 -0
- package/src/server/services/ai/web-provider.js +729 -0
- package/src/server/services/ai-bridge.js +46 -0
- package/src/server/services/deepseek-web.js +956 -0
- package/src/server/services/gemini-web.js +170 -0
- package/src/server/services/notification-service.js +91 -0
- package/src/server/services/updater.js +125 -0
- package/src/server/tools/awareness-tracker.js +292 -0
- package/src/server/tools/group-tools.js +1164 -0
- package/src/server/tools/media-tools.js +244 -0
- package/src/server/tools/pc-agent.js +327 -0
- package/src/server/tools/screen-service.js +51 -0
- package/src/server/ws-hub.js +168 -0
- package/src/shared/parsers/mark-tag-parser.js +275 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
MARK Agent Source Available License v1.0
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Mada Putra.
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Permission is granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software to:
|
|
8
|
+
|
|
9
|
+
- Use the software for personal, educational, and research purposes.
|
|
10
|
+
- Study and modify the source code.
|
|
11
|
+
- Create forks and submit contributions.
|
|
12
|
+
- Distribute unmodified or modified copies under this same license.
|
|
13
|
+
|
|
14
|
+
The following activities are strictly prohibited without prior written
|
|
15
|
+
permission from the copyright holder:
|
|
16
|
+
|
|
17
|
+
- Selling this software.
|
|
18
|
+
- Offering this software as a paid service (SaaS).
|
|
19
|
+
- Using this software, in whole or in part, in any commercial product
|
|
20
|
+
or commercial service.
|
|
21
|
+
- Removing or altering this license or copyright notice.
|
|
22
|
+
- Relicensing this software under another license.
|
|
23
|
+
|
|
24
|
+
Any derivative work must include this license and clearly state the
|
|
25
|
+
changes that were made.
|
|
26
|
+
|
|
27
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
28
|
+
EXPRESS OR IMPLIED. THE AUTHORS SHALL NOT BE LIABLE FOR ANY CLAIM,
|
|
29
|
+
DAMAGES, OR OTHER LIABILITY ARISING FROM THE USE OF THIS SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# MARK - Metacognitive Artificial Relational Knowledge (v5.0.0)
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+
[](https://github.com/Mazees/mark-agent/releases/)
|
|
5
|
+
|
|
6
|
+
> **Mark BUKAN sekadar asisten virtual biasa. Mark adalah entitas AI yang dirancang untuk memiliki emosi, bertindak selayaknya manusia, dan memimpin tim agen cerdas.**
|
|
7
|
+
> Lebih dari sekadar chatbot kaku, Mark adalah _Personal AI OS Companion_ yang berjalan di ekosistem lokal Anda—dilengkapi dengan arsitektur modern **Node.js Core + WebUI (React 19 / Vite 7)** dalam antarmuka Microsoft Edge App Mode (dengan fallback otomatis ke browser default) dan CLI Live Activity Monitor (`mark`). Didukung oleh **Centralized SQLite Database**, sistem memori jangka panjang berbasis _Vector Memory_, **Relational Growth System**, **Autonomous Multi-Agent Sub-Agent Engine**, serta **Multi-Session Browser Automation**. Ditenagai oleh _Hybrid AI Engine_, Mark dapat beroperasi secara lokal untuk privasi maksimal, atau menggunakan _Cloud APIs_ untuk mengeksekusi tugas kompleks, menyusun rencana (_Agentic Planning_), mengotomatisasi desktop PC, merangkum video YouTube, mengobservasi layar atau dunia nyata (_Vision_), hingga kendali jarak jauh via **Telegram Bot**.
|
|
8
|
+
|
|
9
|
+
> [!IMPORTANT]
|
|
10
|
+
> Proyek ini dioptimalkan khusus untuk **Windows** (Windows 10/11 64-bit).
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Fitur Unggulan
|
|
15
|
+
|
|
16
|
+
- **Arsitektur Decoupled V5 (Node.js Core + Modern WebUI):** Inti aplikasi dipisahkan menjadi server Node.js performa tinggi (`src/server/`) dengan WebSocket Hub (`/stream`) dan antarmuka React 19 / Vite 7 (`src/renderer/`). Berjalan ringan dalam mode Microsoft Edge App Mode terisolasi (dengan fallback otomatis ke browser default) dan CLI Live Activity Monitor (`mark`).
|
|
17
|
+
- **Autonomous Multi-Agent Sub-Agent Engine (Mission Control):** Mark bertindak sebagai _Lead Agent_ yang mampu memecah tugas kompleks dan mendelegasikannya ke banyak **Sub-Agent spesialis** yang bekerja secara paralel di latar belakang. Dilengkapi dengan antarmuka **Mission Control** dan **Live Sub-Agent Intercom HUD** yang menampilkan pemikiran mendalam (_Reasoning Analisis_), langkah eksekusi berkala (_Execution Steps_), dan laporan hasil akhir dengan dukungan penuh Markdown & Syntax Highlighting.
|
|
18
|
+
- **Centralized SQLite & Real-Time Hybrid Vector Engine:** Seluruh data (memori kognitif, riwayat obrolan, turn pairs, konfigurasi, sub-agent, dan tasks) tersimpan terpusat di `%USERPROFILE%\.config\mark-agent\mark.db` menggunakan `better-sqlite3` dalam WAL mode berkecepatan tinggi. Diindeks secara _real-time_ ke mesin pencari hybrid `@orama/orama` menggunakan model embedding lokal 384-dimensi (`Xenova/paraphrase-multilingual-MiniLM-L12-v2`) via Transformers.js tanpa ketergantungan API luar.
|
|
19
|
+
- **Universal Zero-Hallucination Policy & Strict Groundedness:** Menerapkan kebijakan anti-halusinasi ketat di seluruh ekosistem Mark. Jika data riwayat percakapan lama, berkas kode, atau fakta dokumen tidak ditemukan, Mark wajib jujur mengakuinya dan dilarang keras mengarang informasi, menambah-nambahkan poin fiktif (_anti-extrapolation_), atau berpura-pura mengingat hal yang belum pernah dibahas.
|
|
20
|
+
- **Multi-Session Isolated Browser Automation:** Sistem browser Chromium fisik Mark mendukung sesi independen tanpa batas berbasis `puppeteer-core`. Beberapa Sub-Agent dapat melakukan riset web, menavigasi Google, mengekstrak data, dan mengisi formulir secara bersamaan tanpa saling mengganggu, didukung oleh **Multi-Card Holo Preview** yang menampilkan status visual tiap sesi di antarmuka desktop.
|
|
21
|
+
- **Dynamic Agentic Planning (ReAct Loop):** Mengganti sistem penjawab statis dengan arsitektur penalaran cerdas. Mark mampu memecah masalah, memikirkan strategi, menggunakan _tools_ secara otonom berulang kali, dan mengevaluasi hasilnya sebelum memberikan jawaban akhir yang komprehensif.
|
|
22
|
+
- **Agent Task Workflows (Durable Tasks & Mission Control):** Untuk pekerjaan multi-langkah yang panjang, Mark secara otonom mendekomposisi tugas menjadi tahapan konkret via tool `create_agent_task` (atau dipicu manual via perintah `/task` dan alias `/plan`). Setiap langkah divalidasi, di-checkpoint persisten ke basis data SQLite, dapat di-retry otomatis, dan menghasilkan berkas artefak markdown resmi di folder `Documents/Mark Tasks/<task-id>/` yang terpantau real-time pada komponen antarmuka `DurableTaskBubble` di chat stream.
|
|
23
|
+
- **Zero-Vision Physical PC & Desktop Automation (Windows UIAutomation + C# Daemon):** Menggunakan daemon PowerShell C# persisten (`pc-daemon.ps1`), Mark dapat membaca elemen GUI desktop secara struktural, mengklik koordinat, mengetik teks Unicode, menekan kombinasi _shortcut_, hingga mengelola jendela aplikasi di Windows secara fisik dengan kecepatan tinggi tanpa biaya vision API. Dilengkapi _Floating Security Banner_ dan tombol darurat **Emergency Stop (`Ctrl+Shift+S`)**.
|
|
24
|
+
- **Infinite Memory & Injection Knowledge RAG:** Sistem Vector Retrieval-Augmented Generation (RAG) berjalan secara _offline_. Mark menyimpan riwayat memori obrolan masif tanpa batas dan pengguna dapat menambahkan dokumen (.pdf, .docx, .txt, .md) ke dalam _knowledge base_ tanpa membebani _context window_ LLM.
|
|
25
|
+
- **Automatic Memory Groomer (Hippocampus Engine):** Sistem pembersihan dan konsolidasi memori mandiri berbasis _Orama Clustering_ dan _LLM Batch Processing_. Hippocampus Engine mendeteksi klaster memori serupa (`profile` & `preference`) lalu menggabungkannya secara kronologis tanpa kehilangan riwayat penting.
|
|
26
|
+
- **Visualisasi Jaringan Otak (Memory Visualizer):** Antarmuka _Live Feed_ "Mark Neural Core" berbasis grafis Neural Network 2D interaktif (`react-force-graph-2d`) untuk menjelajahi jaringan _Chat History_, _Knowledge Base_, hingga _Document Vault_.
|
|
27
|
+
- **Relational Growth System & Dynamic Persona:** Hubungan Anda dengan Mark dievaluasi layaknya manusia sungguhan melalui 4 parameter krusial (_Warmth, Sarcasm, Trust, Energy_). Tingkat kesopanan, kelancangan (_roasting_), dan kepribadian Mark akan berevolusi organik sesuai gaya komunikasi Anda.
|
|
28
|
+
- **Multi AI Provider (Built-in Gemini / Local / Cloud):** Mark hadir dengan **Google Gemini Engine (Gratis)** sebagai _provider_ bawaan yang siap pakai tanpa API Key. Anda juga memiliki fleksibilitas penuh untuk menggunakan **Local AI** (LM Studio), **Cloud AI** (Groq / Cerebras), maupun _Custom OpenAI-Compatible API_.
|
|
29
|
+
- **Asisten Bot Telegram Mandiri (Telegraf Engine):** Terhubung langsung dengan Telegram Bot API. Mark dapat dikontrol jarak jauh via Telegram, merangkum obrolan, mengunduh MP3 YouTube, mengambil tangkapan layar PC, dan secara otomatis menyinkronkan seluruh balasan & _Awareness Engine_ ke Telegram Admin secara _real-time_.
|
|
30
|
+
- **Proaktif dengan Awareness Engine:** Mark tidak hanya pasif merespons. Mark dapat proaktif menyapa, mengingatkan tugas, atau memutarkan musik di latar belakang saat Anda sedang bersantai atau bekerja fokus.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Kemampuan Utama (Tools)
|
|
35
|
+
|
|
36
|
+
- **Autonomous Multi-Agent Tools:** `spawn_subagent`, `wait_subagents`, `send_message`, `list_subagents`, `kill_subagent`.
|
|
37
|
+
- **Durable Task Workflow Engine:** `create_agent_task` (pemecahan tugas multi-tahap terstruktur, checkpointing berkala, validasi kelayakan deliverable, dan generasi berkas artefak).
|
|
38
|
+
- **Memory & Recall Tools (`memory-search`):** Pencarian semantik memori, preferensi, catatan teknis, dan pasangan percakapan asli (Turn Pairs) dengan _similarity threshold_ dinamis (`keyword||threshold||limit`, default threshold `0.5`, limit `5`).
|
|
39
|
+
- **Multi-Session Web Browsing (`browser-*`):** `browser-navigate`, `browser-read`, `browser-click`, `browser-type`, `browser-scroll`, `browser-extract`, `browser-ask-user`, `browser-close`.
|
|
40
|
+
- **Desktop Automation (`os-*`):** `os-read`, `os-click`, `os-type`, `os-key`, `os-scroll`, `os-open`, `os-list-windows`, `os-focus-window`.
|
|
41
|
+
- **Native File Handling & PowerShell:** `read-file`, `write-file`, `replace-content`, `delete-file`, `list-dir`, `grep-search`, `run-powershell`.
|
|
42
|
+
- **Vision Awareness:** `analyze-screen` (analisis layar multi-monitor) dan `camera-look` (observasi visual webcam).
|
|
43
|
+
- **Interaksi Suara Natural:** Voice Activity Detection (VAD) dengan Groq Whisper STT / Local Whisper dan Edge-TTS (`id-ID-ArdiNeural`).
|
|
44
|
+
- **Perangkum YouTube & YouTube Music:** Transkripsi kilat video YouTube dan pemutar YouTube Music tanpa iklan dengan _ad-blaster_.
|
|
45
|
+
- **Mark Skills System:** Kustomisasi kepribadian dan kapabilitas menggunakan instruksi Markdown (`.md`) dengan pemanggilan slash command (`/nama-skill`) serta native built-in skills (`/task`, `/plan`).
|
|
46
|
+
- **Sistem Plugin Kustom:** Penambahan modul fungsi Node.js baru langsung dari antarmuka pengguna dengan Monaco Editor.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Arsitektur Memory Persistence & Integritas Fakta
|
|
51
|
+
|
|
52
|
+
Arsitektur memori Mark V5 dirancang untuk kontinuitas ingatan jangka panjang (_Long-Term Memory Persistence_) secara lokal tanpa bergantung pada cloud:
|
|
53
|
+
|
|
54
|
+
1. **Episodic Memory (Turn-Pair Vector Index)**:
|
|
55
|
+
- Setiap sesi percakapan dipecah ke dalam unit dialog utuh (Pertanyaan Pengguna + Jawaban AI).
|
|
56
|
+
- Dihitung embedding-nya (vektor 384-dimensi) menggunakan model lokal Transformers.js (`MiniLM-L12-v2`).
|
|
57
|
+
- Disimpan secara persisten di tabel `chat_turns` SQLite dan diindeks ke `@orama/orama` untuk pencarian semantik hybrid (BM25 + Cosine Similarity).
|
|
58
|
+
2. **Semantic & Core Memory (`profile`, `preference`, `notes`)**:
|
|
59
|
+
- Menyimpan fakta identitas pengguna, preferensi gaya bicara, dan catatan eksplisit di tabel `memories`.
|
|
60
|
+
- Dikelola dan dirampingkan secara otomatis oleh _Hippocampus Memory Groomer_.
|
|
61
|
+
3. **Self Improving Skill**:
|
|
62
|
+
- Menyimpan alur kerja teknis dan trik solusi yang berhasil dipelajari Mark saat memecahkan masalah kompleks ke tabel `learned_skills`.
|
|
63
|
+
4. **Universal Zero-Hallucination & Groundedness**:
|
|
64
|
+
- Sistem prompt dan ReAct loop Mark dibentengi oleh aturan integritas fakta ketat. Mark dilarang mengarang fakta jika riwayat obrolan atau data file tidak ditemukan di memori, menjamin hasil penarikan informasi yang akurat dan dapat dipercaya.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Arsitektur Proyek (V5)
|
|
69
|
+
|
|
70
|
+
```text
|
|
71
|
+
mark/
|
|
72
|
+
├── bin/
|
|
73
|
+
│ └── mark.js # CLI Launcher & Terminal Live Monitor entrypoint
|
|
74
|
+
├── src/
|
|
75
|
+
│ ├── cli/ # Terminal Dashboard & Live Activity Monitor
|
|
76
|
+
│ │ ├── monitor.js # Real-time Terminal Dashboard
|
|
77
|
+
│ │ └── theme.js # CLI Theme & ASCII HUD
|
|
78
|
+
│ ├── server/ # Node.js Core Backend Server
|
|
79
|
+
│ │ ├── index.js # Server Entrypoint, Express REST API, Auto-Port Fallback
|
|
80
|
+
│ │ ├── ws-hub.js # WebSocket Hub Server (/stream)
|
|
81
|
+
│ │ ├── launcher.js # Edge App Mode & Browser Window Manager
|
|
82
|
+
│ │ ├── routes/ # Modular Express Routers (tasks.routes.js, etc.)
|
|
83
|
+
│ │ ├── memory/
|
|
84
|
+
│ │ │ ├── db-store.js # Centralized SQLite Engine (better-sqlite3, 12 tables)
|
|
85
|
+
│ │ │ ├── orama-store.js # Hybrid Orama Vector & Text Search
|
|
86
|
+
│ │ │ └── vector-engine.js # Transformers.js 384d Local Embeddings
|
|
87
|
+
│ │ ├── services/
|
|
88
|
+
│ │ │ ├── ai-bridge.js # Multi-Provider Router, Rate Limiter, JSON Repair
|
|
89
|
+
│ │ │ └── gemini-web.js # Native Gemini Web RPC Engine
|
|
90
|
+
│ │ └── tools/
|
|
91
|
+
│ │ ├── pc-agent.js # Win32 Desktop Automation Driver
|
|
92
|
+
│ │ ├── awareness-tracker.js # OS-level Active Window & Idle Tracker
|
|
93
|
+
│ │ ├── screen-service.js # GDI+ Zero-Dependency Screen Capture
|
|
94
|
+
│ │ └── media-tools.js # Audio, STT & TTS Service
|
|
95
|
+
│ ├── main/ # Native Subsystems & Automation
|
|
96
|
+
│ │ ├── browser-agent.js # Multi-Session Puppeteer Chromium Engine
|
|
97
|
+
│ │ ├── node-tools.js # Native OS Tool Registry (File, PS, Folder Dialog, dll)
|
|
98
|
+
│ │ ├── git-service.js # Git Workspace Repository Tools
|
|
99
|
+
│ │ ├── pc-agent-scripts/ # PowerShell & Win32 C# persistent daemon
|
|
100
|
+
│ │ ├── plugins/ # Dynamic User Plugins Engine
|
|
101
|
+
│ │ ├── skills/ # Pure Node.js Markdown Skills Engine
|
|
102
|
+
│ │ ├── google/ # Google Workspace (OAuth2, Drive, Calendar, Gmail)
|
|
103
|
+
│ │ ├── task-daemon.js # Long-Running Background Tasks Daemon
|
|
104
|
+
│ │ └── telegram/ # Telegraf Telegram Bot Service
|
|
105
|
+
│ └── renderer/ # Modern WebUI Frontend
|
|
106
|
+
│ └── src/
|
|
107
|
+
│ ├── api/ # Client DB Transparent Proxy & AI Brain
|
|
108
|
+
│ │ ├── db.js # SQLite REST Transparent Proxy (Dexie-compatible API)
|
|
109
|
+
│ │ ├── taskStore.js # Durable Task & Workflow State Machine
|
|
110
|
+
│ │ ├── web-bridge.js # Dynamic WebSocket & API Client (window.api)
|
|
111
|
+
│ │ ├── ai/ # Planning, Persona, Relationship, Awareness
|
|
112
|
+
│ │ └── subagent/ # Autonomous Sub-Agent Runner & Intercom Store
|
|
113
|
+
│ ├── components/ # Reusable Holo UI Components & HUDs
|
|
114
|
+
│ │ ├── Chat/ # Chat Bubbles (DurableTaskBubble, MessageBubble, dll)
|
|
115
|
+
│ │ └── core/ # InputBar & Native Skills (/task)
|
|
116
|
+
│ ├── hooks/ # Custom Hooks (useMarkPlan, useVAD, useAwareness)
|
|
117
|
+
│ └── pages/ # MarkHome, ChatStudio, Subagents, Configuration, dll
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## Teknologi Terkait
|
|
123
|
+
|
|
124
|
+
| Kategori | Teknologi |
|
|
125
|
+
| :--------------------- | :-------------------------------------------------------------------------------------- |
|
|
126
|
+
| **Arsitektur Core** | Node.js 20+, Express 4, WebSocket Hub (`ws`) |
|
|
127
|
+
| **Antarmuka (UI)** | React 19, Vite 7, Tailwind CSS 4, DaisyUI 5, Monaco Editor, Lucide Icons |
|
|
128
|
+
| **Desktop Launcher** | Node.js CLI Live Monitor (`mark`), Microsoft Edge App Mode |
|
|
129
|
+
| **Database & Storage** | Centralized SQLite (`better-sqlite3` WAL Mode), REST Proxy Layer |
|
|
130
|
+
| **Pencarian & Vektor** | `@orama/orama` WASM, Transformers.js (`@huggingface/transformers`, 384d) |
|
|
131
|
+
| **Mesin AI** | Google Gemini (Bawaan Gratis) / Custom Open AI API Format / LM Studio (Offline) |
|
|
132
|
+
| **Browser Automation** | `puppeteer-core` (Multi-Session Chromium Isolation) |
|
|
133
|
+
| **Desktop Automation** | Win32 UIAutomation, persistent PowerShell C# Daemon, WinRT OCR |
|
|
134
|
+
| **Suara & Audio** | Groq Whisper-Large-v3 / Local Whisper, Edge-TTS (`id-ID-ArdiNeural`), Web Audio API VAD |
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Instalasi & Penggunaan
|
|
139
|
+
|
|
140
|
+
### Persyaratan Sistem
|
|
141
|
+
|
|
142
|
+
- **Sistem Operasi**: Windows 10/11 (64-bit)
|
|
143
|
+
- **Node.js**: Versi 20 atau lebih baru
|
|
144
|
+
- **Browser**: Microsoft Edge (bawaan Windows) atau Google Chrome
|
|
145
|
+
- (Opsional) **LM Studio** untuk model AI lokal _offline_.
|
|
146
|
+
- (Opsional) **API Key Groq / Cerebras** untuk inferensi awan berkecepatan tinggi.
|
|
147
|
+
|
|
148
|
+
### Menjalankan dari Source Code (Development)
|
|
149
|
+
|
|
150
|
+
1. **Kloning repositori:**
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
git clone https://github.com/Mazees/mark-agent.git
|
|
154
|
+
cd mark-agent/mark
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
2. **Instalasi dependensi:**
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
npm install
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
3. **Jalankan aplikasi (Development):**
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
npm start
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
_Perintah ini akan menyalakan server Node.js Core di port dinamis (default: 3000) dan membuka antarmuka MARK di Microsoft Edge App Mode._
|
|
170
|
+
|
|
171
|
+
4. **Menjalankan UI & Server secara terpisah (Dev Mode):**
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# Terminal 1: Core Backend Server
|
|
175
|
+
npm run dev:server
|
|
176
|
+
|
|
177
|
+
# Terminal 2: Vite Hot-Reload UI
|
|
178
|
+
npm run dev:ui
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Menjalankan Perintah Global `mark` di Terminal
|
|
182
|
+
|
|
183
|
+
1. **Build WebUI:**
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
npm run build:ui
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
2. **Daftarkan perintah `mark` (Global Symlink):**
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
npm link
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
3. **Jalankan dari folder mana saja di terminal:**
|
|
196
|
+
```bash
|
|
197
|
+
mark
|
|
198
|
+
```
|
|
199
|
+
_Perintah ini akan membuka Live Activity Monitor di terminal dan otomatis meluncurkan antarmuka WebUI MARK di layar._
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## Panduan Migrasi Data (Versi Sebelumnya ke V5)
|
|
204
|
+
|
|
205
|
+
Bagi pengguna MARK versi sebelumnya (berbasis Electron/Dexie) yang ingin memindahkan seluruh memori, dokumen, dan riwayat obrolan ke MARK V5 (berbasis SQLite), silakan baca panduan lengkap di [docs/MIGRATION_GUIDE.md](./docs/MIGRATION_GUIDE.md).
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
**Dilarang keras menjual atau memperdagangkan perangkat lunak ini untuk keuntungan komersial tanpa izin tertulis.**
|
package/bin/mark.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* MARK Launcher Entrypoint
|
|
5
|
+
* Menjalankan Node.js Core Server, WebUI (Edge App Mode), dan Live Monitor Dashboard.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { runMonitor } from '../src/cli/monitor.js'
|
|
9
|
+
import { stopDaemon } from '../src/server/tools/pc-agent.js'
|
|
10
|
+
import { server } from '../src/server/index.js'
|
|
11
|
+
import { closeUI } from '../src/server/launcher.js'
|
|
12
|
+
|
|
13
|
+
process.on('SIGINT', () => {
|
|
14
|
+
console.log('\n\x1b[33m● Mematikan MARK Core Engine...\x1b[0m')
|
|
15
|
+
closeUI()
|
|
16
|
+
stopDaemon()
|
|
17
|
+
if (server) {
|
|
18
|
+
server.close(() => {
|
|
19
|
+
process.exit(0)
|
|
20
|
+
})
|
|
21
|
+
}
|
|
22
|
+
setTimeout(() => process.exit(0), 1000)
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
runMonitor().catch((err) => {
|
|
26
|
+
console.error('\x1b[31m[Startup Error]:\x1b[0m', err)
|
|
27
|
+
})
|