Kieran's opinionated (and probably slightly dumb) nix config

feat: add z.ai

dunkirk.sh e46eebe0 efbd4b92

verified
+52
+36
modules/home/apps/crush.nix
··· 198 198 } 199 199 ]; 200 200 }; 201 + zai = { 202 + name = "Z.AI"; 203 + base_url = "https://api.z.ai/api/paas/v4/"; 204 + api_key = "$(cat /run/agenix/zai)"; 205 + type = "openai"; 206 + models = [ 207 + { 208 + name = "GLM-4.7"; 209 + id = "glm-4.7"; 210 + context_window = 200000; 211 + default_max_tokens = 128000; 212 + can_reason = true; 213 + } 214 + { 215 + name = "GLM-4.6"; 216 + id = "glm-4.6"; 217 + context_window = 200000; 218 + default_max_tokens = 128000; 219 + can_reason = true; 220 + } 221 + { 222 + name = "GLM-4.5"; 223 + id = "glm-4.5"; 224 + context_window = 128000; 225 + default_max_tokens = 96000; 226 + can_reason = true; 227 + } 228 + { 229 + name = "GLM-4.5 Air"; 230 + id = "glm-4.5-air"; 231 + context_window = 128000; 232 + default_max_tokens = 96000; 233 + can_reason = true; 234 + } 235 + ]; 236 + }; 201 237 claude-pro = { 202 238 name = "Claude Pro"; 203 239 type = "anthropic";
+3
secrets/secrets.nix
··· 71 71 "tranquil-pds.age".publicKeys = [ 72 72 kierank 73 73 ]; 74 + "zai.age".publicKeys = [ 75 + kierank 76 + ]; 74 77 }
+13
secrets/zai.age
··· 1 + age-encryption.org/v1 2 + -> ssh-rsa DqcG0Q 3 + HdjjUsbSvsBTugcIVyXsZvtyHu7lMkvGWYxrASvNm2DST3C3DG5SMlY7kz1APWc7 4 + uTUZTiDRvakHDpLgTSUWYs9O7s0klxh78alp2soaojm1RVGnAS0cxd77Lm0jaSTJ 5 + QpOp9GER8yt5EieST7ox6TJTQ82gIH+ir15b5HGUVUvY7vmoEVYuWcF9bWfV7djL 6 + nhOA7S+4FzDzXt/iq6v5iYKva8E7cJj4mdaOC9EcebHabCmylrBtdjJR8toRLsIO 7 + HWS+NxSof5FSSKxjpsuJtbLESaZCkae4TYXcL4WNV3btGnRoV3JXN61HvxrLJ8fj 8 + yRpFQ0qpl2/5OKZzp7ucOG4JkDI00ZQf0wFc52EfLJ+NgdjlU3gMl0Jmq8qUBUOu 9 + PYHhJO2BlFQgGJCdCGNyRuEyy39oCx0R8pEkJVf4u1W9p41/Q8XDHn3ZwxSG/gtY 10 + MMSmq/NK9TfoBzSY9sZKJ70Ah9/Zrcv58mkdpANUcwwifj4RzeB3SEG6XlWep6Vm 11 + 12 + --- VO2a9ThvhPCUPyuzMRmEnHf8baZxP3uKBlgp0J2ugLI 13 + vm��^{��pS�}U4� !X��� ��Ib����PI�~�sX��nܡ�s<&���O��ц3]u�����ÿ��m�:?]{����y