The section your link pointed to isn't on noir's page any more, so we've brought you to the top.
SASTSASTStatic application security testing, analyzing source code or compiled code for vulnerabilities without running the application. It helps developers find problems before deployment. cyber tool that extracts API endpoints, parameters, headers, and cookies from source code across 205 frameworks to map attack surfacesattack surfacesThe exposed systems, interfaces and access points an attacker could try to use. It includes internet-facing services as well as identities, software and other reachable resources..
noir is an open-source SAST tool, run from the command line, that reads source code and extracts the endpoints an application exposes: paths, methods, parameters, headers, and cookies, with shadow APIs and forgotten handlers surfacing in the same pass rather than a separate mode. It ships as a single binary covering 193 frameworks across 29 languages, so there's no plugin setup, and it also runs passive rules over the same tree to catch hardcoded keys and tokens. The output serves security reviewers who want a focused endpoint list instead of a repository to skim, AI code auditors who need guards and sinks attached to each handler, and DASTDASTDynamic application security testing, probing a running application from the outside for vulnerabilities. It checks behavior exposed through the application's interfaces. users who hand routes to ZAP, Burp, or Caido as a proxy target. Built in the open under OWASPOWASPA nonprofit foundation that publishes open standards, guides, and ranked vulnerability lists—most famously the OWASP Top 10—giving cyber tools a vendor-neutral benchmark to test or report against., it has had 2,332 commits in the past year and a release 31 days ago.
SAST cyber tool that extracts API endpoints, parameters, headers, and cookies from source code across 205 frameworks to map attack surfaces.
Are there routes in this application that never made it into the API docs or got left behind after a refactor?
surfaces shadow APIs and forgotten handlers in the same pass as the rest of the inventory, since it reads the routing code directly rather than trusting a spec or doc
Have I left any hardcoded keys or tokens sitting in this repository?
runs severity-graded passive rules over the same tree it scanned for endpoints, using the community rule set or rules supplied by the reader
Which of these endpoints can a model review without reading the whole repo?
attaches guards, sinks, validators, and one-hop callee context to each endpoint so an AI auditor gets the handler and its surrounding checks, not the full codebase
How do I get a crawler-based scanner to hit the routes it would never find by browsing?
exports the inventory as OpenAPI or hands routes straight to an intercepting proxy so a DAST scanner can probe endpoints a crawl would miss
Did a scan quietly skip part of my codebase or fail on a file?
reports failed analyzers and skipped files in the scan output itself, and can be made to fail the run outright when that happens, instead of dropping the gap silently
English, Korean
Documentation: English, Korean · Release notes: Korean
Korean added in v0.30.0 (May 3, 2026) · Korean added in v0.24.0 (Sep 19, 2025)
Features
13 capabilities
across 2 capability groups
· 3 backed by code, an API document or a real run
Built from noir's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
+Endpoint and attack surface detectionverifiedDiscovers HTTP endpoints, CLI attack surfaces, and realtime/event-driven surfaces by analyzing source code, configuration files, and API schemas across a wide range of languages, frameworks, and platforms.100 releases · 41 other sources · first seen Aug 2023▸
Also counts toward: Python scripting support, Scripting language support
release
100 total
noir now detects 69 additional technologies, including React Router v7, SolidStart, Qwik City, Bun and Deno serve, ts-rest, oRPC, Effect HttpApi, tsoa, routing-controllers, Ts.ED, inversify, Cloudflare Pages, Vercel, Netlify and Firebase functions, Laravel Livewire, Folio, API Platform, Nextcloud, Razor Pages and…
v1.5.0 · Nov 2026
· source
· release history
TypeScript, TSX and Ruby now use their own tree-sitter grammars, improving AST-based parsing for NestJS-family decorators, Fastify, Feathers, tRPC, LoopBack, and Rails callbacks.
v1.5.0 · Nov 2026
· source
· release history
Merged endpoints now carry every contributing technology in details.technologies.
v1.4.0 · Sep 2026
· source
· release history
Adds --diff-ref to diff the attack surface against a git revision, flagging changed endpoints and lost authentication as auth_removed; --fail-on exits with code 3 on matching findings, and the GitHub Action exposes diff_ref and fail_on inputs.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
v1.4.0 · Sep 2026
· source
· release history
Adds support for Express routes registered through a forwarding helper and the field form of the gRPC google.api.http annotation.
v1.4.0 · Sep 2026
· source
· release history
File upload params now emit multipart bodies in curl, httpie, PowerShell, OAS2, and OAS3 output; XML params emit application/xml bodies in OAS and Postman output.
v1.4.0 · Sep 2026
· source
· release history
docs
31 total
C CivetWeb, Mongoose, libmicrohttpd ABP Framework, ASP.NET Core MVC, ASP.NET Core Minimal API, ASP.NET MVC, Carter, FastEndpoints, ServiceStack, System.Net.HttpListener, Wolverine.Http AdonisJS, Apollo Server, Astro, Cloudflare Pages Functions, Egg.js, Elysia, Expo Router, Express, Fastify, Feathers, Fresh, Hapi,…
docs update · Oct 2026
· source
for 1-hop callees in plain output; for guards, callees, sources, sinks, validators, and signals). A single binary supports 261 frameworks across 32 languages, including Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, and Swift. No plugins or per-language setup.
docs update · Oct 2026
· source
Apex Salesforce (REST, Aura, SOAP) C CivetWeb Mongoose libmicrohttpd ABP Framework ASP.NET Razor Pages / Blazor HotChocolate WCF (WebGet/WebInvoke) Wolverine.Http Absinthe Encore Revel Apache Camel Spring Data REST Vaadin Bun.serve Cloudflare Pages Functions Convex Deno.serve Egg.js Expo Router Firebase Functions…
docs update · Oct 2026
· source
로 plain 출력의 1-hop callee, 로 guards/callees/sources/sinks/validators/signals)까지 받습니다. 단일 바이너리로 Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, Swift 등 32개 언어, 261개 프레임워크를 지원합니다. 플러그인이나 언어별 설정은 필요 없습니다.
docs update · Oct 2026
· source
로 plain 출력의 1-hop callee, 로 guards/callees/sources/sinks/validators/signals)까지 받습니다. 단일 바이너리로 Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, Swift 등 31개 언어, 236개 프레임워크를 지원합니다. 플러그인이나 언어별 설정은 필요 없습니다.
docs update · Oct 2026
· source
for 1-hop callees in plain output; for guards, callees, sources, sinks, validators, and signals). A single binary supports 236 frameworks across 31 languages, including Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, and Swift. No plugins or per-language setup.
docs update · Oct 2026
· source
command line
--only-techs — Restrict auto-detection to these tech detectors (comma-separated, e.g., `rails,django`).
v1.2.0 · Jul 2026
· command-line history
we ran it
The output (truncated) lists supported technologies with their file formats, alias names, and per-technology capability flags covering endpoint, method, parameter types (query, path, body, header,…
Aug 2026
· the full run
example
8 total
Launch mobile entry point analysis directly for Android using ADB.$ noir scan -f adb <path_to_source>
v1.1.0 · Jun 2026
· source
Launch mobile entry point analysis directly for iOS using simctl.$ noir scan -f simctl <path_to_source>
v1.1.0 · Jun 2026
· source
Run the scanner using only the NuxtJS detector to focus on Vue-based endpoints.$ noir scan --only-techs nuxtjs
v0.27.0 · Jan 2026
· source
Scan files and see exactly which source file contains a detected endpoint by using the --include-path flag to get detailed file paths in JSON output.$ noir scan --format json --include-path <target_file_or_dir>
v0.12.0 · Dec 2023
· source
Scan a web application while specifying the maximum number of concurrent analysis tasks$ noir scan --concurrency=4 /path/to/app
v0.11.0 · Dec 2023
· source
Analyze a FastAPI application's endpoints and parameters for security issues.$ noir -b ./fastapi_app
v0.9.0 · Sep 2023
· source
+Secret and credential detectionverifiedPassively scans codebases for hardcoded secrets and credentials using a library of rules covering cloud providers, SaaS platforms, and other services.1 release · 4 other sources · first seen Dec 2025▸
Added new GraphQL, JWT, and FileUpload taggers for detecting specific request types
v0.26.0 · Dec 2025
· source
· release history
docs
Use custom rules. --passive-scan-path takes a directory , not a single file: Noir loads every *.yml / *.yaml below it, and the bundled rules are skipped for that run — including their download, so a run with --passive-scan-path needs neither git nor network.
docs update · Sep 2026
· source
we ran it
The tool reports 27 rule files, all located under /opt/noir/passive_rules/secrets/.
Aug 2026
· the full run
Caught 2 of 6 planted secrets (both AWS key findings), with 1 false positive; it missed db-password, db-github-token, dockerfile-baked-secret, and k8s-plaintext-secret.
Aug 2026
· the full run
The tool found 0 endpoints but returned 3 passive (secret-detection) results, all critical: two AWS credential lines in app/settings.py (lines 7 and 8) and a GitHub token in app/db.py (line 10).
Aug 2026
· the full run
+Mobile application attack surface detectionshippedDetects entry points in Android and iOS applications by analyzing manifests, entitlements, and deep-link configurations, with direct support for launching analysis via ADB and simctl.1 release · 3 other sources · first seen Jun 2026▸
Mobile analyzer detecting Android manifest and iOS Info.plist/entitlements deep-link entry points linked to handler code
v1.1.0 · Jun 2026
· source
· release history
docs
Mobile endpoints stay in the structured inventory (JSON, JSONL, YAML, TOML, SARIF, Markdown, mermaid, HTML) and in the Elasticsearch / webhook exports, because they are part of the app's surface.
docs update · Sep 2026
· source
example
Launch mobile entry point analysis directly for Android using ADB.$ noir scan -f adb <path_to_source>
v1.1.0 · Jun 2026
· source
Launch mobile entry point analysis directly for iOS using simctl.$ noir scan -f simctl <path_to_source>
v1.1.0 · Jun 2026
· source
+Endpoint forwarding and probingshippedRoutes discovered endpoints through an intercepting proxy such as Burp or ZAP for active inspection, or exports the endpoint catalog to Elasticsearch, OpenSearch, or a webhook receiver.4 releases · 9 other sources · first seen Sep 2023▸
Shared capability: Web vulnerability scanning
Also counts toward: Outbound webhooks (the product notifies you)
release
--probe now fills typed path placeholders (<int:pk>, {sha:[a-f0-9]{7,64}}, etc.) during scanning
v1.3.1 · Sep 2026
· source
· release history
Adds --strict flag to exit non-zero when any analyzer fails or file is skipped, surfacing scan-integrity failures that were previously silently dropped.
v1.3.0 · Aug 2026
· source
· release history
Adds --send-es flag to deliver results to an ElasticSearch endpoint.
v0.9.0 · Sep 2023
· source
· release history
Adds --with-headers flag for Delivers to inject arbitrary HTTP headers.
v0.8.0 · Sep 2023
· source
· release history
docs
7 total
-g (disable URL globbing so {id} [..] are sent literally), curl -i-g-XGEThttps://www.example.com/-H 'x-api-key: ' curl -i-g-XPOSThttps://www.example.com/query--data-rawquery=-HContent-Type: application/x-www-form-urlencoded--cookiemy_auth= curl -i-g-XGET…
docs update · Oct 2026
· source
Integrate Noir into your DAST pipeline with ZAP, Burp Suite, Caido, or Gori. Gori
docs update · Sep 2026
· source
Tagger adds contextual tags; Diff Mode compares attack surfaces across revisions; Deliver pushes results to other tools (Burp Suite, ZAP, Elasticsearch, etc.).
docs update · Sep 2026
· source
2026-09-27 Fill the blanks once: --pvalue across curl, collections, and probes One set of parameter placeholders that flows into curl, Postman, OpenAPI, status-code probes, and Burp/ZAP replay. Hak tips pvalue curl probe workflow
seen Sep 2026
· source
--pvaluecookie=X--set-pvalue-cookie X --pvalueform=X--set-pvalue-form X --pvaluejson=X--set-pvalue-json X --pvaluepath=X--set-pvalue-path X These may sit on either side of the verb:
seen Sep 2026
· source
--pvaluepath=... noir scan ./source-uhttp://localhost:3000--probe--pvaluepath=id=42
seen Sep 2026
· source
example
Send scan results to a remote ElasticSearch cluster for indexing.$ noir -b <BASE-PATH> --send-es http://<ES-ENDPOINT>/<INDEX>/<TYPE>
v0.9.0 · Sep 2023
· source
+Passive scanningshippedAnalyzes historical traffic or recorded request files to identify endpoints and risks without generating active network probes.4 releases · 4 other sources · first seen Oct 2024▸
Shared capability: Web vulnerability scanning
release
Adds --passive-scan-severity CLI flag to set minimum severity level for passive scans
v0.24.0 · Sep 2025
· source
· release history
Adds --passive-scan-auto-update and --passive-scan-no-update-check flags to control automatic passive scan rule updates
v0.24.0 · Sep 2025
· source
· release history
--status-codes and --exclude-codes CLI options allow filtering HTTP responses by status code
v0.18.0 · Oct 2024
· source
· release history
-P, --passive-scan and --passive-scan-path flags enable passive scanning without active traffic generation
v0.18.0 · Oct 2024
· source
· release history
example
Run endpoint scanning with specific parameter values for different types.$ noir scan --pvalue query=test --pvalue cookie=123 ./app
v1.0.0 · May 2026
· source
Run a passive scan targeting only high and critical severity issues, skipping the automatic rule update check for offline environments.$ noir passive-scan --passive-scan-severity high --passive-scan-no-update-check <target>
v0.24.0 · Sep 2025
· source
Filter out successful responses to focus on errors during an active scan$ noir --exclude-codes 200,201,204 -t https://example.com/api/
v0.18.0 · Oct 2024
· source
Perform passive scanning using a recorded request file to analyze historical traffic safely$ noir -P --passive-scan-path ./traffic.pcap -o results.json
v0.18.0 · Oct 2024
· source
+Other / not yet classified8 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+HTML and machine-readable reportingshippedProduces structured output in multiple formats including a redesigned HTML report with path grouping and copy actions, and machine-readable output for programmatic consumption.21 releases · 6 other sources · first seen Sep 2023▸
release
21 total
Diff mode renders markdown and SARIF diff reports for CI consumption.
v1.4.0 · Sep 2026
· source
· release history
The plain text report now shows the protocol (kafka, mqtt, amqp, …) and an [internal] badge, matching what structured formats (-f json, -f yaml, etc.) already displayed.
v1.3.1 · Sep 2026
· source
· release history
Plain report displays the protocol (e.g., kafka, mqtt) and [internal] badge to match structured outputs
v1.3.1 · Sep 2026
· source
· release history
Redesigned HTML report (-f html) with dark-tech theme, semantic method/severity colors, path grouping, table view, and copy URL/curl actions.
v1.2.0 · Jul 2026
· source
· release history
Adds machine-readable output for noir list and documents noir cache purge.
v1.2.0 · Jul 2026
· source
· release history
Adds --include LIST flag to toggle enrichment categories (path, techs, callee) in output
v1.0.0 · May 2026
· source
· release history
example
Include all technology detection data in the output regardless of default settings.$ noir scan --include-techs
v0.27.0 · Jan 2026
· source
Export analysis results as TOML for easier parsing in CI pipelines.$ noir scan -f toml
v0.27.0 · Jan 2026
· source
Analyze changes relative to two different base commits in one pass.$ noir scan -b main -b develop-branch ./my-app
v0.25.0 · Nov 2025
· source
Export findings in a line-delimited JSON format suitable for streaming or log ingestion.$ noir -b my_app -f jsonl
v0.12.1 · Jan 2024
· source
Output scan results in YAML format instead of the default.$ noir -b <BASE-PATH> -f yaml
v0.9.0 · Sep 2023
· source
Export the analyzed API specification in Swagger 2.0 format.$ noir -b . -f oas2
v0.8.0 · Sep 2023
· source
+AI-assisted analysisverifiedIntegrates with AI providers to augment analysis, with support for configuring provider API keys, timeouts, and a local cache for AI results.10 releases · 10 other sources · first seen Jan 2025▸
release
10 total
Use a native Anthropic provider or a Gemini preset alongside existing AI providers, with explicit provider errors when misconfigured.
v1.5.0 · Nov 2026
· source
· release history
Control AI behaviour with new flags --ai-stream, --ai-key-file, and --ai-temperature, and attach per-endpoint review context using the new ai_context JSON Schema.
v1.5.0 · Nov 2026
· source
· release history
Adds Claude Sonnet 5, Grok 4.5, and GPT-5.6 to the AI provider token map.
v1.2.0 · Jul 2026
· source
· release history
Added claude-opus-4-8, claude-fable-5, claude-mythos-5, and grok-build-0.1 to the AI provider token map
v1.1.0 · Jun 2026
· source
· release history
Deprecated --ollama URL and --ollama-model NAME flags removed (use --ai-provider ollama instead)
v1.0.0 · May 2026
· source
· release history
Adds --cache-disable and --cache-clear flags to control LLM cache behavior
v0.24.0 · Sep 2025
· source
· release history
docs
export NOIR_AI_KEY=... # or --ai-key-file ~/.config/noir/openai.key noir scan . --ai-provider openai --ai-model gpt-5.5 Specify an AI provider and model; the API key comes from --ai-key-file ): NOIR_AI_KEY=<YOUR_API_KEY> noir scan .
docs update · Oct 2026
· source
AI Providers Learn how to connect Noir to supported AI providers such as OpenAI, Azure AI, OpenRouter, and local or ACP runtimes. Noir's LLM analysis supports cloud APIs, local runtimes for offline or private use, and ACP agents. Legacy integrations are listed separately so existing configurations remain discoverable.
docs update · Oct 2026
· source
noir scan . --ai-context=guards,sinks # auth + sinks, plus linked signals Derived signals stay linked to their supporting buckets.
seen Oct 2026
· source
(legacy) GitHub Models was retired on July 30, 2026. The legacy preset remains in this table for older configurations, but it is not a working provider for new scans. See GitHub Models Provider (Retired) for the migration note.
seen Oct 2026
· source
Derived signals stay linked to their supporting feature buckets. Selecting a signal keeps its supporting evidence, and selecting a feature bucket keeps only the signals linked to that evidence, so filtered exports retain enough context to interpret the finding without adding unrelated signals.
docs update · Oct 2026
· source
Environment Variables Variable API key, used when is not passed NOIR_AI_TIMEOUT Seconds to wait for a provider response (default: 300 NOIR_AI_CONNECT_TIMEOUT Seconds to wait for the connection itself (default: 10 NOIR_ACP_RAW_LOG 1 to show raw ACP and agent stderr logs Requests that time out, hit a rate limit (HTTP…
docs update · Aug 2026
· source
we ran it
The cache directory is «home»/.config/noir/cache/ai, contains 0 entries totalling 0 B, and is currently enabled.
Aug 2026
· the full run
example
Run an AI-assisted audit with a key file and streaming output so credentials never appear on the command line and results print incrementally.$ noir scan src/ --ai-key-file ~/.noir-anthropic-key --ai-stream --ai-context
v1.5.0 · Nov 2026
· source
Analyze a target using a local ACP agent named codex without needing API keys.$ noir -b ./myapp --ai-provider=acp:codex
v0.28.0 · Feb 2026
· source
Limit LLM token usage to 5000 tokens during code analysis to prevent excessive API costs or timeouts.$ noir analyze --ai-max-token 5000
v0.21.1 · May 2025
· source
+Attack surface diff modeshippedsuggestedCompares the current attack surface against a git revision or commit to flag added, removed, and changed endpoints and authentication losses, with CI gating via --fail-on and diff reports in markdown and SARIF formats.6 releases · 11 other sources · first seen Aug 2023▸
Suggested capability: Static application security testing. This is our guess, not confirmed.
Also counts toward: CI/CD pipeline integration
release
Adds --diff-ref diff mode to compare the current attack surface against a git revision, flagging added/removed/changed endpoints and lost authentication as auth_removed, with markdown and SARIF diff report output; --fail-on exits with code 3 on matching findings, and the GitHub Action exposes diff_ref and…
v1.4.0 · Sep 2026
· source
· release history
-b / --base flag now accepts multiple values for tracking changes across several base commits
v0.25.0 · Nov 2025
· source
· release history
Adds the --diff-path flag to compare scan results between a base path (-b) and a specified target path.
v0.16.0 · Jun 2024
· source
· release history
Adds --use-matchers flag for Deliver to specify conditions a URL must meet.
v0.10.0 · Oct 2023
· source
· release history
Adds --use-filters flag for Deliver to specify conditions a URL must not meet.
v0.10.0 · Oct 2023
· source
· release history
docs
Diffing against a git revision Inside a git repository you don't need a second checkout. --diff-ref takes any revision git understands (a branch, tag, commit or HEAD~1 ) and uses it as the old side: # What does this branch add to the attack surface compared with main? noir scan .
docs update · Sep 2026
· source
Old code path for Diff Mode --diff-ref <ref> Git revision to diff against (e.g. main HEAD~1 ; see Diff Mode --fail-on <list> Exit when the diff has any of added removed changed auth-removed Diff Mode : Compare the attack surface against a path or git revision, and gate CI with --fail-on
seen Sep 2026
· source
(endpoints present in both versions whose parameters or other details were modified). Endpoints are matched by URL and method, so a method change shows up as one Added plus one Removed. Each section renders endpoints in the standard plain format:
seen Sep 2026
· source
The default output groups changes into (deleted ones), and (endpoints present in both versions whose parameters or other details were modified — endpoints are matched by URL and method, so a method change shows up as one Added plus one Removed).
seen Sep 2026
· source
example
7 total
Detect endpoints added, removed, or stripped of authentication since the last release tag — fail CI when any auth_removed finding is present.$ noir scan . --diff-ref v1.3.1 --fail-on auth_removed
v1.4.0 · Sep 2026
· source
Catch endpoints that dropped authentication between your feature branch and main before merging — fail CI immediately if any auth_removed findings appear.$ noir -b . --diff-ref main --fail-on auth_removed --format sarif -o diff-report.sarif
v1.4.0 · Sep 2026
· source
Audit a PR by diffing the current scan against a specific commit SHA and producing a markdown summary for the PR comment.$ noir -b . --diff-ref abc1234 --format markdown -o diff-report.md
v1.4.0 · Sep 2026
· source
Run a diff scan against a pull request branch to see new vulnerabilities compared to main.$ noir scan -b main --diff-path feature-branch
v0.16.0 · Jun 2024
· source
Scan a site and only deliver URLs containing /update or /socket.$ noir -b . -u https://www.hahwul.com --use-matchers "/update" --use-matchers "/socket"
v0.10.0 · Oct 2023
· source
Exclude URLs containing /admin from being delivered.$ noir -b . -u https://www.hahwul.com --use-filters "/admin"
v0.10.0 · Oct 2023
· source
+CI/CD and automation integrationshippedProvides flags to enforce scan integrity, support TOML output for pipeline parsing, and enable Elvish shell completion for automated workflows.4 releases · 2 other sources · first seen Jan 2026▸
Also counts toward: CI/CD pipeline integration, Command-line interface
release
Install noir on Windows via a static .exe release or via npm as @owasp-noir/noir.
v1.5.0 · Nov 2026
· source
· release history
Adds --strict flag to exit non-zero when any analyzer fails or file is skipped, surfacing scan-integrity failures that were previously silently dropped.
v1.3.0 · Aug 2026
· source
· release history
Failed analyzers and skipped files are now reported in scan output instead of being silently dropped.
v1.3.0 · Aug 2026
· source
· release history
Adds --strict flag to exit non-zero when any analyzer failures or skipped files occur, surfacing scan-integrity issues that were previously silently dropped.
v1.3.0 · Aug 2026
· source
· release history
example
Fail CI immediately when Noir drops any file or analyzer during a scan, making scan gaps visible rather than silent.$ noir -b . --strict
v1.3.0 · Aug 2026
· source
Export analysis results as TOML for easier parsing in CI pipelines.$ noir scan -f toml
v0.27.0 · Jan 2026
· source
+Infrastructure and configuration attack surface detectionshippedsuggestedDiscovers endpoints and APIs defined in infrastructure-as-code files, web server configurations, CI/CD pipelines, and external specification documents.3 releases · 1 other source · first seen Jun 2026▸
Suggested capability: Infrastructure-as-code security scanning. This is our guess, not confirmed.
release
Adds Terraform / OpenTofu analyzer for AWS API Gateway v1/v2 routes from .tf HCL files
v1.2.0 · Jul 2026
· source
· release history
Adds new specification analyzers for OpenRPC service descriptions and .http / .rest request files
v1.2.0 · Jul 2026
· source
· release history
New specification analyzers for Kamal (deploy.yml), Apache httpd, nginx, and Kubernetes Ingress
v1.1.0 · Jun 2026
· source
· release history
+Configuration managementshippedSupports file-based configuration via a config flag and environment variable to override default settings, reducing CLI argument complexity.2 releases · 2 other sources · first seen Feb 2024▸
Also counts toward: Command-line interface
release
Adds the NOIR_HOME environment variable to override the default config home directory path (default: ~/.config/noir).
v0.16.0 · Jun 2024
· source
· release history
Adds --config flag for file-based configuration
v0.12.2 · Feb 2024
· source
· release history
example
Customize the location of the config home directory for container or CI environments.$ export NOIR_HOME=/etc/noir && noir scan target/
v0.16.0 · Jun 2024
· source
Use a configuration file instead of passing all options via CLI arguments.$ noir --config /path/to/config.yaml
v0.12.2 · Feb 2024
· source
+Endpoint tracing and queryingshippedsuggestedAllows users to trace which routes pass through a specific file or line, match a request to its route, and filter endpoints by guard, sink, parameter, path, or handler — reading from a saved report or a live scan.1 release · 1 other source · first seen Nov 2026▸
Suggested capability: Static application security testing. This is our guess, not confirmed.
Also counts toward: Command-line interface
release
Match a request to its route with noir trace, list routes that reach a file with noir reach FILE[:LINE], and filter by guard, sink, param, path or handler with noir query — all reading a saved report via --from or scanning live.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
v1.5.0 · Nov 2026
· source
· release history
example
Find every route that passes through a specific file and line — useful for tracing which endpoints are affected when you change a shared middleware or handler.$ noir reach src/auth/middleware.ts:42 --from report.json
v1.5.0 · Nov 2026
· source
+Advanced AI agent and workflow configurationshippedEnables iterative tool-calling AI workflows with local ACP agents, configurable context filters, and support for specific modern model families.1 release · first seen Jun 2026▸
release
Added claude-opus-4-8, claude-fable-5, claude-mythos-5, and grok-build-0.1 to the AI provider token map
v1.1.0 · Jun 2026
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for noir, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail noir puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
What noir connects to, runs on and detects, read from its release notes and docs. So far: 18 new supported platforms, 12 new integrations, 5 updated supported platforms, 1 new detection.
new.NET web frameworks: ABP Framework, ASP.NET Core MVC, ASP.NET Core Minimal API, ASP.NET MVC, Carter, FastEndpoints, ServiceStack, System.Net.HttpListener, Wolverine.Http
A single binary supports 261 frameworks across 32 languages, including Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, and Swift. No plugins or per-language setup.
Adds ASP.NET Razor Pages / Blazor, HotChocolate, WCF (WebGet/WebInvoke), Absinthe, Encore, Bun.serve, Deno.serve, Firebase Functions and 6 more. 32 in all.
A single binary supports 236 frameworks across 31 languages, including Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, and Swift. No plugins or per-language setup.
A single binary supports 206 frameworks across 29 languages, including Crystal, Go, Java, JavaScript, Kotlin, PHP, Python, Ruby, Rust, and Swift. No plugins or per-language setup.
Nothing first seen in this window. That doesn't mean noir shipped nothing, only that we found no record of it.
Changes per month New Updated Retired
2026-10
33
2026-11
3
How we count
Read from 20 of 85 release notes and docs updates we hold for noir. "First seen" is the earliest note that names something; "last" is the latest. Our history may start partway through noir's life, so an old integration can show a recent first-seen date.
Each change counts once: "added 40 checks" is one line, so the numbers measure how often coverage moves, not how big the catalogue is or how well it detects.
Releases
Show
Coverage in all entries
85 entries
No entries match these filters.
November 20261
October 202621
September 202615
August 20266
July 20262
June 20261
May 20262
March 20261
February 20261
January 20261
December 20251
November 20252
September 20251
August 20252
June 20251
May 20251
April 20251
March 20251
January 20251
November 20241
October 20241
August 20241
June 20241
April 20241
March 20242
February 20241
January 20241
December 20232
October 20231
September 20234
August 20237
Project health
Issue, contributor and maintainer activity in owasp-noir/noir, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors34+27 vs prior 12 months
Maintainers1+2 joined · −2 left, last 12 months
Bus factor1committers behind half the commits
Community-filed7%of issues opened, last 12 months
Median time to close< 1 dayfirst maintainer reply 23 hours
Open backlog7of 614 issues ever filed
Issues opened / month1 · 0communitymaintainers
Open backlog7
Contributors / month2
Commits / month46
Stars1,429
Issue themes, last 12 months
bugs 7%
features 44%
docs 2%
other 47%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Libraries its release ships
What its latest release locks, checked against known advisories.
None of its release's images build from a lockfile we can read.
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can
follow every release here.