{"adoption": {"forks": 366, "observed_at": "2026-08-28T04:08:48.169125+00:00", "stars": 4396}, "canonical_url": "https://ross.abutalabs.com/products/applicationinspector", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A source code analyzer built for surfacing features of interest and other characteristics to answer the question 'What's in the code?' quickly using static analysis with a json based rules engine. Ideal for scanning components before use or detecting feature level changes.", "domain": ["security", "developer-tools"], "enriched": true, "function": ["security", "parser", "developer-tools"], "health_score": 100, "homepage": null, "language": "C#", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["microsoft/ApplicationInspector"], "name": "microsoft/ApplicationInspector", "platform": ["cross-platform", "cli", "windows", "dotnet"], "pushed_at": "2026-08-26T21:17:13+00:00", "repo": "microsoft/ApplicationInspector", "stars": 4396, "tags": ["source-code-characterization", "static-analysis", "rules-engine", "feature-detection", "software-composition-analysis", "linux", "macos"], "topics": ["static-analysis", "software-characterization", "application-inspector", "detection", "security-tools", "security-scanner"], "urls": [], "use_cases": ["analyze what features an open-source component contains before adopting it", "detect feature-level changes between versions of a codebase", "scan third-party code for security-relevant characteristics like encryption or shell execution", "identify which frameworks and APIs a mixed-language project uses", "audit untrusted source code without relying on documentation"], "what_it_is": "Microsoft Application Inspector is a source code characterization tool that uses a JSON-based rules engine with 400+ regex patterns to identify features of first- or third-party code, such as cryptography use, file operations, cloud APIs, and frameworks. It supports many languages and produces HTML, JSON, or text reports to quickly answer 'what's in the code?'.", "when_to_avoid": ["you need deep bug or vulnerability detection rather than feature identification", "you need runtime or dynamic analysis", "you need full SAST with taint tracking"], "when_to_choose": ["you need fast feature-level characterization of source code across many languages", "you want to vet third-party or OSS components before use", "you need to diff feature sets between code versions"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/applicationinspector", "repo": "microsoft/ApplicationInspector", "role": "main", "score": 95}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "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:08:48.169125+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:48.169125+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:21:10.801760+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3e0b5d9a206bb5178593b0c4ab1817616f7ec3fa0427d83e4852929b6d7d779d", "fetched_at": "2026-08-28T04:08:48.169125+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/ApplicationInspector"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 87}, "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": 2522, "days_push": 7, "days_rel": 7, "gap_med": 41.0, "n_releases_24m": 13}, "score": 95, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}