Skip to content
 
 

Repository files navigation

Opedrgent

An open-source Android AI assistant built with Jetpack Compose and Kotlin. 基于 Jetpack Compose 和 Kotlin 构建的开源 Android AI 助手应用。


Features / 功能特性

Core AI Capabilities / 核心 AI 能力

  • Multi-Model Chat — Supports multiple LLM APIs (OpenAI-compatible), streaming output + Thinking Mode 多模型对话 — 支持接入多种 LLM API(OpenAI 兼容接口),支持流式输出 + Thinking Mode
  • On-Device Inference — LiteRT-LM (v0.12.0+) integration, Gemma 4 support, GPU/NPU acceleration 本地模型推理 — 集成 LiteRT-LM(v0.12.0+),支持 Gemma 4 等模型的端侧推理,GPU/NPU 加速
  • Tool Calling (Tool Call) — Extensible tool architecture, LLM dynamically invokes 15+ tools: search, URL fetch, JS execution, Intent dispatch, calendar, etc. 工具调用 (Tool Call) — 可扩展的 Tool 架构,LLM 可动态调用搜索、URL 读取、JS 执行、Intent、日历等 15+ 工具
  • Deep Research — Multi-step search + web reading + auto-summarization + hybrid ranking workflow (HybridRankingEngine) 深度研究 — 多步搜索 + 网页阅读 + 自动总结 + 混合排序的研究工作流(HybridRankingEngine)

Voice & Audio / 语音与音频

  • Speech-to-Text (STT) — Multi-engine architecture: Sherpa-ONNX (offline, Paraformer/SenseVoice) + MiMO ASR + Android SpeechRecognizer, auto-fallback chain 语音识别(STT) — 多引擎架构:Sherpa-ONNX(离线,Paraformer/SenseVoice)+ MiMO ASR + Android SpeechRecognizer,自动降级链
  • Full-Duplex Voice Call — Interview Mode: AudioRecord || AudioTrack + hardware AEC + VAD + BargeIn, 5-state FSM 全双工语音通话 — Interview Mode:AudioRecord || AudioTrack + 硬件 AEC + VAD + BargeIn,5 状态有限状态机
  • Meeting Transcription — Speaker diarization + multi-party speech-to-text + MeetingTranscriber persistence 会议转录 — 说话人分离 + 多人语音转文字 + MeetingTranscriber 持久化
  • TTS Synthesis — MiMO TTS client + local TtsPlayer TTS 语音合成 — MiMO TTS 客户端 + 本地 TtsPlayer 播放器

Knowledge & Memory / 知识与记忆

  • Insight Sprout (Knowledge Sprout) — 4-stage AI insight engine: Seed Extraction -> Cross-Domain Association -> AHA Insight -> Golden Quote Echo, with 3-layer progressive context injection (tags -> index -> detail) 知识发芽(Insight Sprout) — 四阶段 AI 洞察生成引擎:种子提取 -> 跨领域关联 -> AHA 洞察 -> 金句回响,三层渐进式上下文注入(标签 -> 索引 -> 详情)
  • Hippocampus Memory System — SQLite-based global index with keyword extraction + LIKE fuzzy matching, auto-indexes notes/conversations/recordings/sprouts; goal anchoring + drift detection for interview mode 海马记忆系统(Hippocampus Memory) — SQLite 全局索引,关键词提取 + LIKE 模糊匹配,自动索引笔记/对话/录音/发芽;面试模式下目标锚定 + 漂移检测
  • Note System — Full CRUD note management + folder classification + KnowledgeGraph + sprout/share/graph visualization 笔记系统 — 完整的 CRUD 笔记管理 + 文件夹分类 + 知识图谱(KnowledgeGraph)+ 笔记发芽/分享/图谱可视化
  • Knowledge Base — KnowledgeBase document management and retrieval 知识库 — KnowledgeBase 文档管理与检索

