cc-permissions 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/LICENSE +14 -0
  2. package/README.md +230 -0
  3. package/dist/analyze.d.ts +10 -0
  4. package/dist/analyze.d.ts.map +1 -0
  5. package/dist/analyze.js +213 -0
  6. package/dist/analyze.js.map +1 -0
  7. package/dist/cli.d.ts +3 -0
  8. package/dist/cli.d.ts.map +1 -0
  9. package/dist/cli.js +348 -0
  10. package/dist/cli.js.map +1 -0
  11. package/dist/index.d.ts +7 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +14 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/output.d.ts +83 -0
  16. package/dist/output.d.ts.map +1 -0
  17. package/dist/output.js +178 -0
  18. package/dist/output.js.map +1 -0
  19. package/dist/permissions.d.ts +32 -0
  20. package/dist/permissions.d.ts.map +1 -0
  21. package/dist/permissions.js +98 -0
  22. package/dist/permissions.js.map +1 -0
  23. package/dist/templates/cache.d.ts +71 -0
  24. package/dist/templates/cache.d.ts.map +1 -0
  25. package/dist/templates/cache.js +137 -0
  26. package/dist/templates/cache.js.map +1 -0
  27. package/dist/templates/dotnet.d.ts +3 -0
  28. package/dist/templates/dotnet.d.ts.map +1 -0
  29. package/dist/templates/dotnet.js +76 -0
  30. package/dist/templates/dotnet.js.map +1 -0
  31. package/dist/templates/general.d.ts +3 -0
  32. package/dist/templates/general.d.ts.map +1 -0
  33. package/dist/templates/general.js +59 -0
  34. package/dist/templates/general.js.map +1 -0
  35. package/dist/templates/index.d.ts +32 -0
  36. package/dist/templates/index.d.ts.map +1 -0
  37. package/dist/templates/index.js +54 -0
  38. package/dist/templates/index.js.map +1 -0
  39. package/dist/templates/loader.d.ts +19 -0
  40. package/dist/templates/loader.d.ts.map +1 -0
  41. package/dist/templates/loader.js +221 -0
  42. package/dist/templates/loader.js.map +1 -0
  43. package/dist/templates/python.d.ts +3 -0
  44. package/dist/templates/python.d.ts.map +1 -0
  45. package/dist/templates/python.js +110 -0
  46. package/dist/templates/python.js.map +1 -0
  47. package/dist/templates/remote.d.ts +45 -0
  48. package/dist/templates/remote.d.ts.map +1 -0
  49. package/dist/templates/remote.js +147 -0
  50. package/dist/templates/remote.js.map +1 -0
  51. package/dist/templates/web.d.ts +3 -0
  52. package/dist/templates/web.d.ts.map +1 -0
  53. package/dist/templates/web.js +101 -0
  54. package/dist/templates/web.js.map +1 -0
  55. package/dist/types.d.ts +44 -0
  56. package/dist/types.d.ts.map +1 -0
  57. package/dist/types.js +8 -0
  58. package/dist/types.js.map +1 -0
  59. package/dist/version.d.ts +53 -0
  60. package/dist/version.d.ts.map +1 -0
  61. package/dist/version.js +118 -0
  62. package/dist/version.js.map +1 -0
  63. package/package.json +54 -0
  64. package/templates/android.jsonc +99 -0
  65. package/templates/aws.jsonc +113 -0
  66. package/templates/azure.jsonc +103 -0
  67. package/templates/database.jsonc +133 -0
  68. package/templates/docker.jsonc +115 -0
  69. package/templates/dotnet.jsonc +80 -0
  70. package/templates/flutter.jsonc +106 -0
  71. package/templates/gcp.jsonc +110 -0
  72. package/templates/git.jsonc +52 -0
  73. package/templates/github.jsonc +132 -0
  74. package/templates/go.jsonc +75 -0
  75. package/templates/ios.jsonc +98 -0
  76. package/templates/java.jsonc +93 -0
  77. package/templates/kubernetes.jsonc +114 -0
  78. package/templates/nodejs.jsonc +105 -0
  79. package/templates/php.jsonc +107 -0
  80. package/templates/python.jsonc +114 -0
  81. package/templates/ruby.jsonc +99 -0
  82. package/templates/rust.jsonc +97 -0
  83. package/templates/shell.jsonc +73 -0
  84. package/templates/template.schema.json +102 -0
  85. package/templates/terraform.jsonc +96 -0
