nixos-specialisation-tuning SKILL.md skillA
nixos-specialisation-tuning from kihara777/nixkits is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add kihara777/nixkits/nixos-specialisation-tuning@git:20260922.8c276c0Pins git:20260922.8c276c0 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- kihara777/nixkits
- Path
skills/nixos-specialisation-tuning/SKILL.md- Versions recorded
- 4
- Latest version
- git:20260922.8c276c0, committed Sep 22, 2026
- First version recorded
- Sep 13, 2026
- Size
- 21,745 bytes
- Repository stars
- 28
- License
- MIT
为 NixOS 设计 specialisation 分面(默认 headless + 可选桌面),并在统一内存(UMA)设备上调优 llama.cpp 本地推理。覆盖分面架构、引导菜单与默认面、分面切换后的运行级收敛与用户级 systemd 实例陈旧、模型服务参数、思考等级映射、电源档位与热管理(风扇曲线、过热关机排查)、上下文开销分析与静默故障诊断方法论。.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# NixOS 分面设计与本地推理调优
用于两类任务:把 NixOS 配置拆成多个启动面,以及在统一内存设备上让本地大模型跑得动、跑得对、跑得快。
## 适用场景
- 需要"默认精简 + 可选全功能"两套配置,开机菜单选择
- 改动引导器 / 调整默认引导面后系统无法启动
- 分面热切换后服务看似"切成功了"但功能不对(无桌面、D-Bus 服务无法激活)
- 本地 llama.cpp 服务出现输出退化、加载失败、速度异常
- 需要判断某项优化是否值得(要求给出成本/收益/代价,而非单一收益)
## 分面架构
### 三文件布局
| 文件 | 职责 | 原则 |
|------|------|------|
| `spec/<默认面>.nix` | 默认配置(如 headless core) | 只 import 必需模块 |
| `spec/<可选面>.nix` | `specialisation.<name>.configuration` | 叠加在默认面之上 |
| `system/base.nix` | 两面共用的模式无关底座 | 不含只服务某一面的配置 |
```nix
# flake.nix
nixosConfigurations.HOST.modules = [
./spec/core.nix # 默认面
{ specialisation.plasma.configuration = {
imports = [ ./spec/plasma.nix ]; # 可选面
};
}
];
```
### 覆盖与冲突
共用模块中的值用 `lib.mkDefault` 声明,供分面用普通赋值覆盖:
```nix
# base/core 中
networking.wireless.iwd.enable = lib.mkDefault true;
# plasma 中覆盖
networking.wireless.iwd.enable = lib.mkForce true;
```
**陷阱**:`lib.mkForce` 覆盖整个属性时,会连带删掉其它模块对该属性的贡献。
> ⚠️ 实战案例:core 曾用 `lib.mkForce` 覆盖 `environment.systemPackages`,把 base 层提供的 `bash` 与 `systemd` 一并删除,导致无法登录、`systemctl`/`reboot` 全部缺失。
> **规则:`systemPackages` 类列表用追加,不用 `mkForce` 覆盖。**
### 面向消费者的归属原则
一个配置项应放在**它的消费者**所在模块,而非"共用的那个文件"。
…Read the whole file at its exact version.
How to install
mdr add kihara777/nixkits/nixos-specialisation-tuning@sha256:be1122f9380195dfThe line at the top of this page pins the label git:20260922.8c276c0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_4uyntnxwkm3jrskf)
1 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 4 versions of this file, between Sep 13, 2026 and Sep 22, 2026, about one every 3 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260922.8c276c0 latest | 2026-09-22 | 8c276c0 | 21,745 B | A | view · diff |
| git:20260916.a33a3cf | 2026-09-16 | a33a3cf | 14,846 B | A | view · diff |
| git:20260913.85fec4e | 2026-09-13 | 85fec4e | 11,416 B | A | view · diff |
| git:20260913.281e19b | 2026-09-13 | 281e19b | 8,215 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (21745 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
kihara777/nixkits · 28 stars · license MIT · pushed 2026-11-06 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_4uyntnxwkm3jrskf GET https://markdownregistry.com/api/v1/resolve?ref=kihara777/nixkits/nixos-specialisation-tuning GET https://markdownregistry.com/api/v1/blob/be1122f9380195dfc8f6b3cdbeafff6353d6c7b112d7fb35fe832fc12711a92d
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.