Browser & Automation / 浏览器与自动化

  • WebView Agent (Browser Automation) — Automation engine for web content scraping, searching, screenshots, multimodal interaction clicks 浏览器接管(WebView Agent) — 自动化引擎,支持网页内容抓取、搜索、截图、多模态交互点击
  • Automation Workflows — AutomationWorker + AutomationStore for configurable scheduled/triggered tasks 自动化工作流(Automation) — AutomationWorker + AutomationStore,可配置的定时/触发任务
  • App Widget — Home screen widget quick entry App Widget — 桌面小组件快捷入口
  • KeepAlive Service — Background keep-alive service KeepAlive Service — 后台保活服务

Skill System (V2) / 技能系统(V2)

  • SKILL.md Standard Frontmatter — Complete metadata: name / description / version / category / require-secret SKILL.md 标准 Frontmatter — name / description / version / category / require-secret 完整元数据
  • JS Skill Sandbox Execution — run_js tool -> SkillWebViewExecutor -> ai_edge_gallery_get_result() callback JS Skill 沙箱执行 — run_js 工具 -> SkillWebViewExecutor -> ai_edge_gallery_get_result() 回调
  • Native Intent Dispatch — run_intent tool -> 6 Intent types (email/SMS/calendar/URL/share/phone) Native Intent 调用 — run_intent 工具 -> 6 种 Intent 类型(邮件/短信/日历/URL/分享/电话)
  • Three Import Methods — URL remote loading, local file import, manual creation 三种导入方式 — URL 远程加载、本地文件导入、手动创建
  • Built-in JS Skills — calculate-hash (hash calculator), mood-tracker-lite (mood tracker + dashboard) 内置 JS Skills — calculate-hash(哈希计算)、mood-tracker-lite(心情追踪+仪表盘)
  • Built-in Text Skills — critical-inquiry, insight-sprout, insight-review, text-refine, mimo-tts, multi-agent-collaboration 内置 Text Skills — critical-inquiry、insight-sprout、insight-review、text-refine、mimo-tts、 multi-agent-collaboration
  • RequireSecret 3-Tier Auth — ALLOW / ASK / DENY per-skill permission control RequireSecret 三级授权 — ALLOW / ASK / DENY per-skill 权限控制

Editor Team System / 编辑组系统

  • Multi-Role Editing Pipeline — EditorTeamService + EditorRole definitions 多角色编辑管道 — EditorTeamService + EditorRole 定义
  • Skill Deep Integration — EditorTeamSkillAdapter + SkillModelUnifier Skill 深度集成 — EditorTeamSkillAdapter + SkillModelUnifier

Calendar, Health & Documents / 日历、健康与文档

  • Calendar CRUD — CalendarHelper + RunCalendarTool: create/query/update/delete system calendar events directly via ContentProvider (no user confirmation needed), supports natural language time parsing 日历 CRUD — CalendarHelper + RunCalendarTool:通过 ContentProvider 直接创建/查询/修改/删除系统日历事件(无需用户确认),支持自然语言时间解析
  • Health Connect Integration — HealthConnectHelper + HealthTool: read steps/heart rate/calories/distance/sleep from Health Connect, auto-inject today's summary into system prompt Health Connect 健康数据集成 — HealthConnectHelper + HealthTool:从 Health Connect 读取步数/心率/卡路里/距离/睡眠,今日摘要自动注入 system prompt
  • PDF Processing — PdfProcessor + OcrEngine (ML Kit Chinese+English OCR) PDF 处理 — PdfProcessor + OcrEngine(ML Kit 中英文 OCR)
  • DOCX Processing — DocxProcessor (Word document processing) DOCX 处理 — DocxProcessor(Word 文档处理)