@@ -0,0 +1,114 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "kubernetes",
4
+ "description": "kubectl, Helm, k9s, and Minikube",
5
+ "category": "Container & Infrastructure",
6
+ "detection": {
7
+ "files": ["Chart.yaml", "helmfile.yaml", "kustomization.yaml", "skaffold.yaml"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // kubectl info
12
+ { "command": "kubectl version", "description": "Check kubectl version" },
13
+ { "command": "kubectl cluster-info", "description": "Show cluster info" },
14
+ { "command": "kubectl config view", "description": "View kubeconfig" },
15
+ { "command": "kubectl config current-context", "description": "Show current context" },
16
+ { "command": "kubectl config get-contexts", "description": "List contexts" },
17
+ { "command": "kubectl api-resources", "description": "List API resources" },
18
+ { "command": "kubectl api-versions", "description": "List API versions" },
19
+ // kubectl get (read-only)
20
+ { "command": "kubectl get", "description": "Get resources" },
21
+ { "command": "kubectl describe", "description": "Describe resources" },
22
+ { "command": "kubectl logs", "description": "View pod logs" },
23
+ { "command": "kubectl top", "description": "Show resource usage" },
24
+ { "command": "kubectl explain", "description": "Explain resource fields" },
25
+ // helm info
26
+ { "command": "helm version", "description": "Check Helm version" },
27
+ { "command": "helm list", "description": "List releases" },
28
+ { "command": "helm status", "description": "Show release status" },
29
+ { "command": "helm history", "description": "Show release history" },
30
+ { "command": "helm get", "description": "Get release info" },
31
+ { "command": "helm show", "description": "Show chart info" },
32
+ { "command": "helm search", "description": "Search charts" },
33
+ { "command": "helm repo list", "description": "List chart repos" },
34
+ // k9s info
35
+ { "command": "k9s version", "description": "Check k9s version" },
36
+ { "command": "k9s info", "description": "Show k9s info" },
37
+ // minikube info
38
+ { "command": "minikube version", "description": "Check Minikube version" },
39
+ { "command": "minikube status", "description": "Show Minikube status" },
40
+ { "command": "minikube profile list", "description": "List Minikube profiles" },
41
+ { "command": "minikube ip", "description": "Get Minikube IP" },
42
+ { "command": "minikube service list", "description": "List services" }
43
+ ],
44
+ "standard": [
45
+ // kubectl apply (non-destructive)
46
+ { "command": "kubectl apply", "description": "Apply configuration" },
47
+ { "command": "kubectl create", "description": "Create resources" },
48
+ { "command": "kubectl patch", "description": "Patch resources" },
49
+ { "command": "kubectl label", "description": "Label resources" },
50
+ { "command": "kubectl annotate", "description": "Annotate resources" },
51
+ // kubectl exec/port-forward
52
+ { "command": "kubectl exec", "description": "Execute in pod" },
53
+ { "command": "kubectl port-forward", "description": "Forward ports" },
54
+ { "command": "kubectl cp", "description": "Copy files" },
55
+ { "command": "kubectl attach", "description": "Attach to pod" },
56
+ // kubectl rollout
57
+ { "command": "kubectl rollout status", "description": "Check rollout status" },
58
+ { "command": "kubectl rollout history", "description": "View rollout history" },
59
+ { "command": "kubectl rollout pause", "description": "Pause rollout" },
60
+ { "command": "kubectl rollout resume", "description": "Resume rollout" },
61
+ { "command": "kubectl rollout restart", "description": "Restart rollout" },
62
+ // kubectl delete pod (restarts)
63
+ { "command": "kubectl delete pod", "description": "Delete pod (will restart)" },
64
+ // kubectl config
65
+ { "command": "kubectl config use-context", "description": "Switch context" },
66
+ { "command": "kubectl config set-context", "description": "Set context" },
67
+ // helm development
68
+ { "command": "helm template", "description": "Render chart templates" },
69
+ { "command": "helm lint", "description": "Lint chart" },
70
+ { "command": "helm dependency", "description": "Manage dependencies" },
71
+ { "command": "helm diff", "description": "Diff releases" },
72
+ { "command": "helm upgrade --dry-run", "description": "Dry-run upgrade" },
73
+ { "command": "helm repo add", "description": "Add chart repo" },
74
+ { "command": "helm repo update", "description": "Update chart repos" },
75
+ // k9s usage
76
+ { "command": "k9s", "description": "Launch k9s UI" },
77
+ // minikube management
78
+ { "command": "minikube dashboard", "description": "Open dashboard" },
79
+ { "command": "minikube tunnel", "description": "Create tunnel" },
80
+ { "command": "minikube service", "description": "Access service" },
81
+ { "command": "minikube logs", "description": "View logs" }
82
+ ],
83
+ "permissive": [
84
+ // kubectl delete
85
+ { "command": "kubectl delete", "description": "Delete resources" },
86
+ // kubectl scale
87
+ { "command": "kubectl scale", "description": "Scale resources" },
88
+ { "command": "kubectl autoscale", "description": "Configure autoscaling" },
89
+ // kubectl edit
90
+ { "command": "kubectl edit", "description": "Edit resources" },
91
+ { "command": "kubectl replace", "description": "Replace resources" },
92
+ { "command": "kubectl set", "description": "Set resource values" },
93
+ // kubectl rollout undo
94
+ { "command": "kubectl rollout undo", "description": "Undo rollout" },
95
+ // kubectl cordon/drain
96
+ { "command": "kubectl cordon", "description": "Cordon node" },
97
+ { "command": "kubectl uncordon", "description": "Uncordon node" },
98
+ { "command": "kubectl drain", "description": "Drain node" },
99
+ { "command": "kubectl taint", "description": "Taint node" },
100
+ // helm install/upgrade
101
+ { "command": "helm install", "description": "Install chart" },
102
+ { "command": "helm upgrade", "description": "Upgrade release" },
103
+ { "command": "helm uninstall", "description": "Uninstall release" },
104
+ { "command": "helm rollback", "description": "Rollback release" },
105
+ { "command": "helm repo remove", "description": "Remove chart repo" },
106
+ // minikube lifecycle
107
+ { "command": "minikube start", "description": "Start Minikube" },
108
+ { "command": "minikube stop", "description": "Stop Minikube" },
109
+ { "command": "minikube delete", "description": "Delete Minikube" },
110
+ { "command": "minikube addons enable", "description": "Enable addon" },
111
+ { "command": "minikube addons disable", "description": "Disable addon" }
112
+ ]
113
+ }
114
+ }
@@ -0,0 +1,105 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "nodejs",
4
+ "description": "Node.js, npm, pnpm, yarn, and bun",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["package.json", "package-lock.json", "yarn.lock", "pnpm-lock.yaml", "bun.lockb"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // npm read-only
12
+ { "command": "npm list", "description": "List installed packages" },
13
+ { "command": "npm ls", "description": "List installed packages (alias)" },
14
+ { "command": "npm outdated", "description": "Check for outdated packages" },
15
+ { "command": "npm view", "description": "View package info" },
16
+ { "command": "npm info", "description": "View package info (alias)" },
17
+ { "command": "npm search", "description": "Search npm registry" },
18
+ { "command": "npm help", "description": "Get npm help" },
19
+ { "command": "npm config list", "description": "List npm config" },
20
+ { "command": "npm audit", "description": "Run security audit" },
21
+ // node read-only
22
+ { "command": "node -v", "description": "Check Node version" },
23
+ { "command": "node --version", "description": "Check Node version" },
24
+ { "command": "node -e", "description": "Evaluate Node expression" },
25
+ { "command": "node -p", "description": "Print Node evaluation" },
26
+ // npx read-only
27
+ { "command": "npx -v", "description": "Check npx version" },
28
+ // pnpm read-only
29
+ { "command": "pnpm list", "description": "List installed packages (pnpm)" },
30
+ { "command": "pnpm ls", "description": "List installed packages (pnpm alias)" },
31
+ { "command": "pnpm outdated", "description": "Check for outdated packages (pnpm)" },
32
+ // yarn read-only
33
+ { "command": "yarn list", "description": "List installed packages (yarn)" },
34
+ { "command": "yarn info", "description": "View package info (yarn)" },
35
+ { "command": "yarn outdated", "description": "Check for outdated packages (yarn)" },
36
+ // bun read-only
37
+ { "command": "bun --version", "description": "Check Bun version" },
38
+ { "command": "bun pm ls", "description": "List installed packages (bun)" }
39
+ ],
40
+ "standard": [
41
+ // npm scripts (no install)
42
+ { "command": "npm run", "description": "Run npm scripts" },
43
+ { "command": "npm test", "description": "Run tests" },
44
+ { "command": "npm start", "description": "Start the application" },
45
+ { "command": "npm build", "description": "Build the project" },
46
+ { "command": "npm run build", "description": "Build the project" },
47
+ { "command": "npm run dev", "description": "Run dev server" },
48
+ { "command": "npm run lint", "description": "Run linter" },
49
+ { "command": "npm run format", "description": "Run formatter" },
50
+ { "command": "npm run test", "description": "Run tests" },
51
+ { "command": "npm run watch", "description": "Run in watch mode" },
52
+ { "command": "npm exec", "description": "Execute package binary" },
53
+ // npx (execute without install)
54
+ { "command": "npx", "description": "Execute npm packages" },
55
+ // pnpm scripts
56
+ { "command": "pnpm run", "description": "Run pnpm scripts" },
57
+ { "command": "pnpm test", "description": "Run tests (pnpm)" },
58
+ { "command": "pnpm build", "description": "Build the project (pnpm)" },
59
+ { "command": "pnpm dev", "description": "Run dev server (pnpm)" },
60
+ { "command": "pnpm exec", "description": "Execute package binary (pnpm)" },
61
+ { "command": "pnpm dlx", "description": "Execute without install (pnpm)" },
62
+ // yarn scripts
63
+ { "command": "yarn run", "description": "Run yarn scripts" },
64
+ { "command": "yarn test", "description": "Run tests (yarn)" },
65
+ { "command": "yarn build", "description": "Build the project (yarn)" },
66
+ { "command": "yarn dev", "description": "Run dev server (yarn)" },
67
+ { "command": "yarn dlx", "description": "Execute without install (yarn)" },
68
+ // bun scripts
69
+ { "command": "bun run", "description": "Run bun scripts" },
70
+ { "command": "bun test", "description": "Run tests (bun)" },
71
+ { "command": "bun build", "description": "Build the project (bun)" },
72
+ { "command": "bunx", "description": "Execute bun packages" },
73
+ // node execution
74
+ { "command": "node", "description": "Run Node.js scripts" }
75
+ ],
76
+ "permissive": [
77
+ // npm install operations
78
+ { "command": "npm install", "description": "Install packages" },
79
+ { "command": "npm i", "description": "Install packages (alias)" },
80
+ { "command": "npm ci", "description": "Clean install" },
81
+ { "command": "npm uninstall", "description": "Uninstall packages" },
82
+ { "command": "npm update", "description": "Update packages" },
83
+ { "command": "npm link", "description": "Link packages locally" },
84
+ { "command": "npm publish", "description": "Publish to npm" },
85
+ { "command": "npm init", "description": "Initialize new project" },
86
+ { "command": "npm pack", "description": "Create package tarball" },
87
+ { "command": "npm cache clean", "description": "Clean npm cache" },
88
+ // pnpm install
89
+ { "command": "pnpm install", "description": "Install packages (pnpm)" },
90
+ { "command": "pnpm add", "description": "Add packages (pnpm)" },
91
+ { "command": "pnpm remove", "description": "Remove packages (pnpm)" },
92
+ { "command": "pnpm update", "description": "Update packages (pnpm)" },
93
+ // yarn install
94
+ { "command": "yarn install", "description": "Install packages (yarn)" },
95
+ { "command": "yarn add", "description": "Add packages (yarn)" },
96
+ { "command": "yarn remove", "description": "Remove packages (yarn)" },
97
+ { "command": "yarn upgrade", "description": "Upgrade packages (yarn)" },
98
+ // bun install
99
+ { "command": "bun install", "description": "Install packages (bun)" },
100
+ { "command": "bun add", "description": "Add packages (bun)" },
101
+ { "command": "bun remove", "description": "Remove packages (bun)" },
102
+ { "command": "bun update", "description": "Update packages (bun)" }
103
+ ]
104
+ }
105
+ }
@@ -0,0 +1,107 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "php",
4
+ "description": "PHP, Composer, and Laravel Artisan",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["composer.json", "composer.lock"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // php info
12
+ { "command": "php --version", "description": "Check PHP version" },
13
+ { "command": "php -v", "description": "Check PHP version" },
14
+ { "command": "php -i", "description": "Show PHP info" },
15
+ { "command": "php -m", "description": "List PHP modules" },
16
+ { "command": "php --ini", "description": "Show PHP ini files" },
17
+ // composer info
18
+ { "command": "composer --version", "description": "Check Composer version" },
19
+ { "command": "composer -V", "description": "Check Composer version" },
20
+ { "command": "composer show", "description": "Show packages" },
21
+ { "command": "composer info", "description": "Show package info" },
22
+ { "command": "composer search", "description": "Search Packagist" },
23
+ { "command": "composer outdated", "description": "List outdated packages" },
24
+ { "command": "composer licenses", "description": "Show licenses" },
25
+ { "command": "composer depends", "description": "Show dependencies" },
26
+ { "command": "composer prohibits", "description": "Show blockers" },
27
+ { "command": "composer suggests", "description": "Show suggestions" },
28
+ { "command": "composer validate", "description": "Validate composer.json" },
29
+ { "command": "composer config --list", "description": "List config" },
30
+ // artisan info
31
+ { "command": "php artisan --version", "description": "Check Laravel version" },
32
+ { "command": "php artisan list", "description": "List Artisan commands" },
33
+ { "command": "php artisan help", "description": "Artisan help" },
34
+ { "command": "php artisan route:list", "description": "List routes" },
35
+ { "command": "php artisan about", "description": "Show application info" },
36
+ { "command": "php artisan config:show", "description": "Show config" },
37
+ { "command": "php artisan env", "description": "Show environment" }
38
+ ],
39
+ "standard": [
40
+ // composer autoload
41
+ { "command": "composer dump-autoload", "description": "Regenerate autoloader" },
42
+ { "command": "composer dumpautoload", "description": "Regenerate autoloader" },
43
+ // artisan serve
44
+ { "command": "php artisan serve", "description": "Start dev server" },
45
+ { "command": "php artisan tinker", "description": "Start Tinker REPL" },
46
+ // artisan make
47
+ { "command": "php artisan make:controller", "description": "Create controller" },
48
+ { "command": "php artisan make:model", "description": "Create model" },
49
+ { "command": "php artisan make:migration", "description": "Create migration" },
50
+ { "command": "php artisan make:seeder", "description": "Create seeder" },
51
+ { "command": "php artisan make:factory", "description": "Create factory" },
52
+ { "command": "php artisan make:middleware", "description": "Create middleware" },
53
+ { "command": "php artisan make:command", "description": "Create command" },
54
+ { "command": "php artisan make:event", "description": "Create event" },
55
+ { "command": "php artisan make:listener", "description": "Create listener" },
56
+ { "command": "php artisan make:job", "description": "Create job" },
57
+ { "command": "php artisan make:mail", "description": "Create mail" },
58
+ { "command": "php artisan make:notification", "description": "Create notification" },
59
+ { "command": "php artisan make:policy", "description": "Create policy" },
60
+ { "command": "php artisan make:request", "description": "Create request" },
61
+ { "command": "php artisan make:resource", "description": "Create resource" },
62
+ { "command": "php artisan make:test", "description": "Create test" },
63
+ // artisan status/check
64
+ { "command": "php artisan migrate:status", "description": "Migration status" },
65
+ { "command": "php artisan queue:listen", "description": "Listen for jobs" },
66
+ { "command": "php artisan queue:work", "description": "Process jobs" },
67
+ // phpunit
68
+ { "command": "phpunit", "description": "Run PHPUnit tests" },
69
+ { "command": "php artisan test", "description": "Run Laravel tests" },
70
+ // php-cs-fixer
71
+ { "command": "php-cs-fixer fix", "description": "Fix code style" },
72
+ // pest
73
+ { "command": "pest", "description": "Run Pest tests" },
74
+ // php execution
75
+ { "command": "php", "description": "Run PHP script" }
76
+ ],
77
+ "permissive": [
78
+ // composer install
79
+ { "command": "composer install", "description": "Install packages" },
80
+ { "command": "composer update", "description": "Update packages" },
81
+ { "command": "composer require", "description": "Add package" },
82
+ { "command": "composer remove", "description": "Remove package" },
83
+ { "command": "composer global require", "description": "Install global package" },
84
+ { "command": "composer clear-cache", "description": "Clear Composer cache" },
85
+ { "command": "composer create-project", "description": "Create new project" },
86
+ // artisan migrate
87
+ { "command": "php artisan migrate", "description": "Run migrations" },
88
+ { "command": "php artisan migrate:rollback", "description": "Rollback migrations" },
89
+ { "command": "php artisan migrate:reset", "description": "Reset migrations" },
90
+ { "command": "php artisan migrate:refresh", "description": "Refresh migrations" },
91
+ { "command": "php artisan migrate:fresh", "description": "Fresh migrations" },
92
+ // artisan db
93
+ { "command": "php artisan db:seed", "description": "Seed database" },
94
+ { "command": "php artisan db:wipe", "description": "Wipe database" },
95
+ // artisan cache
96
+ { "command": "php artisan cache:clear", "description": "Clear cache" },
97
+ { "command": "php artisan config:clear", "description": "Clear config cache" },
98
+ { "command": "php artisan config:cache", "description": "Cache config" },
99
+ { "command": "php artisan route:clear", "description": "Clear route cache" },
100
+ { "command": "php artisan route:cache", "description": "Cache routes" },
101
+ { "command": "php artisan view:clear", "description": "Clear view cache" },
102
+ { "command": "php artisan view:cache", "description": "Cache views" },
103
+ { "command": "php artisan optimize", "description": "Optimize application" },
104
+ { "command": "php artisan optimize:clear", "description": "Clear optimizations" }
105
+ ]
106
+ }
107
+ }
@@ -0,0 +1,114 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "python",
4
+ "description": "pip, python, venv, pytest, and common data tools",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["pyproject.toml", "setup.py", "setup.cfg", "requirements.txt", "Pipfile", "poetry.lock", "uv.lock", "conda.yaml", "environment.yml"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // Python version/info
12
+ { "command": "python --version", "description": "Check Python version" },
13
+ { "command": "python -V", "description": "Check Python version (short)" },
14
+ { "command": "python3 --version", "description": "Check Python 3 version" },
15
+ { "command": "python3 -V", "description": "Check Python 3 version (short)" },
16
+ // pip read-only
17
+ { "command": "pip list", "description": "List installed packages" },
18
+ { "command": "pip3 list", "description": "List installed packages (pip3)" },
19
+ { "command": "pip show", "description": "Show package info" },
20
+ { "command": "pip3 show", "description": "Show package info (pip3)" },
21
+ { "command": "pip freeze", "description": "Output installed packages" },
22
+ { "command": "pip3 freeze", "description": "Output installed packages (pip3)" },
23
+ { "command": "pip check", "description": "Verify package dependencies" },
24
+ { "command": "pip3 check", "description": "Verify package dependencies (pip3)" },
25
+ { "command": "pip search", "description": "Search for packages" },
26
+ { "command": "pip3 search", "description": "Search for packages (pip3)" },
27
+ // uv read-only
28
+ { "command": "uv --version", "description": "Check uv version" },
29
+ { "command": "uv pip list", "description": "List installed packages (uv)" },
30
+ { "command": "uv pip show", "description": "Show package info (uv)" },
31
+ { "command": "uv pip freeze", "description": "Output installed packages (uv)" },
32
+ // Poetry read-only
33
+ { "command": "poetry --version", "description": "Check Poetry version" },
34
+ { "command": "poetry show", "description": "Show package info (Poetry)" },
35
+ { "command": "poetry env info", "description": "Show environment info (Poetry)" },
36
+ // Conda read-only
37
+ { "command": "conda --version", "description": "Check Conda version" },
38
+ { "command": "conda list", "description": "List installed packages (Conda)" },
39
+ { "command": "conda info", "description": "Show Conda info" },
40
+ { "command": "conda env list", "description": "List Conda environments" },
41
+ // venv info
42
+ { "command": "python -m venv --help", "description": "Venv help" }
43
+ ],
44
+ "standard": [
45
+ // Python execution
46
+ { "command": "python", "description": "Run Python scripts" },
47
+ { "command": "python3", "description": "Run Python 3 scripts" },
48
+ { "command": "python -c", "description": "Execute Python code" },
49
+ { "command": "python3 -c", "description": "Execute Python 3 code" },
50
+ { "command": "python -m", "description": "Run Python module" },
51
+ { "command": "python3 -m", "description": "Run Python 3 module" },
52
+ // Testing
53
+ { "command": "pytest", "description": "Run pytest" },
54
+ { "command": "python -m pytest", "description": "Run pytest via module" },
55
+ { "command": "python3 -m pytest", "description": "Run pytest via module (py3)" },
56
+ { "command": "unittest", "description": "Run unittest" },
57
+ { "command": "python -m unittest", "description": "Run unittest via module" },
58
+ { "command": "python3 -m unittest", "description": "Run unittest via module (py3)" },
59
+ // Linting/formatting
60
+ { "command": "ruff", "description": "Run Ruff linter" },
61
+ { "command": "ruff check", "description": "Run Ruff check" },
62
+ { "command": "ruff format", "description": "Run Ruff formatter" },
63
+ { "command": "black", "description": "Run Black formatter" },
64
+ { "command": "isort", "description": "Run isort" },
65
+ { "command": "flake8", "description": "Run flake8 linter" },
66
+ { "command": "pylint", "description": "Run pylint" },
67
+ { "command": "mypy", "description": "Run mypy type checker" },
68
+ // Build/packaging
69
+ { "command": "python -m build", "description": "Build package" },
70
+ { "command": "python3 -m build", "description": "Build package (py3)" },
71
+ // Virtual environment creation
72
+ { "command": "python -m venv", "description": "Create virtual environment" },
73
+ { "command": "python3 -m venv", "description": "Create virtual environment (py3)" },
74
+ // uv execution
75
+ { "command": "uv run", "description": "Run with uv" },
76
+ // Poetry scripts
77
+ { "command": "poetry run", "description": "Run with Poetry" },
78
+ { "command": "poetry build", "description": "Build with Poetry" },
79
+ // Conda activation
80
+ { "command": "conda activate", "description": "Activate Conda environment" },
81
+ { "command": "conda deactivate", "description": "Deactivate Conda environment" }
82
+ ],
83
+ "permissive": [
84
+ // pip install
85
+ { "command": "pip install", "description": "Install packages" },
86
+ { "command": "pip3 install", "description": "Install packages (pip3)" },
87
+ { "command": "pip uninstall", "description": "Uninstall packages" },
88
+ { "command": "pip3 uninstall", "description": "Uninstall packages (pip3)" },
89
+ { "command": "pip install -e", "description": "Install in editable mode" },
90
+ { "command": "pip3 install -e", "description": "Install in editable mode (pip3)" },
91
+ { "command": "pip install -r", "description": "Install from requirements" },
92
+ { "command": "pip3 install -r", "description": "Install from requirements (pip3)" },
93
+ // uv install
94
+ { "command": "uv pip install", "description": "Install packages (uv)" },
95
+ { "command": "uv pip uninstall", "description": "Uninstall packages (uv)" },
96
+ { "command": "uv pip sync", "description": "Sync packages (uv)" },
97
+ { "command": "uv venv", "description": "Create venv with uv" },
98
+ // Poetry install
99
+ { "command": "poetry install", "description": "Install with Poetry" },
100
+ { "command": "poetry add", "description": "Add package with Poetry" },
101
+ { "command": "poetry remove", "description": "Remove package with Poetry" },
102
+ { "command": "poetry update", "description": "Update with Poetry" },
103
+ { "command": "poetry lock", "description": "Lock dependencies with Poetry" },
104
+ { "command": "poetry publish", "description": "Publish with Poetry" },
105
+ // Conda install
106
+ { "command": "conda install", "description": "Install packages (Conda)" },
107
+ { "command": "conda create", "description": "Create Conda environment" },
108
+ { "command": "conda remove", "description": "Remove packages (Conda)" },
109
+ { "command": "conda update", "description": "Update packages (Conda)" },
110
+ { "command": "conda env create", "description": "Create env from file (Conda)" },
111
+ { "command": "conda env remove", "description": "Remove Conda environment" }
112
+ ]
113
+ }
114
+ }
@@ -0,0 +1,99 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "ruby",
4
+ "description": "Ruby, Bundler, Rails, and Rake",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["Gemfile", "Gemfile.lock", "*.gemspec", "Rakefile"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // ruby info
12
+ { "command": "ruby --version", "description": "Check Ruby version" },
13
+ { "command": "ruby -v", "description": "Check Ruby version" },
14
+ { "command": "ruby --help", "description": "Ruby help" },
15
+ // gem info
16
+ { "command": "gem --version", "description": "Check gem version" },
17
+ { "command": "gem -v", "description": "Check gem version" },
18
+ { "command": "gem list", "description": "List installed gems" },
19
+ { "command": "gem search", "description": "Search RubyGems" },
20
+ { "command": "gem info", "description": "Show gem info" },
21
+ { "command": "gem specification", "description": "Show gem specification" },
22
+ { "command": "gem environment", "description": "Show gem environment" },
23
+ { "command": "gem outdated", "description": "List outdated gems" },
24
+ // bundler info
25
+ { "command": "bundle --version", "description": "Check Bundler version" },
26
+ { "command": "bundle version", "description": "Check Bundler version" },
27
+ { "command": "bundle show", "description": "Show gem location" },
28
+ { "command": "bundle list", "description": "List bundled gems" },
29
+ { "command": "bundle outdated", "description": "List outdated gems" },
30
+ { "command": "bundle check", "description": "Check gem requirements" },
31
+ { "command": "bundle info", "description": "Show gem info" },
32
+ { "command": "bundle config list", "description": "List bundle config" },
33
+ // rails info
34
+ { "command": "rails --version", "description": "Check Rails version" },
35
+ { "command": "rails -v", "description": "Check Rails version" },
36
+ { "command": "rails about", "description": "Show Rails info" },
37
+ { "command": "rails routes", "description": "List routes" },
38
+ { "command": "rails stats", "description": "Show code stats" },
39
+ // rake info
40
+ { "command": "rake --version", "description": "Check Rake version" },
41
+ { "command": "rake -T", "description": "List rake tasks" },
42
+ { "command": "rake -D", "description": "Describe rake tasks" }
43
+ ],
44
+ "standard": [
45
+ // bundle exec (run bundled commands)
46
+ { "command": "bundle exec", "description": "Execute with bundled gems" },
47
+ // rails server/console
48
+ { "command": "rails server", "description": "Start Rails server" },
49
+ { "command": "rails s", "description": "Start Rails server" },
50
+ { "command": "rails console", "description": "Start Rails console" },
51
+ { "command": "rails c", "description": "Start Rails console" },
52
+ { "command": "rails dbconsole", "description": "Start database console" },
53
+ // rails generators
54
+ { "command": "rails generate", "description": "Run generator" },
55
+ { "command": "rails g", "description": "Run generator" },
56
+ { "command": "rails destroy", "description": "Undo generator" },
57
+ { "command": "rails d", "description": "Undo generator" },
58
+ // rails assets
59
+ { "command": "rails assets:precompile", "description": "Precompile assets" },
60
+ { "command": "rails assets:clean", "description": "Clean assets" },
61
+ // rake tasks
62
+ { "command": "rake", "description": "Run rake task" },
63
+ { "command": "rake test", "description": "Run tests" },
64
+ { "command": "rake spec", "description": "Run RSpec tests" },
65
+ // rspec
66
+ { "command": "rspec", "description": "Run RSpec" },
67
+ // rubocop
68
+ { "command": "rubocop", "description": "Run RuboCop" },
69
+ { "command": "rubocop -a", "description": "Run RuboCop with auto-fix" },
70
+ { "command": "rubocop -A", "description": "Run RuboCop with aggressive auto-fix" },
71
+ // ruby execution
72
+ { "command": "ruby", "description": "Run Ruby script" }
73
+ ],
74
+ "permissive": [
75
+ // gem install
76
+ { "command": "gem install", "description": "Install gem" },
77
+ { "command": "gem uninstall", "description": "Uninstall gem" },
78
+ { "command": "gem update", "description": "Update gems" },
79
+ { "command": "gem cleanup", "description": "Clean old gems" },
80
+ // bundle install
81
+ { "command": "bundle install", "description": "Install bundled gems" },
82
+ { "command": "bundle update", "description": "Update bundled gems" },
83
+ { "command": "bundle add", "description": "Add gem to Gemfile" },
84
+ { "command": "bundle remove", "description": "Remove gem from Gemfile" },
85
+ { "command": "bundle config set", "description": "Set bundle config" },
86
+ { "command": "bundle clean", "description": "Clean unused gems" },
87
+ // rails database
88
+ { "command": "rails db:create", "description": "Create database" },
89
+ { "command": "rails db:drop", "description": "Drop database" },
90
+ { "command": "rails db:migrate", "description": "Run migrations" },
91
+ { "command": "rails db:rollback", "description": "Rollback migration" },
92
+ { "command": "rails db:seed", "description": "Seed database" },
93
+ { "command": "rails db:reset", "description": "Reset database" },
94
+ { "command": "rails db:setup", "description": "Setup database" },
95
+ // rails new
96
+ { "command": "rails new", "description": "Create new Rails app" }
97
+ ]
98
+ }
99
+ }