Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 200376,
"has_wiki": true,
"homepage": null,
"languages": {
"Go": 815729,
"Ruby": 1102,
"Shell": 14106,
"Dockerfile": 954
},
"pushed_at": "2026-07-26T17:59:45Z",
"created_at": "2024-06-13T16:40:34Z",
"owner_type": "Organization",
"updated_at": "2026-07-26T17:59:53Z",
"description": null,
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "develop",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Go",
"significant_languages": [
"Go"
]
},
"owner": {
"blog": "https://method.security",
"name": "Method Security",
"type": "Organization",
"login": "method-security",
"company": null,
"location": "United States of America",
"followers": 12,
"avatar_url": "https://avatars.githubusercontent.com/u/166066270?v=4",
"created_at": "2024-04-04T20:07:39Z",
"is_verified": null,
"public_repos": 23,
"account_age_days": 843
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2026-07-24T17:14:06Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2026-07-23T14:32:08Z"
},
{
"tag": "v0.0.287",
"kind": "patch",
"published_at": "2026-07-23T13:53:17Z"
},
{
"tag": "v0.0.286",
"kind": "patch",
"published_at": "2026-07-22T00:20:22Z"
},
{
"tag": "v0.0.285",
"kind": "patch",
"published_at": "2026-07-19T17:12:39Z"
},
{
"tag": "v0.0.284",
"kind": "patch",
"published_at": "2026-07-07T15:33:39Z"
},
{
"tag": "v0.0.283",
"kind": "patch",
"published_at": "2026-07-06T20:29:58Z"
},
{
"tag": "v0.0.282",
"kind": "patch",
"published_at": "2026-07-01T14:57:55Z"
},
{
"tag": "v0.0.281",
"kind": "patch",
"published_at": "2026-06-30T20:19:26Z"
},
{
"tag": "v0.0.280",
"kind": "patch",
"published_at": "2026-06-30T16:20:43Z"
},
{
"tag": "v0.0.279",
"kind": "patch",
"published_at": "2026-06-29T20:29:31Z"
},
{
"tag": "v0.0.278",
"kind": "patch",
"published_at": "2026-06-27T15:38:01Z"
},
{
"tag": "v0.0.277",
"kind": "patch",
"published_at": "2026-06-27T14:48:48Z"
},
{
"tag": "v0.0.276",
"kind": "patch",
"published_at": "2026-06-24T20:15:54Z"
},
{
"tag": "v0.0.275",
"kind": "patch",
"published_at": "2026-06-24T18:22:02Z"
},
{
"tag": "v0.0.274",
"kind": "patch",
"published_at": "2026-06-23T23:14:10Z"
},
{
"tag": "v0.0.273",
"kind": "patch",
"published_at": "2026-06-23T13:22:18Z"
},
{
"tag": "v0.0.271",
"kind": "patch",
"published_at": "2026-06-19T23:50:54Z"
},
{
"tag": "v0.0.270",
"kind": "patch",
"published_at": "2026-06-18T17:00:03Z"
},
{
"tag": "v0.0.269",
"kind": "patch",
"published_at": "2026-06-17T20:25:30Z"
},
{
"tag": "v0.0.268",
"kind": "patch",
"published_at": "2026-06-17T14:57:37Z"
},
{
"tag": "v0.0.267",
"kind": "patch",
"published_at": "2026-06-17T04:27:47Z"
},
{
"tag": "v0.0.266",
"kind": "patch",
"published_at": "2026-06-16T17:30:37Z"
},
{
"tag": "v0.0.265",
"kind": "patch",
"published_at": "2026-06-15T18:39:28Z"
},
{
"tag": "v0.0.264",
"kind": "patch",
"published_at": "2026-06-15T03:45:46Z"
},
{
"tag": "v0.0.263",
"kind": "patch",
"published_at": "2026-06-14T17:35:01Z"
},
{
"tag": "v0.0.262",
"kind": "patch",
"published_at": "2026-06-14T14:18:41Z"
},
{
"tag": "v0.0.261",
"kind": "patch",
"published_at": "2026-06-13T05:22:54Z"
},
{
"tag": "v0.0.260",
"kind": "patch",
"published_at": "2026-06-13T00:39:55Z"
},
{
"tag": "v0.0.259",
"kind": "patch",
"published_at": "2026-06-12T16:59:13Z"
},
{
"tag": "v0.0.258",
"kind": "patch",
"published_at": "2026-06-12T03:47:07Z"
},
{
"tag": "v0.0.257",
"kind": "patch",
"published_at": "2026-06-11T22:01:56Z"
},
{
"tag": "v0.0.256",
"kind": "patch",
"published_at": "2026-06-11T16:47:20Z"
},
{
"tag": "v0.0.255",
"kind": "patch",
"published_at": "2026-06-11T15:11:43Z"
},
{
"tag": "v0.0.254",
"kind": "patch",
"published_at": "2026-06-10T20:00:42Z"
},
{
"tag": "v0.0.253",
"kind": "patch",
"published_at": "2026-06-09T21:06:14Z"
},
{
"tag": "v0.0.252",
"kind": "patch",
"published_at": "2026-06-09T00:40:06Z"
},
{
"tag": "v0.0.251",
"kind": "patch",
"published_at": "2026-06-08T21:34:17Z"
},
{
"tag": "v0.0.250",
"kind": "patch",
"published_at": "2026-06-08T17:14:03Z"
},
{
"tag": "v0.0.249",
"kind": "patch",
"published_at": "2026-06-08T16:12:28Z"
},
{
"tag": "v0.0.248",
"kind": "patch",
"published_at": "2026-06-07T23:14:22Z"
},
{
"tag": "v0.0.247",
"kind": "patch",
"published_at": "2026-06-07T20:42:44Z"
},
{
"tag": "v0.0.246",
"kind": "patch",
"published_at": "2026-06-07T14:59:52Z"
},
{
"tag": "v0.0.245",
"kind": "patch",
"published_at": "2026-06-05T20:18:41Z"
},
{
"tag": "0.0.244",
"kind": "patch",
"published_at": "2026-06-05T14:29:46Z"
},
{
"tag": "0.0.243",
"kind": "patch",
"published_at": "2026-06-04T14:36:33Z"
},
{
"tag": "v0.0.242",
"kind": "patch",
"published_at": "2026-06-03T15:03:12Z"
},
{
"tag": "v0.0.241",
"kind": "patch",
"published_at": "2026-05-29T16:20:28Z"
},
{
"tag": "v0.0.240",
"kind": "patch",
"published_at": "2026-05-28T16:00:24Z"
},
{
"tag": "v0.0.239",
"kind": "patch",
"published_at": "2026-05-28T14:27:21Z"
},
{
"tag": "v0.0.238",
"kind": "patch",
"published_at": "2026-05-27T19:17:31Z"
},
{
"tag": "v0.0.237",
"kind": "patch",
"published_at": "2026-05-27T17:34:18Z"
},
{
"tag": "v0.0.236",
"kind": "patch",
"published_at": "2026-05-27T15:26:50Z"
},
{
"tag": "v0.0.235",
"kind": "patch",
"published_at": "2026-05-19T02:20:09Z"
},
{
"tag": "v0.0.234",
"kind": "patch",
"published_at": "2026-05-18T22:37:58Z"
},
{
"tag": "v0.0.233",
"kind": "patch",
"published_at": "2026-05-04T20:29:39Z"
},
{
"tag": "v0.0.232",
"kind": "patch",
"published_at": "2026-04-22T13:51:12Z"
},
{
"tag": "v0.0.231",
"kind": "patch",
"published_at": "2026-04-16T18:37:53Z"
},
{
"tag": "v0.0.230",
"kind": "patch",
"published_at": "2026-04-16T14:57:20Z"
},
{
"tag": "v0.0.229",
"kind": "patch",
"published_at": "2026-04-06T13:15:09Z"
},
{
"tag": "v0.0.228",
"kind": "patch",
"published_at": "2026-04-03T20:24:44Z"
},
{
"tag": "v0.0.227",
"kind": "patch",
"published_at": "2026-04-03T17:57:22Z"
},
{
"tag": "v0.0.226",
"kind": "patch",
"published_at": "2026-04-02T18:42:13Z"
},
{
"tag": "v0.0.225",
"kind": "patch",
"published_at": "2026-04-01T20:12:21Z"
},
{
"tag": "v0.0.224",
"kind": "patch",
"published_at": "2026-04-01T19:10:06Z"
},
{
"tag": "v0.0.223",
"kind": "patch",
"published_at": "2026-03-31T19:07:22Z"
},
{
"tag": "v0.0.222",
"kind": "patch",
"published_at": "2026-03-26T14:04:32Z"
},
{
"tag": "v0.0.221",
"kind": "patch",
"published_at": "2026-03-25T20:03:14Z"
},
{
"tag": "v0.0.220",
"kind": "patch",
"published_at": "2026-03-25T18:10:01Z"
},
{
"tag": "v0.0.219",
"kind": "patch",
"published_at": "2026-03-25T17:18:47Z"
},
{
"tag": "v0.0.218",
"kind": "patch",
"published_at": "2026-03-24T15:49:04Z"
},
{
"tag": "v0.0.217",
"kind": "patch",
"published_at": "2026-03-10T20:27:13Z"
},
{
"tag": "v0.0.216",
"kind": "patch",
"published_at": "2026-03-09T20:05:47Z"
},
{
"tag": "v0.0.215",
"kind": "patch",
"published_at": "2026-03-04T22:21:47Z"
},
{
"tag": "v0.0.214",
"kind": "patch",
"published_at": "2026-02-27T14:43:05Z"
},
{
"tag": "v0.0.213",
"kind": "patch",
"published_at": "2026-02-22T19:17:12Z"
},
{
"tag": "v0.0.212",
"kind": "patch",
"published_at": "2026-02-20T19:29:07Z"
},
{
"tag": "v0.0.211",
"kind": "patch",
"published_at": "2026-02-19T16:56:06Z"
},
{
"tag": "v0.0.210",
"kind": "patch",
"published_at": "2026-02-05T16:02:26Z"
},
{
"tag": "v0.0.209",
"kind": "patch",
"published_at": "2026-02-04T21:38:21Z"
},
{
"tag": "v0.0.208",
"kind": "patch",
"published_at": "2026-02-03T22:53:37Z"
},
{
"tag": "v0.0.207",
"kind": "patch",
"published_at": "2026-02-03T22:29:44Z"
},
{
"tag": "v0.0.206",
"kind": "patch",
"published_at": "2026-02-03T17:29:28Z"
},
{
"tag": "v0.0.205",
"kind": "patch",
"published_at": "2026-01-29T16:39:17Z"
},
{
"tag": "v0.0.204",
"kind": "patch",
"published_at": "2026-01-28T23:22:28Z"
},
{
"tag": "v0.0.203",
"kind": "patch",
"published_at": "2026-01-26T15:46:36Z"
},
{
"tag": "v0.0.202",
"kind": "patch",
"published_at": "2026-01-23T18:39:11Z"
},
{
"tag": "v0.0.201",
"kind": "patch",
"published_at": "2026-01-22T21:22:34Z"
},
{
"tag": "v0.0.200",
"kind": "patch",
"published_at": "2026-01-20T19:49:50Z"
},
{
"tag": "v0.0.199",
"kind": "patch",
"published_at": "2026-01-13T19:36:05Z"
},
{
"tag": "v0.0.198",
"kind": "patch",
"published_at": "2026-01-07T20:57:45Z"
},
{
"tag": "v0.0.197",
"kind": "patch",
"published_at": "2025-12-23T01:53:32Z"
},
{
"tag": "v0.0.196",
"kind": "patch",
"published_at": "2025-12-11T20:02:06Z"
},
{
"tag": "v0.0.195",
"kind": "patch",
"published_at": "2025-12-09T14:31:55Z"
},
{
"tag": "v0.0.194",
"kind": "patch",
"published_at": "2025-12-06T20:03:35Z"
},
{
"tag": "v0.0.193",
"kind": "patch",
"published_at": "2025-12-04T17:38:55Z"
},
{
"tag": "v0.0.192",
"kind": "patch",
"published_at": "2025-12-03T15:02:51Z"
},
{
"tag": "v0.0.191",
"kind": "patch",
"published_at": "2025-12-01T20:02:09Z"
},
{
"tag": "v0.0.190",
"kind": "patch",
"published_at": "2025-11-26T20:05:35Z"
},
{
"tag": "v0.0.189",
"kind": "patch",
"published_at": "2025-11-24T14:56:11Z"
}
],
"recent_commits": [
{
"oid": "8e5c0983bd26dd5d287867e289565d41df968267",
"body": null,
"is_bot": false,
"headline": "chore: bump aws-sdk-go-v2 s3 and eventstream deps (#479)",
"author_name": "dpaq-method",
"author_login": "dpaq-method",
"committed_at": "2026-07-26T17:59:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08851eb36842be7185bc1243931230223972cdd9",
"body": "* Discover Witness Updates + Other\n\n* fix bug bots",
"is_bot": false,
"headline": "Discover Witness / Page Updates + Route Capture Bug (#478)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-24T17:08:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7dce3fbe98f2ab71a7ca010976414a86a6e0e0ef",
"body": null,
"is_bot": false,
"headline": "Omit I-Frame Redirect URLs from Returned Chain (#477)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-23T14:31:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f30d64cc8d438d9231d94bc22895567205c27e5e",
"body": null,
"is_bot": false,
"headline": "Fix Final URL Internal Redirect Bug (#476)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-23T13:52:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a90cb09d5a2639d3b8feaa4f1fc3d97a6e3cf2a9",
"body": "* Update Discover Directory FP Logic\n\n* remove test file",
"is_bot": false,
"headline": "Update Discover Directory FP Logic (#475)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-22T00:20:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6bdc1bf7bca43fe7de5992deccae3a87c2c38ac4",
"body": "* Capture wordpress versions\n\n* Fix core asset version false positives in WordPress version detection\n\ncheckCoreAssetVersion previously matched any ?ver= query string under\nwp-includes/wp-admin, which could pick up a bundled library's own\nversion (jQuery, Moment, React) instead of WordPress core's. \n[…]\ns typically emitted inside\nan inline _wpemojiSettings script with JSON-escaped slashes (\\/), and\nesc_url() renders the query separator as & rather than & when\nother query params precede ver=.",
"is_bot": false,
"headline": "Capture wordpress versions (#474)",
"author_name": "Sean Hacker",
"author_login": "sean-hacker",
"committed_at": "2026-07-19T15:37:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ddfe93858ef377a10027023c31d31aa08d46bfda",
"body": null,
"is_bot": false,
"headline": "Bump Pkg (#473)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-07T15:25:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e798dbaec45ea250eaa133444e941c2f7484001a",
"body": null,
"is_bot": false,
"headline": "chore: go-git v5.19.1 (#472)",
"author_name": "dpaq-method",
"author_login": "dpaq-method",
"committed_at": "2026-07-07T15:22:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2d1ce9b2520a285d04a59d2b580a1ae86d5eb798",
"body": "* Upgrade Fern\n\n* fix code due to fern updates",
"is_bot": false,
"headline": "Upgrade Fern (#471)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-07T13:44:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a01f469f28fbbdba765dd5fa36772964709652b9",
"body": "* Fix Subdomain Parsing Bug in Discover Route\n\n* update discover dir\n\n* update flags\n\n* fix comments\n\n* fix rebase\n\n* add fingerprints",
"is_bot": false,
"headline": "Discover Route + Discover Dir Updates (#470)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-07-06T20:28:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d1341ae1433c6ba6f1f6786b73976f8a6b3badea",
"body": "* Add --http-proxy and --socks-proxy top-level flags\n\n- Add HttpProxy and SocksProxy fields to RootFlags config\n- Add persistent flags --http-proxy and --socks-proxy to root command\n- Update Fern SendHTTPRequestConfig definition to include proxy fields\n- Create context-based proxy config management \n[…]\n Add headless proxy\n\n* Apply proxy configs to headless mode as well\n\n---------\n\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>\nCo-authored-by: Sean Hacker <sean-hacker@users.noreply.github.com>",
"is_bot": false,
"headline": "Add --http-proxy and --socks-proxy top-level flags (#469)",
"author_name": "Sean Hacker",
"author_login": "sean-hacker",
"committed_at": "2026-07-04T19:11:32Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "caa65ab88b82cee29bbccc773f685fdc31a9bd84",
"body": "The nested WebServerSocket struct required manual flag emission on the\ncompiler side because CompilerUtils.generate_flags_from_config strips\nthe parent field name when recursing into nested structs. Flattening\nwebServerIpAddress / webServerPort / webServerApplicationProtocol as\ntop-level optional fields lets the compiler set them directly on the\nDiscoverProbeConfig and rely on standard flag serialization.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Flatten WebServer socket into DiscoverProbeConfig fields (#468)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-07-01T14:51:10Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d5c4e7233409751adfcf1ca6eea71b24feecf27d",
"body": "The webscan probe is the bridge from a WebServer listener (created\nupstream by a service-fingerprint pass) to the WebApplication that\nthe probe discovers. Today there is no way for the probe report to\ncarry the listener identity downstream, so the ontology processor\ncan't link `WebApplication.web_se\n[…]\ncessor can reconstruct the deterministic WebServer identity\n(ip, port, application_protocol) and write the WebApp.web_server\nlink.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add WebServer socket field to DiscoverProbeConfig (#467)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-30T20:18:53Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "913a9f963b2c6b8d87ba99f499b07ad5cb9230d1",
"body": null,
"is_bot": false,
"headline": "Omit Emit Examples (#466)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-30T16:19:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9c1807fa4272530282f041c43a1010044219e7d5",
"body": "… (#464)\n\n* Add discover witness subcommand with Wappalyzer integration (AITF-140)\n\nAdds new `webscan discover witness` subcommand that performs a single-pass\nweb witness scan: navigate, capture HTTP request/response, take a screenshot,\nfetch favicon, run Wappalyzer technology fingerprinting, option\n[…]\n + path, key the nucleiResults map by that\nform, and look up by the same form in processTarget.\n\n---------\n\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Add `discover witness` subcommand + Wappalyzer integration (AITF-140)…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-29T20:17:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1ef49dcd17554e45496f6ec44c86fe55eda40fb9",
"body": null,
"is_bot": false,
"headline": "Fix Static Asset Bug (#465)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-29T16:50:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9512150507f988e5530b777e56f081354ae16866",
"body": "…rity (AITF-139) (#462)\n\n* Add screenshot phash, favicon (+ hash), final_url, html_title for gowitness parity (AITF-139)\n\n- HttpResponse.finalUrl: explicit final navigated URL (no need to reconstruct from redirectChain[-1])\n- DiscoverPageResult.screenshotPerceptualHash: goimagehash PerceptionHash of\n[…]\nn now accepts a userAgent\n and the page.go caller passes useragent.Resolve(config.UserAgent).\n\n---------\n\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Add screenshot phash, favicon, final_url, html_title for gowitness pa…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-27T15:25:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bd523d328b67307bfb5689b4f01ed64861a2c3f3",
"body": null,
"is_bot": false,
"headline": "Add User Agents to Nuclei Commands (#463)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-27T01:32:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c3712b2b1bf8996e219aa5e8b40e953923c740c5",
"body": "…a comma-join (AITF-138) (#461)\n\n* discover request: error on malformed --header, comma-join repeated names (AITF-138)\n\nThe user-reported invocation\n\n webscan discover request --target ... --verify-tls TRUE \\\n --header \"Accept: application/json\" \\\n --header \"text/html;q=0.9\" \\\n --header \"*\n[…]\nive forms.\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Method Tool Factory <noreply@methodsecurity.com>\nCo-authored-by: Claude Opus 4.7 <noreply@anthropic.com>",
"is_bot": true,
"headline": "discover request: header parsing — error on malformed, multi-value vi…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-24T20:44:48Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4538eb2457aa9e1a9abc27a825181198a0dfacef",
"body": "* Add --verify-tls flag to 8 web-facing commands\n\nCloses the coverage gap surfaced in AITF-138 part 1 — exposes a uniform\n--verify-tls bool (default false) across every webscan command that\nissues HTTPS requests, so the ontology surface for VERIFY_TLS becomes\nconsistent across the whole webscan tool\n[…]\nbot] <method-tool-factory@users.noreply.github.com>\nCo-authored-by: Claude Opus 4.7 <noreply@anthropic.com>\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Add --verify-tls flag to 8 web-facing commands (AITF-138) (#460)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-24T20:03:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0439e73fe8ed07092e5fdba99b65da6fb60325c3",
"body": null,
"is_bot": false,
"headline": "Static Asset Endpoint Bug (#458)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-24T18:17:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "330e46b53b56c61c6c1ab30149f4ae14b667c604",
"body": "* Batch AITF surge P1 fixes\n\nBundles correctness + severity-calibration + DoS-guard fixes across\nwebscan tools authored during the 2026-06-05/19 AITF surge.\n\nCorrectness:\n* utils/nuclei/templates/pentest/scan/cve/2024/CVE-2024-21762.yaml —\n delete the trailing `# digest:` line. The shipped digest w\n[…]\nates/select.go that snuck into an earlier commit.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Batch AITF surge P1 fixes (#457)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-24T17:54:37Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b2fcba54e34758c210f2c45bbd70892edbbaf4b8",
"body": "Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Tidy SOHO corpus metadata (#456)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-24T01:28:02Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4153d0b4d24a66c351108d99640e2d2a9c7727f3",
"body": "Add --json-body-base64 to discover request so callers that construct\ncommands through an intermediate shell string can send JSON payloads\nwithout quote mangling. When supplied, webscan decodes the base64 value\ninto JsonBody before building the request and preserves the decoded JSON\nin the report. Re\n[…]\non parsing. Direct CLI verification against VAmPI returned 200\nwith Content-Type application/json and the exact decoded JSON body.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add base64 transport for discover request JSON bodies (#455)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-23T21:29:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "28036e4aa2df8b8bae926935fdfa41fac3a5afbb",
"body": "* Tune Templates: GraphQL and Cisco FMCA\n\n* remove tars\n\n* update ci to bundle tars\n\n* fix endpoint encoding",
"is_bot": false,
"headline": "Update CI to Bundle Nuclei Template TAR + Tuning (#454)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-23T13:18:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e82f940b09a4606eb40ed03dc0f90bf03c7f4e55",
"body": null,
"is_bot": false,
"headline": "Fix empty response header serialization (#453)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-19T23:16:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5951000fc0820e61ee67ad10b14f18ea210a8161",
"body": null,
"is_bot": false,
"headline": "Update Cradle Point (#452)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-18T20:25:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "259bbd16c3406530ece448caa16e21f18b20f957",
"body": null,
"is_bot": false,
"headline": "Tune Templates (#451)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-18T16:57:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4ad7836edf4045480bd92295d5f13f5879099939",
"body": "Set extra_fields: forbid on every fern-pydantic-model generator block\n(pypi-local, pypi-test, pypi) so the generated config types raise\npydantic.ValidationError when constructed with unknown kwargs.\n\nToday extra=\"allow\" silently accepts unknown kwargs and serializes them\nto the wire payload — that's\n[…]\nd; CI regenerates from this config when\npublishing to PyPI, so this single-file change propagates to the next\nmethodwebscan wheel.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Forbid extra fields in generated Pydantic models (#450)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-17T21:07:23Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d44f30a047dc4298f9aed79898fb85da1b901db5",
"body": null,
"is_bot": false,
"headline": "Update Request to Http in Templates (#449)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-17T20:22:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "98916d396a48baab7ae042edb3c4572cb3526d64",
"body": "* Rebucket Router Fingerprints\n\n* cnt to update templates\n\n* condense oob to hardware management",
"is_bot": false,
"headline": "Reorganize + Clean Up Application Discover Templates (#446)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-17T14:55:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "548d4fc1f5156646e0d3808be5e44df182e53f48",
"body": "…ITF-34) (#437)\n\n* Add arbitrary GraphQL queries, deep introspection, mutation gating (AITF-34)\n\nExtend the enumerate api-application graphql tool with arbitrary query support,\ndeeper schema introspection, and AST-level rejection of mutation/subscription\noperations.\n\n- Fern: add cookies and allowMut\n[…]\nives, and\nmixed with other operations).\n\n---------\n\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>",
"is_bot": true,
"headline": "Add arbitrary GraphQL queries, deep introspection, mutation gating (A…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-17T04:16:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4c9821edcfb60d871ef3fbe765d5b372a8c6b807",
"body": "* Add --template-paths flag to all nuclei-backed commands\n\nAllows users to supply custom nuclei template files or directories for\ndiscover application, pentest application dast, cve, misconfiguration,\ntechnology, and waf detect. Disk paths (absolute or ./-prefixed) are\nread directly from the OS file\n[…]\nng runs that set\nonly --workflow-paths. Changed both guards to len > 0.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add --template-paths flag to all nuclei-backed commands (#447)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-16T17:29:19Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5691ed669da285a4f1b2b11a6942c88bdc6a93ff",
"body": "… Amcrest, Foscam (Cluster D+E+J) (#429)\n\n* AITF-123: Surveillance web fingerprints — Dahua, Hikvision, Raysharp, Foscam\n\nStage 1, Cluster D+E+J of SEC-702. Five surveillance-device web-fingerprint\ntemplates covering IPC / NVR / DVR / hybrid recorder (HCVR/XVR) populations\nacross Dahua, Hikvision (I\n[…]\n>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Method Tool Factory <method-tool-factory@method.security>",
"is_bot": true,
"headline": "AITF-123: Surveillance web fingerprints — Dahua, Hikvision, Raysharp,…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-15T18:28:54Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ce4495f86fa03f347421a7910a2d0ac284e4466a",
"body": null,
"is_bot": false,
"headline": "Fix Bad CVE Templates (#445)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-15T14:32:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42bab93adefcb0e1585e7c0b7ca9f277d85d439a",
"body": "* Add WordPress plugin-deploy pentest command (AITF-126)\n\nAdd `pentest cms wordpress plugin-deploy` to webscan. Authenticates to\nwp-admin with supplied credentials, fetches the upload-plugin nonce,\nuploads an in-memory malicious plugin zip containing the supplied\n--exec-command (typically a Jackal i\n[…]\ns.noreply.github.com>\nCo-authored-by: Claude Opus 4.7 <noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>",
"is_bot": true,
"headline": "Add WordPress plugin-deploy pentest command (AITF-126) (#444)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-15T03:35:18Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "549d9285a666c9abbc01d687ea84ed4670eb7617",
"body": "…ns-exposed (#439)\n\n* AITF-39 — Add CURL user-agent preset and xmlRpcArgs to xmlrpc-functions-exposed\n\n- Add CURL to UserAgentPreset enum (fern/definition/common/method.yml)\n- Add xmlRpcArgs optional<list<string>> to PentestCmsWordpressXmlrpcFunctionsExposedConfig\n- Regenerate Go types (UserAgentPre\n[…]\nhored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "AITF-39 — Add CURL user-agent preset and xmlRpcArgs to xmlrpc-functio…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T23:51:33Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4918f9bb295ab8e3ab01934928bb528e3a5b06d5",
"body": "Co-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>",
"is_bot": true,
"headline": "Retry Fern generators on 429 rate-limit responses (AITF-129) (#443)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T23:05:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "888d53d82ed6a96bd3a920dd2a75dd968902dde7",
"body": "* AITF-122: scrub tested IPs from template descriptions\n\nRemove three real public IPs from `Validated against TC-###` lines in\nthree Nuclei templates landed by #427 (merged to develop). Keep the\nTC-ID + device / build / OUI descriptors — the per-target context is\nuseful, only the raw IP is sensitive\n[…]\n-factory@method.security>\nCo-authored-by: Claude Opus 4.7 <noreply@anthropic.com>\nCo-authored-by: paulgbear <pgibert@method.security>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>",
"is_bot": true,
"headline": "AITF-122: scrub tested IPs from template descriptions (#434)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T21:21:22Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8489460b4f558612d585bcefb8515df261b3028f",
"body": "…438)\n\n* Add --spec-url flag to enumerate api-application swagger for direct spec fetch (AITF-33)\n\n* Preserve query string in --spec-url early-exit fetch (Bugbot fix)\n\nSplitTargetURL returns query params separately; the early-exit branch\nwas discarding them so spec URLs with required query strings (\n[…]\nwrong body\nor a non-200.\n\nPlumb the parsed queryParams into requestConfig.Request.Params.Query.\n\n---------\n\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "Add --spec-url flag to enumerate api-application swagger (AITF-33) (#…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T19:40:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fca68fddf15ca2dd5948d748d0148c535ae14a0a",
"body": "* Surface real transport-error cause on failed HTTP requests\n\nWhen client.Do fails, send.go logged the *url.Error via svc1log.SafeParam,\nwhich reflects the struct to `map[Err:map[] Op:Get URL:...]` and drops the\nunderlying reason — the source of the undebuggable \"Failed to send request\"\nlines operat\n[…]\neep the request error classifier implementation but drop the added unit tests from this PR.\n\nCo-authored-by: Cursor <cursoragent@cursor.com>\n\n---------\n\nCo-authored-by: Cursor <cursoragent@cursor.com>",
"is_bot": false,
"headline": "Surface real transport-error cause on failed HTTP requests (#435)",
"author_name": "Madhav Vats",
"author_login": "madhavmvats01",
"committed_at": "2026-06-14T17:30:29Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "97d1e88ece0f5d04d5e40c998090c14395865cab",
"body": "* Tune Templates\n\n* Committing open changes to undo them",
"is_bot": false,
"headline": "Tune Templates (#433)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-14T17:01:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6a19f0dab3fcc2b1be059a3a0ff905cc3e3b149d",
"body": "…route, page (#431)",
"is_bot": false,
"headline": "feat: MCP parity for web_request, swagger, kube, wordpress, graphql, …",
"author_name": "Madhav Vats",
"author_login": "madhavmvats01",
"committed_at": "2026-06-14T16:49:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "139f6d4f40212602e3740b7571af9e765e942c17",
"body": null,
"is_bot": false,
"headline": "Fix Request Logging Tool (#436)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-14T16:19:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "748def268230d02c56619451e45661641fbbeaa6",
"body": "* Add TR-069/CWMP Nuclei discovery template (AITF-125 Q)\n\nCompanion to the networkscan TR-069 probe (AITF-81 / PR #296) for webscan\ntargets that explicitly include :7547 or other CWMP endpoints. Matches on\nthe canonical RomPager Server header, dslforum-org/cwmp/ACS realms in\nWWW-Authenticate, the CW\n[…]\ners.noreply.github.com>\nCo-authored-by: Claude Opus 4.7 <noreply@anthropic.com>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Philip Ayoub <philip@method.security>",
"is_bot": true,
"headline": "AITF-125 Q — Add TR-069/CWMP Nuclei discovery template (#430)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T14:07:48Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "49d4e64889eabd296c7e86ec1cc4deaea63a037d",
"body": "… standalone (#427)\n\n* AITF-122: SOHO router/CPE/GPON web fingerprints — standalone on develop\n\nCluster C+F+H+I+N web fingerprints, rebased standalone on develop\nrather than the original `tool-factory/sec-702` base.\n\nTemplates (all EXPOSED_ADMIN — structural fingerprints only):\n- networkmanagementsy\n[…]\nm>\nCo-authored-by: Method Tool Factory <tool-factory-agent@method.security>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": true,
"headline": "AITF-122: SOHO router/CPE/GPON web fingerprints (Cluster C+F+H+I+N) —…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-14T13:57:55Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "feee397ebda4b33023b9a69666e1f22742d00bc7",
"body": "* Add wp-login-bruteforce command to webscan pentest cms wordpress (AITF-117)\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>\n\n* Address bugbot review: stricter wp-admin redirect check, 200-WAF classification, probe fingerprint normalisation (AITF-117)\n\n* Address bugbot review: redirect-b\n[…]\npy.\n\n---------\n\nCo-authored-by: Method Agent <agent@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Method Tool Factory <method-tool-factory@method.security>",
"is_bot": true,
"headline": "Add WordPress wp-login.php form brute-force command (AITF-117) (#422)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-13T05:13:37Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "97ab323cb22cd7ea8987ad08ce4fb67de251b8f1",
"body": "… fingerp…\" (#428)\n\nThis reverts commit 3f596f5438cc4194879316d64315fc4394493d01.",
"is_bot": false,
"headline": "Revert \"AITF-76: Add DETECTED/VERSIONED enum values and VPN appliance…",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-13T02:19:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3f596f5438cc4194879316d64315fc4394493d01",
"body": "…rint templates (#407)\n\n* Add DETECTED/VERSIONED enum values and update VPN fingerprint templates (AITF-76)\n\n- Add DETECTED and VERSIONED to ApplicationDetectionState enum in Fern definition\n- Regenerate Go types (fern generate --group local)\n- Update 5 existing VPN portal templates with method-sub-\n[…]\nhored-by: paulgbear <pgibert@method.security>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Method Tool Factory <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "AITF-76: Add DETECTED/VERSIONED enum values and VPN appliance fingerp…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-13T02:07:29Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b5a43212ed4a216024427f9e4f5699a8afeab2e0",
"body": null,
"is_bot": false,
"headline": "Wire Threw TLS to Network Routes (#424)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-13T00:38:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "13a191da68ec3391fa3b9fa16c5ccd3680ba81d0",
"body": "* Add SOHO/CPE CVE precondition templates (AITF-84)\n\nSafe precondition check templates for actively-exploited SOHO/CPE CVEs.\nAll templates detect vulnerability preconditions without executing\ncommands or causing side effects.\n\nTemplates added/reworked:\n- CVE-2023-1389: TP-Link Archer AX21 stok bypas\n[…]\n-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: paulgbear <pgibert@method.security>\nCo-authored-by: method-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "AITF-84: SOHO/CPE CVE precondition templates (webscan) (#410)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-13T00:11:24Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1cf3b6798925c921796f76b014cc82ff4ff83ea5",
"body": "* Fix Content Parsing When Wrapped in Chrome View Page\n\n* fix bug bot comment",
"is_bot": false,
"headline": "Fix Content Parsing When Wrapped in Chrome View Page (#421)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-12T16:58:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e7f1323338bdc0e2af90edf4f7e090a23a451e53",
"body": "Adds configs/discover/vpn/favicon_hashes.json (13 verified mmh3 favicon\nhashes covering Ivanti, Citrix, Fortinet, Palo Alto, SonicWall) and\nconfigs/discover/vpn/js_bundle_hashes.json (seed schema + known_bundle_paths\nscaffold documenting per-vendor probe paths).\n\nFavicon hashes sourced from cross-re\n[…]\nto include both files.\n\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: paulgbear <pgibert@method.security>",
"is_bot": true,
"headline": "Add VPN appliance favicon and JS bundle hash corpus (AITF-77) (#409)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-12T14:06:22Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f0fbac2be79f6f1390d4761324eeb2e0bc11360c",
"body": null,
"is_bot": false,
"headline": "Tune Templates + Consolidate Screenshot Logic (#420)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-12T03:44:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1c2823c270f2c0b872acfd198ae4521d178819df",
"body": "* Update Network Navigation + Headless Error handling\n\n* fix bug bot\n\n* update error handling\n\n* fix delay",
"is_bot": false,
"headline": "Update Network Navigation + Headless Error Handling (#419)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-11T22:00:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "082a56a7a27d91eb656cb566973c49df71e8b6c6",
"body": "* Add sleep/jitter stealth support across all webscan tools\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>\n\n* Remove unused CalculateStealthDelay function\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>\n\n* Address Bugbot: don't drop results / unmark visit\n[…]\nhe URL stays in visitedURLs since it was fetched.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add sleep/jitter stealth support across all webscan tools (#358)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-11T16:50:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "47606ae34531f961bc09731108b89d779c7a44ca",
"body": null,
"is_bot": false,
"headline": "Update IOT Enum Values (#418)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-11T16:41:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "32001494a8095283675d9dbcd8375ed2be9ed45a",
"body": null,
"is_bot": false,
"headline": "Update IOT Enum Values (#417)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-11T16:22:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c5cce8a3ccc79754d9be26f57a4550a4de8f0665",
"body": "* Clean Up Discover Route Parameters\n\n* Add IOT Fingerprints\n\n* update templates\n\n* fix bb comment",
"is_bot": false,
"headline": "IOT fingeprints (#416)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-11T15:09:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "066915f72cad69c2a8a811a7143a99f08b9ecae8",
"body": null,
"is_bot": false,
"headline": "Clean Up Discover Route Parameters (#415)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-11T13:52:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f1ed8daa817de87a3cf2e0df39f97efe46eabacb",
"body": "* update templates\n\n* fix tar ci\n\n* remove ci updates\n\n* Remove embedded archive CI changes",
"is_bot": false,
"headline": "Update + Tune Templates (#414)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-10T19:58:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cc81e4a0e736e939a97691164bff38ae610eacf",
"body": "* Add SOHO router corpus: favicon and admin-page hashes (AITF-83)\n\nStage 1 of SOHO/CPE content pack. Adds two JSON corpus files and a\nREADME under configs/enumerate/soho/:\n\n- favicon_hashes.json: 25 mmh3 favicon hash entries (5 per vendor class)\n covering TP-Link, Asus, Netgear, D-Link, ISP CPE (Ar\n[…]\nhropic.com>\n\n---------\n\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: paulgbear <pgibert@method.security>",
"is_bot": true,
"headline": "Add SOHO router corpus: favicon + admin-page hashes (AITF-83) (#413)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-10T14:20:28Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5b49306eba41590834ab92a5b32a6c9672f90e6c",
"body": "* Add VPN CVE detection templates for AITF-78\n\nAdds 7 Nuclei templates for actively-exploited VPN CVEs:\n- CVE-2025-22457: Ivanti ICS/IPS/ZTA stack buffer overflow (KEV, UNC5221/RESURGE)\n- CVE-2025-59718: Fortinet FortiCloud SSO SAML auth bypass (KEV, Dec 2025)\n- CVE-2025-59719: Fortinet FortiCloud S\n[…]\nethod-tool-factory[bot] <method-tool-factory[bot]@users.noreply.github.com>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>",
"is_bot": true,
"headline": "Add VPN CVE detection templates (AITF-78) (#408)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-10T02:02:16Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "58baa69f12719dd702a009ad1412f1f8fb02ba33",
"body": null,
"is_bot": false,
"headline": "Simplify ICS fingerprint matchers (#412)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-09T20:52:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "75d6f082603c33aa521ffe7c7c443a9899b674aa",
"body": "* add industrial control system fingerprints\n\n* fix bb call out",
"is_bot": false,
"headline": "Add Industrial Control System Fingerprints (#406)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-09T19:23:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e90c8c16c2b0ab3c4d1f40a3806993398b38c7c8",
"body": "* Tool Factory follow-ups: drop stale fixtures, hoist xmlrpcPath, rename Bruteforce structs\n\n- Delete static wordlist_{success,fail}.json fixtures that didn't actually run\n- Hoist xmlrpcPath to constants.go (was a cross-file var dependency)\n- Drop duplicate SentAt assignment in buildHTTPRequest (Per\n[…]\n(route source-map + bundle URL + target-resolve through\nutils/request). Auto-merge of internal/discover/route/route.go clean.\n`./godelw verify` clean. Added webscan-mac (build artifact) to .gitignore.",
"is_bot": false,
"headline": "Tool Factory follow-ups (webscan) (#401)",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-09T17:30:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "37081c91b7dcabe66a708a760071c35656e2f618",
"body": "…(#403)",
"is_bot": false,
"headline": "Route source-map + bundle URL + target-resolve through utils/request …",
"author_name": "Apurva Goenka",
"author_login": "apurvagoenka-method",
"committed_at": "2026-06-09T03:52:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4e0c6e1d852c021c6526a46e9253c91586029112",
"body": null,
"is_bot": false,
"headline": "fix discover route (#405)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-09T00:38:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2f1b23da10b77bd60a82fd238ce45cd361d51914",
"body": null,
"is_bot": false,
"headline": "Update DB Fingerprint Templates (#404)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-08T21:32:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e1108db49e1fc128f908a162ef99edc2b3ef065",
"body": null,
"is_bot": false,
"headline": "Move DB Templates (#402)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-08T17:12:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "131f3e09e8deeabcfb5b47ddfa884e3b6e198679",
"body": "* Add Elastic + Valut Fingperints\n\n* update vault template\n\n* update templates\n\n* update database orginization",
"is_bot": false,
"headline": "Add Elastic/Vault Fingerprints + Reorg DB Fingerprints (#399)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-08T15:58:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2577e54914bdb899fa334f6c6f1bca5112d1419f",
"body": "…binding, path templating (AITF-37) (#396)\n\n* Add source-map ingestion, CONST resolver, ALL_CAPS binding, and path templating to JS route extractor (AITF-37)\n\n- Extend fern/definition/discover/route.yml: add bundleUrls, fetchSourceMaps, maxBundles, maxRoutes to DiscoverRouteConfig; add evidence and \n[…]\nClaude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>\nCo-authored-by: Agent <agent@webscan.local>\nCo-authored-by: Tool Factory Agent <agent@method.security>",
"is_bot": true,
"headline": "feat(discover/route): source-map ingestion, CONST resolver, ALL_CAPS …",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-07T23:04:46Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "245dda493356d959ca2c182a34b1ef22c009b8ad",
"body": null,
"is_bot": false,
"headline": "Remove WEB UI + WEB from ENUMs (#397)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-07T20:37:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d8686d45e1364c974748547cff7c1f2997e658b8",
"body": "* Add Web Fingerprints\n\n* commit new embedded archive\n\n* update embedded archive\n\n* update templates\n\n* update tempalates\n\n* add more fingerprints\n\n* make database_application singular\n\n---------\n\nCo-authored-by: paulgbear <pgibert@method.security>",
"is_bot": false,
"headline": "Expand Web Fingerprints (#394)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-07T19:26:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d371cc98db03ddc0d9608257c044d93972abc365",
"body": "* Add discover request command for freeform HTTP request sending\n\nImplements webscan discover request, which sends a configurable HTTP request\n(any method, custom headers, JSON/text/form body) to a target URL and captures\nthe full response including TLS certificate chain details.\n\nCo-Authored-By: Cl\n[…]\n---------\n\nCo-authored-by: Tool Factory Agent <agent@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Method Tool Factory <tool-factory-agent@method.security>",
"is_bot": true,
"headline": "Add webscan discover request command (AITF-27) (#395)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-07T14:49:39Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c0cda9b3bded889b895aeeb7d227271d6d8919a2",
"body": "…on (#393)\n\nThe prior selector meta[name][content] only matched meta tags with a\nname attribute, silently skipping Open Graph (og:title, og:description),\nTwitter Card (twitter:card), and http-equiv tags that use the property\nattribute instead. Changed selector to meta[content] to capture all meta\nta\n[…]\nperty tags).\n\nCo-authored-by: Method Tool Factory <tool-factory-agent@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>",
"is_bot": true,
"headline": "Fix: include all meta[content] variants in wordlist metadata extracti…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-06T14:42:43Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "09aef1dde82cd7effac05dc2c3421bf5e3833363",
"body": null,
"is_bot": false,
"headline": "Update Json Grabbing for Headless Requests (#392)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-05T20:17:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6118a2639d281519b0a8a87de868b0b7d5fc3173",
"body": "…ator (AITF-21) (#391)\n\n* Add discover wordlist command (CeWL-style web content wordlist generator)\n\nImplements a CeWL-inspired wordlist generator that crawls a target URL to the\nconfigured spider depth, extracts unique words from page body text, meta tags,\nHTML comments, and image alt text, and emi\n[…]\npic.com>\n\n---------\n\nCo-authored-by: Tool Factory Agent <tool-factory@method.security>\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>",
"is_bot": true,
"headline": "Add discover wordlist command - CeWL-style web content wordlist gener…",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-05T16:58:34Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "e2b2d716f68203f6b9c336e99bbf6caa7f6384d4",
"body": "* Add xmlrpc-bruteforce command for WordPress XML-RPC credential testing\n\nImplements the pentest cms wordpress xmlrpc-bruteforce command with:\n- Fern type definitions (Config, BruteforceAttempt, BruteforceTarget, Result, Report)\n- Go internal logic supporting single-call and system.multicall batch m\n[…]\noreply@anthropic.com>\nCo-authored-by: Apurva Goenka <agoenka@method.security>\nCo-authored-by: Method Tool Factory <tool-factory@method.security>\nCo-authored-by: Method Agent <agent@methodsecurity.com>",
"is_bot": true,
"headline": "Add WordPress XML-RPC brute-force command (AITF-22) (#390)",
"author_name": "method-tool-factory[bot]",
"author_login": "method-tool-factory[bot]",
"committed_at": "2026-06-05T14:16:14Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6ba3a480f541835fdd2accc6703d2d8c56957d00",
"body": "* Fix Binary Content Requests for Headless\n\n* Fix Binary Content Detection\n\n* Fix Binary Content Detection",
"is_bot": false,
"headline": "Fix Binary Content Requests for Headless (#387)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-06-04T21:58:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5310bb76756845da1bdcc450e5c81f9cbdb5784b",
"body": "* Allow user-agent presets in browserbase request mode\n\nLifts the blanket browserbase rejection in\nValidateUserAgentWithRequestMethod. Browserbase's Requester delegates\nSendRequest to the local headless.Requester (utils/request/headless/\nbrowserbase/browserbase.go:51), so the CDP user-agent override\n[…]\ne\ninvocation produces consistent UAs across both.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Gbear/saas user agent flag (#389)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-03T21:22:22Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0b4a2bc96bba3b174b7ccf5bfcb471fe926a4758",
"body": "Lifts the blanket browserbase rejection in\nValidateUserAgentWithRequestMethod. Browserbase's Requester delegates\nSendRequest to the local headless.Requester (utils/request/headless/\nbrowserbase/browserbase.go:51), so the CDP user-agent override added\nfor headless mode in the previous commit already \n[…]\nsmatch reason it does for headless: every signal\nbeyond the UA string still identifies as Chromium running in\nBrowserbase's cloud.\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Allow user-agent presets in browserbase request mode (#388)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-03T21:22:10Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "43a7bdf6ae8b0396f85bcad7b2d66a73632f5eba",
"body": "* Apply user-agent presets in headless request mode\n\nWires UserAgentPreset through to the headless requester via CDP\nNetwork.setUserAgentOverride, so --user-agent CHROME/FIREFOX/SAFARI/EDGE\nnow takes effect in headless mode instead of being rejected outright.\n\nValidator behavior:\n- Flag omitted: no \n[…]\nle invocation is consistent across\nboth requests.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Apply user-agent presets in headless request mode (#386)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-03T18:41:26Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b2828de0c127a793629b9d4d0136acd94eee8660",
"body": "Wires --user-agent to xmlrpc-functions-exposed and static-asset-takeover,\nwhich use standard HTTP. Nuclei-based commands (dast, scan cve/misconfiguration/technology,\nwaf detect) are skipped with TODO comments since nuclei manages its own HTTP client.\n\nCo-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add --user-agent flag to pentest commands (#385)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-02T14:14:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "e7dbba8f984a9d579379cf9b70e1bd85f73cda98",
"body": "Extends the UserAgentPreset flag (introduced in #379) to all enumerate\ncommands that use the standard HTTP client:\n- enumerate api-application swagger\n- enumerate cms wordpress plugins\n- enumerate cms drupal modules\n- enumerate kube\n- enumerate general ratelimit\n- enumerate container-registry docker\n\nSkipped with a TODO comment:\n- enumerate api-application graphql (uses http.Post directly, not the\n standard request helper)\n\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add --user-agent flag to enumerate commands (#384)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-01T23:25:48Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4c049bd07bf555f04cb1a7b26158618e6a537ab3",
"body": "… (#380)\n\nExtends the UserAgentPreset flag to remaining discover commands that use\nthe standard HTTP client. Adds validation that rejects explicit\n--user-agent values when using headless/browserbase request methods.\nAdds TODO comments for application and saas commands which use nuclei\nand headless-only paths respectively.\n\nCo-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add --user-agent flag to discover directory, page, and route commands…",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-01T16:33:27Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a24d1dc8e392c5249034dc9b7265f9d951cf6e70",
"body": "* Add --user-agent flag to discover probe command\n\nIntroduces a UserAgentPreset enum (RANDOM, CHROME, FIREFOX, SAFARI, EDGE)\nallowing users to control the User-Agent header sent with HTTP requests.\nDefaults to RANDOM which picks a realistic browser UA per invocation.\nThis is the first command to rec\n[…]\nCo-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\n\n---------\n\nSigned-off-by: paulgbear <pgibert@method.security>\nCo-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Add --user-agent flag to discover probe command (#379)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-06-01T16:11:14Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "69dc08b94881c1c80ea71d1d9e0895f5cab7324e",
"body": "* Align CLI defaults with golden task\n\n* Update CLI docs for golden defaults",
"is_bot": false,
"headline": "Align webscan CLI defaults with golden task (#383)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-29T16:19:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c9589741c65741bd2a5447acac2cd46f699fe634",
"body": null,
"is_bot": false,
"headline": "chore: update vulnerable Go dependencies (#382)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-28T15:58:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b6ff1ba9cd76522ac49dc231b18a856e078dd62",
"body": "* Add Oversability Application Templates\n\n* Update to use Flow",
"is_bot": false,
"headline": "Add Observability Application Templates (#377)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-28T14:19:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "580990d5998acb6019d1bb722817b411f5d80c72",
"body": null,
"is_bot": false,
"headline": "Update Final URL Redirect (#381)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-27T19:11:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bcc3c90c6bd0e501f452f8eac09261c5800da92c",
"body": "* Update Headles Redirect Logic\n\n* Update Base URL Func\n\n* BB Comment\n\n* Add back nil check",
"is_bot": false,
"headline": "Update Headless Redirect Logic + Discover Route Bug Fix (#378)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-27T17:26:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11934c594608243631b94f1117378f5318d7f150",
"body": null,
"is_bot": false,
"headline": "chore: update Go dependencies (#376)",
"author_name": "dpaq-method",
"author_login": "dpaq-method",
"committed_at": "2026-05-26T21:09:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e03a0c0d3c4c648f6332cc0f4c1465d10054d228",
"body": "* Set random browser User-Agent on standard HTTP requests\n\nPicks a realistic browser User-Agent once per process using the\nprojectdiscovery/useragent library (already vendored). This prevents\nleaking Go's default User-Agent (Go-http-client/1.1) which is\ntrivially fingerprinted as a scanner. Callers \n[…]\ne defaultUserAgent to randomUserAgent for clarity\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Set random browser User-Agent (#375)",
"author_name": "paulgbear",
"author_login": "paulgbear",
"committed_at": "2026-05-26T20:51:39Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d0758f4d1f2900f3fd5a20769ab85315362b7ed1",
"body": "* Compress nuclie templates stored in the binary\n\n* linter fix\n\n* exclude dotfiles from embed\n\n* remove unused code and add test file\n\n* test fixup\n\n* Handle embedded asset bundle close errors\n\n* Use unique TestPyPI versions in PR publish check",
"is_bot": false,
"headline": "Compress nuclei templates stored in the binary (#374)",
"author_name": "dpaq-method",
"author_login": "dpaq-method",
"committed_at": "2026-05-26T20:21:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f8cf9e8f385228b2da5586356ef0f00775861a6",
"body": null,
"is_bot": false,
"headline": "Add back just base url (#373)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-19T02:18:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "70c103c3b3547e4f7fe2cef3e127acca21d76eeb",
"body": null,
"is_bot": false,
"headline": "Expand Swagger List (#372)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-18T22:37:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42fed6db80e8560227d2fda02cee83c3c8549108",
"body": "* docs: fix content accuracy across all capability pages\n\n- discover: fix --ignore-cross-domain default (true->false), add\n --global-timeout to application command, add --sensitive-content-detection\n and --sensitive-content-fingerprints-path to page command, fix saas/sso\n file-paths defaults (rem\n[…]\nies\"\nwhich belongs to methodaws, not webscan.\n\nCo-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Update Docs (#371)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-05T15:29:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "93e90ee36e67a02196ff51f6a04ce726656f3032",
"body": "… permissions (#369)\n\n* ci: pin actions to SHA, update goreleaser to v2.9.0, migrate dockers_v2, reduce pr-review permissions\n\nCo-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>\n\n* ci: fix ratchet lint workflow and pr-review permissions\n\nCo-Authored-By: Claude Sonnet 4.6 (1M cont\n[…]\nsigns to fix cosign bundle path\n\n* fix: switch cosign signing to new bundle format (--bundle) for cosign v2.5+ compat\n\n---------\n\nCo-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Update CI/CD: pin actions to SHA, update goreleaser, reduce pr-review…",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-05-04T20:25:59Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "221b5c9340c190ac17f2b0fe1c716fbafe66b1a4",
"body": null,
"is_bot": false,
"headline": "Update Fern (#368)",
"author_name": "Philip Ayoub",
"author_login": "payoub125",
"committed_at": "2026-04-22T13:50:52Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 228,
"latest_release_at": "2026-07-24T17:14:06Z",
"latest_release_tag": "v0.2.0",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 45,
"days_since_latest_release": 2,
"mean_days_between_releases": 2.7
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": false,
"has_contributing": false,
"health_percentage": 50,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "github.com/Method-Security/webscan",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/Method-Security/webscan",
"is_deprecated": false,
"latest_version": "v0.2.0",
"repository_url": "https://github.com/Method-Security/webscan",
"versions_count": 286,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-24T17:08:21Z",
"latest_version_yanked": null,
"days_since_latest_publish": 2
}
]
},
"popularity": {
"forks": 1,
"stars": 4,
"watchers": 0,
"fork_history": {
"days": [
{
"date": "2025-12-20",
"count": 1
}
],
"complete": true,
"collected": 1,
"total_forks": 1
},
"star_history": null,
"open_issues_and_prs": 16
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [
"vendor/github.com/Masterminds/semver/v3/Makefile",
"vendor/github.com/alecthomas/chroma/Makefile",
"vendor/github.com/alecthomas/chroma/v2/Makefile",
"vendor/github.com/alitto/pond/Makefile",
"vendor/github.com/andygrunwald/go-jira/Makefile",
"vendor/github.com/aws/smithy-go/Makefile",
"vendor/github.com/bits-and-blooms/bloom/v3/Makefile",
"vendor/github.com/buger/jsonparser/Makefile",
"vendor/github.com/charmbracelet/glamour/Taskfile.yml",
"vendor/github.com/charmbracelet/lipgloss/Taskfile.yaml",
"vendor/github.com/cloudwego/base64x/Makefile",
"vendor/github.com/dop251/goja/token/Makefile",
"vendor/github.com/gin-gonic/gin/Makefile",
"vendor/github.com/go-git/gcfg/Makefile",
"vendor/github.com/go-git/go-billy/v5/Makefile",
"vendor/github.com/go-git/go-git/v5/Makefile",
"vendor/github.com/go-pg/pg/Makefile",
"vendor/github.com/go-playground/universal-translator/Makefile",
"vendor/github.com/go-playground/validator/v10/Makefile",
"vendor/github.com/go-sourcemap/sourcemap/Makefile",
"vendor/github.com/gobwas/ws/Makefile",
"vendor/github.com/goccy/go-json/Makefile",
"vendor/github.com/hashicorp/go-multierror/Makefile",
"vendor/github.com/hashicorp/go-retryablehttp/Makefile",
"vendor/github.com/itchyny/gojq/Makefile",
"vendor/github.com/itchyny/timefmt-go/Makefile",
"vendor/github.com/kevinburke/ssh_config/Makefile",
"vendor/github.com/labstack/echo/v4/Makefile",
"vendor/github.com/leodido/go-urn/makefile",
"vendor/github.com/leslie-qiwa/flat/Makefile",
"vendor/github.com/montanaflynn/stats/Makefile",
"vendor/github.com/pjbgf/sha1cd/Makefile",
"vendor/github.com/pkg/errors/Makefile",
"vendor/github.com/projectdiscovery/cdncheck/Makefile",
"vendor/github.com/projectdiscovery/machineid/makefile",
"vendor/github.com/projectdiscovery/mapcidr/Makefile",
"vendor/github.com/projectdiscovery/uncover/Makefile",
"vendor/github.com/redis/go-redis/v9/Makefile",
"vendor/github.com/shoenig/go-m1cpu/Makefile",
"vendor/github.com/sorairolake/lzip-go/justfile",
"vendor/github.com/spf13/cast/Makefile",
"vendor/github.com/spf13/cobra/Makefile",
"vendor/github.com/tim-ywliu/nested-logrus-formatter/Makefile",
"vendor/github.com/wk8/go-ordered-map/v2/Makefile",
"vendor/github.com/yuin/goldmark/Makefile",
"vendor/github.com/zeebo/blake3/Makefile",
"vendor/gitlab.com/gitlab-org/api/client-go/Makefile",
"vendor/go.etcd.io/bbolt/Makefile",
"vendor/go.uber.org/multierr/Makefile",
"vendor/go.uber.org/zap/Makefile",
"vendor/golang.org/x/arch/x86/x86asm/Makefile",
"vendor/gopkg.in/corvus-ch/zbase32.v1/Makefile",
"vendor/gopkg.in/sourcemap.v1/Makefile",
"vendor/moul.io/http2curl/Makefile"
],
"api_schema_files": [
"fern/definition/enumerate/apiapplication/swagger.yml",
"utils/nuclei/templates/discover/application/apiapplication/swagger.yaml"
],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 69145,
"source_files_sampled": 82,
"oversized_source_files": 1,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 8038
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "github.com/getkin/kin-openapi",
"direct": false,
"version": "v0.132.0",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 9.1,
"advisory_ids": [
"GHSA-jpcw-4wr7-c3vq",
"GHSA-r277-6w6q-xmqw"
],
"fixed_version": "0.144.0",
"advisory_count": 2,
"oldest_advisory_days": 2
},
{
"name": "github.com/projectdiscovery/nuclei/v3",
"direct": true,
"version": "v3.4.7",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 5.5,
"advisory_ids": [
"GHSA-29rg-wmcw-hpf4",
"GHSA-jm34-66cf-qpvr",
"GO-2026-4965",
"GO-2026-5473"
],
"fixed_version": "3.8.0",
"advisory_count": 4,
"oldest_advisory_days": 95
},
{
"name": "github.com/go-pg/pg",
"direct": false,
"version": "v8.0.7+incompatible",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-6xp3-p59p-q4fj",
"GO-2025-3764"
],
"fixed_version": "10.15.0",
"advisory_count": 2,
"oldest_advisory_days": 409
},
{
"name": "github.com/nwaples/rardecode/v2",
"direct": false,
"version": "v2.1.0",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-rwvp-r38j-9rgg",
"GO-2025-4020"
],
"fixed_version": "2.2.0",
"advisory_count": 2,
"oldest_advisory_days": 290
},
{
"name": "github.com/ulikunitz/xz",
"direct": false,
"version": "v0.5.12",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-jc7w-c686-c4v9",
"GO-2025-3922"
],
"fixed_version": "0.5.15",
"advisory_count": 2,
"oldest_advisory_days": 332
},
{
"name": "go.mongodb.org/mongo-driver",
"direct": false,
"version": "v1.17.4",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-cp6g-7hqx-qxhp",
"GO-2026-5327"
],
"fixed_version": "2.4.2",
"advisory_count": 2,
"oldest_advisory_days": 166
},
{
"name": "filippo.io/edwards25519",
"direct": false,
"version": "v1.1.0",
"severity": "low",
"ecosystem": "go",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-fw7p-63qq-7hpr",
"GO-2026-4503"
],
"fixed_version": "1.1.1",
"advisory_count": 2,
"oldest_advisory_days": 159
},
{
"name": "github.com/refraction-networking/utls",
"direct": false,
"version": "v1.7.0",
"severity": "low",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GHSA-7m29-f4hw-g2vx",
"GHSA-rrxv-pmq9-x67r",
"GO-2026-4509",
"GO-2026-4512"
],
"fixed_version": "1.8.2",
"advisory_count": 4,
"oldest_advisory_days": 158
},
{
"name": "github.com/yuin/goldmark",
"direct": false,
"version": "v1.7.8",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5320"
],
"fixed_version": "1.7.17",
"advisory_count": 1,
"oldest_advisory_days": 19
},
{
"name": "golang.org/x/crypto",
"direct": false,
"version": "v0.53.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5932"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 19
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.38.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5970"
],
"fixed_version": "0.39.0",
"advisory_count": 1,
"oldest_advisory_days": 12
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 2,
"unknown": 3,
"critical": 1,
"moderate": 5
},
"advisory_count": 23,
"affected_count": 11,
"assessed_count": 360,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 1
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/Method-Security/pkg",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.1.1"
},
{
"name": "github.com/PuerkitoBio/goquery",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.10.3"
},
{
"name": "github.com/corona10/goimagehash",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.1.0"
},
{
"name": "github.com/go-rod/rod",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.116.2"
},
{
"name": "github.com/gobwas/ws",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.4.0"
},
{
"name": "github.com/google/uuid",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.6.0"
},
{
"name": "github.com/palantir/pkg/datetime",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.1.0"
},
{
"name": "github.com/palantir/pkg/safejson",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.1.0"
},
{
"name": "github.com/palantir/witchcraft-go-logging",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.57.0"
},
{
"name": "github.com/pb33f/libopenapi",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.16.11"
},
{
"name": "github.com/projectdiscovery/nuclei/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.4.7"
},
{
"name": "github.com/projectdiscovery/useragent",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.0.101"
},
{
"name": "github.com/projectdiscovery/wappalyzergo",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.2.35"
},
{
"name": "github.com/robertkrimen/otto",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.4.0"
},
{
"name": "github.com/spaolacci/murmur3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.1.0"
},
{
"name": "github.com/spf13/cobra",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.9.1"
},
{
"name": "github.com/stretchr/testify",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.11.1"
},
{
"name": "github.com/ysmood/gson",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.7.3"
},
{
"name": "gopkg.in/yaml.v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.0.1"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "github.com/corona10/goimagehash",
"direct": true,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-rod/rod",
"direct": true,
"version": "v0.116.2",
"ecosystem": "go"
},
{
"name": "github.com/gobwas/ws",
"direct": true,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/google/uuid",
"direct": true,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/method-security/pkg",
"direct": true,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/datetime",
"direct": true,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/safejson",
"direct": true,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/witchcraft-go-logging",
"direct": true,
"version": "v1.57.0",
"ecosystem": "go"
},
{
"name": "github.com/pb33f/libopenapi",
"direct": true,
"version": "v0.16.11",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/nuclei/v3",
"direct": true,
"version": "v3.4.7",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/useragent",
"direct": true,
"version": "v0.0.101",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/wappalyzergo",
"direct": true,
"version": "v0.2.35",
"ecosystem": "go"
},
{
"name": "github.com/puerkitobio/goquery",
"direct": true,
"version": "v1.10.3",
"ecosystem": "go"
},
{
"name": "github.com/robertkrimen/otto",
"direct": true,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/spaolacci/murmur3",
"direct": true,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/spf13/cobra",
"direct": true,
"version": "v1.9.1",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/testify",
"direct": true,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "github.com/ysmood/gson",
"direct": true,
"version": "v0.7.3",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": true,
"version": "v3.0.1",
"ecosystem": "go"
},
{
"name": "aead.dev/minisign",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "code.gitea.io/sdk/gitea",
"direct": false,
"version": "v0.21.0",
"ecosystem": "go"
},
{
"name": "dario.cat/mergo",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "filippo.io/edwards25519",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "git.mills.io/prologic/smtpd",
"direct": false,
"version": "v0.0.0-20210710122116-a525b76c287a",
"ecosystem": "go"
},
{
"name": "github.com/42wim/httpsig",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/akrylysov/pogreb",
"direct": false,
"version": "v0.10.2",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/chroma",
"direct": false,
"version": "v0.10.0",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/chroma/v2",
"direct": false,
"version": "v2.14.0",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/template",
"direct": false,
"version": "v0.0.0-20190718012654-fb15b899a751",
"ecosystem": "go"
},
{
"name": "github.com/alecthomas/units",
"direct": false,
"version": "v0.0.0-20211218093645-b94a6e3cc137",
"ecosystem": "go"
},
{
"name": "github.com/alitto/pond",
"direct": false,
"version": "v1.9.2",
"ecosystem": "go"
},
{
"name": "github.com/andybalholm/brotli",
"direct": false,
"version": "v1.1.2-0.20250424173009-453214e765f3",
"ecosystem": "go"
},
{
"name": "github.com/andybalholm/cascadia",
"direct": false,
"version": "v1.3.3",
"ecosystem": "go"
},
{
"name": "github.com/andygrunwald/go-jira",
"direct": false,
"version": "v1.16.0",
"ecosystem": "go"
},
{
"name": "github.com/antchfx/htmlquery",
"direct": false,
"version": "v1.3.4",
"ecosystem": "go"
},
{
"name": "github.com/antchfx/xmlquery",
"direct": false,
"version": "v1.4.4",
"ecosystem": "go"
},
{
"name": "github.com/antchfx/xpath",
"direct": false,
"version": "v1.3.6",
"ecosystem": "go"
},
{
"name": "github.com/asaskevich/govalidator",
"direct": false,
"version": "v0.0.0-20230301143203-a9d515a09cc2",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2",
"direct": false,
"version": "v1.41.5",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream",
"direct": false,
"version": "v1.7.8",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/config",
"direct": false,
"version": "v1.29.17",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/credentials",
"direct": false,
"version": "v1.17.70",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/feature/ec2/imds",
"direct": false,
"version": "v1.16.32",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/feature/s3/manager",
"direct": false,
"version": "v1.17.82",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/configsources",
"direct": false,
"version": "v1.4.21",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2",
"direct": false,
"version": "v2.7.21",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/ini",
"direct": false,
"version": "v1.8.3",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/internal/v4a",
"direct": false,
"version": "v1.4.22",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding",
"direct": false,
"version": "v1.13.7",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/checksum",
"direct": false,
"version": "v1.9.13",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url",
"direct": false,
"version": "v1.13.21",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/internal/s3shared",
"direct": false,
"version": "v1.19.21",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/s3",
"direct": false,
"version": "v1.97.3",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/sso",
"direct": false,
"version": "v1.25.5",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/ssooidc",
"direct": false,
"version": "v1.30.3",
"ecosystem": "go"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/sts",
"direct": false,
"version": "v1.34.0",
"ecosystem": "go"
},
{
"name": "github.com/aws/smithy-go",
"direct": false,
"version": "v1.24.2",
"ecosystem": "go"
},
{
"name": "github.com/aymanbagabas/go-osc52/v2",
"direct": false,
"version": "v2.0.1",
"ecosystem": "go"
},
{
"name": "github.com/aymerick/douceur",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/azure/azure-sdk-for-go/sdk/azcore",
"direct": false,
"version": "v1.18.0",
"ecosystem": "go"
},
{
"name": "github.com/azure/azure-sdk-for-go/sdk/azidentity",
"direct": false,
"version": "v1.10.1",
"ecosystem": "go"
},
{
"name": "github.com/azure/azure-sdk-for-go/sdk/internal",
"direct": false,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "github.com/azure/azure-sdk-for-go/sdk/storage/azblob",
"direct": false,
"version": "v1.6.1",
"ecosystem": "go"
},
{
"name": "github.com/azure/go-ntlmssp",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/azuread/microsoft-authentication-library-for-go",
"direct": false,
"version": "v1.4.2",
"ecosystem": "go"
},
{
"name": "github.com/bahlo/generic-list-go",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/bits-and-blooms/bitset",
"direct": false,
"version": "v1.13.0",
"ecosystem": "go"
},
{
"name": "github.com/bits-and-blooms/bloom/v3",
"direct": false,
"version": "v3.5.0",
"ecosystem": "go"
},
{
"name": "github.com/bluele/gcache",
"direct": false,
"version": "v0.0.2",
"ecosystem": "go"
},
{
"name": "github.com/bodgit/plumbing",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/bodgit/sevenzip",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/bodgit/windows",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/buger/jsonparser",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/bytedance/gopkg",
"direct": false,
"version": "v0.1.3",
"ecosystem": "go"
},
{
"name": "github.com/bytedance/sonic",
"direct": false,
"version": "v1.15.0",
"ecosystem": "go"
},
{
"name": "github.com/bytedance/sonic/loader",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/caddyserver/certmagic",
"direct": false,
"version": "v0.19.2",
"ecosystem": "go"
},
{
"name": "github.com/cespare/xxhash",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/cespare/xxhash/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/colorprofile",
"direct": false,
"version": "v0.2.3-0.20250311203215-f60798e515dc",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/glamour",
"direct": false,
"version": "v0.10.0",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/lipgloss",
"direct": false,
"version": "v1.1.1-0.20250404203927-76690c660834",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/ansi",
"direct": false,
"version": "v0.8.0",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/cellbuf",
"direct": false,
"version": "v0.0.13",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/exp/slice",
"direct": false,
"version": "v0.0.0-20250327172914-2fdc97757edf",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/term",
"direct": false,
"version": "v0.2.1",
"ecosystem": "go"
},
{
"name": "github.com/cheggaaa/pb/v3",
"direct": false,
"version": "v3.1.4",
"ecosystem": "go"
},
{
"name": "github.com/clbanning/mxj/v2",
"direct": false,
"version": "v2.7.0",
"ecosystem": "go"
},
{
"name": "github.com/cloudflare/cfssl",
"direct": false,
"version": "v1.6.4",
"ecosystem": "go"
},
{
"name": "github.com/cloudflare/circl",
"direct": false,
"version": "v1.6.3",
"ecosystem": "go"
},
{
"name": "github.com/cloudwego/base64x",
"direct": false,
"version": "v0.1.6",
"ecosystem": "go"
},
{
"name": "github.com/cnf/structhash",
"direct": false,
"version": "v0.0.0-20201127153200-e1b16c1ebc08",
"ecosystem": "go"
},
{
"name": "github.com/cyphar/filepath-securejoin",
"direct": false,
"version": "v0.6.1",
"ecosystem": "go"
},
{
"name": "github.com/davecgh/go-spew",
"direct": false,
"version": "v1.1.2-0.20180830191138-d8f796af33cc",
"ecosystem": "go"
},
{
"name": "github.com/davidmz/go-pageant",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/dgryski/go-rendezvous",
"direct": false,
"version": "v0.0.0-20200823014737-9f7001d12a5f",
"ecosystem": "go"
},
{
"name": "github.com/dimchansky/utfbom",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/ditashi/jsbeautifier-go",
"direct": false,
"version": "v0.0.0-20141206144643-2520a8026a9c",
"ecosystem": "go"
},
{
"name": "github.com/dlclark/regexp2",
"direct": false,
"version": "v1.11.5",
"ecosystem": "go"
},
{
"name": "github.com/docker/go-units",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/dop251/goja",
"direct": false,
"version": "v0.0.0-20250624190929-4d26883d182a",
"ecosystem": "go"
},
{
"name": "github.com/dop251/goja_nodejs",
"direct": false,
"version": "v0.0.0-20250409162600-f7acab6894b0",
"ecosystem": "go"
},
{
"name": "github.com/dprotaso/go-yit",
"direct": false,
"version": "v0.0.0-20220510233725-9ba8df137936",
"ecosystem": "go"
},
{
"name": "github.com/dsnet/compress",
"direct": false,
"version": "v0.0.2-0.20230904184137-39efe44ab707",
"ecosystem": "go"
},
{
"name": "github.com/emirpasic/gods",
"direct": false,
"version": "v1.18.1",
"ecosystem": "go"
},
{
"name": "github.com/fatih/color",
"direct": false,
"version": "v1.16.0",
"ecosystem": "go"
},
{
"name": "github.com/fatih/structs",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/felixge/fgprof",
"direct": false,
"version": "v0.9.5",
"ecosystem": "go"
},
{
"name": "github.com/free5gc/util",
"direct": false,
"version": "v1.0.5-0.20230511064842-2e120956883b",
"ecosystem": "go"
},
{
"name": "github.com/gabriel-vasile/mimetype",
"direct": false,
"version": "v1.4.8",
"ecosystem": "go"
},
{
"name": "github.com/gaissmai/bart",
"direct": false,
"version": "v0.20.4",
"ecosystem": "go"
},
{
"name": "github.com/geoffgarside/ber",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/getkin/kin-openapi",
"direct": false,
"version": "v0.132.0",
"ecosystem": "go"
},
{
"name": "github.com/gin-contrib/sse",
"direct": false,
"version": "v0.1.0",
"ecosystem": "go"
},
{
"name": "github.com/gin-gonic/gin",
"direct": false,
"version": "v1.9.1",
"ecosystem": "go"
},
{
"name": "github.com/go-asn1-ber/asn1-ber",
"direct": false,
"version": "v1.5.8-0.20250403174932-29230038a667",
"ecosystem": "go"
},
{
"name": "github.com/go-fed/httpsig",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/go-git/gcfg",
"direct": false,
"version": "v1.5.1-0.20230307220236-3a3c6141e376",
"ecosystem": "go"
},
{
"name": "github.com/go-git/go-billy/v5",
"direct": false,
"version": "v5.9.0",
"ecosystem": "go"
},
{
"name": "github.com/go-git/go-git/v5",
"direct": false,
"version": "v5.19.1",
"ecosystem": "go"
},
{
"name": "github.com/go-ldap/ldap/v3",
"direct": false,
"version": "v3.4.11",
"ecosystem": "go"
},
{
"name": "github.com/go-ole/go-ole",
"direct": false,
"version": "v1.2.6",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/jsonpointer",
"direct": false,
"version": "v0.21.0",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag",
"direct": false,
"version": "v0.23.0",
"ecosystem": "go"
},
{
"name": "github.com/go-pg/pg",
"direct": false,
"version": "v8.0.7+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/go-playground/locales",
"direct": false,
"version": "v0.14.1",
"ecosystem": "go"
},
{
"name": "github.com/go-playground/universal-translator",
"direct": false,
"version": "v0.18.1",
"ecosystem": "go"
},
{
"name": "github.com/go-playground/validator/v10",
"direct": false,
"version": "v10.26.0",
"ecosystem": "go"
},
{
"name": "github.com/go-sourcemap/sourcemap",
"direct": false,
"version": "v2.1.4+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/go-sql-driver/mysql",
"direct": false,
"version": "v1.9.3",
"ecosystem": "go"
},
{
"name": "github.com/goburrow/cache",
"direct": false,
"version": "v0.1.4",
"ecosystem": "go"
},
{
"name": "github.com/gobwas/httphead",
"direct": false,
"version": "v0.1.0",
"ecosystem": "go"
},
{
"name": "github.com/gobwas/pool",
"direct": false,
"version": "v0.2.1",
"ecosystem": "go"
},
{
"name": "github.com/goccy/go-json",
"direct": false,
"version": "v0.10.5",
"ecosystem": "go"
},
{
"name": "github.com/golang-jwt/jwt/v4",
"direct": false,
"version": "v4.5.2",
"ecosystem": "go"
},
{
"name": "github.com/golang-jwt/jwt/v5",
"direct": false,
"version": "v5.2.2",
"ecosystem": "go"
},
{
"name": "github.com/golang-sql/civil",
"direct": false,
"version": "v0.0.0-20220223132316-b832511892a9",
"ecosystem": "go"
},
{
"name": "github.com/golang-sql/sqlexp",
"direct": false,
"version": "v0.1.0",
"ecosystem": "go"
},
{
"name": "github.com/golang/groupcache",
"direct": false,
"version": "v0.0.0-20241129210726-2c02b8208cf8",
"ecosystem": "go"
},
{
"name": "github.com/golang/snappy",
"direct": false,
"version": "v0.0.4",
"ecosystem": "go"
},
{
"name": "github.com/google/certificate-transparency-go",
"direct": false,
"version": "v1.1.4",
"ecosystem": "go"
},
{
"name": "github.com/google/go-github",
"direct": false,
"version": "v17.0.0+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/google/go-github/v30",
"direct": false,
"version": "v30.1.0",
"ecosystem": "go"
},
{
"name": "github.com/google/go-querystring",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/google/pprof",
"direct": false,
"version": "v0.0.0-20240727154555-813a5fbdbec8",
"ecosystem": "go"
},
{
"name": "github.com/google/shlex",
"direct": false,
"version": "v0.0.0-20191202100458-e7afc7fbc510",
"ecosystem": "go"
},
{
"name": "github.com/gorilla/css",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/h2non/filetype",
"direct": false,
"version": "v1.1.3",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/errwrap",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-cleanhttp",
"direct": false,
"version": "v0.5.2",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-multierror",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-retryablehttp",
"direct": false,
"version": "v0.7.7",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-uuid",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/go-version",
"direct": false,
"version": "v1.7.0",
"ecosystem": "go"
},
{
"name": "github.com/hashicorp/golang-lru/v2",
"direct": false,
"version": "v2.0.7",
"ecosystem": "go"
},
{
"name": "github.com/hbakhtiyor/strsim",
"direct": false,
"version": "v0.0.0-20190107154042-4d2bbb273edf",
"ecosystem": "go"
},
{
"name": "github.com/hdm/jarm-go",
"direct": false,
"version": "v0.0.7",
"ecosystem": "go"
},
{
"name": "github.com/imdario/mergo",
"direct": false,
"version": "v0.3.16",
"ecosystem": "go"
},
{
"name": "github.com/inconshreveable/mousetrap",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/invopop/jsonschema",
"direct": false,
"version": "v0.13.0",
"ecosystem": "go"
},
{
"name": "github.com/invopop/yaml",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/itchyny/gojq",
"direct": false,
"version": "v0.12.17",
"ecosystem": "go"
},
{
"name": "github.com/itchyny/timefmt-go",
"direct": false,
"version": "v0.1.6",
"ecosystem": "go"
},
{
"name": "github.com/jbenet/go-context",
"direct": false,
"version": "v0.0.0-20150711004518-d14ea06fba99",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/aescts/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/dnsutils/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/gofork",
"direct": false,
"version": "v1.7.6",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/gokrb5/v8",
"direct": false,
"version": "v8.4.4",
"ecosystem": "go"
},
{
"name": "github.com/jcmturner/rpc/v2",
"direct": false,
"version": "v2.0.3",
"ecosystem": "go"
},
{
"name": "github.com/jinzhu/inflection",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/josharian/intern",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/json-iterator/go",
"direct": false,
"version": "v1.1.12",
"ecosystem": "go"
},
{
"name": "github.com/julienschmidt/httprouter",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/kataras/jwt",
"direct": false,
"version": "v0.1.10",
"ecosystem": "go"
},
{
"name": "github.com/kevinburke/ssh_config",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/kitabisa/go-ci",
"direct": false,
"version": "v1.0.3",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/compress",
"direct": false,
"version": "v1.18.0",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/cpuid/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/pgzip",
"direct": false,
"version": "v1.2.6",
"ecosystem": "go"
},
{
"name": "github.com/knetic/govaluate",
"direct": false,
"version": "v3.0.1-0.20171022003610-9aa49832a739+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/kylelemons/godebug",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/labstack/echo/v4",
"direct": false,
"version": "v4.13.4",
"ecosystem": "go"
},
{
"name": "github.com/labstack/gommon",
"direct": false,
"version": "v0.4.2",
"ecosystem": "go"
},
{
"name": "github.com/leodido/go-urn",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/leslie-qiwa/flat",
"direct": false,
"version": "v0.0.0-20230424180412-f9d1cf014baa",
"ecosystem": "go"
},
{
"name": "github.com/lib/pq",
"direct": false,
"version": "v1.10.9",
"ecosystem": "go"
},
{
"name": "github.com/libdns/libdns",
"direct": false,
"version": "v0.2.1",
"ecosystem": "go"
},
{
"name": "github.com/logrusorgru/aurora",
"direct": false,
"version": "v2.0.3+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/lor00x/goldap",
"direct": false,
"version": "v0.0.0-20180618054307-a546dffdd1a3",
"ecosystem": "go"
},
{
"name": "github.com/lucasb-eyer/go-colorful",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/lufia/plan9stats",
"direct": false,
"version": "v0.0.0-20211012122336-39d0f177ccd0",
"ecosystem": "go"
},
{
"name": "github.com/mackerelio/go-osstat",
"direct": false,
"version": "v0.2.4",
"ecosystem": "go"
},
{
"name": "github.com/mailru/easyjson",
"direct": false,
"version": "v0.7.7",
"ecosystem": "go"
},
{
"name": "github.com/masterminds/semver/v3",
"direct": false,
"version": "v3.4.0",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-colorable",
"direct": false,
"version": "v0.1.14",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-isatty",
"direct": false,
"version": "v0.0.20",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-runewidth",
"direct": false,
"version": "v0.0.16",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-sqlite3",
"direct": false,
"version": "v1.14.28",
"ecosystem": "go"
},
{
"name": "github.com/mholt/acmez",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/mholt/archives",
"direct": false,
"version": "v0.1.3",
"ecosystem": "go"
},
{
"name": "github.com/microcosm-cc/bluemonday",
"direct": false,
"version": "v1.0.27",
"ecosystem": "go"
},
{
"name": "github.com/microsoft/go-mssqldb",
"direct": false,
"version": "v1.9.2",
"ecosystem": "go"
},
{
"name": "github.com/microsoft/go-winio",
"direct": false,
"version": "v0.6.2",
"ecosystem": "go"
},
{
"name": "github.com/miekg/dns",
"direct": false,
"version": "v1.1.66",
"ecosystem": "go"
},
{
"name": "github.com/mikelolasagasti/xz",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/minio/minlz",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/minio/selfupdate",
"direct": false,
"version": "v0.6.1-0.20230907112617-f11e74f84ca7",
"ecosystem": "go"
},
{
"name": "github.com/mitchellh/go-homedir",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/concurrent",
"direct": false,
"version": "v0.0.0-20180306012644-bacd9c7ef1dd",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/reflect2",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/mohae/deepcopy",
"direct": false,
"version": "v0.0.0-20170929034955-c48cc78d4826",
"ecosystem": "go"
},
{
"name": "github.com/montanaflynn/stats",
"direct": false,
"version": "v0.7.1",
"ecosystem": "go"
},
{
"name": "github.com/muesli/reflow",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/muesli/termenv",
"direct": false,
"version": "v0.16.0",
"ecosystem": "go"
},
{
"name": "github.com/mzack9999/gcache",
"direct": false,
"version": "v0.0.0-20230410081825-519e28eab057",
"ecosystem": "go"
},
{
"name": "github.com/mzack9999/go-http-digest-auth-client",
"direct": false,
"version": "v0.6.1-0.20220414142836-eb8883508809",
"ecosystem": "go"
},
{
"name": "github.com/nfnt/resize",
"direct": false,
"version": "v0.0.0-20180221191011-83c6a9932646",
"ecosystem": "go"
},
{
"name": "github.com/nwaples/rardecode/v2",
"direct": false,
"version": "v2.1.0",
"ecosystem": "go"
},
{
"name": "github.com/oasdiff/yaml",
"direct": false,
"version": "v0.0.0-20250309154309-f31be36b4037",
"ecosystem": "go"
},
{
"name": "github.com/oasdiff/yaml3",
"direct": false,
"version": "v0.0.0-20250309153720-d2182401db90",
"ecosystem": "go"
},
{
"name": "github.com/olekukonko/tablewriter",
"direct": false,
"version": "v0.0.5",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/bytesbuffers",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/safelong",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/safeyaml",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/pkg/transform",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/witchcraft-go-error",
"direct": false,
"version": "v1.38.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/witchcraft-go-params",
"direct": false,
"version": "v1.35.0",
"ecosystem": "go"
},
{
"name": "github.com/palantir/witchcraft-go-tracing",
"direct": false,
"version": "v1.37.0",
"ecosystem": "go"
},
{
"name": "github.com/pelletier/go-toml/v2",
"direct": false,
"version": "v2.0.8",
"ecosystem": "go"
},
{
"name": "github.com/perimeterx/marshmallow",
"direct": false,
"version": "v1.1.5",
"ecosystem": "go"
},
{
"name": "github.com/pierrec/lz4/v4",
"direct": false,
"version": "v4.1.22",
"ecosystem": "go"
},
{
"name": "github.com/pjbgf/sha1cd",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/pkg/browser",
"direct": false,
"version": "v0.0.0-20240102092130-5ac0b6a4141c",
"ecosystem": "go"
},
{
"name": "github.com/pkg/errors",
"direct": false,
"version": "v0.9.1",
"ecosystem": "go"
},
{
"name": "github.com/pmezard/go-difflib",
"direct": false,
"version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
"ecosystem": "go"
},
{
"name": "github.com/power-devops/perfstat",
"direct": false,
"version": "v0.0.0-20210106213030-5aafc221ea8c",
"ecosystem": "go"
},
{
"name": "github.com/praetorian-inc/fingerprintx",
"direct": false,
"version": "v1.1.15",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/asnmap",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/blackrock",
"direct": false,
"version": "v0.0.1",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/cdncheck",
"direct": false,
"version": "v1.1.17",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/clistats",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/dsl",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/fastdialer",
"direct": false,
"version": "v0.4.1",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/fasttemplate",
"direct": false,
"version": "v0.0.2",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/freeport",
"direct": false,
"version": "v0.0.7",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/gcache",
"direct": false,
"version": "v0.0.0-20241015120333-12546c6e3f4c",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/go-smb2",
"direct": false,
"version": "v0.0.0-20240129202741-052cc450c6cb",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/goflags",
"direct": false,
"version": "v0.1.74",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/gologger",
"direct": false,
"version": "v1.1.54",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/gostruct",
"direct": false,
"version": "v0.0.2",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/gozero",
"direct": false,
"version": "v0.0.3",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/hmap",
"direct": false,
"version": "v0.0.91",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/httpx",
"direct": false,
"version": "v1.7.0",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/interactsh",
"direct": false,
"version": "v1.2.4",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/ldapserver",
"direct": false,
"version": "v1.0.2-0.20240219154113-dcc758ebc0cb",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/machineid",
"direct": false,
"version": "v0.0.0-20240226150047-2e2c51e35983",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/mapcidr",
"direct": false,
"version": "v1.1.34",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/n3iwf",
"direct": false,
"version": "v0.0.0-20230523120440-b8cd232ff1f5",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/networkpolicy",
"direct": false,
"version": "v0.1.17",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/ratelimit",
"direct": false,
"version": "v0.0.81",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/rawhttp",
"direct": false,
"version": "v0.1.90",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/rdap",
"direct": false,
"version": "v0.9.1-0.20221108103045-9865884d1917",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/retryabledns",
"direct": false,
"version": "v1.0.103",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/retryablehttp-go",
"direct": false,
"version": "v1.0.116",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/sarif",
"direct": false,
"version": "v0.0.1",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/tlsx",
"direct": false,
"version": "v1.1.9",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/uncover",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/utils",
"direct": false,
"version": "v0.4.21",
"ecosystem": "go"
},
{
"name": "github.com/projectdiscovery/yamldoc-go",
"direct": false,
"version": "v1.0.6",
"ecosystem": "go"
},
{
"name": "github.com/protonmail/go-crypto",
"direct": false,
"version": "v1.1.6",
"ecosystem": "go"
},
{
"name": "github.com/redis/go-redis/v9",
"direct": false,
"version": "v9.11.0",
"ecosystem": "go"
},
{
"name": "github.com/refraction-networking/utls",
"direct": false,
"version": "v1.7.0",
"ecosystem": "go"
},
{
"name": "github.com/remeh/sizedwaitgroup",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/rivo/uniseg",
"direct": false,
"version": "v0.4.7",
"ecosystem": "go"
},
{
"name": "github.com/rs/xid",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/saintfish/chardet",
"direct": false,
"version": "v0.0.0-20230101081208-5e3ef4b5456d",
"ecosystem": "go"
},
{
"name": "github.com/sashabaranov/go-openai",
"direct": false,
"version": "v1.37.0",
"ecosystem": "go"
},
{
"name": "github.com/segmentio/ksuid",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/seh-msft/burpxml",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/sergi/go-diff",
"direct": false,
"version": "v1.3.2-0.20230802210424-5b0b94c5c0d3",
"ecosystem": "go"
},
{
"name": "github.com/shirou/gopsutil",
"direct": false,
"version": "v3.21.11+incompatible",
"ecosystem": "go"
},
{
"name": "github.com/shirou/gopsutil/v3",
"direct": false,
"version": "v3.24.5",
"ecosystem": "go"
},
{
"name": "github.com/shoenig/go-m1cpu",
"direct": false,
"version": "v0.1.6",
"ecosystem": "go"
},
{
"name": "github.com/shurcool/graphql",
"direct": false,
"version": "v0.0.0-20230722043721-ed46e5a46466",
"ecosystem": "go"
},
{
"name": "github.com/sirupsen/logrus",
"direct": false,
"version": "v1.9.3",
"ecosystem": "go"
},
{
"name": "github.com/skeema/knownhosts",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/sorairolake/lzip-go",
"direct": false,
"version": "v0.3.5",
"ecosystem": "go"
},
{
"name": "github.com/spf13/cast",
"direct": false,
"version": "v1.9.2",
"ecosystem": "go"
},
{
"name": "github.com/spf13/pflag",
"direct": false,
"version": "v1.0.6",
"ecosystem": "go"
},
{
"name": "github.com/starry-s/zip",
"direct": false,
"version": "v0.2.1",
"ecosystem": "go"
},
{
"name": "github.com/syndtr/goleveldb",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/btree",
"direct": false,
"version": "v1.7.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/buntdb",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/gjson",
"direct": false,
"version": "v1.18.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/grect",
"direct": false,
"version": "v0.1.4",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/match",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/pretty",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/rtred",
"direct": false,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/tinyqueue",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/tim-ywliu/nested-logrus-formatter",
"direct": false,
"version": "v1.3.2",
"ecosystem": "go"
},
{
"name": "github.com/tklauser/go-sysconf",
"direct": false,
"version": "v0.3.12",
"ecosystem": "go"
},
{
"name": "github.com/tklauser/numcpus",
"direct": false,
"version": "v0.6.1",
"ecosystem": "go"
},
{
"name": "github.com/trivago/tgo",
"direct": false,
"version": "v1.0.7",
"ecosystem": "go"
},
{
"name": "github.com/twitchyliquid64/golang-asm",
"direct": false,
"version": "v0.15.1",
"ecosystem": "go"
},
{
"name": "github.com/ugorji/go/codec",
"direct": false,
"version": "v1.2.11",
"ecosystem": "go"
},
{
"name": "github.com/ulikunitz/xz",
"direct": false,
"version": "v0.5.12",
"ecosystem": "go"
},
{
"name": "github.com/valyala/bytebufferpool",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/valyala/fasttemplate",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/vividcortex/ewma",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/vmware-labs/yaml-jsonpath",
"direct": false,
"version": "v0.3.2",
"ecosystem": "go"
},
{
"name": "github.com/weppos/publicsuffix-go",
"direct": false,
"version": "v0.40.3-0.20250311103038-7794c8c0723b",
"ecosystem": "go"
},
{
"name": "github.com/wk8/go-ordered-map/v2",
"direct": false,
"version": "v2.1.8",
"ecosystem": "go"
},
{
"name": "github.com/xanzy/ssh-agent",
"direct": false,
"version": "v0.3.3",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/pbkdf2",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/scram",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/xdg-go/stringprep",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/xo/terminfo",
"direct": false,
"version": "v0.0.0-20220910002029-abceb7e1c41e",
"ecosystem": "go"
},
{
"name": "github.com/yassinebenaid/godump",
"direct": false,
"version": "v0.11.1",
"ecosystem": "go"
},
{
"name": "github.com/youmark/pkcs8",
"direct": false,
"version": "v0.0.0-20240726163527-a2c0da244d78",
"ecosystem": "go"
},
{
"name": "github.com/ysmood/fetchup",
"direct": false,
"version": "v0.2.3",
"ecosystem": "go"
},
{
"name": "github.com/ysmood/goob",
"direct": false,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/ysmood/got",
"direct": false,
"version": "v0.40.0",
"ecosystem": "go"
},
{
"name": "github.com/ysmood/leakless",
"direct": false,
"version": "v0.9.0",
"ecosystem": "go"
},
{
"name": "github.com/yuin/goldmark",
"direct": false,
"version": "v1.7.8",
"ecosystem": "go"
},
{
"name": "github.com/yuin/goldmark-emoji",
"direct": false,
"version": "v1.0.5",
"ecosystem": "go"
},
{
"name": "github.com/yusufpapurcu/wmi",
"direct": false,
"version": "v1.2.4",
"ecosystem": "go"
},
{
"name": "github.com/zcalusic/sysinfo",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/zeebo/blake3",
"direct": false,
"version": "v0.2.3",
"ecosystem": "go"
},
{
"name": "github.com/zmap/rc2",
"direct": false,
"version": "v0.0.0-20190804163417-abaa70531248",
"ecosystem": "go"
},
{
"name": "github.com/zmap/zcrypto",
"direct": false,
"version": "v0.0.0-20240512203510-0fef58d9a9db",
"ecosystem": "go"
},
{
"name": "github.com/zmap/zgrab2",
"direct": false,
"version": "v0.1.8",
"ecosystem": "go"
},
{
"name": "gitlab.com/gitlab-org/api/client-go",
"direct": false,
"version": "v0.130.1",
"ecosystem": "go"
},
{
"name": "go.etcd.io/bbolt",
"direct": false,
"version": "v1.3.10",
"ecosystem": "go"
},
{
"name": "go.mongodb.org/mongo-driver",
"direct": false,
"version": "v1.17.4",
"ecosystem": "go"
},
{
"name": "go.uber.org/multierr",
"direct": false,
"version": "v1.11.0",
"ecosystem": "go"
},
{
"name": "go.uber.org/zap",
"direct": false,
"version": "v1.25.0",
"ecosystem": "go"
},
{
"name": "go4.org",
"direct": false,
"version": "v0.0.0-20230225012048-214862532bf5",
"ecosystem": "go"
},
{
"name": "goftp.io/server/v2",
"direct": false,
"version": "v2.0.1",
"ecosystem": "go"
},
{
"name": "golang.org/x/arch",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/crypto",
"direct": false,
"version": "v0.53.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/exp",
"direct": false,
"version": "v0.0.0-20260410095643-746e56fc9e2f",
"ecosystem": "go"
},
{
"name": "golang.org/x/mod",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/net",
"direct": false,
"version": "v0.56.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/oauth2",
"direct": false,
"version": "v0.30.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sync",
"direct": false,
"version": "v0.21.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sys",
"direct": false,
"version": "v0.46.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/term",
"direct": false,
"version": "v0.44.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.38.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/time",
"direct": false,
"version": "v0.11.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/tools",
"direct": false,
"version": "v0.45.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/protobuf",
"direct": false,
"version": "v1.36.6",
"ecosystem": "go"
},
{
"name": "gopkg.in/alecthomas/kingpin.v2",
"direct": false,
"version": "v2.2.6",
"ecosystem": "go"
},
{
"name": "gopkg.in/corvus-ch/zbase32.v1",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/djherbis/times.v1",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/sourcemap.v1",
"direct": false,
"version": "v1.0.5",
"ecosystem": "go"
},
{
"name": "gopkg.in/warnings.v0",
"direct": false,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v2",
"direct": false,
"version": "v2.4.0",
"ecosystem": "go"
},
{
"name": "mellium.im/sasl",
"direct": false,
"version": "v0.3.2",
"ecosystem": "go"
},
{
"name": "moul.io/http2curl",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
}
],
"collected": true,
"truncated": false,
"total_count": 360,
"direct_count": 19,
"indirect_count": 341
}
},
"maintainership": {
"issues": {
"open_prs": 14,
"merged_prs": 411,
"open_issues": 2,
"closed_ratio": 0,
"closed_issues": 0,
"closed_unmerged_prs": 52
},
"bus_factor": 1,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "payoub125",
"commits": 250,
"avatar_url": "https://avatars.githubusercontent.com/u/176429686?v=4"
},
{
"type": "User",
"login": "apurvagoenka-method",
"commits": 54,
"avatar_url": "https://avatars.githubusercontent.com/u/207608853?v=4"
},
{
"type": "User",
"login": "methodsecuritysj",
"commits": 28,
"avatar_url": "https://avatars.githubusercontent.com/u/166065944?v=4"
},
{
"type": "User",
"login": "madhavmvats01",
"commits": 16,
"avatar_url": "https://avatars.githubusercontent.com/u/167867668?v=4"
},
{
"type": "User",
"login": "sean-hacker",
"commits": 15,
"avatar_url": "https://avatars.githubusercontent.com/u/166066718?v=4"
},
{
"type": "User",
"login": "paulgbear",
"commits": 10,
"avatar_url": "https://avatars.githubusercontent.com/u/270754390?v=4"
},
{
"type": "User",
"login": "dpaq-method",
"commits": 5,
"avatar_url": "https://avatars.githubusercontent.com/u/196685049?v=4"
},
{
"type": "User",
"login": "mdickey-method-security",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/193508664?v=4"
},
{
"type": "User",
"login": "steven-rand",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/188903488?v=4"
},
{
"type": "User",
"login": "owen-method",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/258875881?v=4"
}
],
"contributors_sampled": 10,
"top_contributor_share": 0.653
},
"quality_signals": {
"has_ci": true,
"has_tests": false,
"ci_workflows": [
"code-gen.yml",
"codeql.yml",
"mkdocs-develop.yml",
"pr-review.yml",
"publish.yml",
"ratchet.yml",
"release.yml",
"reusable-build.yml",
"sync-nuclei-templates.yml",
"test-build.yml",
"test-docs.yml",
"test-publish.yml",
"upload-to-s3.yml",
"verify.yml"
],
"has_docs_dir": true,
"linter_configs": [
".eslintrc.yml",
".golangci.yaml",
".golangci.yml"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": true
},
"security_signals": {
"lockfiles": [
"go.sum"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 5,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 10,
"reason": "all changesets reviewed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 3,
"reason": "project has 1 contributing companies or organizations -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 5,
"reason": "dependency not pinned by hash detected -- score normalized to 5",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 4,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 8,
"reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "18 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "8e5c0983bd26dd5d287867e289565d41df968267",
"ran_at": "2026-07-27T15:20:18Z",
"aggregate_score": 6.5,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": true,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-27T10:17:37Z",
"oldest_open_prs": [
{
"number": 122,
"created_at": "2025-03-24T09:21:45Z",
"last_comment_at": "2025-10-16T23:57:02Z",
"last_comment_author": "dependabot"
},
{
"number": 124,
"created_at": "2025-03-31T08:56:59Z",
"last_comment_at": "2025-09-22T13:50:31Z",
"last_comment_author": "dependabot"
},
{
"number": 129,
"created_at": "2025-04-14T09:12:05Z",
"last_comment_at": "2025-09-22T13:53:38Z",
"last_comment_author": "dependabot"
},
{
"number": 321,
"created_at": "2025-12-20T23:47:32Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 411,
"created_at": "2026-06-09T19:41:08Z",
"last_comment_at": "2026-06-10T02:01:42Z",
"last_comment_author": "method-tool-factory"
},
{
"number": 423,
"created_at": "2026-06-13T00:01:08Z",
"last_comment_at": "2026-06-13T14:04:13Z",
"last_comment_author": "method-tool-factory"
},
{
"number": 425,
"created_at": "2026-06-13T01:27:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 426,
"created_at": "2026-06-13T01:55:39Z",
"last_comment_at": "2026-06-14T19:10:16Z",
"last_comment_author": "method-tool-factory"
},
{
"number": 432,
"created_at": "2026-06-13T14:04:13Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 440,
"created_at": "2026-06-14T19:19:39Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 441,
"created_at": "2026-06-14T19:29:50Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 442,
"created_at": "2026-06-14T19:58:40Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 448,
"created_at": "2026-06-16T18:20:49Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 459,
"created_at": "2026-06-24T16:42:56Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-26T17:59:43Z",
"ci_last_conclusion": "FAILURE",
"oldest_open_issues": [
{
"number": 3,
"created_at": "2024-06-16T12:46:27Z",
"last_comment_at": "2025-12-21T23:02:23Z",
"last_comment_author": "hzs0084"
},
{
"number": 8,
"created_at": "2024-06-21T02:23:43Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/method-security/webscan",
"host": "github.com",
"name": "webscan",
"owner": "method-security"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 64,
"inputs": {
"security": 67,
"vitality": 96,
"community": 28,
"governance": 55,
"engineering": 72
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 96,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 95,
"inputs": {
"commits_last_year": 228,
"human_commit_share": 0.76,
"days_since_last_push": 0,
"active_weeks_last_year": 45
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "45/52 weeks with commits",
"points": 31.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 45
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "228 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 228
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v0.2.0",
"releases_from_tags": false,
"days_since_latest_release": 2,
"mean_days_between_releases": 2.7
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 2 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 2
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~2.7 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 2.7
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 8,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 28,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 8,
"inputs": {
"forks": 1,
"stars": 4,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "4 stars",
"points": 7.7,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 4
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "1 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 1
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "0 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 0
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 55,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 33,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 10,
"top_contributor_share": 0.653
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 65% of commits",
"points": 7.8,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 65
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "10 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 10
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "at_risk",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 49,
"inputs": {
"merged_prs": 411,
"open_issues": 2,
"closed_issues": 0,
"issue_closed_ratio": 0,
"closed_unmerged_prs": 52
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "0% of issues closed",
"points": 0,
"status": "missed",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 0
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "411/463 decided PRs merged",
"points": 34,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 411,
"decided": 463
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "all changesets reviewed",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 53,
"inputs": {
"followers": 12,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "method-security",
"public_repos": 23,
"account_age_days": 843
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "12 followers of method-security",
"points": 8,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 12,
"login": "method-security"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "23 public repos, account ~2 yr old",
"points": 14.7,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 23
}
},
{
"code": "account_age_years",
"params": {
"years": 2
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/Method-Security/webscan"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 2
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 2 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 2
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "286 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 286
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 72,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 76,
"inputs": {
"has_ci": true,
"has_tests": false,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": true
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "14 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 14
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": ".eslintrc.yml, .golangci.yaml, .golangci.yml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.yml, .golangci.yaml, .golangci.yml"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 9.6,
"status": "met",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": null,
"has_readme": true,
"has_docs_dir": true,
"has_description": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 67,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Packaging. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"packaging"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 65,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 6.5
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 3.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "all changesets reviewed",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 5",
"points": 2.5,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 2,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "18 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "good",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 360 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 360
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 73,
"inputs": {
"source": "osv",
"advisories": 23,
"affected_packages": 11,
"assessed_packages": 360,
"unassessed_packages": 0,
"affected_by_severity": "critical 1, moderate 5, low 2, unknown 3",
"direct_affected_packages": 1
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "1 affected: github.com/projectdiscovery/nuclei/v3 v3.4.7 (moderate 5.5)",
"points": 19.6,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 1,
"packages": "github.com/projectdiscovery/nuclei/v3 v3.4.7 (moderate 5.5)"
}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "1 advisory-carrying package(s) unaddressed past 90 days; oldest published 95 days ago",
"points": 35.2,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 1,
"oldest": 95
}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 360,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 4
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 74,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.987,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 8038
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "75 of 76 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 75,
"sampled": 76
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 70,
"inputs": {
"has_nix": false,
"has_tests": false,
"lockfiles": [
"go.sum"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"vendor/github.com/Masterminds/semver/v3/Makefile",
"vendor/github.com/alecthomas/chroma/Makefile",
"vendor/github.com/alecthomas/chroma/v2/Makefile",
"vendor/github.com/alitto/pond/Makefile",
"vendor/github.com/andygrunwald/go-jira/Makefile",
"vendor/github.com/aws/smithy-go/Makefile",
"vendor/github.com/bits-and-blooms/bloom/v3/Makefile",
"vendor/github.com/buger/jsonparser/Makefile",
"vendor/github.com/charmbracelet/glamour/Taskfile.yml",
"vendor/github.com/charmbracelet/lipgloss/Taskfile.yaml",
"vendor/github.com/cloudwego/base64x/Makefile",
"vendor/github.com/dop251/goja/token/Makefile",
"vendor/github.com/gin-gonic/gin/Makefile",
"vendor/github.com/go-git/gcfg/Makefile",
"vendor/github.com/go-git/go-billy/v5/Makefile",
"vendor/github.com/go-git/go-git/v5/Makefile",
"vendor/github.com/go-pg/pg/Makefile",
"vendor/github.com/go-playground/universal-translator/Makefile",
"vendor/github.com/go-playground/validator/v10/Makefile",
"vendor/github.com/go-sourcemap/sourcemap/Makefile",
"vendor/github.com/gobwas/ws/Makefile",
"vendor/github.com/goccy/go-json/Makefile",
"vendor/github.com/hashicorp/go-multierror/Makefile",
"vendor/github.com/hashicorp/go-retryablehttp/Makefile",
"vendor/github.com/itchyny/gojq/Makefile",
"vendor/github.com/itchyny/timefmt-go/Makefile",
"vendor/github.com/kevinburke/ssh_config/Makefile",
"vendor/github.com/labstack/echo/v4/Makefile",
"vendor/github.com/leodido/go-urn/makefile",
"vendor/github.com/leslie-qiwa/flat/Makefile",
"vendor/github.com/montanaflynn/stats/Makefile",
"vendor/github.com/pjbgf/sha1cd/Makefile",
"vendor/github.com/pkg/errors/Makefile",
"vendor/github.com/projectdiscovery/cdncheck/Makefile",
"vendor/github.com/projectdiscovery/machineid/makefile",
"vendor/github.com/projectdiscovery/mapcidr/Makefile",
"vendor/github.com/projectdiscovery/uncover/Makefile",
"vendor/github.com/redis/go-redis/v9/Makefile",
"vendor/github.com/shoenig/go-m1cpu/Makefile",
"vendor/github.com/sorairolake/lzip-go/justfile",
"vendor/github.com/spf13/cast/Makefile",
"vendor/github.com/spf13/cobra/Makefile",
"vendor/github.com/tim-ywliu/nested-logrus-formatter/Makefile",
"vendor/github.com/wk8/go-ordered-map/v2/Makefile",
"vendor/github.com/yuin/goldmark/Makefile",
"vendor/github.com/zeebo/blake3/Makefile",
"vendor/gitlab.com/gitlab-org/api/client-go/Makefile",
"vendor/go.etcd.io/bbolt/Makefile",
"vendor/go.uber.org/multierr/Makefile",
"vendor/go.uber.org/zap/Makefile",
"vendor/golang.org/x/arch/x86/x86asm/Makefile",
"vendor/gopkg.in/corvus-ch/zbase32.v1/Makefile",
"vendor/gopkg.in/sourcemap.v1/Makefile",
"vendor/moul.io/http2curl/Makefile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0.39,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "vendor/github.com/Masterminds/semver/v3/Makefile, vendor/github.com/alecthomas/chroma/Makefile, vendor/github.com/alecthomas/chroma/v2/Makefile, vendor/github.com/alitto/pond/Makefile, vendor/github.com/andygrunwald/go-jira/Makefile, vendor/github.com/aws/smithy-go/Makefile, vendor/github.com/bits-and-blooms/bloom/v3/Makefile, vendor/github.com/buger/jsonparser/Makefile, vendor/github.com/charmbracelet/glamour/Taskfile.yml, vendor/github.com/charmbracelet/lipgloss/Taskfile.yaml, vendor/github.com/cloudwego/base64x/Makefile, vendor/github.com/dop251/goja/token/Makefile, vendor/github.com/gin-gonic/gin/Makefile, vendor/github.com/go-git/gcfg/Makefile, vendor/github.com/go-git/go-billy/v5/Makefile, vendor/github.com/go-git/go-git/v5/Makefile, vendor/github.com/go-pg/pg/Makefile, vendor/github.com/go-playground/universal-translator/Makefile, vendor/github.com/go-playground/validator/v10/Makefile, vendor/github.com/go-sourcemap/sourcemap/Makefile, vendor/github.com/gobwas/ws/Makefile, vendor/github.com/goccy/go-json/Makefile, vendor/github.com/hashicorp/go-multierror/Makefile, vendor/github.com/hashicorp/go-retryablehttp/Makefile, vendor/github.com/itchyny/gojq/Makefile, vendor/github.com/itchyny/timefmt-go/Makefile, vendor/github.com/kevinburke/ssh_config/Makefile, vendor/github.com/labstack/echo/v4/Makefile, vendor/github.com/leodido/go-urn/makefile, vendor/github.com/leslie-qiwa/flat/Makefile, vendor/github.com/montanaflynn/stats/Makefile, vendor/github.com/pjbgf/sha1cd/Makefile, vendor/github.com/pkg/errors/Makefile, vendor/github.com/projectdiscovery/cdncheck/Makefile, vendor/github.com/projectdiscovery/machineid/makefile, vendor/github.com/projectdiscovery/mapcidr/Makefile, vendor/github.com/projectdiscovery/uncover/Makefile, vendor/github.com/redis/go-redis/v9/Makefile, vendor/github.com/shoenig/go-m1cpu/Makefile, vendor/github.com/sorairolake/lzip-go/justfile, vendor/github.com/spf13/cast/Makefile, vendor/github.com/spf13/cobra/Makefile, vendor/github.com/tim-ywliu/nested-logrus-formatter/Makefile, vendor/github.com/wk8/go-ordered-map/v2/Makefile, vendor/github.com/yuin/goldmark/Makefile, vendor/github.com/zeebo/blake3/Makefile, vendor/gitlab.com/gitlab-org/api/client-go/Makefile, vendor/go.etcd.io/bbolt/Makefile, vendor/go.uber.org/multierr/Makefile, vendor/go.uber.org/zap/Makefile, vendor/golang.org/x/arch/x86/x86asm/Makefile, vendor/gopkg.in/corvus-ch/zbase32.v1/Makefile, vendor/gopkg.in/sourcemap.v1/Makefile, vendor/moul.io/http2curl/Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "vendor/github.com/Masterminds/semver/v3/Makefile, vendor/github.com/alecthomas/chroma/Makefile, vendor/github.com/alecthomas/chroma/v2/Makefile, vendor/github.com/alitto/pond/Makefile, vendor/github.com/andygrunwald/go-jira/Makefile, vendor/github.com/aws/smithy-go/Makefile, vendor/github.com/bits-and-blooms/bloom/v3/Makefile, vendor/github.com/buger/jsonparser/Makefile, vendor/github.com/charmbracelet/glamour/Taskfile.yml, vendor/github.com/charmbracelet/lipgloss/Taskfile.yaml, vendor/github.com/cloudwego/base64x/Makefile, vendor/github.com/dop251/goja/token/Makefile, vendor/github.com/gin-gonic/gin/Makefile, vendor/github.com/go-git/gcfg/Makefile, vendor/github.com/go-git/go-billy/v5/Makefile, vendor/github.com/go-git/go-git/v5/Makefile, vendor/github.com/go-pg/pg/Makefile, vendor/github.com/go-playground/universal-translator/Makefile, vendor/github.com/go-playground/validator/v10/Makefile, vendor/github.com/go-sourcemap/sourcemap/Makefile, vendor/github.com/gobwas/ws/Makefile, vendor/github.com/goccy/go-json/Makefile, vendor/github.com/hashicorp/go-multierror/Makefile, vendor/github.com/hashicorp/go-retryablehttp/Makefile, vendor/github.com/itchyny/gojq/Makefile, vendor/github.com/itchyny/timefmt-go/Makefile, vendor/github.com/kevinburke/ssh_config/Makefile, vendor/github.com/labstack/echo/v4/Makefile, vendor/github.com/leodido/go-urn/makefile, vendor/github.com/leslie-qiwa/flat/Makefile, vendor/github.com/montanaflynn/stats/Makefile, vendor/github.com/pjbgf/sha1cd/Makefile, vendor/github.com/pkg/errors/Makefile, vendor/github.com/projectdiscovery/cdncheck/Makefile, vendor/github.com/projectdiscovery/machineid/makefile, vendor/github.com/projectdiscovery/mapcidr/Makefile, vendor/github.com/projectdiscovery/uncover/Makefile, vendor/github.com/redis/go-redis/v9/Makefile, vendor/github.com/shoenig/go-m1cpu/Makefile, vendor/github.com/sorairolake/lzip-go/justfile, vendor/github.com/spf13/cast/Makefile, vendor/github.com/spf13/cobra/Makefile, vendor/github.com/tim-ywliu/nested-logrus-formatter/Makefile, vendor/github.com/wk8/go-ordered-map/v2/Makefile, vendor/github.com/yuin/goldmark/Makefile, vendor/github.com/zeebo/blake3/Makefile, vendor/gitlab.com/gitlab-org/api/client-go/Makefile, vendor/go.etcd.io/bbolt/Makefile, vendor/go.uber.org/multierr/Makefile, vendor/go.uber.org/zap/Makefile, vendor/golang.org/x/arch/x86/x86asm/Makefile, vendor/gopkg.in/corvus-ch/zbase32.v1/Makefile, vendor/gopkg.in/sourcemap.v1/Makefile, vendor/moul.io/http2curl/Makefile"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".eslintrc.yml, .golangci.yaml, .golangci.yml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.yml, .golangci.yaml, .golangci.yml"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Go (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "39 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 39,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "dependency automation configured, none observed in the sampled commits",
"points": 5,
"status": "partial",
"details": [
{
"code": "dependency_bot_config_only",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 5",
"points": 5,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 99,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 69145,
"source_files_sampled": 82,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Go (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/82 source files over 60KB",
"points": 54.3,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 82,
"oversized": 1
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [],
"has_mcp_signal": false,
"api_schema_files": [
"fern/definition/enumerate/apiapplication/swagger.yml",
"utils/nuclei/templates/discover/application/apiapplication/swagger.yaml"
]
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": "fern/definition/enumerate/apiapplication/swagger.yml, utils/nuclei/templates/discover/application/apiapplication/swagger.yaml",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "fern/definition/enumerate/apiapplication/swagger.yml, utils/nuclei/templates/discover/application/apiapplication/swagger.yaml"
}
}
],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-27T15:20:50.976517Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/method-security/webscan.svg",
"full_name": "method-security/webscan",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}