Data & Network / 数据与网络

  • Smart Network Layer — SmartCircuitBreaker (circuit breaking) + RateLimiter (rate limiting) + MultiLevelCacheManager (multi-level cache) + AdaptiveConcurrencyController (adaptive concurrency) 智能网络层 — SmartCircuitBreaker(熔断)+ RateLimiter(限流)+ MultiLevelCacheManager(多级缓存)+ AdaptiveConcurrencyController(自适应并发)
  • Search Enhancement — HybridRankingEngine (hybrid ranking) + SemanticScorer (semantic scoring) + DynamicAuthorityScorer (dynamic authority scoring) + FreshnessCalculator (freshness) + ResultDeduplicator (deduplication) 搜索增强 — HybridRankingEngine(混合排序)+ SemanticScorer(语义评分)+ DynamicAuthorityScorer(动态权威评分)+ FreshnessCalculator(新鲜度)+ ResultDeduplicator(去重)
  • Security — TlsFingerprintManager + UserAgentPool + ToolCallGuardrail + PromptSafety 安全 — TlsFingerprintManager + UserAgentPool + ToolCallGuardrail + PromptSafety

Tech Stack / 技术栈

Component Technology
UI Framework Jetpack Compose + Material3 + WindowSizeClass
Language Kotlin (JVM Toolchain 21)
Min SDK API 26 (Android 8.0)
Target SDK API 35
Network OkHttp + Jsoup
Local Storage DataStore Preferences + Room + SQLite + EncryptedSecurity
OCR Google ML Kit (Chinese + English)
Speech Recognition Sherpa-ONNX + MiMO ASR + Android SpeechRecognizer
On-Device LLM LiteRT-LM (v0.12.0+) + TFLite + GPU/NPU
Concurrency Kotlin Coroutines + Flow
Serialization kotlinx.serialization (JSON)
Background Tasks WorkManager + ForegroundService
DI Manual DI (no Hilt/Koin)

Project Structure / 项目结构

