原始 JSON 报告 机器可读
{
"data": {
"repo": {
"topics": [
"apple-silicon",
"fastapi",
"inference",
"llm",
"local-llm",
"macos",
"mlx",
"openai-api",
"python",
"tool-calling",
"hacktoberfest",
"ollama-alternative",
"m1",
"m2",
"m3",
"qwen",
"deepseek",
"claude-code",
"cursor"
],
"is_fork": false,
"size_kb": 35506,
"has_wiki": true,
"homepage": "https://pypi.org/project/rapid-mlx",
"languages": {
"HTML": 13811,
"Metal": 8284,
"Shell": 143973,
"Python": 20059239,
"Makefile": 3973
},
"pushed_at": "2026-08-02T03:22:57Z",
"created_at": "2026-02-25T00:41:44Z",
"owner_type": "User",
"updated_at": "2026-08-02T03:23:04Z",
"description": "The fastest local AI engine for Apple Silicon. 4.2x faster than Ollama, 0.08s cached TTFT, 100% tool calling. 17 tool parsers, prompt cache, reasoning separation, cloud routing. Drop-in OpenAI replacement. Works with Claude Code, Cursor, Aider.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "Python",
"significant_languages": [
"Python"
]
},
"owner": {
"blog": null,
"name": "Raullen Chai",
"type": "User",
"login": "raullenchai",
"company": null,
"location": "San Francisco",
"followers": 935,
"avatar_url": "https://avatars.githubusercontent.com/u/989846?v=4",
"created_at": "2011-08-18T22:56:57Z",
"is_verified": null,
"public_repos": 134,
"account_age_days": 5462
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.11.6",
"kind": "patch",
"published_at": "2026-08-02T03:16:46Z"
},
{
"tag": "v0.11.5",
"kind": "patch",
"published_at": "2026-08-01T06:07:29Z"
},
{
"tag": "v0.11.4",
"kind": "patch",
"published_at": "2026-07-31T15:00:06Z"
},
{
"tag": "v0.11.3",
"kind": "patch",
"published_at": "2026-07-30T23:40:40Z"
},
{
"tag": "v0.11.1",
"kind": "patch",
"published_at": "2026-07-28T05:27:59Z"
},
{
"tag": "v0.11.0",
"kind": "minor",
"published_at": "2026-07-24T15:09:54Z"
},
{
"tag": "v0.10.18",
"kind": "patch",
"published_at": "2026-07-24T01:09:12Z"
},
{
"tag": "v0.10.17",
"kind": "patch",
"published_at": "2026-07-22T21:59:48Z"
},
{
"tag": "v0.10.16",
"kind": "patch",
"published_at": "2026-07-22T17:28:27Z"
},
{
"tag": "v0.10.15",
"kind": "patch",
"published_at": "2026-07-21T13:06:58Z"
},
{
"tag": "v0.10.14",
"kind": "patch",
"published_at": "2026-07-21T12:26:27Z"
},
{
"tag": "v0.10.12",
"kind": "patch",
"published_at": "2026-07-17T16:22:26Z"
},
{
"tag": "v0.10.10",
"kind": "patch",
"published_at": "2026-07-15T13:54:57Z"
},
{
"tag": "v0.10.9",
"kind": "patch",
"published_at": "2026-07-12T03:35:34Z"
},
{
"tag": "v0.10.8",
"kind": "patch",
"published_at": "2026-07-11T20:38:01Z"
},
{
"tag": "v0.10.7",
"kind": "patch",
"published_at": "2026-07-11T00:00:30Z"
},
{
"tag": "v0.10.5",
"kind": "patch",
"published_at": "2026-07-08T14:54:13Z"
},
{
"tag": "v0.10.3",
"kind": "patch",
"published_at": "2026-07-07T18:39:08Z"
},
{
"tag": "v0.10.2",
"kind": "patch",
"published_at": "2026-07-07T01:04:10Z"
},
{
"tag": "v0.10.1",
"kind": "patch",
"published_at": "2026-07-05T14:09:07Z"
},
{
"tag": "v0.10.0",
"kind": "minor",
"published_at": "2026-07-04T17:37:26Z"
},
{
"tag": "v0.9.14",
"kind": "patch",
"published_at": "2026-07-04T15:38:46Z"
},
{
"tag": "v0.9.13",
"kind": "patch",
"published_at": "2026-07-04T07:42:52Z"
},
{
"tag": "v0.9.12",
"kind": "patch",
"published_at": "2026-07-03T06:05:51Z"
},
{
"tag": "v0.9.11",
"kind": "patch",
"published_at": "2026-07-03T04:08:02Z"
},
{
"tag": "v0.9.10",
"kind": "patch",
"published_at": "2026-07-01T16:53:14Z"
},
{
"tag": "v0.9.9",
"kind": "patch",
"published_at": "2026-06-30T19:06:01Z"
},
{
"tag": "v0.9.8",
"kind": "patch",
"published_at": "2026-06-28T17:24:45Z"
},
{
"tag": "v0.9.7",
"kind": "patch",
"published_at": "2026-06-26T14:21:08Z"
},
{
"tag": "v0.9.6",
"kind": "patch",
"published_at": "2026-06-26T07:51:22Z"
},
{
"tag": "v0.9.5",
"kind": "patch",
"published_at": "2026-06-26T07:37:46Z"
},
{
"tag": "v0.9.4",
"kind": "patch",
"published_at": "2026-06-26T07:25:55Z"
},
{
"tag": "v0.9.3",
"kind": "patch",
"published_at": "2026-06-26T07:13:57Z"
},
{
"tag": "v0.9.2",
"kind": "patch",
"published_at": "2026-06-26T06:52:20Z"
},
{
"tag": "v0.9.1",
"kind": "patch",
"published_at": "2026-06-26T06:41:13Z"
},
{
"tag": "v0.9.0",
"kind": "minor",
"published_at": "2026-06-26T06:20:16Z"
},
{
"tag": "v0.8.19",
"kind": "patch",
"published_at": "2026-06-25T05:12:25Z"
},
{
"tag": "v0.8.18",
"kind": "patch",
"published_at": "2026-06-24T18:56:57Z"
},
{
"tag": "v0.8.16",
"kind": "patch",
"published_at": "2026-06-24T07:43:44Z"
},
{
"tag": "v0.8.15",
"kind": "patch",
"published_at": "2026-06-24T06:06:21Z"
},
{
"tag": "v0.8.14",
"kind": "patch",
"published_at": "2026-06-24T05:03:22Z"
},
{
"tag": "v0.8.13",
"kind": "patch",
"published_at": "2026-06-24T04:09:29Z"
},
{
"tag": "v0.8.12",
"kind": "patch",
"published_at": "2026-06-23T21:04:27Z"
},
{
"tag": "v0.8.11",
"kind": "patch",
"published_at": "2026-06-23T16:56:37Z"
},
{
"tag": "v0.8.10",
"kind": "patch",
"published_at": "2026-06-22T11:11:17Z"
},
{
"tag": "v0.8.9",
"kind": "patch",
"published_at": "2026-06-22T09:22:29Z"
},
{
"tag": "v0.8.8",
"kind": "patch",
"published_at": "2026-06-22T06:58:39Z"
},
{
"tag": "v0.8.7",
"kind": "patch",
"published_at": "2026-06-22T05:23:38Z"
},
{
"tag": "v0.8.6",
"kind": "patch",
"published_at": "2026-06-22T03:46:44Z"
},
{
"tag": "v0.8.5",
"kind": "patch",
"published_at": "2026-06-22T01:18:06Z"
},
{
"tag": "v0.8.4",
"kind": "patch",
"published_at": "2026-06-21T23:39:36Z"
},
{
"tag": "v0.8.3",
"kind": "patch",
"published_at": "2026-06-21T22:48:20Z"
},
{
"tag": "v0.8.2",
"kind": "patch",
"published_at": "2026-06-21T14:28:08Z"
},
{
"tag": "v0.8.1",
"kind": "patch",
"published_at": "2026-06-21T00:28:53Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-06-20T17:30:15Z"
},
{
"tag": "v0.7.41",
"kind": "patch",
"published_at": "2026-06-19T21:26:01Z"
},
{
"tag": "v0.7.37",
"kind": "patch",
"published_at": "2026-06-19T15:09:06Z"
},
{
"tag": "v0.7.32",
"kind": "patch",
"published_at": "2026-06-19T00:16:41Z"
},
{
"tag": "v0.7.31",
"kind": "patch",
"published_at": "2026-06-18T21:14:43Z"
},
{
"tag": "v0.7.29",
"kind": "patch",
"published_at": "2026-06-18T05:39:02Z"
},
{
"tag": "v0.7.28",
"kind": "patch",
"published_at": "2026-06-18T00:59:05Z"
},
{
"tag": "v0.7.27",
"kind": "patch",
"published_at": "2026-06-17T20:48:05Z"
},
{
"tag": "v0.7.26",
"kind": "patch",
"published_at": "2026-06-17T04:27:27Z"
},
{
"tag": "v0.7.20",
"kind": "patch",
"published_at": "2026-06-16T21:50:21Z"
},
{
"tag": "v0.7.15",
"kind": "patch",
"published_at": "2026-06-16T17:42:43Z"
},
{
"tag": "v0.7.13",
"kind": "patch",
"published_at": "2026-06-16T13:46:49Z"
},
{
"tag": "v0.7.12",
"kind": "patch",
"published_at": "2026-06-16T12:54:44Z"
},
{
"tag": "v0.7.11",
"kind": "patch",
"published_at": "2026-06-16T00:34:22Z"
},
{
"tag": "v0.7.9",
"kind": "patch",
"published_at": "2026-06-15T21:20:49Z"
},
{
"tag": "v0.7.7",
"kind": "patch",
"published_at": "2026-06-15T20:38:49Z"
},
{
"tag": "v0.7.6",
"kind": "patch",
"published_at": "2026-06-15T06:54:08Z"
},
{
"tag": "v0.7.3",
"kind": "patch",
"published_at": "2026-06-12T05:06:41Z"
},
{
"tag": "v0.7.2",
"kind": "patch",
"published_at": "2026-06-11T23:18:01Z"
},
{
"tag": "v0.7.1",
"kind": "patch",
"published_at": "2026-06-11T06:06:55Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-06-10T01:57:00Z"
},
{
"tag": "v0.6.83",
"kind": "patch",
"published_at": "2026-06-09T05:49:44Z"
},
{
"tag": "v0.6.82",
"kind": "patch",
"published_at": "2026-06-07T17:11:03Z"
},
{
"tag": "v0.6.81",
"kind": "patch",
"published_at": "2026-06-07T14:40:56Z"
},
{
"tag": "v0.6.80",
"kind": "patch",
"published_at": "2026-06-06T19:19:01Z"
},
{
"tag": "v0.6.79",
"kind": "patch",
"published_at": "2026-06-06T16:31:23Z"
},
{
"tag": "v0.6.78",
"kind": "patch",
"published_at": "2026-06-06T15:23:43Z"
},
{
"tag": "v0.6.77",
"kind": "patch",
"published_at": "2026-06-06T05:29:18Z"
},
{
"tag": "v0.6.76",
"kind": "patch",
"published_at": "2026-06-05T21:30:44Z"
},
{
"tag": "v0.6.75",
"kind": "patch",
"published_at": "2026-06-05T04:57:52Z"
},
{
"tag": "v0.6.74",
"kind": "patch",
"published_at": "2026-06-04T13:12:41Z"
},
{
"tag": "v0.6.73",
"kind": "patch",
"published_at": "2026-06-04T01:37:09Z"
},
{
"tag": "v0.6.72",
"kind": "patch",
"published_at": "2026-06-03T21:45:16Z"
},
{
"tag": "v0.6.71",
"kind": "patch",
"published_at": "2026-06-01T23:30:53Z"
},
{
"tag": "v0.6.70",
"kind": "patch",
"published_at": "2026-06-01T13:57:49Z"
},
{
"tag": "v0.6.69",
"kind": "patch",
"published_at": "2026-05-30T03:53:15Z"
},
{
"tag": "v0.6.68",
"kind": "patch",
"published_at": "2026-05-28T15:54:42Z"
},
{
"tag": "v0.6.66",
"kind": "patch",
"published_at": "2026-05-23T01:53:45Z"
},
{
"tag": "v0.6.65",
"kind": "patch",
"published_at": "2026-05-22T19:59:46Z"
},
{
"tag": "v0.6.64",
"kind": "patch",
"published_at": "2026-05-21T22:48:39Z"
},
{
"tag": "v0.6.63",
"kind": "patch",
"published_at": "2026-05-21T21:26:48Z"
},
{
"tag": "v0.6.62",
"kind": "patch",
"published_at": "2026-05-21T18:41:22Z"
},
{
"tag": "v0.6.61",
"kind": "patch",
"published_at": "2026-05-20T20:59:55Z"
},
{
"tag": "v0.6.60",
"kind": "patch",
"published_at": "2026-05-20T06:01:51Z"
},
{
"tag": "v0.6.59",
"kind": "patch",
"published_at": "2026-05-19T17:55:06Z"
},
{
"tag": "v0.6.58",
"kind": "patch",
"published_at": "2026-05-19T05:12:52Z"
}
],
"recent_commits": [
{
"oid": "b8ab5c5e7f9cde0e7ca55e5e9f4cec88ed85252f",
"body": null,
"is_bot": false,
"headline": "chore: bump version to 0.11.7",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T03:22:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2e9b12fa031b878f1d92d31d1cb125045ec814e2",
"body": "…w (#1384)\n\nMerge PR #1384: prove G7 guard fail-loud with bash-driven boundary + exit shadow",
"is_bot": false,
"headline": "test: prove G7 guard fail-loud with bash-driven boundary + exit shado…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T03:17:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f0ffba993951504b9df5305715dd5ac08049dc9",
"body": null,
"is_bot": false,
"headline": "chore: bump version to 0.11.6",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T03:10:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d6e0148b93df407d61cbbb8052f060819e9983ff",
"body": null,
"is_bot": false,
"headline": "fix(cache): persist and reuse DeepSeek V4 prefixes across restarts",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T03:07:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ff54ad47d0b41e2b00e6ea0476667bdcebd01f78",
"body": "…1382)\n\nThe test previously located the G7 SDK integration section by an exact\nbanner string (#-------------------- G7 SDK integration). A harmless\nbanner-format change (# --- G7 SDK integration (three tests, each its\nown job) ---) broke the test before it could check the real invariant:\nthat the RA\n[…]\nual test_anthropic_sdk.py invocation.\n\nAdd a regression that verifies the section is locatable across several\nbanner formats, so harmless banner-spacing changes no longer break the\ntest. Closes #1370.",
"is_bot": false,
"headline": "test: make G7 RAPID_MLX_BASE_URL guard test banner-format agnostic (#…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T02:34:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "55f983b957b8341f60e646e036e0e86b5d3f00ab",
"body": "* fix(deepseek-v4): adopt protocol-aware reasoning parser\n\n* fix(cache): reuse strict prefix on exact prompts\n\n* fix(deepseek-v4): default implicit output to reasoning\n\n* fix(cache): keep unusable exact entries cold\n\n* fix(reasoning): fail closed on parser setup\n\n* fix(deepseek-v4): keep truncated reasoning private\n\n* fix(reasoning): suppress disabled DeepSeek scratch\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(deepseek-v4): cut warm TTFT and contain reasoning (#1383)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-02T00:46:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ef495bf47a50c7a25d5767e556e474f31f172f75",
"body": "* feat(deepseek): add native DSpark decoding\n\n* fix(deepseek): preserve Codex prefix cache across tool rounds\n\n* style: format DeepSeek DSpark changes\n\n* fix(dspark): restore caches on fallback and early stop\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(deepseek): add native DSpark speculative decoding (#1379)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T20:36:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "585ae36d1b64d6bd3b4dbbfbab56615aa7005f4d",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(agent): stop long repetition loops earlier (#1378)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T15:35:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0796ea7cec218a060fb4c6f547696ef092b908c7",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(agent): stop runaway exact repetition loops (#1377)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T14:51:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f3bc1d78ba0e6e5d39291250ef5bdf12e6d2b560",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "chore: bump version to 0.11.5",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T06:01:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1b59a9088bfab75f7690a0f9583b28074fab11a",
"body": "* fix DeepSeek DSML leakage in Responses streams\n\n* address validation feedback\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "Fix DeepSeek DSML leakage in Responses streams (#1373)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T04:37:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "80fa5eb3614d84e2b48dc6f9909c2215adbbd998",
"body": "* fix(cache): accelerate repeated DeepSeek V4 prompts\n\n* fix(cache): preserve unsegmented prompt snapshots\n\n* fix(cache): scope and confirm N-1 snapshots\n\n* fix(cache): handle aligned internal boundaries\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(cache): make DeepSeek V4 prefix reuse effective (#1371)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-08-01T01:35:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "845270faeb2970afbdce653c02e0cf2073b04491",
"body": "* fix: stabilize DeepSeek V4 Flash 0731 serving\n\n* fix: address DeepSeek V4 review findings\n\n* fix: preserve DeepSeek V4 batched mask semantics\n\n* fix: harden DeepSeek V4 pooling cache edges\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix: stabilize DeepSeek V4 Flash 0731 serving (#1369)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T23:58:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c51b7da0c6131df9e6b6a80d2822e57506752b2e",
"body": "… canary (#1250) (#1266)\n\nPhase A (client) of the post-release garbage/empty-rate alert. Adds one\nderived boolean to the request telemetry event: did the completion look\ndegenerate (repetition / single-token collapse) per the LOCAL\nlooks_like_garbage heuristic? This is the signal that catches the #1\n[…]\nor). The server-side per-version aggregation + alert is\nPhase B.\n\nRefs #1250.\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(telemetry): client-side output_degenerate signal for per-version…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T23:48:21Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "98991c46837d61078c122f702140cfac15568a50",
"body": "… (Qwen+Llama)\n\nAdd an L1 release-flow gate: a small-model GPU coherence + tool-call format\nsmoke on the FREE macos-14 hosted runner (real Metal GPU, $0 on a public repo),\nrunning on every PR to catch gross engine/parser breakage before the expensive\nStudio (L2) gate.\n\n- Matrix over two families exe\n[…]\nprove-before-enforce.\n\nExpanding past two families is gated on #1367 (mlx-vlm text-lane bug for the\nonly small Gemma/Mistral models, which are multimodal).\n\nVerified green on the real macos-14 runner.",
"is_bot": false,
"headline": "ci: L1 small-model GPU smoke on free macos-14 — coherence + tool-call…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T21:04:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f91116ba1ecef10bb3c64625871a05d2e498ff4d",
"body": "* fix: support mixed-length DeepSeek V4 batches\n\n* test: skip DeepSeek V4 MLX cases off macOS\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix: support mixed-length DeepSeek V4 batches (#1365)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T18:41:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b65cddbecbaf3fad371c1093de8c0e5c8caa3fbc",
"body": "* feat: support DeepSeek V4 Flash 0731\n\n* fix: harden DeepSeek V4 streaming boundaries\n\n* fix: load official DeepSeek V4 MXFP checkpoint\n\n* test: document DeepSeek V4 matrix exemption\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat: support DeepSeek V4 Flash 0731 (#1364)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T18:21:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "df70f8752f020c56663caadd1e3191d920e31301",
"body": "Re-trigger auto-release for 0.11.4 with the ssh-localhost Tier-1 gate fix on main (PR #1362). pyproject already at 0.11.4; carries the fixed tests/integrations/agent_smoke.sh so the tier1-agent-gate runs the 35B model in a login-session GPU perf state.",
"is_bot": false,
"headline": "chore: bump version to 0.11.4",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T14:49:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "834103b6c50534d3e12ae1762a3f7cfe3fa361f3",
"body": "Manual-dispatch-only diagnostic to root-cause why 35B large-context\nprefill runs ~100x slower ONLY inside the self-hosted Tier-1 gate runner\n(warmup + all 4 agents time out) vs 3-10s in every interactive test.\n\nProbes, in the real runner execution context:\n- arch / Rosetta translation state\n- MLX de\n[…]\nlash + completion timing\n\nRuns no agents; never touches ~/.codex or ~/.hermes. Shares the gate's\nconcurrency group so it can't overlap a real release gate. Safe to delete\nonce the root cause is fixed.",
"is_bot": false,
"headline": "ci(diag): throwaway runner large-ctx latency probe (#1361)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T14:03:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7b36ed4833739db37983c0ae2ae423661b59b11c",
"body": "Re-trigger auto-release for 0.11.4 with the hardened tier1-agent-gate (retrying dual-route large-context kernel warmup + job cap 55->90). pyproject is already 0.11.4; this squash subject re-fires detect. Harness/workflow only — no product code. See PR #1360.",
"is_bot": false,
"headline": "chore: bump version to 0.11.4 (#1360)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T12:04:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1dbc1274cbb898868def99c0a74096b65fafb341",
"body": "Harness-only: warm the large-context Metal kernel before the timed Tier-1 agents so the first agent request lands on warm kernels — fixes the cold-compile gate hang that stalled the 0.11.4 auto-release. pyproject is already 0.11.4 (#1355); this re-triggers auto-release to run the fixed gate and tag v0.11.4. Engine core byte-identical v0.11.3..main; validated end-to-end (4/4 Tier-1 agents PASS).",
"is_bot": false,
"headline": "chore: bump version to 0.11.4 (#1358)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T10:42:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "71367c952b77792589906bcc6e4591c48d2a6158",
"body": "Ship 0.11.4 by making tier1-agent-gate reliable: serve the gate model with --no-thinking to bound each hybrid-reasoning turn (thinking-on runaway CoT blew the per-agent budget). Pairs with the serial-execution fix (#1356). Validated end-to-end on the Studio: all four Tier-1 agents PASS, no turn >26s, ~6 min total. Re-triggers auto-release with the fixed gate to tag v0.11.4.",
"is_bot": false,
"headline": "chore: bump version to 0.11.4 (#1357)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T09:48:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9491cb8fb4e8ff192ec3e2484f9f0642b5a7eee7",
"body": "Ship 0.11.4 by making the self-hosted tier1-agent-gate reliable: run the four Tier-1 agents serially instead of concurrently (#1348 oversubscribed the single GPU). pyproject already at 0.11.4 (#1355); this merge's subject re-triggers auto-release with the fixed gate. Validated end-to-end on the Studio box: claude 273s / codex 133s / hermes 54s / aider 5s, all PASS, 465s total.",
"is_bot": false,
"headline": "chore: bump version to 0.11.4 (#1356)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T08:28:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "73867739602748b158700ef66e9d27cc7e13d2eb",
"body": "Release 0.11.4. Publishes accumulated audio/video features (#1340/#1343/#1346/#1347/#1349) plus release-tooling hardening (#1348/#1354) to PyPI. Bumps pyproject 0.11.3 -> 0.11.4.",
"is_bot": false,
"headline": "chore: bump version to 0.11.4",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T06:43:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a4520b2a3c48472e44d24a0ee77797fd2f9c7c37",
"body": "…et pre-flight (#1354)\n\nThe local release gauntlet (`make release-check-m3`, scripts/release_check_m3.sh)\nran every live-server gate strictly serially and had a recurring \"bumpy release\"\nfailure mode where a concurrent workflow silently corrupted a run. This makes three\nchanges — a pre-flight guard,\n[…]\nl-fast, #1247); G5 stress\nand G9 latency stay SOLO (their verdicts need an uncontended server); G8 parser\nmicrobench stays serial (pure CPU). No engine or shipped code changes — gauntlet\ntooling only.",
"is_bot": false,
"headline": "perf(release): parallelize light correctness gates + harden M3 gauntl…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T06:33:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "da8504a1c8009454c1ad3fc24ee11b3f019925b0",
"body": "#1351 (mine, merged 28 seconds after #1349) said the LTX section's\ncheckpoint \"emits synchronized audio alongside the frames, which the\nother two backends do not\". That was true of the pipeline and false of\nwhat the API returns: #1349 added an unconditional _remove_audio_track()\nat the end of the LT\n[…]\nsound. Also says plainly that\nnone of the three backends return audio, so nobody goes looking for it\non Wan or CogVideoX-Fun either.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(video): LTX does not return audio — #1349 strips it (#1353)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T05:14:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "a879bccc3f7fd4bdd25981333fb8b7ec5416f888",
"body": "Three things were wrong or missing after 0.11.3:\n\n- The alias count read \"165+ text aliases + 26 audio across 30+ families\".\n 0.11.3 registers 41 audio, and the 8 video aliases were never counted at\n all. Now \"165 text + 41 audio + 8 video aliases, 214 total\".\n- The video section was titled \"LTX-2\n[…]\nized audio — the one thing the other two backends do not do).\n\nVerified: every alias cited in the README resolves in the registries.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(readme): README still described the 0.11.1 feature set (#1351)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T03:36:04Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "37bb90bac0149b12fa56556707f9f6503c18932a",
"body": "* fix: omit silent audio from LTX videos\n\n* fix: use owned temporary video output\n\n* fix: preserve remux errors during cleanup\n\n* fix: preserve LTX output permissions\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix: omit silent audio from LTX videos (#1349)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T03:35:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd807c0c510b30ea659d9f8636b713db930c7dfb",
"body": "* feat: lock VoiceDesign voices with seeds\n\n* fix: isolate VoiceDesign random sampling\n\n* fix: preserve TTSEngine positional arguments\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat: lock VoiceDesign voices with deterministic seeds (#1347)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T03:04:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bcc5e1573cde27b2757d1ba8922183ee10b2a72f",
"body": "…ix cache\n\nThe Tier-1 agent gate (auto-release.yml, self-hosted Studio, 55-minute job) drove\nClaude Code / Codex / Hermes / Aider through the bug-fix task strictly serially,\nso its wall-clock was ~sum of the four agent runs. Two changes cut that without\nweakening the gate:\n\n1. Run the four agents CO\n[…]\n cache), total wall 311s bounded by the slowest agent instead of the sum\nof the four.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "perf(release): run the four Tier-1 agents concurrently + disable pref…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T02:58:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "99520f3f6811abe9edfbbb4105798462aea7395d",
"body": "* feat: configure audio output format\n\n* fix: preserve native audio and validate codecs\n\n* perf: avoid audio conversion object expansion\n\n* fix: preserve native audio duration metadata\n\n* fix: make audio layout contract explicit\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat: configure audio output sample rate and channels (#1346)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T00:50:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4b0b600472955b0755c2566892ef658b6f39038c",
"body": "vllm_mlx/audio/aliases.json registers 41 aliases across 12 families.\ndocs/guides/audio.md documented 7 of those families and 28 aliases —\nQwen3-TTS (8), F5-TTS, SenseVoice (2) and Qwen3-ForcedAligner (2) were\nabsent from the alias table, the header bullets and the model tables,\ndespite having shippe\n[…]\nches modes\n\nVerified programmatically: all 41 registry aliases now appear in the\nguide, and all 12 families are named in the header.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(audio): the guide was missing five whole model families (#1345)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T00:30:19Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "93289002fff9b16c90f9a6d7ef651d14a0f39f5a",
"body": "* feat: expose video capability limits\n\n* fix: align advertised Wan sizes with limits\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat: expose video capability limits (#1343)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T00:09:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae3d8e9d05d2094fe777366d71109f1b62ec7dfb",
"body": "…out headroom (#1344)\n\nThe Tier-1 agent gate (auto-release.yml) false-negated the 0.11.3 cut 4/4 — not\non a product regression, but on two defects in its own harness.\n\n1. `agents {codex,hermes} --setup` was called without `--base-url`, so setup\n probed the default localhost:8000 (empty in this run\n[…]\n6-35b-8bit @ 0.11.3:\nall four Tier-1 agents (Claude Code, Codex, Hermes, Aider) PASS.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(release): agent-smoke hermes/codex --base-url + cold-compile time…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-31T00:01:40Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b9bc50bf19ebcb58b0c0c239218ff9233fded70a",
"body": "* feat: expose video motion controls\n\n* fix: preserve video backend defaults\n\n* fix: honor CogVideoX frame controls\n\n* test: cover conditioning strength upload\n\n* fix: validate LTX temporal controls\n\n* test: cover CogVideoX workload ceiling\n\n* fix: make frames the temporal source of truth\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat: expose video motion controls on /v1/videos (#1340)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T23:17:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae147252d0616a227d369c407a38833f6f5ce569",
"body": "Cuts the 0.11.3 release (= intended 0.11.2 payload + agent-gate serve-budget fix #1341). Triggers auto-release.yml.",
"is_bot": false,
"headline": "chore: bump version to 0.11.3",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T22:15:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "83f2e2e34f0dab97c872c3ffcd1af53c6ecc45b9",
"body": "…d start (#1341)\n\nThe Tier-1 agent gate (auto-release.yml) serves the default 35B hybrid model\n(Qwen3.6-35B-A3B, GatedDeltaNet) into a fresh venv. Its first cold serve on the\nStudio compiles the hybrid GatedDeltaNet Metal kernels, which pushes cold start\nto ~240s — right on the old 240s serve-ready \n[…]\nob timeout with room for\nthe four agent runs. A genuine never-binds hang still fails.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(release): widen agent-smoke serve-ready budget for 35B hybrid col…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T22:12:39Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5d0571db6c9f6b217a16c8322f84ce818c828fa1",
"body": "Cuts the 0.11.2 release (audio + video generation wave + KV-quant/scheduler quality work, 33 commits since v0.11.1). Triggers auto-release.yml.",
"is_bot": false,
"headline": "chore: bump version to 0.11.2",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T21:34:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "db05ce1215e95a9b5bc4d2e6216e7e83cc1e7798",
"body": "G12 (scripts/release_check_m3_random.py) reached completion for the first time\nduring the 0.11.2 cut and false-failed — none of the failures a product\nregression (the 0.11.2 range touches no parser/inference code). Two gate\ncalibration defects were surfaced and are fixed here:\n\n- Stale per-round tim\n[…]\nchange. The deeper\nsize-based-eligibility redesign (and the still-in-pool reasoning model\ndeepseek-r1-8b-4bit) is tracked in a follow-up issue.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(release): calibrate G12 random-coverage gate (#1332)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T21:31:19Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1c0a20b69828e7cd2b627cc9af47b8537fea818f",
"body": "The consolidated `bench --tier harness` step of release_check_m3.sh\nfalse-fails the release gauntlet on the hermes profile in three ways,\nall surfaced during the 0.11.2 cut. None is a product regression.\n\n- test_hermes_code_review ran away past 600s: the open-ended prompt\n drives the 9B gauntlet mo\n[…]\nstays untouched for\n non-gauntlet/standalone callers. Env-overridable.\n\nTest-harness / release-gauntlet only; no production code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(release): stabilize G7b hermes gauntlet profile (#1330)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T19:43:24Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "03e7341338e97493fd22ca1229454c98ccdf96e2",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(video): bundle CogVideoX runtime (#1329)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T17:44:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c2878a0f2a1ab5ea91bb2b76b8d5692063d52caf",
"body": "* test(batching): warm concurrent kernel shapes\n\n* test(batching): tolerate subsecond timing noise\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "test(batching): warm concurrent kernel shapes (#1328)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T17:30:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d114b350ed668b76fa23f90c657419e6a73ce2cf",
"body": "* fix(audio): harden async generation lanes\n\n* fix(audio): satisfy route contract checks\n\n* test(audio): make F5 soundfile fake hermetic\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(audio): harden async generation lanes (#1327)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T17:20:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8973a004956071a06b1162bb44a78e48dde378cb",
"body": "test_hermes_read_file passed hermes only the file basename, which the\n9B gauntlet model (qwen3.5-9b-4bit) cannot reliably resolve against its\nworking directory. It non-deterministically either asks a clarifying\nquestion and never reads the file (marker absent -> FAIL) or launches an\nagentic file sea\n[…]\n(os.getcwd(), ...))\ninstead of the basename. Still exercises hermes -> read_file tool -> echo\ncontents; only removes path-resolution ambiguity.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(test): hermes read_file passes absolute path (#1326)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T17:15:18Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "87dca1be70d7bfca7a77c6594037d937d7b6b469",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(video): preserve Python 3.10 core compatibility (#1325)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T16:55:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8c16e8aa5516f879c4e30e556ed7e12aeb3a9931",
"body": "…pes (#1324)\n\nThe G0a output-coherence sweep boots each release-fleet model with\n`--no-thinking` and exact-matches a terse golden answer within a small\ntoken budget. `deepseek-r1-32b-4bit` scores 0/6 -- not because it is\nbroken, but because it is a DeepSeek-R1-Distill reasoning model that does\nnot h\n[…]\nptance and integration\ncoverage (the 56-cell matrix is unchanged).\n\nThe flag is retired once the coherence gate is reasoning-aware.\n\nRefs #1323\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(release): exclude DeepSeek-R1 from the coherence sweep in all sco…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T15:45:41Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5533791cc76353a021bbe985e378933d33f9857d",
"body": "…ons (#1317)\n\nRebase of feat/align-route-hardening onto main (afe41c41), resolving the\noverlap with #1299 (word-timestamps) and #1301 (in-place alignment):\n\n- `_run_stt_request` is now ASR-only. Its former in-place `align()`\n branch is deleted; forced alignment is dispatched separately by\n `create\n[…]\ntask-cancellation shutdown sweeps and absorbs\n repeated cancels.\n- ci.yml apple-silicon allowlist gains test_forced_alignment_route_hardening.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(audio): harden the forced-alignment lane on /v1/audio/transcripti…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T15:08:58Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "08a9eaeaf8ea102474856e8339a03aa8b54015fa",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(video): add Wan 2.1 and 2.2 generation (#1322)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T14:36:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "afe41c41dddf77dc28b0afb96470c71dca732e7c",
"body": "…ls [skip-version-bump] (#1319)\n\n* fix(cli): stop weightless-stub notice mis-firing on cached video models [skip-version-bump]\n\n`rapid-mlx serve <video-alias>` printed a false \"config cached but its\nmodel weights are missing — serving will start by downloading the missing\nweights first\" on EVERY sta\n[…]\nrectory-named component and symlink-to-directory component both\nstay stubs.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(cli): stop weightless-stub notice mis-firing on cached video mode…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T06:11:03Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b410fe0ac627ece6305f57aecaaad7707beab645",
"body": "…ion-bump] (#1321)\n\n`tests/test_model_sizes.py::test_every_audio_alias_has_a_manifest_entry`\nis RED on `main` — a release blocker. The IndexTTS zero-shot voice\ncloning aliases (#1318) point at `mlx-community/IndexTTS-1.5` but the\nsize manifest was never regenerated, so the audio-alias coverage test\n\n[…]\n interpreter) at its sorted\nposition — the exact value + placement `gen_model_sizes.py` would\nproduce. One-line diff; no other entries touched.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(models): add IndexTTS-1.5 to model_sizes.json manifest [skip-vers…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T06:08:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0090a392c7b996749d97f02eea9fc5270b1ba422",
"body": "…] (#1320)\n\nThe Kokoro espeak self-test repair (#1312/#1314) added RAPID_MLX_ESPEAK_LIB\nand RAPID_MLX_ESPEAK_DATA path-override knobs to audio/probe.py but never\nallowlisted them in ALLOWED_RAPID_MLX_ENV_VARS, leaving\ntest_no_routing_shaped_rapid_mlx_env_vars RED on main (a release blocker).\n\nThese \n[…]\nelf-test — they never select a model, parser, or routing tier. Allowlist\nthem with a comment per the test's own guidance for non-routing knobs.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "test: allowlist RAPID_MLX_ESPEAK_LIB/DATA env vars [skip-version-bump…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T05:58:31Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "125945cd04bcf4a1f8af626502d6765a7120c032",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(audio): add IndexTTS zero-shot voice cloning (#1318)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T05:27:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e0f37a6107c9536b4d925813f3cc337858387861",
"body": "`main` has carried `MusicEngine` and the vendored Stable Audio 3 tree since\n#1307, but with no HTTP surface: the only way to reach text→music was to\nimport the class. This adds the route, ported from PR #1300 (which landed on\nthe now-retired `mvp/content-farm-local` branch and never reached `main`).\n[…]\ning from the same\nsource PR is a separate change against the same file.\n\nCo-authored-by: Raullen Chai <nextmindsfoundation@gmail.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(audio): expose MusicEngine over HTTP — POST /v1/audio/music (#1316)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T05:07:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5ef40e850dfaccfad94195d99637a6dc1ec18d6d",
"body": "…version-bump] (#1299)\n\nWhy: this is the STT/captions lane of the audio-POC absorption. The\ncontent-farm automation tier needs OpenAI-compatible caption/subtitle\nplumbing — word-level timings let downstream tooling build karaoke-style\ncaptions and precise subtitle cuts without a second forced-alignm\n[…]\non-empty, monotonic `words[]` with\nexactly `{word, start, end}` keys. `scripts/dev_test.py unit`,\n`ruff check`, and `ruff format --check` pass.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(audio): word-level timestamps on /v1/audio/transcriptions [skip-…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T04:56:42Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "394e5cc731e3949474e494270e4b1f6838db35ad",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix video upload body-limit response (#1315)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T04:32:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1ac339113d8687b61ad932dd63b69efc23eb8c98",
"body": "…-out [skip-version-bump] (#1314)\n\n* fix(audio): harden Kokoro espeak probe against 500s + candidate crowd-out [skip-version-bump]\n\nFollow-up to #1312. Two robustness gaps in the espeak readiness probe:\n\n1. _probe_espeak_readiness could let unexpected exceptions from\n _discover_system_espeak (file\n[…]\n false negative.\n\nTests reworked: anti-diagonal order, sweep iterates all candidates, malformed\ncandidate skipped, single-data covers all libs, single-lib covers all data,\nproduct truncated to budget.",
"is_bot": false,
"headline": "fix(audio): harden Kokoro espeak probe against 500s + candidate crowd…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T03:43:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0605a71829f25da3aad2d5070219635977bde93d",
"body": "* feat(video): add experimental CogVideoX-Fun backend\n\n* fix(video): address CogVideoX review findings\n\n* fix(video): clean partial CogVideoX outputs\n\n* test(video): cover CogVideoX worker boundaries\n\n* fix(video): bound CogVideoX worker shutdown\n\n* fix(video): clean cancelled CogVideoX results\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(video): add experimental CogVideoX-Fun backend (#1313)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T03:41:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b82423c9f7a8b9f704051b862f2a00b04823682",
"body": "…skip-version-bump] (#1312)\n\nOn a fresh `pip install 'rapid-mlx[audio]'`, the espeak-ng dylib shipped by\n`espeakng-loader` can fail to locate its `espeak-ng-data` (the compiled data\npath points at the wheel's CI build dir). misaki's English G2P falls back to\nespeak for out-of-dictionary words, so th\n[…]\nst\n`RemoteDisconnected`-crashed the server; post-fix it returns valid 24 kHz\naudio and the server survives. New hermetic tests cover bundled-ok,\nsystem-repair, and unfixable-503 branches plus caching.",
"is_bot": false,
"headline": "fix(audio): repair Kokoro espeak G2P instead of crashing the worker […",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T03:15:14Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "65e3f3a1ef0f775c9e76606b30e353dc8c4ef486",
"body": "…udio 3) [draft POC] (#1307)\n\n* feat(audio): MusicEngine — local text-to-music via vendored MLX Stable Audio 3\n\nThird audio lane alongside TTSEngine/STTEngine: text->music/SFX, fully local on\nApple Silicon. Vendors Stability's official torch-free MLX Stable Audio 3\n(vllm_mlx/audio/sa3/, +680K source\n[…]\nns (e.g. 0.003s) to 0.00 (empty\n clip). Add regression tests for both.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(audio): MusicEngine — local text-to-music (vendored MLX Stable A…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T00:35:54Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "19ae69b89617bc6a19f41a1f7fa5aeb58a52fa29",
"body": "…gn) (#1309)\n\nAdd the VoiceDesign sibling of the qwen3_tts family: the voice is authored\nin natural language via the OpenAI instructions field (mapped to mlx_audio's\nmandatory generate_voice_design instruct arg) instead of a named speaker.\nVoiceDesign checkpoints reuse the qwen3_tts loader/generate \n[…]\nariant detection, mandatory-instruct forwarding + fallback,\n and the describe voice surface on engine and route\n\nNo version bump.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(audio): Qwen3-TTS VoiceDesign (natural-language voice/style desi…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T00:13:37Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "46bc30e643361d07b420229b662e63321956cfbd",
"body": "…licit paths (#1310)\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(pr_validate): pass --force-exclude so ruff honors excludes on exp…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-30T00:02:02Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7e358d75cb65662b20024f568aed259856fddcaf",
"body": "* feat(audio): SenseVoice Chinese STT family [draft POC]\n\nAdd the FunAudioLLM SenseVoice Small model as a new STT family alongside\nWhisper (multilingual) and Parakeet (English), giving Chinese/Asian ASR a\ndedicated fast option. SenseVoice is a ~234M non-autoregressive CTC model\n(strong on zh/yue/ja/\n[…]\nct\n\n* test(audio): cover SenseVoice metadata override\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(audio): add MLX-native SenseVoice STT (#1308)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T23:37:08Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ed7871d8d948dd78b08387e9eabb495f371bc357",
"body": "…ce cloning [skip-version-bump] (#1303)\n\nExposes Chatterbox's exaggeration (emotion/intensity) knob + zero-shot ref_audio cloning end-to-end over POST /v1/audio/speech: adds the exaggeration request field (bounded, Chatterbox-only), forwards it and ref_audio through a dedicated chatterbox engine branch (never leaks voice/speed/lang_code), and admits Chatterbox to the clone-capability gate. Codex CLEAN; pr_validate MERGE-SAFE; merged result re-ran full unit gate green.",
"is_bot": false,
"headline": "feat(audio): Chatterbox expressiveness (exaggeration) + zero-shot voi…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T23:01:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "927ae4aacb7771bcf2cff1fe0042121f1a5bb51f",
"body": "…downmix, channel bound) (#1304)\n\nAddresses PR #1297 codex review findings on the merged F5-TTS path plus\nhardening surfaced during review. No version bump.\n\n- Silent/near-silent reference: the RMS-normalization step\n `aud * TARGET_RMS / rms` divides by ~0 (NaN/inf) or amplifies noise to\n full sca\n[…]\nmory\nio.BytesIO (no predictable temp path), and speed is already wired into\nestimated_duration() and self.model.sample(speed=...).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(audio): harden F5-TTS _generate_f5 (silent-ref RMS floor, stereo …",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T22:54:43Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ac395408269fe5c90a92ac569b7323f3e5c6d4c2",
"body": "…-bump] (#1301)\n\nForced alignment (audio + KNOWN transcript -> per-character start/end times) via Qwen3-ForcedAligner, exposed over POST /v1/audio/transcriptions with an optional 'text' field (dispatches to align() for aligner models; back-compat transcribe path unchanged). Segments flow through exi\n[…]\ne_json/srt/vtt serializers. Guards fail fast (aligner-without-text, text-vs-non-aligner) before upload drains. Codex CLEAN; pr_validate MERGE-SAFE; merged result re-ran unit gate green (14296 passed).",
"is_bot": false,
"headline": "feat(audio): forced-alignment STT (Qwen3-ForcedAligner) [skip-version…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T22:37:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d9a2c5b8059c9da108b1faaae0a986ce2e7fc3f7",
"body": "…p] (#1305)\n\nZero-shot Chinese/multilingual voice cloning via Qwen3-TTS Base, wired end-to-end through POST /v1/audio/speech (ref_audio + ref_text inline base64). Adds route clone-capability gating, model_sizes manifest entry, and full HTTP-path tests. Codex CLEAN; pr_validate MERGE-SAFE.",
"is_bot": false,
"headline": "feat(audio): Qwen3-TTS Base zero-shot voice cloning [skip-version-bum…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T22:27:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2cfa146686a4a0e4fa6d2b127c5e94062ac2a9e1",
"body": "## Why\nThe `voxcpm` alias (`mlx-community/VoxCPM1.5`) advertised \"Chinese/English\nhigh-quality TTS\", but empirically the current MLX port is broken for\nChinese: Chinese input produces Thai-script gibberish plus long runaway\ngeneration. The registry therefore steered users toward a language path\nthat\n[…]\n structured metadata / needs model weights + eval path).\n\n## AI-assisted\nThis change was drafted and validated with AI assistance.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(audio): de-advertise broken voxcpm Chinese support (#1302)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T22:21:32Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3529e39495fb341fb4ddae3ffaf346d909316c30",
"body": "* feat(video): add MLX-native LTX-2.3 generation\n\n* fix(video): serialize jobs without executor starvation\n\n* fix(video): harden job cleanup and cancellation\n\n* fix(video): make queue lifecycle cancellation-safe\n\n* fix(video): detach cleanup from cancellation\n\n* fix(video): bound generation workload\n[…]\no): accept OpenAI 720p sizes\n\n* fix(video): bound ffmpeg crop time\n\n* fix(video): guard multipart admission before parsing\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(video): add MLX-native LTX-2.3 generation (#1298)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T22:04:43Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "59f44d2e30ff560ca5974f18082eb1ce743f73e3",
"body": "* feat(audio): wire F5-TTS (pure-MLX) — Chinese expressive TTS + zero-shot cloning\n\nFills the Chinese expressive/cloneable-TTS gap the demo probe surfaced (Qwen3-TTS\nis clear-but-flat, Chatterbox English-only, IndexTTS/CosyVoice don't load).\nf5-tts-mlx is a standalone PURE-MLX package (no torch) — E\n[…]\nim batched F5 output correctly\n\n* fix(audio): bound F5 reference decoding\n\n* test(audio): pin decoded F5 waveform contract\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(audio): wire F5-TTS Chinese cloning (#1297)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T19:59:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2c6847127cb05b6531aaaffb2e52418c23d533e0",
"body": "…ersion-bump] (#1296)\n\nTwo P3 loose ends found dogfooding main:HEAD (0.11.1 → all 24 PRs since 0.11.1).\n\n#1294 — scripts/kv_quant_quality_gate.py crashed with a raw mlx ValueError when\na model's head_dim was not divisible by the requested KV-quant group size (the\ndefault 64 vs Phi-3's head_dim=96), \n[…]\n to the on-macOS chip detection (already via\nthe sysctl fallback). Advisory tooling only. Regression tests pin both.\n\nCloses #1294\nCloses #1295\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: kv-quant gate head_dim guard + chip_tier dangling import [skip-v…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T17:35:27Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "668d47a7b0cec0a1cfe85cf999b5807018d0455b",
"body": "…ump] (#1293)\n\nCloses #1286. Adds a Size column to `rapid-mlx models` (text+audio) and a Download-size line to `rapid-mlx info <alias>`, sourced from a checked-in model_sizes.json manifest (offline, instant). Codex 0/0/0; full CI green.",
"is_bot": false,
"headline": "feat(cli): show model download size in models listing [skip-version-b…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T15:05:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e1878506a5df0f613e9340d252bc84a12e8445ff",
"body": "* Remove legacy branding from public surfaces\n\n* Preserve benchmark and upstream provenance\n\n* Limit branding guard to public text files\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "Remove legacy branding from public surfaces (#1292)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T14:11:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f38e696ae2142037c548a79b6b0adf986a164f5",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "refactor: remove unused cloud routing (#1290)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T05:08:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "46beeab6ee85be3ddf8c3370f76c2df474793794",
"body": "…ier [skip-version-bump] (#1289)\n\n* feat(quality): KV-quant differential quality gate + chip-tier classifier [skip-version-bump]\n\nAbsorb-list #4 + #5. Advisory (measure-first), offline, model-download-free.\n\n#4: scripts/kv_quant_quality_gate.py runs the SAME model twice on the SAME\nprompts (bf16-KV \n[…]\n to True.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(quality): KV-quant differential quality gate + chip-tier classif…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T04:57:03Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "84ffef0753b55a521efdfa01ad84b3860beadfb4",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "refactor: remove unused vLLM platform prototype (#1288)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T04:01:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "541b5b3225061912e7436bf4d483590316d57dde",
"body": "* feat(audio): add Qwen3-TTS CustomVoice with emotion control\n\nWire Alibaba's Qwen3-TTS 1.7B CustomVoice into the TTS lane. It ships\nmultilingual predefined speakers (Chinese: Vivian/Serena/Uncle_Fu/Dylan/\nEric, English: Ryan/Aiden) and — unlike the existing Kokoro/VibeVoice/etc\nfamilies — supports \n[…]\nith a separate CustomVoice-accepted case (codex).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(audio): add Qwen3-TTS CustomVoice with emotion control (#1287)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T03:35:08Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c45666a2a51d7508302b6ded75160a9001e5b879",
"body": "…rim-lie [skip-version-bump] (#1285)\n\nClose two latent correctness gaps in prefix-cache reuse gating, plus a\nsibling instance in the legacy trie cache. All are defense-in-depth: no\nreachable class is in aliases.json, and the fix has ZERO behavior change\nfor currently-supported models.\n\nGAP 1 (produc\n[…]\ns so allowlist drift or an mlx_lm rename of the one\nhostable class is caught.\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(cache): lock sliding-window prefix reuse against ChunkedKVCache t…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T03:34:29Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3ae9eb54128a5e3fb4fdb5c898a3d5cc4da07937",
"body": "* fix(cli): ship official rmlx short command\n\n* fix(installer): expose rmlx on PATH\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(cli): ship official rmlx short command (#1284)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-29T00:31:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "80ec3c30e55eb3408f7464941b56f41cad1656f7",
"body": "* feat(scheduler): architecture-aware per-token KV byte estimate (skip-version-bump)\n\nRoute the D-METAL-CAP admission projection through a new pure-function KV\nfootprint estimator (`vllm_mlx/kv_estimation.py`) that classifies each layer\ninstead of counting every layer as a full-growth attention laye\n[…]\nallback).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(scheduler): architecture-aware per-token KV byte estimate (#1276)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T22:53:25Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "decad552d261b01ea3862ee45c8bcd8697b580b2",
"body": "…Connectors 0 tools) (#1281)\n\n* fix(mcp): handle mcp 1.x→2.0 camelCase→snake_case model attr rename\n\nmcp 2.0 renamed InitializeResult/Tool/CallToolResult Python attributes from\ncamelCase to snake_case (camelCase kept only as a serialization alias). The\ndev/CI env pins mcp 1.x, but a fresh sidecar bu\n[…]\noreply@anthropic.com>\n\n* fix(mcp): cover chat runtime SDK 2 fields\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(mcp): handle mcp 1.x→2.0 camelCase→snake_case model attr rename (…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T22:32:24Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "12c5b9b13e7db0e21bc9f02430dc3da3112fcfa9",
"body": "* docs: RELEASE.md + emergency force_release escape hatch\n\n- RELEASE.md at repo root documents the full pipeline for colleagues: how to\n cut a release (merge a version-bump commit), the detect -> tier1-agent-gate\n -> release flow, the self-hosted Studio runner (+ security model), what to do\n when\n[…]\nforced path unless GITHUB_REF == refs/heads/main.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: RELEASE.md + emergency force_release escape hatch (#1283)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T22:13:55Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "52fbcdc0ace7ebf0a314edb85aeb50519b2c1957",
"body": "* fix(mllm): accept mlx-vlm native KV caches\n\n* test(mllm): exercise missing vision dependency\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(mllm): accept mlx-vlm native KV caches (#1277)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T22:13:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f3ed3225092dfbcc2cc79ae077b58fa713a175f8",
"body": "…ate) (#1282)\n\nSplit auto-release.yml into detect -> tier1-agent-gate -> release. The release\njob now `needs: [tier1-agent-gate]`, so a version bump cannot tag/publish\nunless the four Tier-1 agents (Claude Code / Codex / Hermes / Aider) re-verify\ngreen on the self-hosted Apple-Silicon runner (the St\n[…]\n on the Studio runner via the manual\nagent-gate.yml (#1280). The gate-blocks-release path exercises on the next\nreal version bump.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci(release): gate auto-release on Tier-1 agent smoke (Phase 2, hard g…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T22:00:52Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "20237227a644da004c9c736da98ed27e5389d32a",
"body": "…(#1280)\n\n* ci: Tier-1 agent gate on self-hosted Apple Silicon (Phase 1, manual)\n\nRe-verify the 4 Tier-1 (flagship) agents — Claude Code, Codex, Hermes, Aider\n— end-to-end against a real local model on Apple Silicon. GitHub-hosted\nrunners structurally cannot do this (no Metal, no weights, no agent b\n[…]\nadroom; a passing run still finishes in ~5-8 min.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci: Tier-1 agent gate on self-hosted Apple Silicon (Phase 1, manual) …",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T21:42:19Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "2ca0c22ede18461ce2544577934d51330c559c21",
"body": "…-2 (#1278)\n\nThe website integration matrix now distinguishes 4 Tier-1 agents from the\nrest, but the README branded all 11 as 'Tier-1 Support', so the two\nsurfaces contradicted each other. Reframe:\n- '## Tier-1 Support' -> '## Agent Support'; '#tier-1-support' anchor\n reference updated to '#agent-s\n[…]\nrdian per wire); the other seven are Tier-2 (matrix\n wire-verified, on-demand). Keeps the '11 wire-verified every release' claim.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(readme): reconcile agent tiers — 11 supported, 4 Tier-1 + 7 Tier…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T20:15:00Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f17290e9b1ebdf14597d0ba964e3c41b550719d3",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "test(auth): harden route success assertions (#1275)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T17:46:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9bddf755a637caed96a62d10fabce0231f4da45c",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "docs(patches): require production-path install tests (#1274)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T17:43:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "793ee446c10395dde8783e26394b8bf4ec01ee96",
"body": "…vation funnel, #1272) (#1273)\n\nLights up the `/admin` activation funnel's last pending stage (\"Server\nfirst run\") and makes the first-run wizard's contribution attributable.\nBoth new fields are session METADATA booleans on `session_start` — derived\nfrom session context, never from a prompt or gener\n[…]\netry-worker\nrollup of distinct first_session/day, then landing `/admin` flips the stage\npending→live with a liveKey.\n\nCloses #1272\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(telemetry): first_session + auto_selected on session_start (acti…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T17:37:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3b994a4b96ba838b67d84f04a11180fe3ddb6837",
"body": "…271)\n\n* harden API key comparisons\n\n* test skip auth imports without MLX\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(auth): reject malformed API keys without timing short-circuit (#1…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T17:05:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "594a4754b16ec93e5b83991edd5e5b78efb4219c",
"body": "* fix MTP runtime status display\n\n* test skip MTP status check without MLX\n\n* fix explicit MTP status for unknown profiles\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix(mtp): show explicit runtime mode in profile summary (#1270)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T16:49:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "47f285f7d189c644dc6bcfb7b1f72a39d4dfb4db",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "fix doctor audio version check (#1269)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T16:43:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36b9bb98901bf3b06ca886bd1d800023156fca14",
"body": "Exclude only generated random IDs from the caller-agent privacy scan so UUID substrings cannot cause false failures while the rest of the telemetry envelope remains covered.",
"is_bot": false,
"headline": "test(telemetry): scope caller-agent leak assertion (#1268)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T15:31:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "67f0e34c253aa5e5f9d0125227e890d9ce00fb0d",
"body": "Move per-entry persistence detail to DEBUG while keeping concise save/load summaries at INFO.\n\nCloses #1257.",
"is_bot": false,
"headline": "fix(cache): summarize prefix persistence logs (#1267)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T15:24:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "798dd1f05cf6284eee0bb5a840c0b38ea854a140",
"body": "…laky) (#1232)\n\nEliminate a random UUID substring false positive in the telemetry leak test while keeping the assertion scoped to the user-derived session payload.",
"is_bot": false,
"headline": "fix(telemetry): scope session_start leak check to session sub-dict (f…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T15:02:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "206ed0e03b7b6fc7b3b2e6f68a7b60467f6e5abe",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: bump version to 0.11.1 (#1265)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T05:27:41Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4f0f104463adbc9ac9633e8fca989827ffb0965f",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "test(release): restore benchmark baselines (#1264)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T04:01:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae89aac6b2af434f869b0439769243a98378dd3e",
"body": "…rs (#1263)\n\nFirst-impression cold-start polish (batched into the pending 0.11.1; skip-version-bump).\n\n## What\n- **P1 — dead air.** A `⠋ Resolving <model> …` spinner now covers the ~3.4s of\n silent HF round-trips (download-gate size probe + disk-space check + mirror\n metadata + catalog fetch) befo\n[…]\nic regression test. The e2e test was also rewritten to assert the real\nsuppress-progress discrimination without forcing feature support.\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)",
"is_bot": false,
"headline": "fix(first-run): kill cold-start dead air + mute leaked HF progress ba…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-28T00:05:35Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6a445517007ffd14fcefdf58cbfca2008da1c5f0",
"body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
"is_bot": false,
"headline": "feat(release): centralize fleet coverage (#1262)",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-27T23:26:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e94059cdf1fb1f4902ba41483fae3bee3deea004",
"body": "…uick Start step (#1261)\n\nTwo Quick Start changes, both aligning the README with the rest of the\nproduct's touchpoints:\n\n1. Flip step 1 to lead with the `curl … install.sh | bash` one-liner\n (recommended), Homebrew second. The website hero and /download page\n both already lead with curl — it's t\n[…]\n\n (claude-code preferred); this brings the README to parity so the\n 60-second path ends at a working, fully local Claude Code.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(readme): curl-first install + first-class \"launch claude-code\" Q…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-27T22:45:19Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b56871c0d35e000a19bb7324da85b37adca9f635",
"body": "…260)\n\n* fix(first-run): silence HF unauthenticated-download advisory (#3)\n\nhuggingface_hub logs a server-sent X-HF-Warning header (\"You are sending\nunauthenticated requests to the HF Hub. Please set a HF_TOKEN ...\") at\nWARNING level from huggingface_hub.utils._http on the first anonymous\nfile downl\n[…]\nible (1).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(first-run): silence HF unauthenticated-download advisory (#3) (#1…",
"author_name": "Raullen Chai",
"author_login": "raullenchai",
"committed_at": "2026-07-27T19:46:53Z",
"body_truncated": true,
"is_coding_agent": true
}
],
"releases_count": 100,
"commits_last_year": 1311,
"latest_release_at": "2026-08-02T03:16:46Z",
"latest_release_tag": "v0.11.6",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 32,
"days_since_latest_release": 0,
"mean_days_between_releases": 1.3
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 85,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "rapid-mlx",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"llm",
"mlx",
"apple-silicon",
"inference",
"transformers",
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Apache Software License",
"Operating System :: MacOS",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Scientific/Engineering :: Artificial Intelligence"
],
"ecosystem": "pypi",
"matches_repo": true,
"registry_url": "https://pypi.org/project/rapid-mlx/",
"is_deprecated": false,
"latest_version": "0.11.6",
"repository_url": "https://github.com/raullenchai/Rapid-MLX",
"versions_count": 179,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": "2026-03-21T12:11:28.093363Z",
"latest_published_at": "2026-08-02T03:17:39.418728Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
}
]
},
"popularity": {
"forks": 388,
"stars": 3392,
"watchers": 64,
"fork_history": {
"days": [
{
"date": "2026-03-06",
"count": 1
},
{
"date": "2026-03-09",
"count": 1
},
{
"date": "2026-03-11",
"count": 1
},
{
"date": "2026-03-20",
"count": 3
},
{
"date": "2026-03-21",
"count": 5
},
{
"date": "2026-03-22",
"count": 3
},
{
"date": "2026-03-23",
"count": 11
},
{
"date": "2026-03-24",
"count": 5
},
{
"date": "2026-03-25",
"count": 11
},
{
"date": "2026-03-26",
"count": 2
},
{
"date": "2026-03-28",
"count": 8
},
{
"date": "2026-03-31",
"count": 1
},
{
"date": "2026-04-03",
"count": 1
},
{
"date": "2026-04-06",
"count": 1
},
{
"date": "2026-04-11",
"count": 3
},
{
"date": "2026-04-13",
"count": 1
},
{
"date": "2026-04-14",
"count": 1
},
{
"date": "2026-04-18",
"count": 4
},
{
"date": "2026-04-20",
"count": 1
},
{
"date": "2026-04-22",
"count": 1
},
{
"date": "2026-04-23",
"count": 1
},
{
"date": "2026-04-25",
"count": 2
},
{
"date": "2026-04-28",
"count": 1
},
{
"date": "2026-04-29",
"count": 2
},
{
"date": "2026-05-02",
"count": 1
},
{
"date": "2026-05-03",
"count": 11
},
{
"date": "2026-05-04",
"count": 63
},
{
"date": "2026-05-05",
"count": 39
},
{
"date": "2026-05-06",
"count": 18
},
{
"date": "2026-05-07",
"count": 13
},
{
"date": "2026-05-08",
"count": 6
},
{
"date": "2026-05-09",
"count": 4
},
{
"date": "2026-05-10",
"count": 6
},
{
"date": "2026-05-11",
"count": 2
},
{
"date": "2026-05-12",
"count": 3
},
{
"date": "2026-05-13",
"count": 5
},
{
"date": "2026-05-14",
"count": 2
},
{
"date": "2026-05-15",
"count": 4
},
{
"date": "2026-05-16",
"count": 2
},
{
"date": "2026-05-17",
"count": 1
},
{
"date": "2026-05-18",
"count": 1
},
{
"date": "2026-05-19",
"count": 1
},
{
"date": "2026-05-20",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-23",
"count": 1
},
{
"date": "2026-05-24",
"count": 2
},
{
"date": "2026-05-25",
"count": 1
},
{
"date": "2026-05-26",
"count": 2
},
{
"date": "2026-05-27",
"count": 2
},
{
"date": "2026-05-28",
"count": 30
},
{
"date": "2026-05-29",
"count": 3
},
{
"date": "2026-05-30",
"count": 4
},
{
"date": "2026-05-31",
"count": 1
},
{
"date": "2026-06-02",
"count": 3
},
{
"date": "2026-06-03",
"count": 1
},
{
"date": "2026-06-05",
"count": 1
},
{
"date": "2026-06-06",
"count": 1
},
{
"date": "2026-06-08",
"count": 2
},
{
"date": "2026-06-09",
"count": 1
},
{
"date": "2026-06-10",
"count": 3
},
{
"date": "2026-06-12",
"count": 3
},
{
"date": "2026-06-15",
"count": 2
},
{
"date": "2026-06-16",
"count": 1
},
{
"date": "2026-06-17",
"count": 4
},
{
"date": "2026-06-18",
"count": 1
},
{
"date": "2026-06-19",
"count": 3
},
{
"date": "2026-06-20",
"count": 4
},
{
"date": "2026-06-21",
"count": 3
},
{
"date": "2026-06-22",
"count": 2
},
{
"date": "2026-06-23",
"count": 1
},
{
"date": "2026-06-24",
"count": 1
},
{
"date": "2026-06-26",
"count": 1
},
{
"date": "2026-06-27",
"count": 1
},
{
"date": "2026-06-28",
"count": 2
},
{
"date": "2026-06-30",
"count": 1
},
{
"date": "2026-07-02",
"count": 1
},
{
"date": "2026-07-04",
"count": 3
},
{
"date": "2026-07-05",
"count": 1
},
{
"date": "2026-07-06",
"count": 3
},
{
"date": "2026-07-07",
"count": 2
},
{
"date": "2026-07-08",
"count": 2
},
{
"date": "2026-07-09",
"count": 3
},
{
"date": "2026-07-10",
"count": 2
},
{
"date": "2026-07-13",
"count": 2
},
{
"date": "2026-07-14",
"count": 2
},
{
"date": "2026-07-15",
"count": 1
},
{
"date": "2026-07-16",
"count": 1
},
{
"date": "2026-07-17",
"count": 1
},
{
"date": "2026-07-18",
"count": 1
},
{
"date": "2026-07-22",
"count": 2
},
{
"date": "2026-07-23",
"count": 2
},
{
"date": "2026-07-24",
"count": 1
},
{
"date": "2026-07-26",
"count": 1
},
{
"date": "2026-07-28",
"count": 1
},
{
"date": "2026-07-29",
"count": 1
},
{
"date": "2026-07-31",
"count": 1
},
{
"date": "2026-08-01",
"count": 1
}
],
"complete": true,
"collected": 378,
"total_forks": 388
},
"star_history": null,
"open_issues_and_prs": 46
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": true,
"bootstrap_files": [
"Makefile",
"mise.toml"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [],
"largest_source_bytes": 404100,
"source_files_sampled": 897,
"oversized_source_files": 61,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"pyproject.toml"
],
"advisories": {
"error": null,
"scope": null,
"source": null,
"findings": [],
"collected": false,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 0,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"pypi"
],
"dependencies": [
{
"name": "mlx",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.31.2"
},
{
"name": "mlx-lm",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.31.3"
},
{
"name": "transformers",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=5.0.0,<5.13"
},
{
"name": "tokenizers",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.19.0"
},
{
"name": "huggingface-hub",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.23.0"
},
{
"name": "numpy",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=1.24.0"
},
{
"name": "tqdm",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=4.66.0"
},
{
"name": "pyyaml",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=6.0"
},
{
"name": "requests",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=2.28.0"
},
{
"name": "rich",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=13.8.0"
},
{
"name": "tabulate",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.9.0"
},
{
"name": "psutil",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=5.9.0"
},
{
"name": "fastapi",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.100.0"
},
{
"name": "uvicorn",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.23.0"
},
{
"name": "mcp",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=1.9.3"
},
{
"name": "jsonschema",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=4.0.0"
},
{
"name": "argcomplete",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=3.6"
},
{
"name": "websockets",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=12.0"
},
{
"name": "openai-harmony",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=0.0.8"
},
{
"name": "llguidance",
"manifest": "pyproject.toml",
"ecosystem": "pypi",
"version_constraint": ">=1.7.6"
}
],
"all_dependencies": {
"error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
"source": null,
"packages": [],
"collected": false,
"truncated": false,
"total_count": null,
"direct_count": null,
"indirect_count": null
}
},
"maintainership": {
"issues": {
"open_prs": 15,
"merged_prs": 974,
"open_issues": 31,
"closed_ratio": 0.88,
"closed_issues": 227,
"closed_unmerged_prs": 79
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "raullenchai",
"commits": 955,
"avatar_url": "https://avatars.githubusercontent.com/u/989846?v=4"
},
{
"type": "User",
"login": "waybarrios",
"commits": 98,
"avatar_url": "https://avatars.githubusercontent.com/u/6794828?v=4"
},
{
"type": "User",
"login": "janhilgard",
"commits": 12,
"avatar_url": "https://avatars.githubusercontent.com/u/89418784?v=4"
},
{
"type": "User",
"login": "masonjames",
"commits": 5,
"avatar_url": "https://avatars.githubusercontent.com/u/297610?v=4"
},
{
"type": "User",
"login": "angusgastle",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/89532008?v=4"
},
{
"type": "User",
"login": "pierre427",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/4698223?v=4"
},
{
"type": "User",
"login": "ersintarhan",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/8283049?v=4"
},
{
"type": "User",
"login": "kol22",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/74475667?v=4"
},
{
"type": "User",
"login": "selimrecep",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/16990318?v=4"
},
{
"type": "User",
"login": "66Ton99",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/383739?v=4"
}
],
"contributors_sampled": 38,
"top_contributor_share": 0.857
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"agent-gate.yml",
"aggregate-bench.yml",
"auto-release.yml",
"ci.yml",
"pages.yml",
"pr-validate.yml",
"publish.yml",
"release-artifact-matrix.yml",
"release-preflight.yml",
"spam-issue-guard.yml",
"validate-community-submission.yml",
"version-check.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": true
},
"security_signals": {
"lockfiles": [],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 0,
"reason": "Found 0/30 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 11 contributing companies or organizations",
"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": 0,
"reason": "no 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 28 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": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 8,
"reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 9,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "b8ab5c5e7f9cde0e7ca55e5e9f4cec88ed85252f",
"ran_at": "2026-08-02T03:25:16Z",
"aggregate_score": 6.1,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-08-02T03:23:12Z",
"oldest_open_prs": [
{
"number": 1162,
"created_at": "2026-07-21T21:40:37Z",
"last_comment_at": "2026-07-21T21:41:40Z",
"last_comment_author": "github-actions"
},
{
"number": 1216,
"created_at": "2026-07-25T03:34:56Z",
"last_comment_at": "2026-07-26T16:05:42Z",
"last_comment_author": "raullenchai"
},
{
"number": 1222,
"created_at": "2026-07-25T23:00:34Z",
"last_comment_at": "2026-07-25T23:01:47Z",
"last_comment_author": "github-actions"
},
{
"number": 1223,
"created_at": "2026-07-25T23:06:58Z",
"last_comment_at": "2026-07-27T19:26:44Z",
"last_comment_author": "pierre427"
},
{
"number": 1224,
"created_at": "2026-07-25T23:06:59Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1227,
"created_at": "2026-07-25T23:07:03Z",
"last_comment_at": "2026-07-27T13:46:15Z",
"last_comment_author": "pierre427"
},
{
"number": 1228,
"created_at": "2026-07-25T23:07:05Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1229,
"created_at": "2026-07-25T23:07:06Z",
"last_comment_at": "2026-07-26T17:10:17Z",
"last_comment_author": "raullenchai"
},
{
"number": 1230,
"created_at": "2026-07-25T23:07:08Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1245,
"created_at": "2026-07-27T16:30:25Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1246,
"created_at": "2026-07-27T16:38:54Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1291,
"created_at": "2026-07-29T05:15:22Z",
"last_comment_at": "2026-07-29T14:19:45Z",
"last_comment_author": "raullenchai"
},
{
"number": 1368,
"created_at": "2026-07-31T22:12:48Z",
"last_comment_at": "2026-07-31T22:13:30Z",
"last_comment_author": "github-actions"
},
{
"number": 1376,
"created_at": "2026-08-01T14:20:14Z",
"last_comment_at": "2026-08-01T14:21:07Z",
"last_comment_author": "github-actions"
},
{
"number": 1386,
"created_at": "2026-08-02T02:59:49Z",
"last_comment_at": "2026-08-02T03:00:37Z",
"last_comment_author": "github-actions"
}
],
"last_merged_pr_at": "2026-08-02T03:22:57Z",
"ci_last_conclusion": null,
"oldest_open_issues": [
{
"number": 54,
"created_at": "2026-03-26T19:09:52Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 63,
"created_at": "2026-04-06T09:33:48Z",
"last_comment_at": "2026-07-24T14:52:53Z",
"last_comment_author": "raullenchai"
},
{
"number": 150,
"created_at": "2026-04-19T19:09:14Z",
"last_comment_at": "2026-07-24T14:52:44Z",
"last_comment_author": "raullenchai"
},
{
"number": 153,
"created_at": "2026-04-20T01:34:49Z",
"last_comment_at": "2026-04-20T02:52:54Z",
"last_comment_author": "raullenchai"
},
{
"number": 236,
"created_at": "2026-05-05T21:46:13Z",
"last_comment_at": "2026-05-11T23:21:30Z",
"last_comment_author": "raullenchai"
},
{
"number": 241,
"created_at": "2026-05-06T04:18:14Z",
"last_comment_at": "2026-07-11T17:50:12Z",
"last_comment_author": "raullenchai"
},
{
"number": 319,
"created_at": "2026-05-08T05:16:04Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 320,
"created_at": "2026-05-08T05:19:15Z",
"last_comment_at": "2026-07-27T16:48:08Z",
"last_comment_author": "raullenchai"
},
{
"number": 337,
"created_at": "2026-05-09T15:34:34Z",
"last_comment_at": "2026-07-29T05:17:19Z",
"last_comment_author": "2005rishabh"
},
{
"number": 386,
"created_at": "2026-05-14T16:35:46Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 658,
"created_at": "2026-06-17T23:35:29Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 707,
"created_at": "2026-06-19T14:17:55Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1041,
"created_at": "2026-07-07T00:01:33Z",
"last_comment_at": "2026-07-07T00:23:20Z",
"last_comment_author": "raullenchai"
},
{
"number": 1247,
"created_at": "2026-07-27T16:47:47Z",
"last_comment_at": "2026-07-28T15:31:58Z",
"last_comment_author": "raullenchai"
},
{
"number": 1248,
"created_at": "2026-07-27T16:47:48Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1250,
"created_at": "2026-07-27T16:47:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1254,
"created_at": "2026-07-27T17:27:40Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1255,
"created_at": "2026-07-27T17:27:40Z",
"last_comment_at": "2026-07-28T16:50:09Z",
"last_comment_author": "raullenchai"
},
{
"number": 1256,
"created_at": "2026-07-27T17:27:41Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1258,
"created_at": "2026-07-27T17:27:42Z",
"last_comment_at": "2026-07-28T16:50:09Z",
"last_comment_author": "raullenchai"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/raullenchai/Rapid-MLX",
"host": "github.com",
"name": "Rapid-MLX",
"owner": "raullenchai"
},
"metrics": {
"overall": {
"key": "overall",
"band": "exceptional",
"name": "Overall health",
"note": "The weighted overall 79 is calibrated to 93 on the published index scale (record calibration 2026-08-02).",
"notes": [
{
"code": "overall_calibration",
"params": {
"raw": 79,
"calibrated": 93,
"calibration": "2026-08-02"
}
}
],
"value": 93,
"inputs": {
"security": 61,
"vitality": 91,
"community": 83,
"governance": 67,
"calibration": "2026-08-02",
"engineering": 96,
"ai_readiness": 54,
"weighted_overall_raw": 79
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 91,
"weight": 0.21,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 86,
"inputs": {
"commits_last_year": 1311,
"human_commit_share": 1,
"days_since_last_push": 0,
"active_weeks_last_year": 32
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "32/52 weeks with commits",
"points": 22.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 32
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1311 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1311
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "exceptional",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v0.11.6",
"releases_from_tags": false,
"days_since_latest_release": 0,
"mean_days_between_releases": 1.3
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~1.3 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 1.3
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 8,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "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": "excellent",
"name": "Community & Adoption",
"value": 83,
"weight": 0.17,
"metrics": [
{
"key": "popularity",
"band": "excellent",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 89,
"inputs": {
"forks": 388,
"stars": 3392,
"watchers": 64,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "3,392 stars",
"points": 57.3,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 3392
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "388 forks",
"points": 21.6,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 388
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "64 watchers",
"points": 10,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 64
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "good",
"name": "Community health",
"note": null,
"notes": [],
"value": 77,
"inputs": {
"has_readme": true,
"has_license": true,
"readme_badges": null,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": false,
"readme_badge_services": [],
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"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": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "good",
"name": "Sustainability & Governance",
"value": 67,
"weight": 0.23,
"metrics": [
{
"key": "maintainer_resilience",
"band": "weak",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 36,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 38,
"top_contributor_share": 0.857
},
"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 86% of commits",
"points": 3.2,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 86
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "38 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 38
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 11 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"newcomer_pr_acceptance"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 74,
"inputs": {
"merged_prs": 974,
"open_issues": 31,
"closed_issues": 227,
"prs_merged_7d": null,
"prs_decided_7d": null,
"prs_merged_30d": null,
"prs_decided_30d": null,
"issue_closed_ratio": 0.88,
"closed_unmerged_prs": 79,
"first_time_authors_30d": null,
"first_time_prs_merged_30d": null,
"first_time_prs_decided_30d": null
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "88% of issues closed",
"points": 37,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 88
}
}
],
"max_points": 42
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "974/1053 decided PRs merged",
"points": 27.7,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 974,
"decided": 1053
}
}
],
"max_points": 30
},
{
"key": "newcomer_pr_acceptance",
"name": "Newcomer PR acceptance",
"detail": "no first-time contributor's PR decided in 30d",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_newcomer_prs",
"params": {
"days": 30
}
}
],
"max_points": 13
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"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": 70,
"inputs": {
"followers": 935,
"owner_type": "User",
"is_verified": null,
"owner_login": "raullenchai",
"public_repos": 134,
"account_age_days": 5462
},
"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": "935 followers of raullenchai",
"points": 21.4,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 935,
"login": "raullenchai"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "134 public repos, account ~14 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 134
}
},
{
"code": "account_age_years",
"params": {
"years": 14
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "exceptional",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"rapid-mlx"
],
"ecosystems": "pypi",
"any_deprecated": false,
"min_days_since_publish": 0
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on pypi",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "pypi"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 0 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 0
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "179 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 179
}
}
],
"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": "exceptional",
"name": "Engineering Quality",
"value": 96,
"weight": 0.19,
"metrics": [
{
"key": "engineering_practices",
"band": "exceptional",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 94,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": true
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "12 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 12
}
}
],
"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": null,
"points": 16,
"status": "met",
"details": [],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 9.6,
"status": "met",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "exceptional",
"name": "Documentation",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"topics": [
"apple-silicon",
"fastapi",
"inference",
"llm",
"local-llm",
"macos",
"mlx",
"openai-api",
"python",
"tool-calling",
"hacktoberfest",
"ollama-alternative",
"m1",
"m2",
"m3",
"qwen",
"deepseek",
"claude-code",
"cursor"
],
"has_wiki": true,
"homepage": "https://pypi.org/project/rapid-mlx",
"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://pypi.org/project/rapid-mlx",
"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": "19 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 19
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 61,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": null,
"notes": [],
"value": 61,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 18,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 0,
"scorecard_aggregate": 6.1
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 0/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 11 contributing companies or organizations",
"points": 2.5,
"status": "met",
"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": "no update tool detected",
"points": 0,
"status": "missed",
"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 28 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 not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 6.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "exceptional",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"commit_weight_rule": {
"min_commits": 50,
"min_commit_share": 0.1
},
"review_only_matches": 0,
"below_threshold_exposures": [],
"assessed_self_published_locations": 15
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 54,
"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": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "100 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 100,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 63,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [
"Makefile",
"mise.toml"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0.38,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Makefile, mise.toml",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Makefile, mise.toml"
}
}
],
"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": null,
"points": 11,
"status": "met",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "38 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 38,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"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": "moderate",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 51,
"inputs": {
"primary_language": "Python",
"largest_source_bytes": 404100,
"source_files_sampled": 897,
"oversized_source_files": 61
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Python without a type-check config",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_typecheck_config_language",
"params": {
"language": "Python"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "61/897 source files over 60KB",
"points": 51.3,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 897,
"oversized": 61
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "moderate",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": true,
"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": 20,
"status": "met",
"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)."
}
],
"metrics_version": "2.2.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
"deps.dev does not index pypi:rapid-mlx@0.11.6; advisories assessed against the repository dependency graph instead"
],
"report_type": "repository",
"generated_at": "2026-08-02T03:25:43.520121Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/raullenchai/Rapid-MLX.svg",
"full_name": "raullenchai/Rapid-MLX",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}