{"slug": "linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails", "title": "Linus skill/soul: how I distilled the knowledge for code reviews from 32k emails", "summary": "Developer Daniele Scasciafratte, known as Mte90, released linus-torvalds-skill, a reproducible pipeline that distills Linus Torvalds' code-review style from 31,397 kernel mailing-list emails into an AGENTS.md-style skill file. The pipeline runs roughly 2,000 LLM calls, filters the corpus to about 19,000 review-relevant emails, and was validated on antirez/smallchat with 8 reviews across 4 models plus a 43-bug ground-truth benchmark; the generated SKILL.md scores 95/100 on the project's verify_skill.py quality gate. The release adds 4 soul variants, 67 fused interview transcripts, and a published data.tar.gz release asset, with GLM 5.2, Mistral-small-4-119b, GPT-OSS-120b, and Qwen3.8-27b used via Regolo.AI.", "body_md": "[\"Contribute to Open Source: the right way\"](https://daniele.tech/2022/09/contribute-to-open-source-the-right-way-3rd-edition/)is my free and open source book, about...\n\n*Open Source*!\n\nIt will help you improve your skills and understand how to start this journey!\n\nI was wondering if we have [https://github.com/multica-ai/andrej-karpathy-skills/](https://github.com/multica-ai/andrej-karpathy-skills/) that is a condensed way to create a AGENTS.md file from an opinion of a specific person what we can do with more content from a person?\n\nI used the karpathy skill to create my AGENTS.md but it will be a topic for another blog post\n\nSo I was thinking, where I can find content from a person, that can be helpful for an AI that is public domain?\n\nWhy don’t distill the Code Review skills from **Linus Torvalds** in over 2 decades in the Kernel mailing list?\n\nSo after some working I got [https://github.com/Mte90/linus-torvalds-skill](https://github.com/Mte90/linus-torvalds-skill) that I decide to be always reproducible.\n\nEvery generated file carries traceability metadata in its frontmatter (prompt hash, input hash, model, pipeline version). Generated artifacts are never hand-edited — any change goes through the generator script.\n\nThe data folder is a release asset, the full pipeline ~2,000 LLM calls, and `python3 scripts/run_pipeline.py --dry-run` shows every stage before spending a cent.\n\nThis means that there are scripts to download and parse the various emails, exclude the one that are commits and stuff not useful (so from 32~k emails they are 19~k).\n\n## Before public announcement\n\nThe first version was a single SKILL.md generated from the email corpus — no soul, no calibration, no interviews, no validation.\n\nThe first step it was to ask to the agents to build a pipeline to download and evaluate the various emails, and a script that generates the skill based on the email content.\n\nThe next step it was to generate the same skill with different models to see the difference, as I am part of [Regolo.AI](https://regolo.ai/) that part it was easy.\n\nThe first generation attempts included C-specific terms like BUG_ON and READ_ONCE, making the skill useless for non-C projects.\n\nFixing this required a forbidden-terms list and a post-processor.\n\nWith this first version I was thinking that was ready for the world…\n\n## After public announcement\n\nAfter sharing to the world (apart the usual sarcastic people) I got some useful suggestions:\n\n**What the community asked — and what changed**\n\n| Feedback | What I shipped | \n|---|---|\n| “Did you even use the skill?” | Validated on antirez/smallchat: 8 reviews (4 models × with-skill/baseline), consensus matrix + a 43-bug ground-truth benchmark | \n| “Why not a SOUL.md?” | 4 soul variants (identity/values/voice, separate from the rules) | \n| “The skill quality is bad” | Quality gates: `verify_skill.py` scores 0–100 (SKILL.md: 95/100), 1,026 tests, forbidden-C-terms enforcement | \n| “The report isn’t useful” | Consensus matrix, severity disagreement table, trigger effectiveness metrics | \n| “Why not interviews?” | 67 interview transcripts fused into the corpus | \n| “Upload the data folder” | Published as release assets ( `data.tar.gz` ) — regenerate with your own models | \n| Where are the profanities? | In soul.md are present | \n\nRight now I want to present to you the first official release of the project with this all these improvements (and many others)!\n\nI used a lot GLM 5.3 that it was released in the meantime to review it and improve it (GLM 5.2 and Qwen3.5-122b are used for the development).\n\nThe actual LLMs used (from Regolo.AI):\n\n- GLM 5.2\n- Mistral-small-4-119b\n- GPT-OSS-120b\n- Qwen3.8-27b\n\nThe pipeline, the prompt generation and everything else is the same for the various models but the output is completely different.\n\nActual pipeline is:\n\n- 31,397 emails fetched (192MB mbox from gmane NNTP)\n- After classify.py filters out git-pull/patch/RFC/announcements → review-only subset\n- 38,293 moves extracted (not emails — each email can yield multiple moves)\n- 325 representative patterns (25 per category × 13 categories)\n- 1 skill/soul file per model\n\nIn the [report folder there is a comparison](https://github.com/Mte90/linus-torvalds-skill/blob/main/report/comparison.md) from all the models with and without the skill with the antirez/smallchat project.\n\nSome excerpts from the comparison (auto-generated) as 10/09/2026:\n\n| Model | Total Findings | Critical Findings | Skill-Only Critical | Verdict | \n|---|---|---|---|---|\n| gpt-oss-120b | 15 | 4 | 4 | Skill adds value | \n| glm5.2 | 7 | 2 | 0 | Skill reduces coverage | \n| mistral | 22 | 9 | 9 | Skill adds value | \n| qwen3.8-27b | 18 | 6 | 4 | Skill adds value | \n\nThe skill adds the most value for mistral, which gained 9 critical finding(s) exclusive to the with-skill review.\n\nFor each model, comparing findings with the skill vs without (baseline):\n\n| Model | Baseline Total | With-Skill Total | Baseline CRITICAL | With-Skill CRITICAL | Critical Overlap | Skill-Only CRITICAL | Baseline-Only CRITICAL | Skill Added Value | \n|---|---|---|---|---|---|---|---|---|\n| gpt-oss-120b | 7 | 15 | 0 | 4 | 0 | 4 | 0 | yes (+4 net critical: 4 found, 0 lost) | \n| glm5.2 | 12 | 7 | 4 | 2 | 2 | 0 | 2 | no (-2 net critical: 0 found, 2 lost) | \n| mistral | 15 | 22 | 0 | 9 | 0 | 9 | 0 | yes (+9 net critical: 9 found, 0 lost) | \n| qwen3.8-27b | 11 | 18 | 2 | 6 | 2 | 4 | 0 | yes (+4 net critical: 4 found, 0 lost) | \n\nFindings confirmed by 2+ models are treated as real bugs. Findings reported by only one model are unverified (could be real or false positive).\n\n| Model | Total Findings | Confirmed (2+ models) | Unverified (1 model only) | Consensus Rate | \n|---|---|---|---|---|\n| gpt-oss-120b | 15 | 12 | 3 | 80% | \n| glm5.2 | 9 | 9 | 0 | 100% | \n| mistral | 22 | 14 | 8 | 64% | \n| qwen3.8-27b | 19 | 14 | 5 | 74% | \n\nLooking a the comparison is clear that GLM and Mistral are the most interesting to find bugs.\n\nI suggest to read the comparison (that is generated automatically so has margin for improvements).\n\n## Conclusion\n\nThis project was fully generated by AI – and my only real job was reviewing its work.\n\nWhich is exactly what the skill teaches. I just never expected to be on the receiving end of a Linus-style review of my own pipeline.\n\nBut I think that is my actual most used duty in my job as developer, review what an agent does.\n\nThe repository is online and open to everyone for feedback and suggestions.", "url": "https://wpnews.pro/news/linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails", "canonical_source": "https://daniele.tech/2026/09/linus-torvalds-skill-soul-or-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails/", "published_at": "2026-09-10 18:52:17+00:00", "updated_at": "2026-09-10 19:07:30.240630+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "large-language-models", "ai-research"], "entities": ["Linus Torvalds", "Daniele Scasciafratte", "linus-torvalds-skill", "Regolo.AI", "GLM 5.2", "Mistral-small-4-119b", "GPT-OSS-120b", "Qwen3.8-27b"], "alternates": {"html": "https://wpnews.pro/news/linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails", "markdown": "https://wpnews.pro/news/linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails.md", "text": "https://wpnews.pro/news/linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails.txt", "jsonld": "https://wpnews.pro/news/linus-skill-soul-how-i-distilled-the-knowledge-for-code-reviews-from-32k-emails.jsonld"}}