app/src/main/java/top/hsyscn/opedrgent/
├── MainActivity.kt              # App entry (singleTask + SEND Intent)
│                               # 应用入口(singleTask + SEND Intent)
│
├── ui/                          # Compose UI layer
│   ├── AppRoot.kt               # Main navigation entry (BottomNav + Routes)
│   ├── MainViewModel.kt         # Core ViewModel (state management center)
│   ├── SessionScreen.kt         # AI chat main screen
│   ├── ChatTab.kt               # Chat tab page
│   ├── InterviewScreen.kt       # Interview mode UI
│   ├── EditorTeamScreen.kt      # Editor team screen
│   ├── HomeDashboardScreen.kt   # Home dashboard
│   ├── KnowledgeBaseScreen.kt   # Knowledge base screen
│   ├── HippocampusScreen.kt     # Hippocampus memory management screen
│   ├── SettingsScreen.kt        # Settings page
│   ├── ExportScreen.kt          # Data export page
│   ├── AutomationsScreen.kt     # Automation workflow management
│   ├── InvisiblePartnerSettings.kt  # Invisible partner settings
│   ├── ImportFileScreen.kt      # File import page
│   ├── MeetingRecordScreen.kt   # Meeting records page
│   ├── RecordingTab.kt          # Recording tab
│   ├── Note*.kt                 # Note screens (list/editor/share/graph/sprout)
│   ├── components/              # Shared Composable components
│   │   ├── ChatComponents.kt    # Chat message components
│   │   ├── MarkdownRenderer.kt  # Markdown renderer
│   │   ├── StreamingComponents.kt  # Streaming output components
│   │   ├── HoldToDictate.kt     # Press-and-hold dictation component
│   │   ├── TextAndVoiceInput.kt # Text + voice input bar
│   │   ├── InputModeBar.kt      # Input mode switcher bar
│   │   ├── QuestionDock.kt      # Interview question dock
│   │   ├── RecordingCard.kt     # Recording card
│   │   ├── SttResultCard.kt     # STT result card
│   │   ├── ModelSelectorDialog.kt    # Model selector dialog
│   │   ├── ModelDownloadDialog.kt    # Model download dialog
│   │   └── ...                  # Other dialogs/cards
│   └── theme/                   # Material3 theme (Color/Type/Theme)
│
├── network/                     # Network layer
│   ├── LlmClient.kt             # LLM API client (streaming/non-streaming)
│   ├── WebViewAgent.kt          # WebView automation engine
│   ├── ToolExecutor.kt          # Tool dispatch hub
│   ├── SourceFetcher.kt         # URL content fetching
│   ├── WebSearcher.kt           # Web search engine
│   ├── WebResearchRouter.kt     # Deep research router
│   ├── HttpClients.kt           # OkHttp client management
│   ├── SmartCircuitBreaker.kt  # Smart circuit breaker
│   ├── RateLimiter.kt           # Rate limiter
│   ├── MultiLevelCacheManager.kt  # Multi-level cache manager
│   ├── HybridRankingEngine.kt  # Hybrid ranking engine
│   ├── SemanticScorer.kt        # Semantic scorer
│   ├── AdaptiveConcurrencyController.kt  # Adaptive concurrency controller
│   ├── TlsFingerprintManager.kt # TLS fingerprint manager
│   └── ...                      # Other network utilities
│
├── tools/                       # Tool Call implementations
│   ├── ToolRegistry.kt          # Dynamic tool registry
│   ├── ToolAnnotations.kt       # Tool annotation definitions
│   ├── RunJsTool.kt             # run_js - JS Skill sandbox execution
│   ├── RunIntentTool.kt         # run_intent - Android Intent dispatch
│   ├── RunCalendarTool.kt       # run_calendar - Calendar CRUD operations
│   ├── HealthTool.kt            # health_read - Health Connect data reading
│   ├── ReadUrlTool.kt           # read_url - URL content fetching
│   ├── WebSearchTool.kt         # web_search - Web search
│   ├── InsightSproutTool.kt     # insight_sprout - Knowledge sprout
│   ├── DeepResearchTool.kt      # deep_research - Deep research
│   ├── SpeechToTextTool.kt      # speech_to_text - Speech to text
│   ├── MimoTtsTool.kt           # mimo_tts - TTS synthesis
│   ├── GenerateReportTool.kt    # generate_report - Report generation
│   ├── ReverseGeocodeTool.kt    # reverse_geocode - Reverse geocoding
│   ├── OpenBrowserTool.kt       # open_browser - Open browser
│   └── prompts/                 # Per-tool prompt templates
│
├── stt/                         # Speech-to-text module
│   ├── AsrManager.kt            # ASR manager (unified entry point)
│   ├── SpeechEngine.kt          # Speech engine interface
│   ├── SherpaOnnxEngine.kt      # Sherpa-ONNX engine implementation
│   ├── MimoAsrEngine.kt         # MiMO ASR engine implementation
│   ├── AndroidSpeechRecognizer.kt  # System built-in speech recognizer
│   ├── MeetingTranscriber.kt    # Meeting transcriber
│   ├── AudioProcessor.kt        # Audio preprocessing
│   ├── ModelManager.kt          # STT model manager
│   ├── SttConfig.kt             # STT configuration
│   └── SttResult.kt             # STT result data class
│
├── interview/                   # Interview mode (core differentiator)
│   ├── InterviewAgent.kt        # Interview agent (meta-prompt decision)
│   ├── InterviewMode.kt         # Interview mode state definitions
│   ├── VoiceConversationEngine.kt  # v3 full-duplex voice engine
│   ├── FullDuplexAudioEngine.kt    # Low-level audio engine (Record/Track + AEC)
│   └── HippocampusMemory.kt     # Hippocampus memory (goal anchor + drift detection)
│
├── insight/                     # Knowledge sprout engine
│   ├── InsightSproutEngine.kt   # Sprout engine orchestrator
│   ├── SproutSeed.kt            # Stage 1: Seed extraction
│   ├── SproutConnection.kt      # Stage 2: Cross-domain association
│   ├── SproutInsight.kt         # Stage 3: AHA insight
│   ├── SproutQuote.kt           # Stage 4: Golden quote echo
│   ├── SproutPhase.kt           # Stage scheduling
│   ├── SproutPromptBuilder.kt   # Prompt builder
│   ├── SproutVoiceStatement.kt  # Voice statement extraction
│   └── KeywordTrigger.kt        # Keyword trigger
│
├── intelligence/                # Memory & intelligence system
│   ├── VectorMemory.kt          # Vector memory (SQLite + cosine similarity)
│   ├── MemoryBridge.kt          # Memory bridge (dual-write sync)
│   ├── MemoryDir.kt             # In-memory memory directory
│   ├── PersistenceLayer.kt      # Persistence abstraction layer
│   ├── SqlitePersistence.kt     # SQLite persistence implementation
│   ├── RecommendationEngine.kt  # Recommendation engine
│   ├── FeaturePipeline.kt       # Feature pipeline (agent interceptor chain)
│   ├── TokenBudgetMonitor.kt    # Token budget monitor
│   ├── PushNotificationHelper.kt # Push notification helper
│   └── UserBehaviorTracker.kt   # User behavior tracker
│
├── mcp/                         # MCP / Skill system
│   ├── skills/                  # V2 Skills
│   │   ├── SkillLoader.kt       # Dynamic loader
│   │   ├── SkillDefinition.kt   # Standard definition (SKILL.md frontmatter)
│   │   ├── SkillCurator.kt      # Skill curation
│   │   ├── CuratorService.kt    # Curation service
│   │   ├── SkillWebViewExecutor.kt  # JS sandbox executor
│   │   ├── SkillSystem.kt       # V1 Legacy skill system (@Deprecated)
│   │   └── GalleryBridge.kt     # JS callback bridge
│   ├── editors/                 # Editor team
│   │   ├── EditorTeamService.kt # Editing pipeline execution
│   │   ├── EditorRole.kt        # Role definitions
│   │   ├── EditorTeamSkillAdapter.kt  # Skill adapter
│   │   └── SkillModelUnifier.kt # Model unifier
│   └── tools/
│       └── ToolRegistry.kt      # Skill-driven dynamic tool registration
│
├── agent/                       # Multi-agent coordination
│   ├── AgentSwarm.kt            # Agent swarm
│   ├── MultiAgentOrchestrator.kt # Multi-agent orchestrator
│   └── ResearchState.kt         # Research state management
│
├── note/                        # Note system
│   ├── Note.kt                  # Note entity
│   ├── NoteDao.kt               # Room DAO
│   ├── NoteDatabase.kt          # Room Database
│   ├── NoteRepository.kt        # Repository layer
│   ├── Folder.kt                # Folder entity
│   ├── FolderDao.kt             # Folder DAO
│   ├── FolderDatabase.kt        # Folder database
│   ├── FolderRepository.kt      # Folder repository
│   ├── KnowledgeGraph.kt        # Knowledge graph
│   └── SproutService.kt         # Note sprout service
│
├── storage/                     # Data persistence
│   ├── MemoryStore.kt           # Memory store
│   ├── KnowledgeBase.kt         # Knowledge base
│   ├── KnowledgeBaseModel.kt    # Knowledge base model
│   ├── KbDocument.kt            # Knowledge base document
│   ├── HippocampusIndex.kt      # Hippocampus index
│   ├── HippocampusDatabase.kt   # Hippocampus database
│   ├── SproutReportStore.kt     # Sprout report store
│   ├── ResearchStore.kt         # Research result store
│   ├── SkillsStore.kt           # Skill store
│   ├── PersonaDetector.kt       # Persona detector
│   ├── NotificationHelper.kt    # Notification helper
│   └── WarmFeedbackService.kt   # Warm feedback service
│
├── llm/                         # On-device model inference
│   ├── LocalLlmEngine.kt        # Local LLM engine
│   ├── ModelConfig.kt           # Model configuration
│   ├── LocalModelConfig.kt      # Local model config
│   └── ModelDownloadManager.kt  # Model download manager
│
├── tts/                         # Text-to-speech
│   ├── TtsPlayer.kt             # TTS player
│   └── MimoTtsClient.kt         # MiMO TTS client
│
├── calendar/                    # Calendar module
│   ├── CalendarHelper.kt        # Calendar operation helper
│   ├── CalendarModels.kt        # Calendar data models
│   └── IcsWriter.kt            # ICS file writer
│
├── health/                      # Health Connect module
│   └── HealthConnectHelper.kt   # Health Connect helper (steps/heart rate/sleep)
│
├── pdf/                         # PDF processing
│   ├── PdfProcessor.kt          # PDF parsing/processing
│   └── OcrEngine.kt            # OCR engine (ML Kit)
│
├── docx/                        # DOCX processing
│   └── DocxProcessor.kt        # Word document processor
│
├── automation/                  # Automation workflows
│   ├── AutomationWorker.kt      # Workflow executor
│   ├── AutomationStore.kt       # Workflow storage
│   └── AutomationModels.kt      # Workflow data models
│
├── service/                     # System services
│   ├── KeepAliveService.kt      # Background keep-alive service
│   ├── ModelDownloadService.kt  # Model download foreground service
│   ├── DailyDigestNotifier.kt   # Daily digest notification
│   └── AutoSproutWorker.kt      # Auto-sprout Worker
│
├── widget/                      # App Widget
│   └── OpedrgentWidget.kt      # Home screen widget
│
├── security/                   # Security module (see AGENTS.md)
├── settings/                   # Settings
│   └── ApiSettings.kt          # API configuration management
├── env/                        # Environment detection
│   └── EnvironmentProvider.kt  # Environment provider
├── tool/                       # Tool base
│   └── Tool.kt                 # Tool interface definition
├── model/                      # Data models
│   └── Models.kt               # Common data models
└── utils/                      # Utilities
    ├── DebugLog.kt             # Debug logging
    ├── ContextCompressor.kt    # Context compression
    ├── PromptBuilder.kt        # Prompt building
    ├── ToolCallParser.kt       # Tool call parsing
    ├── ToolCallGuardrail.kt    # Tool call safety guardrail
    ├── StreamingMessageBuffer.kt  # Streaming message buffer
    ├── PromptCache.kt          # Prompt caching
    ├── PromptSafety.kt         # Prompt safety check
    ├── PromptBlocks.kt         # Prompt block assembly
    ├── PromptSection.kt        # Prompt sectioning
    ├── ToolPrompts.kt          # Tool prompt collection
    ├── ContextFileLoader.kt    # Context file loader
    ├── ModelInfo.kt            # Model info
    ├── StringUtils.kt          # String utilities
    ├── PlatformContext.kt      # Platform context
    ├── SourceValidator.kt      # Source validation
    └── BackgroundPermHelper.kt # Background permission helper

