|
| 1 | +{ |
| 2 | + "$schema": "https://raw.githubusercontent.com/gotgenes/pi-permission-system/main/schemas/permissions.schema.json", |
| 3 | + "debugLog": false, |
| 4 | + "permissionReviewLog": true, |
| 5 | + "yoloMode": false, |
| 6 | + "permission": { |
| 7 | + "*": "allow", |
| 8 | + "path": { |
| 9 | + "*": "allow", |
| 10 | + "*.env": "deny", |
| 11 | + "*.env.*": "deny", |
| 12 | + "*.env.example": "allow", |
| 13 | + "~/.ssh/*": "deny" |
| 14 | + }, |
| 15 | + "external_directory": "allow", |
| 16 | + "doom_loop": "deny", |
| 17 | + "bash": { |
| 18 | + "*": "allow", |
| 19 | + "*darwin-rebuild*switch*": "deny", |
| 20 | + "*nixos-rebuild switch*": "deny", |
| 21 | + "*nixos-rebuild boot*": "deny", |
| 22 | + "*switch-to-configuration switch*": "deny", |
| 23 | + "*switch-to-configuration boot*": "deny", |
| 24 | + "*ssh*nuc*nixos-rebuild*": "deny", |
| 25 | + "*ssh*nuc*switch-to-configuration*": "deny", |
| 26 | + "*home-manager switch*": "deny", |
| 27 | + "*NIXOS_NO_CHECK*": "deny", |
| 28 | + "*deploy-rs*": "deny", |
| 29 | + "*nix run .#deploy-rs*": "deny", |
| 30 | + "*--no-verify*": "deny", |
| 31 | + "*--no-gpg-sign*": "deny", |
| 32 | + "*commit.gpgsign=false*": "deny", |
| 33 | + "*core.hooksPath*": "deny", |
| 34 | + "*git commit*--author*": "deny", |
| 35 | + "*-c user.email=*": "deny", |
| 36 | + "*-c user.name=*": "deny", |
| 37 | + "*GIT_AUTHOR_NAME=*": "deny", |
| 38 | + "*GIT_AUTHOR_EMAIL=*": "deny", |
| 39 | + "*GIT_COMMITTER_NAME=*": "deny", |
| 40 | + "*GIT_COMMITTER_EMAIL=*": "deny", |
| 41 | + "*HUSKY=0*": "deny", |
| 42 | + "*SKIP=*": "deny", |
| 43 | + "*SKIP_PREPARE_COMMIT_MSG=*": "deny", |
| 44 | + "*SKIP_PRE_COMMIT=*": "deny", |
| 45 | + "*PRE_COMMIT_ALLOW_NO_CONFIG=*": "deny", |
| 46 | + "*git rebase -i*": "deny", |
| 47 | + "*git rebase --interactive*": "deny", |
| 48 | + "*git add -p*": "deny", |
| 49 | + "*git add --patch*": "deny", |
| 50 | + "*git mergetool*": "deny", |
| 51 | + "*git difftool*": "deny", |
| 52 | + "*git gui*": "deny", |
| 53 | + "*git citool*": "deny", |
| 54 | + "*git -c sequence.editor=: rebase -i*": "allow", |
| 55 | + "*git -c sequence.editor=true rebase -i*": "allow", |
| 56 | + "*GIT_SEQUENCE_EDITOR=:*git rebase -i*": "allow", |
| 57 | + "*GIT_SEQUENCE_EDITOR=true*git rebase -i*": "allow", |
| 58 | + "*GIT_EDITOR=vim*git rebase*": "deny", |
| 59 | + "*GIT_EDITOR=nvim*git rebase*": "deny", |
| 60 | + "*GIT_SEQUENCE_EDITOR=vim*git rebase*": "deny", |
| 61 | + "*GIT_SEQUENCE_EDITOR=nvim*git rebase*": "deny", |
| 62 | + "git commit": "deny", |
| 63 | + "*&& git commit": "deny", |
| 64 | + "*git commit -n*": "deny", |
| 65 | + "*git commit * -n*": "deny", |
| 66 | + "*sudo reboot*": "deny", |
| 67 | + "* reboot*": "deny", |
| 68 | + "reboot*": "deny", |
| 69 | + "*shutdown -r*": "deny", |
| 70 | + "*shutdown now*": "deny", |
| 71 | + "*poweroff*": "deny", |
| 72 | + "*systemctl reboot*": "deny", |
| 73 | + "*systemctl poweroff*": "deny", |
| 74 | + "*ssh*nuc*reboot*": "deny", |
| 75 | + "*ssh*nuc*shutdown*": "deny", |
| 76 | + "*ssh*nuc*poweroff*": "deny", |
| 77 | + "*ssh*nuc*systemctl reboot*": "deny", |
| 78 | + "*ssh*nuc*systemctl poweroff*": "deny", |
| 79 | + "*sudo nix-store --delete*": "deny", |
| 80 | + "*nix-store --delete*": "deny", |
| 81 | + "*nix store delete*": "deny", |
| 82 | + "*sudo rm -rf /nix/store*": "deny", |
| 83 | + "*sudo rm -rf /var/lib/nix*": "deny", |
| 84 | + "*rm -rf ~/.cache/nix*": "deny", |
| 85 | + "*flake-registry.json*": "deny", |
| 86 | + "*nix registry pin*": "deny", |
| 87 | + "*nix-collect-garbage*": "deny", |
| 88 | + "*nix store gc*": "deny", |
| 89 | + "*ssh*nuc*nix-collect-garbage*": "deny", |
| 90 | + "*ssh*nuc*nix store gc*": "deny", |
| 91 | + "*brew bundle*": "deny", |
| 92 | + "*brew link --overwrite*": "deny", |
| 93 | + "*brew unlink*": "deny", |
| 94 | + "*brew install*": "deny", |
| 95 | + "*brew uninstall*": "deny", |
| 96 | + "*nix profile install*": "deny", |
| 97 | + "*nix profile upgrade*": "deny", |
| 98 | + "*nix profile remove*": "deny", |
| 99 | + "*nix-env -i*": "deny", |
| 100 | + "*nix-env --install*": "deny", |
| 101 | + "*npm install -g*": "deny", |
| 102 | + "*npm i -g*": "deny", |
| 103 | + "*pnpm add -g*": "deny", |
| 104 | + "*yarn global add*": "deny", |
| 105 | + "*pip install*": "deny", |
| 106 | + "*pipx install*": "deny", |
| 107 | + "*cargo install*": "deny", |
| 108 | + "*nix flake update skills-catalog*": "allow", |
| 109 | + "*nix flake lock --update-input skills-catalog*": "deny", |
| 110 | + "acpx claude*": "allow", |
| 111 | + "*&& acpx claude*": "allow", |
| 112 | + "hey re*": "allow", |
| 113 | + "*&& hey re*": "allow", |
| 114 | + "hey rebuild*": "allow", |
| 115 | + "*&& hey rebuild*": "allow", |
| 116 | + "hey nuc": "allow", |
| 117 | + "hey deploy *": "allow", |
| 118 | + "hey deploy-dry *": "allow", |
| 119 | + "hey skills-update*": "allow", |
| 120 | + "hey skills-sync*": "allow", |
| 121 | + "hey gc*": "allow", |
| 122 | + "bd": "deny", |
| 123 | + "bd *": "deny", |
| 124 | + "*&& bd *": "deny", |
| 125 | + "br close": "deny", |
| 126 | + "br close *": "deny", |
| 127 | + "*&& br close *": "deny", |
| 128 | + "br close * --reason *": "allow", |
| 129 | + "br close * --reason=*": "allow", |
| 130 | + "*&& br close * --reason *": "allow", |
| 131 | + "*&& br close * --reason=*": "allow", |
| 132 | + "br *": "allow", |
| 133 | + "*&& br *": "allow", |
| 134 | + "pi update*": "deny", |
| 135 | + "*&& pi update*": "deny", |
| 136 | + "pi update --extensions*": "allow", |
| 137 | + "*&& pi update --extensions*": "allow" |
| 138 | + } |
| 139 | + } |
| 140 | +} |
0 commit comments