{"adoption": {"forks": 102, "observed_at": "2026-08-28T04:03:30.685905+00:00", "stars": 1081}, "canonical_url": "https://ross.abutalabs.com/products/munk-ai", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Self-improving AI testing engine across Android, iOS, and Web.", "domain": ["testing", "developer-tools"], "enriched": true, "function": ["e2e-testing", "testing", "computer-vision", "mcp"], "health_score": 99, "homepage": "https://www.munk.sh/", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["chaxiu/munk-ai"], "name": "chaxiu/munk-ai", "platform": ["windows", "python", "cli"], "pushed_at": "2026-08-19T04:59:47+00:00", "repo": "chaxiu/munk-ai", "stars": 1081, "tags": ["ai-testing", "visual-testing", "real-device-testing", "self-improving", "test-automation", "qa", "mcp-server", "local-first", "coding-agents", "mobile-testing", "web-testing", "verification-loop", "no-xpath", "structured-evidence", "automation", "ai-agents", "macos", "linux", "android", "ios"], "topics": [], "urls": [], "use_cases": ["automate mobile app testing on android and ios without writing xpath selectors", "verify ui changes on real devices from natural-language test intent", "set up an ai-powered testing gateway for coding agents", "run visual-first regression tests for web apps", "close the loop between code generation and device-level verification", "collect screenshots, ui trees, and runtime logs as structured test evidence", "improve test coverage over time from accumulated execution evidence"], "what_it_is": "Munk AI (the open-source Munk Test CLI) is a local-first, self-improving AI testing engine that turns natural-language intent into product-level validation on real Android, iOS, and Web targets. It combines visual-first analysis, real-device execution, structured evidence (screenshots, UI trees, runtime logs), and a knowledge-accumulation loop, exposed via CLI, MCP, local API, and a local Web UI.", "when_to_avoid": ["You need a traditional script-based test framework with fine-grained selector or assertion control", "You need iOS device testing on Windows or Linux, which lack the iOS device bridge", "You require a cloud-hosted device farm or grid at scale rather than a local-first runtime", "You cannot configure the multimodal model backend the engine depends on"], "when_to_choose": ["You need real-device verification (Android, iOS, Web) instead of mocks, static analysis, or fragile selector-based tests", "You want natural-language product requirements turned into automated validation for developers, QA, or coding agents", "You want a local-first, privacy-conscious testing runtime that integrates via CLI, MCP, local API, or Web UI and supports CI regression"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/munk-ai", "repo": "chaxiu/munk-ai", "role": "main", "score": 80}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.685905+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:51:20.973931+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "29452a737089198687a9d48a4e10894df4fe6e0f6b4f59253f33b47c12bd9cac", "fetched_at": "2026-08-28T04:03:30.685905+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chaxiu/munk-ai"}, {"content_hash": "3b9f437be04526cf814b116f4e4275cce204a1620fe162668d17400c79c0a901", "fetched_at": "2026-08-29T12:53:54.802071+00:00", "kind": "homepage", "missing": false, "url": "https://www.munk.sh/"}, {"content_hash": "ef22646b265723490b2c2f7f06f454ee8705c66bdafd33b62b8505cea5f743f5", "fetched_at": "2026-08-29T12:53:54.811330+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs"}, {"content_hash": "a76760bb894d95a7fc52a030329263c521553790e90319d922a3ffc09f914eef", "fetched_at": "2026-08-29T12:53:54.813012+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/install"}, {"content_hash": "cd8556864f121b18a9fc2f7b4d7d015361e24307a7dd938902ea2734649c5451", "fetched_at": "2026-08-29T12:53:54.814683+00:00", "kind": "site_page", "missing": false, "url": "https://www.munk.sh/docs/ai"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 7, "rhythm": 98}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 98, "days_push": 14, "days_rel": 14, "gap_med": 16, "n_releases_24m": 2}, "score": 80, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}