Build Environment / 构建环境要求

Item Requirement
JDK Java 21 (must use Android Studio bundled JBR)
Gradle 8.x (managed via Wrapper)
SDK compileSdk 35, minSdk 26, targetSdk 35
NDK arm64-v8a + armeabi-v7a
IDE Android Studio (latest stable recommended)

Build / 构建

# Enter project directory / 进入项目目录
cd Opedrgent

# Set JAVA_HOME (Windows, use Android Studio JBR)
# 设置 JAVA_HOME(Windows,使用 Android Studio JBR)
$env:JAVA_HOME="C:\Program Files\Android\Android Studio\jbr"

# Build Debug APK / 编译 Debug APK
./gradlew assembleDebug

Notes / 注意事项

  • System JDK 25+ is incompatible with Gradle 8.x -- must use Android Studio bundled JBR (Java 21) 系统 JDK 25+ 与 Gradle 8.x 不兼容,必须使用 Android Studio 内置 JBR(Java 21)
  • Sherpa-ONNX AAR must be manually placed in app/libs/ directory (currently uses stub for compilation) Sherpa-ONNX AAR 需手动下载放入 app/libs/ 目录(当前使用 stub 编译)

Architecture / 核心架构

Interview Mode / 面试模式

InterviewScreen (UI)
  -> MainViewModel.interviewState
    -> InterviewAgent (meta-prompt, LLM-agnostic decision)
      -> HippocampusMemory (goal anchor + drift detection + attention injection)
        -> VoiceConversationEngine v3
          -> FullDuplexAudioEngine (AudioRecord || AudioTrack + hardware AEC)
              VAD (RMS energy, 800ms timeout, 200f threshold)
              BargeIn (user interruption detection)
              DuplexState state machine (5 states)

