{"adoption": {"forks": 138, "observed_at": "2026-08-28T04:04:55.062750+00:00", "stars": 1506}, "canonical_url": "https://ross.abutalabs.com/products/amical", "card": {"archived": false, "artifact_type": "application", "description": "🎙️ AI Dictation App - Open Source and Local-first ⚡ Type 3x faster, no keyboard needed. 🆓 Powered by open source models, works offline, fast and accurate.", "domain": ["speech-processing", "developer-tools"], "enriched": true, "function": ["speech-recognition", "nlp", "llm-inference", "mcp"], "health_score": 100, "homepage": "https://amical.ai", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["amicalhq/amical"], "name": "amicalhq/amical", "platform": ["windows", "cross-platform"], "pushed_at": "2026-08-24T21:07:59+00:00", "repo": "amicalhq/amical", "stars": 1506, "tags": ["dictation", "whisper", "ollama", "voice-to-text", "local-ai", "note-taking", "natural-language-processing", "macos", "electron"], "topics": ["ai", "macos", "speech-to-text", "whisper", "electron", "productivity", "asr", "self-hosted", "dictation", "mcp", "transcription", "ai-note-taking-app", "dictate", "dictation-tool", "meeting-notes", "nextjs", "local-ai", "ollama", "windows"], "urls": [], "use_cases": ["dictate text instead of typing", "transcribe voice to text offline", "take meeting notes with voice", "write emails and messages by voice", "run speech-to-text locally for privacy", "dictate code comments and jira tickets"], "what_it_is": "Amical is an open-source, local-first AI dictation app for macOS and Windows that transcribes speech with Whisper and enhances it with LLMs (local via Ollama or cloud). It auto-formats dictated text contextually for the focused app and includes note-taking, custom vocabulary, and MCP integrations.", "when_to_avoid": ["you need Linux or web-only dictation", "you require enterprise SSO/SAML on the free tier", "you want a fully cloud-managed transcription service"], "when_to_choose": ["you want private, offline dictation with local Whisper models", "you need context-aware formatting across different apps", "you prefer open source and self-hosted AI tooling"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/amical", "repo": "amicalhq/amical", "role": "main", "score": 84}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "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:04:55.062750+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:55.062750+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:32:38.491954+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b560c5de972530340ee06cb5cb07d4f41d936097da9a05151d529f16fe66b444", "fetched_at": "2026-08-28T04:04:55.062750+00:00", "kind": "readme", "missing": false, "url": "https://github.com/amicalhq/amical"}, {"content_hash": "f709a21b8f15a2bebd62f4c406ff94823cc360af908dd622098b66adae55a150", "fetched_at": "2026-08-29T11:37:19.389339+00:00", "kind": "homepage", "missing": false, "url": "https://amical.ai"}, {"content_hash": "707e5d35d1b2d669d42c1af6844b7306215a5e38a9f9e71256635306b5e14684", "fetched_at": "2026-08-29T11:37:19.398843+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/docs"}, {"content_hash": "c551e6a26c6a278ddcd2eaf2142d587c21634be9f29d75228567bf3d6e66c65a", "fetched_at": "2026-08-29T11:37:19.401026+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/pricing"}, {"content_hash": "a255bac2c380ea921bb8984e148bcfa359619f28a1e4be4289a5ae333dda77a3", "fetched_at": "2026-08-29T11:37:19.402903+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/changelog"}, {"content_hash": "291d7e395e96d3a4a8838c8d82eb1760461193ba33c86406846b192be6e9958a", "fetched_at": "2026-08-29T11:37:19.404463+00:00", "kind": "site_page", "missing": false, "url": "https://amical.ai/for/jira"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 34, "rhythm": 93}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 482, "days_push": 9, "days_rel": 46, "gap_med": 5, "n_releases_24m": 42}, "score": 84, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}