kore / home / features / cli / claude.nix61 lines · 1670B · raw
1{ lib, config, pkgs, ... }:
2
3let
4 karpathySkills = pkgs.fetchFromGitHub {
5 owner = "multica-ai";
6 repo = "andrej-karpathy-skills";
7 rev = "2c606141936f1eeef17fa3043a72095b4765b9c2";
8 hash = "sha256-4z/wRdYH7UXRzF8RJU0sw8xbpx0BW/7CBv5sVEC2knY=";
9 };
10 nineArmSkills = pkgs.fetchFromGitHub {
11 owner = "thananon";
12 repo = "9arm-skills";
13 rev = "167c83445c82a4e87161029fa70be400c659e849";
14 hash = "sha256-sbPBkE/nqhMTqim7L1fu6q17i/j+fnjMlcv/JNyZZCg=";
15 };
16 mattPocockSkills = pkgs.fetchFromGitHub {
17 owner = "mattpocock";
18 repo = "skills";
19 rev = "694fa30311e02c2639942308513555e61ee84a6f";
20 hash = "sha256-NGRKdnHSBKoR48zGotmJ3zGXnQ58ogudv8T4Va/2DSY=";
21 };
22in {
23 programs.claude-code = {
24 enable = true;
25 context = "${karpathySkills}/CLAUDE.md";
26 settings = {
27 theme = "dark";
28 attribution = {
29 commit = "";
30 pr = "";
31 };
32 env = {
33 # Fuck Anthorpic
34 DISABLE_TELEMETRY = true;
35 DISABLE_ERROR_REPORTING = true;
36 DISABLE_BUG_COMMAND = true;
37 CLAUDE_CODE_ENABLE_TELEMETRY = false;
38 CLAUDE_CODE_DISABLE_FEEDBACK_SURVERY = true;
39 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = true;
40 };
41 permissions = {
42 allow = [ "Edit" ];
43 ask = [
44 "WebFetch"
45 "Bash(curl:*)"
46 "Bash(git:*)"
47 ];
48 deny = [
49 "Bash(git push *)"
50 "Bash(git commit *)"
51 "Read(./.env)"
52 ];
53 };
54 };
55 skills = {
56 scrutinize = "${nineArmSkills}/skills/engineering/scrutinize";
57 grill-with-docs = "${mattPocockSkills}/skills/engineering/grill-with-docs";
58 };
59 };
60}
61