Memory System / 记忆系统

HippocampusIndex (SQLite global index)
  - Auto-indexes: notes, conversations, recordings, sprouts, interviews
  - Keyword extraction + LIKE fuzzy matching
  - Three scopes: GLOBAL / PROJECT / SESSION
MemoryStore (SharedPreferences)
  - User manual memories + note summary sync
  - Injected into LLM system prompt as user profile

Health Data Flow / 健康数据流

SettingsScreen (toggle) -> ACTIVITY_RECOGNITION permission
  -> Health Connect permissions (steps/heart rate/sleep/calories)
    -> MainViewModel.buildSystemPrompt()
      -> HealthConnectHelper.getHealthSummaryForPrompt()
        -> Auto-inject today's summary into system prompt
    -> LLM can also call health_read tool for detailed data

Skill Data Flow / Skill 数据流

User(SkillsScreen) -> Import(SKILL.md) -> SkillLoader(parse & store)
    -> LLM chat(tool_calls) -> ToolExecutor(run_js/run_intent/calendar/search...)
        -> SkillWebViewExecutor / Android Intent / CalendarHelper
            -> ai_edge_gallery_get_result() callback
                -> Result returned to LLM -> Stream output to user
用户(SkillsScreen) -> 导入(SKILL.md) -> SkillLoader(解析存储)
    -> LLM对话(tool_calls) -> ToolExecutor(run_js/run_intent/calendar/search...)
        -> SkillWebViewExecutor / Android Intent / CalendarHelper
            -> ai_edge_gallery_get_result() 回调
                -> 结果返回 LLM -> 流式输出给用户

Assets Structure / Assets 结构

assets/skills/
├── calculate-hash/              # JS Skill: Hash calculator / 哈希计算器
│   ├── SKILL.md                 #   Frontmatter metadata / Frontmatter 元数据
│   └── scripts/index.html       #   Web Crypto API impl / Web Crypto API 实现
├── mood-tracker-lite/           # JS Skill: Mood tracker / 心情追踪器
│   ├── SKILL.md                 #   Frontmatter metadata / Frontmatter 元数据
│   ├── scripts/index.html       #   CRUD + trend analysis / CRUD + 趋势分析
│   └── assets/dashboard.html    #   Interactive dashboard / 交互式仪表盘
├── critical-inquiry.md          # Text Skill: Critical inquiry / 批判性探究
├── insight-sprout.md            # Text Skill: Knowledge sprout / 知识发芽
├── insight-review.md            # Text Skill: Insight review / 洞察评审
├── text-refine.md               # Text Skill: Text refinement / 文本精炼
├── mimo-tts.md                  # Text Skill: TTS voice / TTS 语音
└── multi-agent-collaboration.md # Text Skill: Multi-agent collaboration / 多智能体协作

Documentation / 文档

About

Phone local agent

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages