JSON-Rohbericht maschinenlesbar
{
"data": {
"icon": {
"bytes": 1782,
"width": 180,
"height": 180,
"rejected": [],
"collected": true,
"media_type": "image/png",
"source_url": "https://lazy-tmux.xyz/assets/apple-touch-icon.png",
"source_type": "homepage",
"content_hash": "d22d7a6e268e9d30d62e37cd43fe72df133ed0819a498276bdeed69a131fde7d",
"candidates_considered": 1
},
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 49618,
"has_wiki": false,
"homepage": "https://lazy-tmux.xyz",
"languages": {
"Go": 347854,
"CSS": 11628,
"Shell": 21031,
"Makefile": 4305,
"Dockerfile": 4127,
"TypeScript": 52253
},
"pushed_at": "2026-08-04T08:07:54Z",
"created_at": "2026-02-13T07:23:39Z",
"owner_type": "User",
"updated_at": "2026-08-04T14:48:00Z",
"description": "Lazy tmux it is a fast session manager and saver for tmux. You can save all your session and lazy restore it.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "Go",
"significant_languages": [
"Go",
"TypeScript"
]
},
"owner": {
"blog": "alchemmist.xyz",
"name": "Anton Grishin",
"type": "User",
"login": "alchemmist",
"company": null,
"location": "Russia, Moscow",
"followers": 32,
"avatar_url": "https://avatars.githubusercontent.com/u/104511335?v=4",
"created_at": "2022-04-27T14:12:26Z",
"is_verified": null,
"public_repos": 55,
"account_age_days": 1560
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2026-07-19T17:15:26Z"
},
{
"tag": "v0.1.25",
"kind": "patch",
"published_at": "2026-06-28T12:13:43Z"
},
{
"tag": "v0.1.24",
"kind": "patch",
"published_at": "2026-06-28T10:08:26Z"
},
{
"tag": "v0.1.23",
"kind": "patch",
"published_at": "2026-06-28T08:57:05Z"
},
{
"tag": "v0.1.22",
"kind": "patch",
"published_at": "2026-06-25T08:20:29Z"
},
{
"tag": "v0.1.21",
"kind": "patch",
"published_at": "2026-06-25T04:50:16Z"
},
{
"tag": "v0.1.20",
"kind": "patch",
"published_at": "2026-06-24T18:35:30Z"
},
{
"tag": "v0.1.19",
"kind": "patch",
"published_at": "2026-06-24T18:01:19Z"
},
{
"tag": "v0.1.18",
"kind": "patch",
"published_at": "2026-06-24T18:01:15Z"
},
{
"tag": "v0.1.17",
"kind": "patch",
"published_at": "2026-06-24T16:33:00Z"
},
{
"tag": "v0.1.14",
"kind": "patch",
"published_at": "2026-04-10T15:22:05Z"
},
{
"tag": "v0.1.13",
"kind": "patch",
"published_at": "2026-03-27T10:07:44Z"
},
{
"tag": "v0.1.12",
"kind": "patch",
"published_at": "2026-03-27T09:43:07Z"
},
{
"tag": "v0.1.11",
"kind": "patch",
"published_at": "2026-03-27T09:29:23Z"
},
{
"tag": "v0.1.10",
"kind": "patch",
"published_at": "2026-03-25T10:41:17Z"
},
{
"tag": "v0.1.9",
"kind": "patch",
"published_at": "2026-03-25T10:40:17Z"
},
{
"tag": "v0.1.8",
"kind": "patch",
"published_at": "2026-03-25T10:40:03Z"
},
{
"tag": "v0.1.7",
"kind": "patch",
"published_at": "2026-03-11T10:58:36Z"
},
{
"tag": "v0.1.6",
"kind": "patch",
"published_at": "2026-03-11T10:56:21Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2026-03-11T07:08:40Z"
}
],
"recent_commits": [
{
"oid": "5e237a8e15d8d02424c7cd8b6fc77d08707793a2",
"body": null,
"is_bot": false,
"headline": "fix: make main pass CI",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-03T13:48:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e7169787908253f2995ad1d9b8de16a9470e254d",
"body": null,
"is_bot": false,
"headline": "fix: limit process fallback to pane tree",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-03T07:41:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3cd420c2f635516e951e935b5bc8f4eb27e9df1d",
"body": null,
"is_bot": false,
"headline": "fix: detect wrapped foreground processes",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-03T07:39:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "30c3ad7d0d9093827878c8df5069e304c334c5ae",
"body": null,
"is_bot": false,
"headline": "fix: accept positional theme hook",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-02T17:53:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "91c0b0f201d894b5b5722338b1df90444f6a9572",
"body": null,
"is_bot": false,
"headline": "feat: restore codex sessions",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-02T15:51:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ecfc5416dbba19e9d6c06f0eb92d6ab42f82f83e",
"body": null,
"is_bot": false,
"headline": "fix: soften light picker selection",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-01T12:00:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de3c3ec9531d303e1dadee618ef9a47dab266080",
"body": null,
"is_bot": false,
"headline": "fix: keep light theme monochrome",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-01T12:00:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dc971370c54eaba99afd37313b7c90a68b20f839",
"body": null,
"is_bot": false,
"headline": "feat: add light picker theme and theme hooks",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-08-01T12:00:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "364149bb327bb300763bc47178a31c5dce4f4f63",
"body": "…npm_and_yarn-6b7f7a8c69\n\nbuild(deps): bump postcss from 8.5.15 to 8.5.23 in /docs in the npm_and_yarn group across 1 directory",
"is_bot": false,
"headline": "Merge pull request #258 from alchemmist/dependabot/npm_and_yarn/docs/…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-30T17:14:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "74cd3ce00059d3c889d78257bfc5652679253b48",
"body": "…npm_and_yarn-9cf16c79e5\n\nbuild(deps): bump react-router from 7.0.0 to 7.18.1 in /docs in the npm_and_yarn group across 0 directory",
"is_bot": false,
"headline": "Merge pull request #257 from alchemmist/dependabot/npm_and_yarn/docs/…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-30T17:14:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d862deaed7e97db19c6d4f103d85282c784cc65",
"body": "Bumps the npm_and_yarn group with 1 update in the /docs directory: [postcss](https://github.com/postcss/postcss).\n\n\nUpdates `postcss` from 8.5.15 to 8.5.23\n- [Release notes](https://github.com/postcss/postcss/releases)\n- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)\n- [Commi\n[…]\n\n---\nupdated-dependencies:\n- dependency-name: postcss\n dependency-version: 8.5.23\n dependency-type: indirect\n dependency-group: npm_and_yarn\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "build(deps): bump postcss",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-27T08:03:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dcfe4c4982f54a0a1ba9810948873ff833bb0e45",
"body": "Updates `react-router` from 7.0.0 to 7.18.1\n- [Release notes](https://github.com/remix-run/react-router/releases)\n- [Changelog](https://github.com/remix-run/react-router/blob/react-router@7.18.1/packages/react-router/CHANGELOG.md)\n- [Commits](https://github.com/remix-run/react-router/commits/react-r\n[…]\nupdated-dependencies:\n- dependency-name: react-router\n dependency-version: 7.18.1\n dependency-type: indirect\n dependency-group: npm_and_yarn\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "build(deps): bump react-router",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-27T08:03:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8ae61c7e97db8a3f9e258a20bbc40538f0fa2e4c",
"body": "chore(deps): update dependency react-dom to v19.2.8",
"is_bot": false,
"headline": "Merge pull request #255 from alchemmist/renovate/react-monorepo",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-27T08:02:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e591c41241821ea677870897743b9c3e13853af7",
"body": "…npm_and_yarn-397455080f\n\nbuild(deps): bump the npm_and_yarn group across 1 directory with 2 updates",
"is_bot": false,
"headline": "Merge pull request #253 from alchemmist/dependabot/npm_and_yarn/docs/…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-27T08:02:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c8ace115a6b7164229f43df6485621b0f36ee03b",
"body": "…-lockfile\n\nchore(deps): update dependency @gravity-ui/uikit to v7.47.1",
"is_bot": false,
"headline": "Merge pull request #250 from alchemmist/renovate/gravity-ui-uikit-7.x…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-27T08:02:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b48cecd92df8ff02e3753699ff0b7cf564aab5bb",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency react-dom to v19.2.8",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-24T15:55:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ef853999fed8294c4391ef387d65a970b8248247",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency @gravity-ui/uikit to v7.47.1",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-24T12:14:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "51cac1a9f287bfe4ca39af749ce84e6deb7aab1e",
"body": "…dates\n\nBumps the npm_and_yarn group with 1 update in the /docs directory: [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom).\n\n\nUpdates `react-router-dom` from 6.30.4 to 7.0.0\n- [Release notes](https://github.com/remix-run/react-router/releases)\n- [Cha\n[…]\ncy-group: npm_and_yarn\n- dependency-name: react-router\n dependency-version: 7.0.0\n dependency-type: indirect\n dependency-group: npm_and_yarn\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "build(deps): bump the npm_and_yarn group across 1 directory with 2 up…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-24T06:28:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2493438e99e283f555ef7081420b5d67072d6583",
"body": "chore(deps): update actions/checkout action to v7.0.1",
"is_bot": false,
"headline": "Merge pull request #247 from alchemmist/renovate/actions-checkout-7.x",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-24T06:27:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "46322da0a73b7c5774d6bfb9d2bbe5496b89bfff",
"body": "chore(deps): update dependency react to v19.2.8",
"is_bot": false,
"headline": "Merge pull request #248 from alchemmist/renovate/react-19.x-lockfile",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-24T06:27:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4d7b09fdf0f39740e70054c82a441374ff81de4f",
"body": "…-lockfile\n\nchore(deps): update dependency @gravity-ui/icons to v2.21.0",
"is_bot": false,
"headline": "Merge pull request #251 from alchemmist/renovate/gravity-ui-icons-2.x…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-24T06:27:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6115bb14033cb9769bb28ea29171b2c1eb7f2902",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency @gravity-ui/icons to v2.21.0",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-23T15:41:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "92124560e1549ef53104c5e23c156d5c2d7441fc",
"body": null,
"is_bot": false,
"headline": "docs: fix typos in readme",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-23T06:53:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8eac5b530ac958e88c71642874c6deb534b35284",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency react to v19.2.8",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-21T20:54:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c92fa2cf92fd32517f3043ed12f081a6ddffdd67",
"body": null,
"is_bot": true,
"headline": "chore(deps): update actions/checkout action to v7.0.1",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-20T19:06:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b276b0edac43e927e2b977062e5faa750aae51e8",
"body": null,
"is_bot": false,
"headline": "docs: full-viewport hero so the demo sits below the fold on load",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-20T16:05:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b3efde02bb28e0072f8e3c6d980421180c8c87a",
"body": "…es not abort install",
"is_bot": false,
"headline": "fix: retry release download in install.sh so a transient tls error do…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T17:36:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e05ea4fc469eb722b0fc5051182e2e5182bd290e",
"body": null,
"is_bot": false,
"headline": "build: make tmux source download resilient and fix docker-hub push guard",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T17:21:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e1a8a0977718daa311d1f3a63cf2ad84c920e43f",
"body": null,
"is_bot": false,
"headline": "docs: show the latest release version in the sidebar",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T17:20:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55290094024bef3f055539882c1eee7e5dafb55b",
"body": null,
"is_bot": false,
"headline": "docs: fix rename flow in tui-picker demo gif",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T15:06:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e7503067d64c5f85eaf814b0ece6b4f896f8f2e",
"body": null,
"is_bot": false,
"headline": "docs: new tui-picker gif and a dedicated integrations page for claude",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T14:51:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4da7bfd03a5c34474596a93df2def1643770deb0",
"body": null,
"is_bot": false,
"headline": "docs: drop tmux-resurrect and tmux-continuum comparisons",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T14:51:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "66dc03d00dec9efee4bcaaafc0a3e3e27d64e881",
"body": null,
"is_bot": false,
"headline": "docs: drop the outdated demo video from the home page, keep the gif",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T14:51:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2ae105383ebe3af7fc13cf4e0630a3a37cb02046",
"body": null,
"is_bot": false,
"headline": "docs: record all demo gifs from .tape files in a prepared docker env",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T14:51:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eef6dd65ba115e264814d46c521ba5ed967cd914",
"body": "build: make sandbox install locally built binary instead of release",
"is_bot": false,
"headline": "Merge pull request #238 from alchemmist/feat/sandbox-local-binary",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-19T13:36:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dbd1932a3b71d4b07f7a85daaca268511ab15d0d",
"body": "fix: use borderless popup (-B) for the picker keybinding",
"is_bot": false,
"headline": "Merge pull request #246 from alchemmist/fix/popup-single-border",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-19T13:36:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "04feb23ae47963cb90b717cc74eacea3a38d7b68",
"body": "docs: actualize for the minor release + demo gif",
"is_bot": false,
"headline": "Merge pull request #234 from alchemmist/docs/release-actualization",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-19T13:36:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "caf5d8ed5b893e2b117c37cc9c67db2939c6d8e9",
"body": "… animation",
"is_bot": false,
"headline": "docs: add a slow-restoring third window so the demo shows the restore…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-19T12:22:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e1bfe9f9a2e67a3450f8033d3cf28d51e59dd306",
"body": null,
"is_bot": false,
"headline": "docs: fix allowlist wording (allow, not block)",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-18T20:21:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "32bd042af111a022c2ee3584473fe5a39433897c",
"body": null,
"is_bot": false,
"headline": "fix: borderless popup in example tmux.conf snippet",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-18T20:20:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7bb903d562d7968c7a42a060dec81551859eeadb",
"body": null,
"is_bot": false,
"headline": "fix: use borderless popup (-B) for the picker keybinding",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:43:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1f65fde09eb371a17d5f4ac0b64440c2a4ffaafa",
"body": null,
"is_bot": false,
"headline": "docs: drop tmux popup border in demo so the picker shows a single frame",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:41:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f9943debcc595da3bbe343de64964c51a7d2cf86",
"body": "…ockfile\n\nchore(deps): update dependency vite-react-ssg to v0.9.2",
"is_bot": false,
"headline": "Merge pull request #243 from alchemmist/renovate/vite-react-ssg-0.x-l…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:24:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b1eca0b093de89fe227a3ad6abfa1cf311e38dfd",
"body": "chore(deps): update actions/setup-node action to v7",
"is_bot": false,
"headline": "Merge pull request #241 from alchemmist/renovate/actions-setup-node-7.x",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:24:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "552bf9620bdba941e1bdf768cc4c1f6a532c8546",
"body": "chore(deps): update actions/setup-go action to v7",
"is_bot": false,
"headline": "Merge pull request #245 from alchemmist/renovate/actions-setup-go-7.x",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:23:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "92338ae2ffbe260412222c554e8108775db43482",
"body": "…-lockfile\n\nchore(deps): update dependency @gravity-ui/uikit to v7.46.0",
"is_bot": false,
"headline": "Merge pull request #240 from alchemmist/renovate/gravity-ui-uikit-7.x…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-18T12:23:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "baf1187281e08d294905e52e689d8df995cdbab6",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency vite-react-ssg to v0.9.2",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-16T17:33:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e0b32ac39ce3c18a64df3c4bc63fc6c858ec5d5",
"body": null,
"is_bot": true,
"headline": "chore(deps): update actions/setup-go action to v7",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-16T05:35:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a8c370e235ac1b60a06ee465fec7a1f2a7844884",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency @gravity-ui/uikit to v7.46.0",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-15T18:07:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ccf88691cebff92786e5e2324c63d1a0a17e82c",
"body": "fix: esc during restore cancels and kills the partial session, returns to picker",
"is_bot": false,
"headline": "Merge pull request #244 from alchemmist/fix/restore-esc-cancel",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-15T14:38:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f52739fdbecef3a6daefbea6dd09e73101549cec",
"body": "…s to picker",
"is_bot": false,
"headline": "fix: esc during restore cancels and kills the partial session, return…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-15T14:05:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ddb18fd023221a7ce929783a849d8cbfeaae57b0",
"body": null,
"is_bot": true,
"headline": "chore(deps): update actions/setup-node action to v7",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-14T05:28:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d96d08d46d342d7a2e7e4ba917ea5ab10b348a1e",
"body": null,
"is_bot": false,
"headline": "docs: add make demo-gif to regenerate demo with local vhs",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-13T13:02:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "48fc348323453346529dc79ec2f33bd339ee419b",
"body": null,
"is_bot": false,
"headline": "build: make sandbox install locally built binary instead of release",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-13T11:51:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0831dc517d6aa28cb32472d4d677675b571667ad",
"body": null,
"is_bot": false,
"headline": "docs: fix picker border rendering in demo via utf-8 locale",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-13T11:45:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc70d6774768249669a3821271273a58f855f5f0",
"body": null,
"is_bot": false,
"headline": "docs: record full save/kill/restore demo gif",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-13T11:25:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2afe24012bb12386910e08d2f9a12f0263ad350",
"body": "chore(deps): update dependency typescript to v7",
"is_bot": false,
"headline": "Merge pull request #237 from alchemmist/renovate/typescript-7.x",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-13T10:22:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c812f36a3d1744ed55523f8c71f2628555b9d92b",
"body": "…ockfile\n\nchore(deps): update dependency vite-react-ssg to v0.9.1",
"is_bot": false,
"headline": "Merge pull request #236 from alchemmist/renovate/vite-react-ssg-0.x-l…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-13T10:21:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5ef4671b0dcc983c6561f6818ca64632089af2b3",
"body": "…-lockfile\n\nchore(deps): update dependency @gravity-ui/uikit to v7.44.2",
"is_bot": false,
"headline": "Merge pull request #235 from alchemmist/renovate/gravity-ui-uikit-7.x…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-13T10:20:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dfd05d0ee384ffede94b89a7b3cf93d9424b0e91",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency typescript to v7",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-08T21:10:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f61c21b9baad5d8e3fad02254f27007f944d2248",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency vite-react-ssg to v0.9.1",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-08T06:32:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e52913e293811699dbed48ce15a7bfdc70c18207",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency @gravity-ui/uikit to v7.44.2",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-07T19:59:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "349cb74f49e52615055686255e4bd14d4ad1cb09",
"body": "…list, animated status, demo gif",
"is_bot": false,
"headline": "docs: actualize for release — tmux 2.9-3.7b support, regex allow/deny…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T15:18:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0034c78bd388fb574f991de175abc344df2dc70f",
"body": "…-lockfile\n\nchore(deps): update dependency @gravity-ui/uikit to v7.44.1",
"is_bot": false,
"headline": "Merge pull request #233 from alchemmist/renovate/gravity-ui-uikit-7.x…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T13:33:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e4d67c42a576470367f2fc29d1ccf574cd7b1c8",
"body": null,
"is_bot": true,
"headline": "chore(deps): update dependency @gravity-ui/uikit to v7.44.1",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-07T13:22:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7670c8874d7e31f492cc34377e48d402e00f646",
"body": "feat(picker): color and declutter the fzf-build list",
"is_bot": false,
"headline": "Merge pull request #232 from alchemmist/feat/fzf-picker-styling",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T13:21:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e192504b5e19c0a5e62efbc340c81f1de88c6266",
"body": "feat(picker): animate the working status dot",
"is_bot": false,
"headline": "Merge pull request #228 from alchemmist/feat/animated-picker-status",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T12:13:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c537bb401c2cf03ce8fe70afe48e391fef5e21ea",
"body": null,
"is_bot": false,
"headline": "feat(picker): color and declutter the fzf-build session/window list",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T12:10:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9f5c6f49ba7f812506daae42d6aa3ebac81ada2b",
"body": null,
"is_bot": false,
"headline": "test(picker): cover the spinner tick start/stop/resume state machine",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T11:57:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6aed2819dab4a575393cfc1855b1fe17d622b86a",
"body": null,
"is_bot": false,
"headline": "feat(picker): animate the working status dot with a half-circle spinner",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T11:30:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa6471425e72ef2ad5cae4176f27b433d029e0a7",
"body": "feat(restore): regex allow/denylist matched over the full command",
"is_bot": false,
"headline": "Merge pull request #227 from alchemmist/feat/regex-restore-lists",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T11:10:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2d5ecacf6c539345a5c81d61693d8b194a37bf48",
"body": "…command",
"is_bot": false,
"headline": "feat(restore): match allow/denylist entries as regexes over the full …",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T10:34:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6da11047091c70d22c14fce67efb35ff252ceec7",
"body": null,
"is_bot": false,
"headline": "docs: point to makefile tasks instead of nonexistent make help",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T05:36:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "448c0c6b478ce5c1c507513ca2e8e8fa04256180",
"body": null,
"is_bot": false,
"headline": "strip prose comments from go source and disable revive doc-comment rules",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-07T05:33:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "944b16ccc3aa8056c98e64be1bfbf60d6a570f3c",
"body": "fix: join wrapped lines in capture-pane with -J",
"is_bot": false,
"headline": "Merge pull request #222 from alchemmist/fix/capture-pane-join-wrapped",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T05:21:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4218de1c097b614e04ca5a4aca872b7332b129de",
"body": "fix: preserve explicitly launched shell across save and restore",
"is_bot": false,
"headline": "Merge pull request #223 from alchemmist/fix/preserve-launched-shell",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-07T05:20:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "892a3881ff9e47c682634778fbfc8633a652dae6",
"body": null,
"is_bot": false,
"headline": "test: assert capture-pane args include -J",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-06T18:35:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd8f0f914a449350bcb8726448f425ee8ffc4927",
"body": null,
"is_bot": false,
"headline": "fix: preserve explicitly launched shell across save and restore",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-06T18:23:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3cb0df4199964708f9decba7ac51841ed0affbb0",
"body": null,
"is_bot": false,
"headline": "fix: join wrapped lines in capture-pane with -J",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-06T18:17:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2cb0ae920df2dc343bbe7949740a1408a1becc6",
"body": "fix: retidy go.sum after bubbles v2.1.1 merge",
"is_bot": false,
"headline": "Merge pull request #221 from alchemmist/fix/go-sum-bubbles",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-06T18:11:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ee42c51cbc44568c0dd19f7b317c236ec79f8972",
"body": null,
"is_bot": false,
"headline": "fix: retidy go.sum after bubbles v2.1.1 merge",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-06T18:00:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "30be349acdf6f2c9548616b2243d86600ace3913",
"body": "…2-2.x\n\nfix(deps): update module charm.land/bubbles/v2 to v2.1.1",
"is_bot": false,
"headline": "Merge pull request #219 from alchemmist/renovate/charm.land-bubbles-v…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-06T08:40:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "553b9f588b0f0c65b68541972993b4bc6a073eb5",
"body": null,
"is_bot": false,
"headline": "Merge branch 'main' into renovate/charm.land-bubbles-v2-2.x",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-06T08:40:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5b4fb70240dab9ac5ff7a3220c93bcfdf416adda",
"body": "…and/lipgloss/v2-2.0.5\n\nbuild(deps): bump charm.land/lipgloss/v2 from 2.0.4 to 2.0.5",
"is_bot": false,
"headline": "Merge pull request #218 from alchemmist/dependabot/go_modules/charm.l…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-06T08:39:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2356e3b6f9e32e5dd9aaabffe18549e65af953e2",
"body": null,
"is_bot": true,
"headline": "fix(deps): update module charm.land/bubbles/v2 to v2.1.1",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-04T13:40:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f085296fd78b3a1f89223091ca863a5418c498a",
"body": "Bumps [charm.land/lipgloss/v2](https://github.com/charmbracelet/lipgloss) from 2.0.4 to 2.0.5.\n- [Release notes](https://github.com/charmbracelet/lipgloss/releases)\n- [Commits](https://github.com/charmbracelet/lipgloss/compare/v2.0.4...v2.0.5)\n\n---\nupdated-dependencies:\n- dependency-name: charm.land/lipgloss/v2\n dependency-version: 2.0.5\n dependency-type: direct:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "build(deps): bump charm.land/lipgloss/v2 from 2.0.4 to 2.0.5",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-04T03:22:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0be43c74fdb2fda512206dd0bdbd167111a48db5",
"body": "feat(release): semver release targets — make release-patch/minor/major",
"is_bot": false,
"headline": "Merge pull request #217 from alchemmist/feat/release-targets",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T15:50:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc515fe1b6a46fe6f79efc2e8b60ae309c92139b",
"body": "…t version\n\nA stray prerelease tag (v1.2.3-rc1) would both win git's version sort and\nbreak the numeric major.minor.patch split.",
"is_bot": false,
"headline": "fix(release): only consider strict vX.Y.Z tags when computing the nex…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T13:59:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07fd423dec6cb890b637ac7ae14ad2419d4b9619",
"body": "…g+push\n\nReplace the tag-only `make tag` (patch by default, TYPE=... undocumented,\nno push) with three explicit semver targets backed by scripts/release.sh:\nrefuse unless on a clean main in sync with origin/main, run make check,\nshow the commits since the last tag, confirm, then tag and push — the\nrelease workflow (GoReleaser, Homebrew tap, AUR) takes over from there.",
"is_bot": false,
"headline": "feat(release): make release-patch/minor/major targets with guarded ta…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T13:50:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "73b801d4c0fa9181e0f389344f1fb372ef2234da",
"body": "…-v2-2.x\n\nfix(deps): update module charm.land/bubbletea/v2 to v2.0.8",
"is_bot": false,
"headline": "Merge pull request #213 from alchemmist/renovate/charm.land-bubbletea…",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:43:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a8b2661b5bbe92dd4fad513769c95327c9d3ef49",
"body": "fix(claude-status): clear stale awaiting_decision once the permission is resolved",
"is_bot": false,
"headline": "Merge pull request #215 from alchemmist/fix/claude-status-stuck-question",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:25:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a1fa5fbabbcf4afad74578fcafc4169aa592929e",
"body": "…ersion\n\nBoth tests mutate the package-level version variable under t.Parallel()\nwhile parallel CLI tests read it through resolveVersion, tripping the race\ndetector intermittently since the paralleltest rollout (#212). Serial tests\nfinish before paused parallel ones resume, so dropping t.Parallel() removes\nthe overlap.",
"is_bot": false,
"headline": "fix(test): keep resolveVersion tests serial — they write the global v…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:13:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d301129571eb0e4062b6c3ce70e572f767d9980",
"body": "…ier blocks\n\nA manual denial fires no hook event at all (only Notification fires when\nthe dialog appears), but Claude keeps processing the turn after a denial,\nso the next PreToolUse or Stop bounds the stale \"?\" window to seconds.",
"is_bot": false,
"headline": "fix(claude-status): reset to working on PermissionDenied auto-classif…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:13:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "160ef1bc40cb9d197382653f26b6dd7d4a58c45b",
"body": "…ToolUse hooks\n\nNo hook event fires at the moment a permission request is resolved: the\nsequence is PreToolUse -> permission prompt (Notification writes\nawaiting_decision) -> approval -> tool runs -> PostToolUse. With hooks\nonly on Notification/UserPromptSubmit/Stop, the picker kept showing \"?\"\nfor \n[…]\nok PreToolUse and PostToolUse to \"working\": any tool starting or\nfinishing means the prompt is resolved. PreToolUse fires before the\npermission prompt, so a real awaiting_decision still overwrites it.",
"is_bot": false,
"headline": "fix(claude-status): clear stale awaiting_decision via PreToolUse/Post…",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:12:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5a27ed1a8f0672910d53d65a664a155f5ed92041",
"body": "feat(picker): keybinding help panel (?) + chords in the command palette (#9)",
"is_bot": false,
"headline": "Merge pull request #208 from alchemmist/feat/picker-keybind-help",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:08:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b85aa72ba44383fc8061cca539c25a53ac43c789",
"body": "fix(picker): align fzf-engine columns regardless of session-name length (#200)",
"is_bot": false,
"headline": "Merge pull request #206 from alchemmist/fix/fzf-column-alignment",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T06:08:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fa738e8b4b293cec8832b5a285cd6e4d0bb5a330",
"body": "fix(picker): count native tmux switches in last-used sort (#196)",
"is_bot": false,
"headline": "Merge pull request #207 from alchemmist/fix/last-used-native-switch",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T05:09:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b88741b171199098e2c94dba894ee288b7cda67f",
"body": "The last-used sort ranked sessions only by LastAccessed, which lazy-tmux\nupdates from its own restore path. Native tmux switches (prefix+L,\nswitch-client, attach) never touched it, so the session you actually used\nmost recently could rank low.\n\nRead tmux's #{session_last_attached} for live sessions \n[…]\nme is fresher. The\nmerge is best-effort and live-only: any failure (no server, or a tmux too\nold to expose the format) is ignored, and dead/asleep sessions keep their\nstored LastAccessed.\n\nCloses #196",
"is_bot": false,
"headline": "fix(picker): count native tmux switches in last-used sort (#196)",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T05:06:53Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "875f0bae7a2a039f0084d53165819dbb9997a788",
"body": "The picker gained many direct shortcuts (^d/^r/^n, alt variants, wake/sleep)\nbut nothing surfaced them: the footer showed only the basics and the palette\nlisted command names without their chords.\n\nAdd a '?' toggle (browse mode, empty query) that opens a full keybinding\ncheat sheet grouped into Navigate / Act sections; any key dismisses it. Show\neach command's direct chord next to its name in the slash palette, and add\n'? help' to the browse footer hints.\n\nCloses #9",
"is_bot": false,
"headline": "feat(picker): keybinding help panel (?) and chords in the palette (#9)",
"author_name": "alchemmist",
"author_login": "alchemmist",
"committed_at": "2026-07-03T05:04:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3a5cbb4beedaf48ca4ea74b8cb2c5a37f7be23be",
"body": "fix(tmux): open the picker when no tmux server is running (#198)",
"is_bot": false,
"headline": "Merge pull request #205 from alchemmist/fix/no-tmux-server-picker",
"author_name": "Anton Grishin",
"author_login": "alchemmist",
"committed_at": "2026-07-03T05:02:43Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 20,
"commits_last_year": 550,
"latest_release_at": "2026-07-19T17:15:26Z",
"latest_release_tag": "v0.2.0",
"releases_from_tags": false,
"days_since_last_push": 1,
"active_weeks_last_year": 20,
"days_since_latest_release": 16,
"mean_days_between_releases": 2.8
},
"artifacts": {
"collected": true,
"structure": [
"tree.go_main",
"tree.goreleaser"
],
"declarations": []
},
"community": {
"has_readme": true,
"has_license": true,
"readme_badges": {
"hosts": [
"github.com",
"shields.io"
],
"total": 5,
"header": 5,
"collected": true,
"has_inspect_badge": false
},
"has_description": true,
"has_contributing": false,
"health_percentage": 42,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "github.com/alchemmist/lazy-tmux",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"categories": [],
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/alchemmist/lazy-tmux",
"declared_type": null,
"is_deprecated": false,
"latest_version": "v0.2.0",
"repository_url": "https://github.com/alchemmist/lazy-tmux",
"versions_count": 27,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-19T15:06:24Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
}
]
},
"popularity": {
"forks": 6,
"stars": 188,
"watchers": 1,
"fork_history": {
"days": [
{
"date": "2026-03-26",
"count": 1
},
{
"date": "2026-04-28",
"count": 1
},
{
"date": "2026-07-09",
"count": 1
},
{
"date": "2026-07-15",
"count": 1
},
{
"date": "2026-07-21",
"count": 1
},
{
"date": "2026-07-23",
"count": 1
}
],
"complete": true,
"collected": 6,
"total_forks": 6
},
"star_history": null,
"open_issues_and_prs": 39
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"docs/tsconfig.json"
],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 29894,
"source_files_sampled": 101,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"docs/package.json",
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "react-router",
"direct": false,
"version": "7.18.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": null,
"advisory_ids": [
"GHSA-qwww-vcr4-c8h2"
],
"fixed_version": "8.3.0",
"advisory_count": 1,
"oldest_advisory_days": 11
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"high": 1
},
"advisory_count": 1,
"affected_count": 1,
"assessed_count": 314,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"go",
"npm"
],
"dependencies": [
{
"name": "charm.land/bubbles/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.1.1"
},
{
"name": "charm.land/bubbletea/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.0.8"
},
{
"name": "charm.land/lipgloss/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.0.5"
},
{
"name": "github.com/BurntSushi/toml",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.6.0"
},
{
"name": "github.com/charmbracelet/x/ansi",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.11.7"
},
{
"name": "github.com/charmbracelet/x/term",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.2.2"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "charm.land/bubbles/v2",
"direct": true,
"version": "v2.1.1",
"ecosystem": "go"
},
{
"name": "charm.land/bubbletea/v2",
"direct": true,
"version": "v2.0.8",
"ecosystem": "go"
},
{
"name": "charm.land/lipgloss/v2",
"direct": true,
"version": "v2.0.5",
"ecosystem": "go"
},
{
"name": "github.com/burntsushi/toml",
"direct": true,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/ansi",
"direct": true,
"version": "v0.11.7",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/term",
"direct": true,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/atotto/clipboard",
"direct": false,
"version": "v0.1.4",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/colorprofile",
"direct": false,
"version": "v0.4.3",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/ultraviolet",
"direct": false,
"version": "v0.0.0-20260703014108-f5a850f9c2b7",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/termios",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/windows",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/displaywidth",
"direct": false,
"version": "v0.11.0",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/uax29/v2",
"direct": false,
"version": "v2.7.0",
"ecosystem": "go"
},
{
"name": "github.com/lucasb-eyer/go-colorful",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-runewidth",
"direct": false,
"version": "v0.0.24",
"ecosystem": "go"
},
{
"name": "github.com/muesli/cancelreader",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/rivo/uniseg",
"direct": false,
"version": "v0.4.7",
"ecosystem": "go"
},
{
"name": "github.com/xo/terminfo",
"direct": false,
"version": "v0.0.0-20220910002029-abceb7e1c41e",
"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": "@asamuzakjp/css-color",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/compat-data",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-compilation-targets",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-globals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-imports",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-transforms",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-plugin-utils",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-option",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helpers",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-self",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-source",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@babel/template",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/traverse",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@bem-react/classname",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "@csstools/color-helpers",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-calc",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "@csstools/css-color-parser",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-parser-algorithms",
"direct": false,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "@csstools/css-tokenizer",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@floating-ui/core",
"direct": false,
"version": "1.7.5",
"ecosystem": "npm"
},
{
"name": "@floating-ui/dom",
"direct": false,
"version": "1.7.6",
"ecosystem": "npm"
},
{
"name": "@floating-ui/react",
"direct": false,
"version": "0.27.19",
"ecosystem": "npm"
},
{
"name": "@floating-ui/react-dom",
"direct": false,
"version": "2.1.8",
"ecosystem": "npm"
},
{
"name": "@floating-ui/utils",
"direct": false,
"version": "0.2.11",
"ecosystem": "npm"
},
{
"name": "@gravity-ui/i18n",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "@gravity-ui/icons",
"direct": false,
"version": "2.21.0",
"ecosystem": "npm"
},
{
"name": "@gravity-ui/uikit",
"direct": false,
"version": "7.47.1",
"ecosystem": "npm"
},
{
"name": "@hello-pangea/dnd",
"direct": false,
"version": "18.0.1",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/remapping",
"direct": false,
"version": "2.3.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.0-rc.3",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm-eabi",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-gnueabihf",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-musleabihf",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-s390x-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openbsd-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openharmony-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-arm64-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-ia32-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-virtual",
"direct": false,
"version": "3.14.4",
"ecosystem": "npm"
},
{
"name": "@tanstack/virtual-core",
"direct": false,
"version": "3.17.2",
"ecosystem": "npm"
},
{
"name": "@types/babel__core",
"direct": false,
"version": "7.20.5",
"ecosystem": "npm"
},
{
"name": "@types/babel__generator",
"direct": false,
"version": "7.27.0",
"ecosystem": "npm"
},
{
"name": "@types/babel__template",
"direct": false,
"version": "7.4.4",
"ecosystem": "npm"
},
{
"name": "@types/babel__traverse",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "19.2.17",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "19.2.3",
"ecosystem": "npm"
},
{
"name": "@types/use-sync-external-store",
"direct": false,
"version": "0.0.6",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-aix-ppc64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-darwin-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-darwin-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-freebsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-freebsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-arm",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-loong64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-mips64el",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-ppc64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-riscv64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-s390x",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-netbsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-netbsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-openbsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-openbsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-sunos-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-win32-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-win32-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@uiw/color-convert",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-alpha",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-block",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-chrome",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-circle",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-colorful",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-compact",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-editable-input",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-editable-input-hsla",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-editable-input-rgba",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-github",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-hue",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-material",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-name",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-saturation",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-shade-slider",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-sketch",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-slider",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-swatch",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-color-wheel",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@uiw/react-drag-event-interactive",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "7.1.4",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "asynckit",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.40",
"ecosystem": "npm"
},
{
"name": "blueimp-md5",
"direct": false,
"version": "2.19.0",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.4",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001799",
"ecosystem": "npm"
},
{
"name": "classnames",
"direct": false,
"version": "2.5.1",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "colors-named",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "colors-named-hex",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "combined-stream",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "css-box-model",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "cssstyle",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "data-urls",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decimal.js",
"direct": false,
"version": "10.6.0",
"ecosystem": "npm"
},
{
"name": "delayed-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "dom-helpers",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.380",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "es-set-tostringtag",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "eventemitter3",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.6",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "11.3.5",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "gensync",
"direct": false,
"version": "1.0.0-beta.2",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "html-encoding-sniffer",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "html5parser",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "http-proxy-agent",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "https-proxy-agent",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "invariant",
"direct": false,
"version": "2.2.4",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-potential-custom-element-name",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "24.1.3",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "kolorist",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "loose-envify",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "memoize-one",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.16",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.50",
"ecosystem": "npm"
},
{
"name": "nwsapi",
"direct": false,
"version": "2.2.24",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "p-queue",
"direct": false,
"version": "9.3.0",
"ecosystem": "npm"
},
{
"name": "p-timeout",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.23",
"ecosystem": "npm"
},
{
"name": "prop-types",
"direct": false,
"version": "15.8.1",
"ecosystem": "npm"
},
{
"name": "psl",
"direct": false,
"version": "1.15.0",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "querystringify",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "raf-schd",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "rc-slider",
"direct": false,
"version": "11.1.9",
"ecosystem": "npm"
},
{
"name": "rc-util",
"direct": false,
"version": "5.44.4",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "19.2.8",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "19.2.8",
"ecosystem": "npm"
},
{
"name": "react-fast-compare",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "react-helmet-async",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "react-is",
"direct": false,
"version": "16.13.1",
"ecosystem": "npm"
},
{
"name": "react-is",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-redux",
"direct": false,
"version": "9.3.0",
"ecosystem": "npm"
},
{
"name": "react-refresh",
"direct": false,
"version": "0.18.0",
"ecosystem": "npm"
},
{
"name": "react-router",
"direct": false,
"version": "7.18.1",
"ecosystem": "npm"
},
{
"name": "react-router-dom",
"direct": false,
"version": "7.18.1",
"ecosystem": "npm"
},
{
"name": "react-transition-group",
"direct": false,
"version": "4.4.5",
"ecosystem": "npm"
},
{
"name": "react-virtualized-auto-sizer",
"direct": false,
"version": "1.0.26",
"ecosystem": "npm"
},
{
"name": "react-window",
"direct": false,
"version": "1.8.11",
"ecosystem": "npm"
},
{
"name": "redux",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "requires-port",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "rrweb-cssom",
"direct": false,
"version": "0.7.1",
"ecosystem": "npm"
},
{
"name": "rrweb-cssom",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "saxes",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.27.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "6.3.1",
"ecosystem": "npm"
},
{
"name": "set-cookie-parser",
"direct": false,
"version": "2.7.2",
"ecosystem": "npm"
},
{
"name": "shallowequal",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "symbol-tree",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "tabbable",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "tiny-invariant",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tough-cookie",
"direct": false,
"version": "4.1.4",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "url-parse",
"direct": false,
"version": "1.5.10",
"ecosystem": "npm"
},
{
"name": "use-sync-external-store",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "7.3.6",
"ecosystem": "npm"
},
{
"name": "vite-react-ssg",
"direct": false,
"version": "0.9.2",
"ecosystem": "npm"
},
{
"name": "w3c-xmlserializer",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "whatwg-encoding",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "whatwg-mimetype",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "14.2.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "xml-name-validator",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "xmlchars",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.3",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 314,
"direct_count": 6,
"indirect_count": 308
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 136,
"open_issues": 39,
"closed_ratio": 0.606,
"closed_issues": 60,
"closed_unmerged_prs": 23
},
"bus_factor": 1,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "alchemmist",
"commits": 496,
"avatar_url": "https://avatars.githubusercontent.com/u/104511335?v=4"
}
],
"contributors_sampled": 1,
"top_contributor_share": 1
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"build.yml",
"coverage.yml",
"golangci-lint.yml",
"pages.yml",
"release.yml",
"test.yml",
"tmux-versions.yml"
],
"has_docs_dir": true,
"linter_configs": [
".golangci.yml"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"go.sum",
"package-lock.json"
],
"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": 1,
"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": "8 out of 8 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/14 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 23 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": 2,
"reason": "dependency not pinned by hash detected -- score normalized to 2",
"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": 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": 0,
"reason": "Project has not signed or included provenance with any releases.",
"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": 9,
"reason": "1 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "5e237a8e15d8d02424c7cd8b6fc77d08707793a2",
"ran_at": "2026-08-05T08:54:17Z",
"aggregate_score": 5.4,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"recent_prs": {
"merged_7d": 0,
"decided_7d": 0,
"merged_30d": 10,
"authors_30d": 3,
"decided_30d": 12,
"sample_size": 60,
"window_days": 30,
"sample_exhausted": false,
"authors_probed_30d": 3,
"newcomer_merged_30d": 0,
"bot_prs_excluded_30d": 18,
"newcomer_authors_30d": 2,
"newcomer_decided_30d": 2
},
"ci_last_run_at": "2026-08-04T08:10:00Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-30T17:15:01Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 8,
"created_at": "2026-02-28T09:17:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 11,
"created_at": "2026-02-28T17:45:41Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 13,
"created_at": "2026-03-01T13:30:55Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 31,
"created_at": "2026-03-04T07:33:23Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 36,
"created_at": "2026-03-07T14:16:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 39,
"created_at": "2026-03-07T15:41:21Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 40,
"created_at": "2026-03-07T16:53:08Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 43,
"created_at": "2026-03-07T18:19:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 45,
"created_at": "2026-03-07T19:06:24Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 46,
"created_at": "2026-03-07T19:15:30Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 49,
"created_at": "2026-03-10T05:00:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 57,
"created_at": "2026-03-14T13:04:44Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 58,
"created_at": "2026-03-25T07:23:09Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 64,
"created_at": "2026-03-27T08:51:44Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 76,
"created_at": "2026-04-03T09:38:16Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 77,
"created_at": "2026-04-03T19:40:50Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 147,
"created_at": "2026-06-28T10:47:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 174,
"created_at": "2026-06-28T18:20:36Z",
"last_comment_at": "2026-06-28T18:20:47Z",
"last_comment_author": "alchemmist"
},
{
"number": 184,
"created_at": "2026-06-30T08:56:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 185,
"created_at": "2026-06-30T09:38:30Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/alchemmist/lazy-tmux",
"host": "github.com",
"name": "lazy-tmux",
"owner": "alchemmist"
},
"metrics": {
"overall": {
"key": "overall",
"band": "critical",
"name": "Overall health",
"note": "The weighted overall 60 is calibrated to 65 on the published index scale (record calibration 2026-08-02). High-Risk Jurisdiction Policy applies a 20% multiplier to weighted overall health and gives it an At Risk ceiling of 34.",
"notes": [
{
"code": "overall_calibration",
"params": {
"raw": 60,
"calibrated": 65,
"calibration": "2026-08-02"
}
},
{
"code": "jurisdiction_overall_adjustment",
"params": {
"cap": 34,
"pct": 20
}
}
],
"value": 13,
"inputs": {
"security": 29,
"vitality": 83,
"community": 46,
"governance": 50,
"calibration": "2026-08-02",
"engineering": 82,
"ai_readiness": 66,
"weighted_overall_raw": 60,
"high_risk_jurisdiction_cap": 34,
"high_risk_jurisdiction_multiplier": 20,
"weighted_overall_before_jurisdiction": 65,
"overall_after_jurisdiction_multiplier": 13
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 83,
"weight": 0.21,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"commits_last_year": 550,
"human_commit_share": 0.82,
"days_since_last_push": 1,
"active_weeks_last_year": 20
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 1 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 1
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "20/52 weeks with commits",
"points": 13.8,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 20
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "550 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 550
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 23 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": 90,
"inputs": {
"releases_count": 20,
"latest_release_tag": "v0.2.0",
"releases_from_tags": false,
"days_since_latest_release": 16,
"mean_days_between_releases": 2.8
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "20 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 20
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 16 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 16
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~2.8 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 2.8
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "exceptional",
"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": "weak",
"name": "Community & Adoption",
"value": 46,
"weight": 0.17,
"metrics": [
{
"key": "popularity",
"band": "weak",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 43,
"inputs": {
"forks": 6,
"stars": 188,
"watchers": 1,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "188 stars",
"points": 36.9,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 188
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "6 forks",
"points": 5.8,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 6
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "1 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 1
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"readme_badges": 5,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"readme_badge_services": [
"github.com",
"shields.io"
],
"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 (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"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.23,
"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": null,
"notes": [],
"value": 51,
"inputs": {
"merged_prs": 136,
"open_issues": 39,
"closed_issues": 60,
"prs_merged_7d": 0,
"prs_decided_7d": 0,
"prs_merged_30d": 10,
"prs_decided_30d": 12,
"issue_closed_ratio": 0.606,
"closed_unmerged_prs": 23,
"first_time_authors_30d": 2,
"first_time_prs_merged_30d": 0,
"first_time_prs_decided_30d": 2
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "61% of issues closed",
"points": 25.5,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 61
}
}
],
"max_points": 42
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "136/159 decided PRs merged",
"points": 25.7,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 136,
"decided": 159
}
}
],
"max_points": 30
},
{
"key": "newcomer_pr_acceptance",
"name": "Newcomer PR acceptance",
"detail": "0/2 first-time contributors' PRs merged in 30d",
"points": 0,
"status": "missed",
"details": [
{
"code": "newcomer_prs_merged",
"params": {
"days": 30,
"merged": 0,
"decided": 2
}
}
],
"max_points": 13
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/14 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 53,
"inputs": {
"followers": 32,
"owner_type": "User",
"is_verified": null,
"owner_login": "alchemmist",
"public_repos": 55,
"account_age_days": 1560
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "32 followers of alchemmist",
"points": 10.9,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 32,
"login": "alchemmist"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "55 public repos, account ~4 yr old",
"points": 21.3,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 55
}
},
{
"code": "account_age_years",
"params": {
"years": 4
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "exceptional",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/alchemmist/lazy-tmux"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 16
},
"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 16 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 16
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "27 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 27
}
}
],
"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": "excellent",
"name": "Engineering Quality",
"value": 82,
"weight": 0.19,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "7 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 7
}
}
],
"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": 0,
"status": "missed",
"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": "8 out of 8 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": "https://lazy-tmux.xyz",
"has_readme": true,
"has_docs_dir": true,
"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": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://lazy-tmux.xyz",
"points": 15,
"status": "met",
"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": "at_risk",
"name": "Security",
"value": 29,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "critical",
"name": "Security posture",
"note": "High-Risk Jurisdiction Policy applies a 20% multiplier to Security posture and gives it an At Risk ceiling of 34.",
"notes": [
{
"code": "jurisdiction_posture_adjustment",
"params": {
"cap": 34,
"pct": 20
}
}
],
"value": 11,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 18,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 0,
"scorecard_aggregate": 5.4,
"high_risk_jurisdiction_cap": 34,
"high_risk_jurisdiction_multiplier": 20,
"security_posture_after_multiplier": 11,
"security_posture_before_jurisdiction": 54
},
"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": 0.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "8 out of 8 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/14 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 23 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 2",
"points": 1,
"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 not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"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": "1 existing vulnerabilities detected",
"points": 6.8,
"status": "partial",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "exceptional",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 314 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",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 314
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 1,
"affected_packages": 1,
"assessed_packages": 314,
"unassessed_packages": 0,
"affected_by_severity": "high 1",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"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": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "exceptional",
"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": 314,
"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": "at_risk",
"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": 20,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": true,
"exposures": [
{
"role": "owner",
"count": 1,
"country": "Russia"
},
{
"role": "top_contributor",
"count": 1,
"country": "Russia"
}
],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"commit_weight_rule": {
"min_commits": 50,
"min_commit_share": 0.1
},
"review_only_matches": 0,
"below_threshold_exposures": [],
"assessed_self_published_locations": 2
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "Russia: owner (1); Russia: top_contributor (1)",
"points": 20,
"status": "partial",
"details": [
{
"code": "jurisdiction_exposure",
"params": {
"role": "owner",
"count": 1,
"country": "Russia"
}
},
{
"code": "jurisdiction_exposure_next",
"params": {
"role": "top_contributor",
"count": 1,
"country": "Russia"
}
}
],
"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": 66,
"weight": 0.04,
"metrics": [
{
"key": "ai_agent_context",
"band": "weak",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.976,
"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": "80 of 82 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 80,
"sampled": 82
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "excellent",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum",
"package-lock.json"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"Makefile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"docs/tsconfig.json"
],
"agent_commit_share": 0,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0.18
},
"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": "docs/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "docs/tsconfig.json"
}
}
],
"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 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "18 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 18,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 2",
"points": 2,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "exceptional",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 29894,
"source_files_sampled": 101,
"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/101 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 101,
"oversized": 0
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "weak",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"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": "examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
}
],
"classification": {
"top": [
"application"
],
"labels": [
"application"
],
"scores": {
"library": 3,
"application": 9
},
"primary": "application",
"evidence": [
{
"tier": "structure",
"label": "application",
"source": "tree.go_main",
"weight": 5
},
{
"tier": "structure",
"label": "application",
"source": "tree.goreleaser",
"weight": 4
},
{
"tier": "distribution",
"label": "library",
"source": "registry:go",
"weight": 3
}
],
"artifacts": [],
"confidence": "medium",
"host_extension": false,
"runs_as_process": true,
"consumed_by_code": false
},
"metrics_version": "2.5.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-08-05T08:54:30.556707Z",
"schema_version": "0.31.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/a/alchemmist/lazy-tmux.svg",
"full_name": "alchemmist/lazy-tmux",
"license_state": "standard",
"license_spdx": "MIT"
}