[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-82991":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":29,"lastSyncTime":30,"discoverSource":31},82991,"munk-ai","chaxiu\u002Fmunk-ai","chaxiu","Self-improving AI testing engine across Android, iOS, and Web.",null,"Python",146,15,9,1,0,21,78,89,84,3.61,"Apache License 2.0",false,"main",true,[],"2026-06-12 02:04:30","# Munk AI\n\n> AI testing infrastructure for Harness Engineering across Android, iOS, and Web.\n\nMunk AI is local-first AI testing for the AI era.\n\nIt brings visual understanding, structured planning, and real-device execution into one validation loop.\nBuilt to give Harness Engineering a real-world feedback loop.\n\nNot another XPath-driven test framework.\nBuilt to turn natural-language intent into product-level validation.\n\n## Demo\n\n![Trae + Munk AI demo](.\u002Fassets\u002Foutput-4fps.gif)\n\n*From feature request to real-device validation: Trae + Munk AI implements a new delete flow, builds the project, and verifies the change automatically.*\n\n## Get Started\n\nAvailable on macOS today.\n\nInstall Munk AI, run diagnostics, and start the local Web UI:\n\n```bash\ncurl -fsSL https:\u002F\u002Fget.munk.sh | sh\nmunk doctor\nmunk serve --port 16888\n```\n\nFor docs and updates, visit [munk.sh](https:\u002F\u002Fwww.munk.sh\u002F).\n\n## Why Munk AI\n\nCode generation is no longer the bottleneck.\nVerification is.\n\nMost AI workflows still depend on humans to compile builds, click through UIs, inspect failures, take screenshots, and translate bugs back into prompts.\n\nMunk AI closes that loop.\nIt tests the product itself, not just code, mocks, or static analysis.\n\n- Visual-first validation over fragile selectors and manual click-through testing\n- Real Android, iOS, and Web execution instead of mocked or partial feedback\n- Structured evidence out: screenshots, UI trees, runtime logs\n- Local-first by default: lower cost, tighter privacy, more control\n- One engine for developers, QA teams, and coding agents\n\n### The Old Loop: Humans As Test Operators\n\n```mermaid\ngraph TD\n    classDef human fill:#E8F0FE,stroke:#1A73E8,stroke-width:2px,color:#1A73E8;\n    classDef codingAgent fill:#FCE8E6,stroke:#D93025,stroke-width:2px,color:#D93025;\n    classDef manualTest fill:#FEF7E0,stroke:#F29900,stroke-width:2px,color:#B06000,stroke-dasharray: 5 5;\n\n    H1(👤 Human\u003Cbr\u002F>Defines the requirement):::human\n    A1(🤖 Coding Agent\u003Cbr\u002F>Generates the code):::codingAgent\n    H2(👀 Human tester\u003Cbr\u002F>Compiles, clicks, checks errors):::manualTest\n    H3(📸 Human feedback loop\u003Cbr\u002F>Screenshots and writes context):::manualTest\n\n    H1 -->|Instruction| A1\n    A1 -->|Build and run| H2\n    H2 -->|Bug found| H3\n    H3 -->|Feed context back| A1\n    H2 -->|If it looks correct| END((Delivery))\n\n    subgraph Open-loop vibe coding\n        H1\n        A1\n    end\n\n    subgraph Human-as-feedback bottleneck\n        H2\n        H3\n    end\n```\n\n### The New Loop: Agent Orchestration for Harness Engineering\n\n```mermaid\ngraph TD\n    classDef human fill:#E8F0FE,stroke:#1A73E8,stroke-width:2px,color:#1A73E8;\n    classDef codingAgent fill:#FCE8E6,stroke:#D93025,stroke-width:2px,color:#D93025;\n    classDef testAgent fill:#E6F4EA,stroke:#137333,stroke-width:2px,color:#137333;\n    classDef coreEngine fill:#CEEAD6,stroke:#0D652D,stroke-width:3px,color:#0D652D,stroke-dasharray: 5 5;\n    classDef device fill:#FFF3E0,stroke:#E65100,stroke-width:2px,color:#E65100,stroke-dasharray: 5 5;\n\n    H1(👤 Human\u003Cbr\u002F>Defines goals and acceptance criteria):::human\n    A1(🤖 Coding Agent\u003Cbr\u002F>Writes the code):::codingAgent\n    D1(📱 Device \u002F Emulator \u002F Browser\u003Cbr\u002F>Real execution environment):::device\n    M1(👁️ Munk AI\u003Cbr\u002F>Testing agent):::testAgent\n    C1(📝 Structured bug context\u003Cbr\u002F>Screenshots, UI tree, logs):::testAgent\n\n    H1 -->|Goals and constraints| A1\n    A1 -->|Deploy build| D1\n    A1 -->|Trigger validation| M1\n    M1 -->|Tap, type, verify| D1\n    D1 -.->|Live UI feedback| M1\n    M1 -->|Validation failed| C1\n    C1 -->|Self-healing feedback| A1\n    M1 -->|Validation passed| H1\n\n    subgraph Agent orchestration closed loop\n        A1\n        D1\n        M1\n        C1\n    end\n\n    class M1 coreEngine;\n```\n\n## What It Does\n\nPlan. Run. Review. Verify.\n\n- Turn natural-language requirements into structured test plans\n- Run cross-platform validation on Android, iOS, and Web\n- Record interactions and turn them into reusable test assets\n- Review code changes and infer regression scope automatically\n- Return real UI evidence back into agent workflows\n\n## Tech Stack\n\n### Core Runtime\n\n- Python 3.10\n- FastAPI\n- Typer CLI\n- Pydantic \u002F PydanticAI\n- NumPy \u002F OpenCV\n\n### Device Execution\n\n- Android: `uiautomator2`\n- Web: `Playwright + Chromium`\n- iOS: dedicated runtime integration\n\n### Local UI And Tooling\n\n- Vue 3\n- TypeScript\n- Vite\n- TanStack Query\n- vue-i18n\n\n### Bridge Layer\n\n- Node.js\n- Fastify\n- WebSocket\n- scrcpy ecosystem for local Android device streaming and control\n\n## Architecture\n\nMunk AI exposes one validation engine through multiple entry points:\n\n- CLI for local developer workflows\n- MCP for coding agents and automation systems\n- Local Web UI for QA-oriented device management, test asset management, and batch execution\n- Local API for integration with surrounding tools\n\nThis design allows the same core engine to serve developers, QA, CI workflows, and AI agents without maintaining separate business logic for each surface.\n\n```mermaid\nflowchart TD\n    classDef entry fill:#E8F0FE,stroke:#1A73E8,stroke-width:2px,color:#1A73E8;\n    classDef host fill:#FCE8E6,stroke:#D93025,stroke-width:2px,color:#D93025;\n    classDef workflow fill:#E6F4EA,stroke:#137333,stroke-width:2px,color:#137333;\n    classDef infra fill:#FFF3E0,stroke:#E65100,stroke-width:2px,color:#E65100,stroke-dasharray: 5 5;\n    classDef platform fill:#F3E8FD,stroke:#9334E6,stroke-width:2px,color:#6A1B9A,stroke-dasharray: 5 5;\n\n    A(🧰 CLI\u003Cbr\u002F>Local command entry):::entry\n    B(🔌 Local API\u003Cbr\u002F>Programmatic control surface):::entry\n    C(🧩 MCP\u003Cbr\u002F>External tool integration):::entry\n    D(🖥️ QA Web UI\u003Cbr\u002F>Human-facing workspace):::entry\n\n    E(🎛️ Orchestration Host\u003Cbr\u002F>Coordinates runs and artifacts):::host\n\n    P(📝 Plan\u003Cbr\u002F>Task planning):::workflow\n    R(🏃 Runner\u003Cbr\u002F>Execution loop):::workflow\n    J(⚖️ Judge\u003Cbr\u002F>Outcome evaluation):::workflow\n    V(🔍 Review\u003Cbr\u002F>Result inspection):::workflow\n    O(📼 Recording\u003Cbr\u002F>Capture and replay flow):::workflow\n\n    DP(📱 Device and Perception\u003Cbr\u002F>Execution and sensing layer):::infra\n    L(🔗 Local Bridge\u003Cbr\u002F>Recording transport):::infra\n\n    AX(🤖 Android\u003Cbr\u002F>Runtime target):::platform\n    WX(🌐 Web\u003Cbr\u002F>Runtime target):::platform\n    IX(🍎 iOS\u003Cbr\u002F>Evolving runtime target):::platform\n\n    A --> E\n    B --> E\n    C --> E\n    D --> B\n\n    E --> P\n    E --> R\n    E --> J\n    E --> V\n    E --> O\n\n    R --> DP\n    O --> L\n\n    DP --> AX\n    DP --> WX\n    DP --> IX\n\n    subgraph Entry surfaces\n        A\n        B\n        C\n        D\n    end\n\n    subgraph Core orchestration\n        E\n        P\n        R\n        J\n        V\n        O\n    end\n\n    subgraph Runtime and platform layer\n        DP\n        L\n        AX\n        WX\n        IX\n    end\n```\n\nRepository-level architecture follows a layered model:\n\n- `src\u002Fmunk\u002F` hosts orchestration, adapters, and artifact handling\n- `*-api` packages define stable contracts across package boundaries\n- `*-runtime-*` packages provide local runtime implementations\n- `perception-*` packages separate orchestration from perception internals\n- `recording-web` and `recording-bridge-local` support the human-facing QA UI and recording flow\n\nPlatform support should be read as workflow maturity rather than repository presence alone:\n\n- Android is the primary local execution path today\n- Web support is available and evolving\n- iOS support exists in the repository and continues to evolve\n\n## Current Status\n\nMunk AI is under active development.\n\n- Public repo is live; core modules will be opened in stages.\n- App Knowledge support is complete.\n\n## Roadmap\n\n- [x] App Knowledge support\n- [x] Polished CLI workflows\n- [x] Stable MCP support for coding agents\n- [x] Local Web UI for recording, planning, and execution\n- [x] macOS release\n- [x] Batches mode\n- [x] Schedules mode\n- [x] Api contract open source\n- [ ] Implementation open source\n- [ ] CI & Release Setup\n- [ ] Docs and CONTRIBUTING guide\n- [ ] Windows support\n- [ ] Linux support\n- [ ] iOS environment setup\n- [ ] Web environment setup\n- [ ] Advanced agent\n\n## Vision\n\nCode gets cheaper.\nVerification gets more important.\n\nMunk AI is built for that shift.\nThe goal is simple: give AI-generated software a real feedback loop.\nThat is how Harness Engineering becomes practical.\n\n## Contact\n\n- Twitter \u002F X: [@iBoyCoder](https:\u002F\u002Fx.com\u002FiBoyCoder)\n- WeChat Official Account: `@朱涛的自习室`\n\n## License\n\nApache-2.0. See [License.txt](.\u002FLicense.txt).\n","Munk AI 是一个面向Android、iOS和Web平台的AI测试基础设施，旨在为Harness Engineering提供支持。该项目利用视觉理解、结构化规划和真实设备执行来构建验证循环，能够将自然语言意图转化为产品级验证，而不仅仅是依赖XPath驱动的传统测试框架。它通过在本地环境中运行，降低了成本并增强了隐私保护与控制力，同时提供了包括截图、UI树和运行时日志在内的结构化证据输出。Munk AI适用于需要提高软件开发过程中验证效率的场景，特别适合于开发者、质量保证团队以及编码代理使用，帮助他们从特征请求到实际设备验证的整个流程自动化，从而加速产品迭代周期。",2,"2026-06-11 04:09:49","CREATED_QUERY"]