Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 103,
"has_wiki": false,
"homepage": null,
"languages": {
"Go": 30876,
"Makefile": 368,
"Dockerfile": 235
},
"pushed_at": "2026-07-27T12:06:09Z",
"created_at": "2026-02-09T10:37:51Z",
"owner_type": "Organization",
"updated_at": "2026-07-27T12:07:01Z",
"description": "Automated security finding triage and prioritization for review workflows.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Go",
"significant_languages": [
"Go"
]
},
"owner": {
"blog": null,
"name": "Nox",
"type": "Organization",
"login": "Nox-HQ",
"company": null,
"location": "Germany",
"followers": 0,
"avatar_url": "https://avatars.githubusercontent.com/u/260249483?v=4",
"created_at": "2026-02-08T15:06:36Z",
"is_verified": null,
"public_repos": 26,
"account_age_days": 171
},
"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.2",
"kind": "patch",
"published_at": "2026-07-20T17:37:47Z"
},
{
"tag": "v0.2.1",
"kind": "patch",
"published_at": "2026-07-05T14:48:10Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2026-05-03T08:45:05Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2026-02-21T21:09:43Z"
}
],
"recent_commits": [
{
"oid": "d060d7244e3c48ad076268fb90af166cf80f42ba",
"body": "Bumps [nox-hq/nox](https://github.com/nox-hq/nox) from 1.19.0 to 1.24.0.\n- [Release notes](https://github.com/nox-hq/nox/releases)\n- [Changelog](https://github.com/Nox-HQ/nox/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/nox-hq/nox/compare/9404b9d5512040ec609e4f19cc6bd42abc0f1c70...d3b92369\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump nox-hq/nox from 1.19.0 to 1.24.0 (#36)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-27T12:06:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "48b819c71c56fd27142c46b5f1a0a848df8efee5",
"body": "The pinned SHA is v1.13.6's, which predates the fix for the action's\nversion lookup dying on a rate-limit 403. Until this moves, the gate in\nthis repo can still fail with `curl: (22) ... error: 403` and no scan.\n\nSee Nox-HQ/nox#375.",
"is_bot": false,
"headline": "chore(ci): bump nox action to v1.19.0 (#34)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-26T10:09:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "529461a54acb78ad14ce008dae37cb308fa47d25",
"body": "Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.5.0 to 7.0.0.\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](https://github.com/actions/setup-go/compare/924ae3a1cded613372ab5595356fb5720e22ba16...b7ad1dad31e06c5925ef5d2fc7ad053ef454303e)\n\n---\nupdated\n[…]\njor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Felix Geelhaar <felix@felixgeelhaar.de>",
"is_bot": true,
"headline": "chore(deps): bump actions/setup-go from 6.5.0 to 7.0.0 (#26)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-26T09:15:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "435673a6b4c53a3d463f9ee8aee03ad373a3ea59",
"body": "Move the plugin onto the current Go release and the current nox plugin\nSDK so it is built and tested against the same toolchain and host API as\nnox itself, rather than drifting a few minor versions behind.\n\n go directive: 1.25.6 -> 1.26.5\n nox SDK: -> v1.17.0\n\ngo mod tidy pulled the matching transitive set. Verified with go build,\ngo vet and go test — all green.\n\nClaude-Session: https://claude.ai/code/session_01Cr6YdzphmFF3NJqm7kSJom",
"is_bot": false,
"headline": "chore(deps): Go 1.26.5 and nox SDK v1.17.0 (#33)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-25T21:44:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4f6219326b1866d8f4559ee4027969f848cbf1ec",
"body": "Co-authored-by: nox-remediate <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore(security): nox remediation (deps + actions) (#32)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-22T09:32:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "db8567ed3bf2a8ab6d5256811dbfafec65949188",
"body": null,
"is_bot": false,
"headline": "ci: add nox-remediate caller (deps + action-pin remediation)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-22T08:29:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0971788bc9748cbd9bd0ca6ad7f391b27f66966b",
"body": "The notice told maintainers to open a PR against nox-hq/nox adding the entry to\nregistry-scaffold/index.json. That path moved and now 404s, and the registry\nreconciles published releases automatically, so following it wasted time on a\nstep nothing needs.\n\nClaude-Session: https://claude.ai/code/session_01UCLAAksd3a1cmQz2LVs3ts",
"is_bot": false,
"headline": "ci: point the registry notice at where entries actually go (#31)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-21T06:10:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "154160d5357e9cd0ace9b61b2a4cc822cfe51075",
"body": "The plugin fleet was never scanned by nox itself. Adds a non-blocking full-repo\nself-scan (SARIF -> code scanning) and a changed-files-only high/critical gate,\nmatching nox-plugin-remediate. Changed-files scoping means pre-existing findings\ndo not retroactively block PRs. The nox action is SHA-pinned (v1.13.1).\n\nClaude-Session: https://claude.ai/code/session_01UCLAAksd3a1cmQz2LVs3ts",
"is_bot": false,
"headline": "ci: add nox self-scan and changed-files PR gate (#30)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-20T22:07:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "199a8a509550fa4a6d29f59de23ad60f3c6f2742",
"body": "…) (#29)\n\nRebuilds against the hardened plugin transport in nox v1.13.0. Mechanical bump, no source changes.\n\nClaude-Session: https://claude.ai/code/session_01UCLAAksd3a1cmQz2LVs3ts",
"is_bot": false,
"headline": "chore(deps): bump nox SDK to v1.13.0 (loopback bind + gRPC token auth…",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-20T14:45:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e248a68bce2bfa14cd7daf3d61ea334ab292d6d2",
"body": "Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.82.0 to 1.82.1.\n- [Release notes](https://github.com/grpc/grpc-go/releases)\n- [Commits](https://github.com/grpc/grpc-go/compare/v1.82.0...v1.82.1)\n\n---\nupdated-dependencies:\n- dependency-name: google.golang.org/grpc\n dependency-\n[…]\nirect:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump google.golang.org/grpc from 1.82.0 to 1.82.1 (#28)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-20T12:09:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "916bd5a3cfc511b2dbce7dfb201916fc05eb275f",
"body": "Bumps [github.com/nox-hq/nox](https://github.com/nox-hq/nox) from 1.8.0 to 1.12.2.\n- [Release notes](https://github.com/nox-hq/nox/releases)\n- [Changelog](https://github.com/Nox-HQ/nox/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/nox-hq/nox/compare/v1.8.0...v1.12.2)\n\n---\nupdated-dependenci\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/nox-hq/nox from 1.8.0 to 1.12.2 (#27)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-20T12:06:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1ba166703190ecb7ebfb55e36430279526b5b82a",
"body": "Bumps [github.com/nox-hq/nox](https://github.com/nox-hq/nox) from 1.7.1 to 1.8.0.\n- [Release notes](https://github.com/nox-hq/nox/releases)\n- [Changelog](https://github.com/Nox-HQ/nox/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/nox-hq/nox/compare/v1.7.1...v1.8.0)\n\n---\nupdated-dependencies\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/nox-hq/nox from 1.7.1 to 1.8.0 (#25)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-13T12:07:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "291b544d9796ec91dd9f946f9dcb3eec1b244416",
"body": "Bumps [github.com/nox-hq/nox](https://github.com/nox-hq/nox) from 1.3.1 to 1.7.1.\n- [Release notes](https://github.com/nox-hq/nox/releases)\n- [Changelog](https://github.com/Nox-HQ/nox/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/nox-hq/nox/compare/v1.3.1...v1.7.1)\n\n---\nupdated-dependencies\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/nox-hq/nox from 1.3.1 to 1.7.1 (#23)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T12:08:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "045c03b995c1e4f698fbcf57247b5c3a11a70f50",
"body": "Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.81.1 to 1.82.0.\n- [Release notes](https://github.com/grpc/grpc-go/releases)\n- [Commits](https://github.com/grpc/grpc-go/compare/v1.81.1...v1.82.0)\n\n---\nupdated-dependencies:\n- dependency-name: google.golang.org/grpc\n dependency-\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.0 (#24)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T12:06:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "34e1a8ac33aadd7ab1ca0269eeffe7e1a72d1fa0",
"body": "…#22)\n\nBumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 9.2.1 to 9.3.0.\n- [Release notes](https://github.com/golangci/golangci-lint-action/releases)\n- [Commits](https://github.com/golangci/golangci-lint-action/compare/82606bf257cbaff209d206a39f5134f0cfbfd2\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump golangci/golangci-lint-action from 9.2.1 to 9.3.0 (…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T12:05:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b8bdd2f6df96823fd24fb149a31294a5ff2d94a0",
"body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.3 to 7.0.0.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/df4cb1c069e1874edd31b43\n[…]\nirect:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#16)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-05T13:46:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "09f41b42186f182e7edb9409242a397077249f9b",
"body": "Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 7.2.2 to 7.2.3.\n- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)\n- [Commits](https://github.com/goreleaser/goreleaser-action/compare/5daf1e915a5f0af01ddbcd89a43b8061ff4f1a89...f06c13\n[…]\nirect:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump goreleaser/goreleaser-action from 7.2.2 to 7.2.3 (#19)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-05T13:45:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "95a4a0b73c6aac16661906e912f195985974e0ef",
"body": "golangci-lint v2.7.2 is built with go1.25 and refuses to lint this\nmodule, which requires go 1.26.2 (via go.klarlabs.de/agent/contrib/\nplanner-llm@v0.4.0): \"the Go language version (go1.25) used to build\ngolangci-lint is lower than the targeted Go version (1.26.2)\". Bump to\nv2.12.2 — the fleet-stand\n[…]\n\nshared klarlabs-studio/.github go-ci.yml) — which supports go 1.26.\n\nClaude-Session: https://claude.ai/code/session_01Cr6YdzphmFF3NJqm7kSJom\n\nCo-authored-by: Felix Geelhaar <felix.geelhaar@gmail.com>",
"is_bot": false,
"headline": "fix(ci): bump golangci-lint to v2.12.2 for go 1.26 support (#21)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-07-05T13:44:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4e33c1b42dd7db9a242014f61db95e9eef9a3fd7",
"body": "Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.4.0 to 6.5.0.\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](https://github.com/actions/setup-go/compare/4a3601121dd01d1626a1e23e37211e3254c1c06c...924ae3a1cded613372ab5595356fb5720e22ba16)\n\n---\nupdated\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/setup-go from 6.4.0 to 6.5.0 (#18)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-29T12:06:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "65df5d353d51b17390b5f74637417ade4f0c7fff",
"body": "Bumps [go.klarlabs.de/agent/contrib/planner-llm](https://github.com/klarlabs-studio/agent-go) from 0.3.0 to 0.4.0.\n- [Release notes](https://github.com/klarlabs-studio/agent-go/releases)\n- [Changelog](https://github.com/klarlabs-studio/agent-go/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump go.klarlabs.de/agent/contrib/planner-llm (#17)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-22T12:08:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "078952c1fc29fd4365808a024950919297ea4cd1",
"body": "Bumps [github.com/nox-hq/nox](https://github.com/nox-hq/nox) from 1.1.2 to 1.3.1.\n- [Release notes](https://github.com/nox-hq/nox/releases)\n- [Changelog](https://github.com/Nox-HQ/nox/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/nox-hq/nox/compare/v1.1.2...v1.3.1)\n\n---\nupdated-dependencies\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump github.com/nox-hq/nox from 1.1.2 to 1.3.1 (#15)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-22T12:06:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5139c4b9067b5a9edd3cd53d79cd5bc716f35288",
"body": "…ves (#14)\n\neval\\( / exec\\( matched any identifier containing those as a substring —\nretrieval(), medieval(), upheaval() were flagged as dangerous code\nexecution. Anchor with \\b (\\beval\\(, \\bexec\\() so only real eval/exec\ncalls fire. Real positives (eval(user_input), exec(user_input)) still\nmatch.\n\nAdd testdata/clean/ negative fixtures + TestCleanCodeNoFindings.\nBump 0.1.0 -> 0.2.0.",
"is_bot": false,
"headline": "fix(TRIAGE-001): word-anchor eval/exec to stop substring false positi…",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-06-21T06:26:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3655ce30fd563e243da6cdd1261fafb3790540cf",
"body": "The agent-go import-path rewrite (github.com/felixgeelhaar/agent-go ->\ngo.klarlabs.de/agent) changed import lengths but left the import blocks\nungofmted, failing the Lint gate on main. Reformat with gofmt.",
"is_bot": false,
"headline": "style: gofmt import blocks after vanity-path rewrite (#13)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-06-09T10:06:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e5ee63dba62ef1cb8698b5bdc2b9e7f5f9d1c122",
"body": "…l replaces (#12)\n\nThis plugin carried dev-only local replaces — `replace nox => ../..` and\n`replace agent-go => ../../../agent-go` — and imported the pre-rename\n`github.com/felixgeelhaar/agent-go/...` path, so it only built inside a\nco-located checkout and could never release standalone.\n\n- Rewrite\n[…]\nagent/contrib/planner-llm v0.3.0`\n (standalone-releasable as of klarlabs-studio/agent-go#54).\n- Pin published `github.com/nox-hq/nox v1.1.2`; drop both local replaces.\n\nBuild + tests pass standalone.",
"is_bot": false,
"headline": "chore: pin published deps (nox v1.1.2, planner-llm v0.3.0), drop loca…",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-06-09T09:59:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ffaebad2c2f6b44a7a86674cb5f6a51b3a49d708",
"body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67\n[…]\nirect:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 (#11)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-08T12:06:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "78c5196da1552278e501aa842a95b5e9ceb8ebbd",
"body": null,
"is_bot": false,
"headline": "ci: dependabot auto-merge (patch+minor) (#10)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-06-04T05:48:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a12cd08a3f249d1f5528a8d9a0a5af3f0b3c25ef",
"body": "* fix(release): migrate cosign signing to v4 bundle format\n\n* fix(ci): unpin cosign-installer to v4.1.2",
"is_bot": false,
"headline": "fix(release): migrate cosign signing to v4 bundle format (#9)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-06-03T19:52:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7521fdd8ff93468dd4a49eb8ef3aca761fa7fe02",
"body": "Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.2.0 to 6.4.0.\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](https://github.com/actions/setup-go/compare/v6.2.0...4a3601121dd01d1626a1e23e37211e3254c1c06c)\n\n---\nupdated-dependencies:\n- dependency-name: \n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/setup-go from 6.2.0 to 6.4.0 (#4)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-03T08:45:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f63c3f05b5087aff4adb6845a09d1b4c401dfc09",
"body": "Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.6.2 to 7.0.1.\n- [Release notes](https://github.com/actions/upload-artifact/releases)\n- [Commits](https://github.com/actions/upload-artifact/compare/ea165f8d65b6e75b540449e92b4886f43607fa02...043fb46d1a93c77aae656e7c1c\n[…]\nirect:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/upload-artifact from 4.6.2 to 7.0.1 (#5)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-03T08:45:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "317599250f4b03d1371798e72ce8d5c5726fc1be",
"body": "Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 9.2.0 to 9.2.1.\n- [Release notes](https://github.com/golangci/golangci-lint-action/releases)\n- [Commits](https://github.com/golangci/golangci-lint-action/compare/1e7e51e771db61008b38414a730f564565cf7c20...82\n[…]\nirect:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 (#7)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-03T08:45:40Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f5f0d0e24cc4290b65d85ef60fa68a603fc8a296",
"body": "Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 7.2.1 to 7.2.2.\n- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)\n- [Commits](https://github.com/goreleaser/goreleaser-action/compare/1a80836c5c9d9e5755a25cb59ec6f45a3b5f41a8...5daf1e\n[…]\nirect:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump goreleaser/goreleaser-action from 7.2.1 to 7.2.2 (#8)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-03T08:45:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "061d2adf4dc6674a755a1e2ded5ce6014024d101",
"body": "Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.2.0 to 6.4.0.\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](https://github.com/actions/setup-go/compare/7a3fe6cf4cb3a834922a1244abfce67bcef6a0c5...4a3601121dd01d1626a1e23e37211e3254c1c06c)\n\n---\nupdated\n[…]\nirect:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/setup-go from 6.2.0 to 6.4.0 (#2)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-05-03T21:18:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3aa3347585daaf40260eeebbee7fa1ed6ee1ae9f",
"body": "GoReleaser strips replace directives in CI, so the published\nartifact must consume real semver-tagged versions of agent-go and\nits planner-llm submodule. The previous pseudo-version\n(v0.0.0-20260129...) plus an `agent-go v0.0.0` indirect could not\nresolve once the local replace directives were dropp\n[…]\nhe nox\nmonorepo. CI strips them in the goreleaser before-hook.\n\nVerified standalone build with replaces stripped:\n go mod tidy → resolves cleanly from registry\n go test ./... → all triage tests pass",
"is_bot": false,
"headline": "build(deps): bump planner-llm to v0.1.0; agent-go to v0.6.0 indirect",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-05-03T07:57:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a590f26a4cfe89ac961e4a6056cba9ec4f5c1ce0",
"body": "GoReleaser config + release.yml workflow lifted verbatim from the\nshared template used by the verified plugins (reachability,\ntaint-analysis, k8s-runtime, red-team, grc, ai-eval, dast).\n\nTag v0.2.0 to fire this and produce cosign-signed checksums + bundle\nthat the registry index will reference.",
"is_bot": false,
"headline": "ci: add cosign keyless release pipeline (mirror of verified plugins)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-05-03T07:36:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "74d2bb88bbcec594b6699a95568c4d75ea7877a5",
"body": null,
"is_bot": false,
"headline": "feat(provider): add bedrock and copilot provider resolution",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-22T10:55:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "713c338370618608c893100a7eda0759bd7e41d6",
"body": null,
"is_bot": false,
"headline": "docs(changelog): add Phase 7d AI triage to unreleased, formalize v0.1.0",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-22T10:50:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "920011151fac5039c6bb15730a87019be5bccfb1",
"body": "Add AI-powered severity adjustment to triage-agent plugin behind\nai_triage input parameter. Uses agent-go plannerllm.Provider interface\nfor multi-provider LLM support with graceful degradation on failure.",
"is_bot": false,
"headline": "feat(plugin): add opt-in LLM-assisted triage via agent-go (Phase 7d)",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-22T10:47:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "30730443532faad48801d51bf4ab613d7dec8739",
"body": null,
"is_bot": false,
"headline": "chore(release): update changelog for v0.1.0",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-21T21:12:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c2d8657edeb592163584c6018f2bb5b44927a681",
"body": "- Add GitHub Actions CI workflow (lint + test)\n- Add dependabot config for Go modules and Actions\n- Add golangci-lint v2 config\n- Add pre-commit hooks (golangci-lint, go vet, gofmt, nox-scan, coverctl)\n- Add coverctl coverage config\n- Add plugin.yaml track metadata\n- Add relicta release config\n- Update nox SDK dependency to v0.5.0\n- Fix all golangci-lint issues (errcheck, exitAfterDefer, gocritic)\n- Fix testdata to correctly trigger rule findings",
"is_bot": false,
"headline": "chore: add CI/CD, lint config, pre-commit hooks, and fix lint issues",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-21T20:34:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de014b056d7028be45f5c3f98ae5f30cfd80be1a",
"body": null,
"is_bot": false,
"headline": "chore: add LICENSE, .gitignore, and tidy go.mod",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-09T16:45:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2b37e4a0e4d486246d7d7bbdcca21ce57a6b3772",
"body": null,
"is_bot": false,
"headline": "feat: initial plugin implementation",
"author_name": "Felix Geelhaar",
"author_login": "felixgeelhaar",
"committed_at": "2026-02-09T11:57:37Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 4,
"commits_last_year": 41,
"latest_release_at": "2026-07-20T17:37:47Z",
"latest_release_tag": "v0.2.2",
"releases_from_tags": false,
"days_since_last_push": 2,
"active_weeks_last_year": 11,
"days_since_latest_release": 9,
"mean_days_between_releases": 49.6
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"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/nox-hq/nox-plugin-triage-agent",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/nox-hq/nox-plugin-triage-agent",
"is_deprecated": false,
"latest_version": "v0.2.2",
"repository_url": "https://github.com/nox-hq/nox-plugin-triage-agent",
"versions_count": 5,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-20T14:45:03Z",
"latest_version_yanked": null,
"days_since_latest_publish": 9
}
]
},
"popularity": {
"forks": 0,
"stars": 0,
"watchers": 0,
"fork_history": {
"days": [],
"complete": true,
"collected": 0,
"total_forks": 0
},
"star_history": {
"days": [],
"complete": true,
"collected": 0,
"total_stars": 0,
"collected_at": null
},
"open_issues_and_prs": 2
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 7209,
"source_files_sampled": 9,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": null,
"source": null,
"findings": [],
"collected": false,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 0,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/nox-hq/nox",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.17.0"
},
{
"name": "google.golang.org/grpc",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.82.1"
},
{
"name": "google.golang.org/protobuf",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.36.11"
},
{
"name": "go.klarlabs.de/agent/contrib/planner-llm",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.4.0"
}
],
"all_dependencies": {
"error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
"source": null,
"packages": [],
"collected": false,
"truncated": false,
"total_count": null,
"direct_count": null,
"indirect_count": null
}
},
"maintainership": {
"issues": {
"open_prs": 2,
"merged_prs": 31,
"open_issues": 0,
"closed_ratio": null,
"closed_issues": 0,
"closed_unmerged_prs": 4
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "felixgeelhaar",
"commits": 22,
"avatar_url": "https://avatars.githubusercontent.com/u/6020564?v=4"
}
],
"contributors_sampled": 1,
"top_contributor_share": 1
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"ci.yml",
"dependabot-auto-merge.yml",
"nox-remediate.yml",
"release.yml"
],
"has_docs_dir": false,
"linter_configs": [
".golangci.yml"
],
"has_editorconfig": false,
"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": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "29 out of 29 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": 0,
"reason": "Found 0/13 approved changesets -- score normalized to 0",
"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": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 8,
"reason": "dependency not pinned by hash detected -- score normalized to 8",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 2,
"reason": "SAST tool is not run on all commits -- score normalized to 2",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 0,
"reason": "security policy file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 8,
"reason": "3 out of the last 3 releases have a total of 3 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": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "d060d7244e3c48ad076268fb90af166cf80f42ba",
"ran_at": "2026-07-30T02:44:49Z",
"aggregate_score": 5.9,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-27T12:06:03Z",
"oldest_open_prs": [
{
"number": 35,
"created_at": "2026-07-27T08:32:12Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 37,
"created_at": "2026-07-27T12:05:47Z",
"last_comment_at": "2026-07-27T12:05:48Z",
"last_comment_author": "dependabot"
}
],
"last_merged_pr_at": "2026-07-27T12:06:01Z",
"ci_last_conclusion": null,
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/Nox-HQ/nox-plugin-triage-agent",
"host": "github.com",
"name": "nox-plugin-triage-agent",
"owner": "Nox-HQ"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 57,
"inputs": {
"security": 59,
"vitality": 77,
"community": 24,
"governance": 50,
"engineering": 72
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 77,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"commits_last_year": 41,
"human_commit_share": 0.537,
"days_since_last_push": 2,
"active_weeks_last_year": 11
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 2 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 2
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "11/52 weeks with commits",
"points": 7.6,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 11
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "41 commits in the last year",
"points": 14.6,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 41
}
}
],
"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": 91,
"inputs": {
"releases_count": 4,
"latest_release_tag": "v0.2.2",
"releases_from_tags": false,
"days_since_latest_release": 9,
"mean_days_between_releases": 49.6
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "4 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 4
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 9 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 9
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~49.6 days",
"points": 19.8,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 49.6
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "3 out of the last 3 releases have a total of 3 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": "unverified",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": "repository_too_young",
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": null,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "maintenance record not established from the collected data",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_unverified",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 24,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"forks": 0,
"stars": 0,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "0 stars",
"points": 0,
"status": "missed",
"details": [
{
"code": "stars",
"params": {
"count": 0
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "0 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 0
}
}
],
"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": 50,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 13,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 1,
"top_contributor_share": 1
},
"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 100% of commits",
"points": 0,
"status": "missed",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 100
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "1 contributors",
"points": 1.4,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 1
}
}
],
"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": "moderate",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Issue resolution. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"issue_resolution"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 64,
"inputs": {
"merged_prs": 31,
"open_issues": 0,
"closed_issues": 0,
"issue_closed_ratio": null,
"closed_unmerged_prs": 4
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "no issues or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_issues_or_data",
"params": {}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "31/35 decided PRs merged",
"points": 33.9,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 31,
"decided": 35
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/13 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "at_risk",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 41,
"inputs": {
"followers": 0,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "Nox-HQ",
"public_repos": 26,
"account_age_days": 171
},
"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": "0 followers of Nox-HQ",
"points": 0,
"status": "missed",
"details": [
{
"code": "owner_followers",
"params": {
"count": 0,
"login": "Nox-HQ"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "26 public repos, account ~0 yr old",
"points": 11.4,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 26
}
},
{
"code": "account_age_years",
"params": {
"years": 0
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/nox-hq/nox-plugin-triage-agent"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 9
},
"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 9 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 9
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "5 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 5
}
}
],
"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": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 94,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": true
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": ".golangci.yml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".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": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "29 out of 29 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "at_risk",
"name": "Documentation",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": null,
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"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": 10,
"status": "met",
"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": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 59,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": null,
"notes": [],
"value": 59,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 18,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 0,
"scorecard_aggregate": 5.9
},
"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 not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "29 out of 29 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": "Found 0/13 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"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 detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 8",
"points": 4,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 2",
"points": 1,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "3 out of the last 3 releases have a total of 3 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": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
}
]
},
{
"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": 2
},
"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": 73,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"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": "22 of 22 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 22,
"sampled": 22
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "excellent",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 88,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"Makefile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0.463
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Makefile"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".golangci.yml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".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": "no agent-authored commits among the last 41",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 41
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "19 of the last 41 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 19,
"sampled": 41
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 8",
"points": 8,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 7209,
"source_files_sampled": 9,
"oversized_source_files": 0
},
"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": "0/9 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 9,
"oversized": 0
}
}
],
"max_points": 55
}
]
}
],
"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": [
"GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
],
"report_type": "repository",
"generated_at": "2026-07-30T02:45:06.252740Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/n/Nox-HQ/nox-plugin-triage-agent.svg",
"full_name": "Nox-HQ/nox-plugin-triage-agent",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}