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,110 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "gcp",
4
+ "description": "Google Cloud CLI, gsutil, Firebase, and BigQuery",
5
+ "category": "Cloud Providers",
6
+ "detection": {
7
+ "files": ["firebase.json", "app.yaml", "cloudbuild.yaml"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // gcloud info
12
+ { "command": "gcloud --version", "description": "Check gcloud version" },
13
+ { "command": "gcloud version", "description": "Check gcloud version" },
14
+ { "command": "gcloud config list", "description": "List gcloud config" },
15
+ { "command": "gcloud config get", "description": "Get gcloud config value" },
16
+ { "command": "gcloud auth list", "description": "List authenticated accounts" },
17
+ { "command": "gcloud info", "description": "Show gcloud info" },
18
+ // projects
19
+ { "command": "gcloud projects list", "description": "List GCP projects" },
20
+ { "command": "gcloud projects describe", "description": "Describe project" },
21
+ // compute
22
+ { "command": "gcloud compute instances list", "description": "List compute instances" },
23
+ { "command": "gcloud compute instances describe", "description": "Describe instance" },
24
+ { "command": "gcloud compute zones list", "description": "List zones" },
25
+ { "command": "gcloud compute regions list", "description": "List regions" },
26
+ // cloud run
27
+ { "command": "gcloud run services list", "description": "List Cloud Run services" },
28
+ { "command": "gcloud run services describe", "description": "Describe Cloud Run service" },
29
+ { "command": "gcloud run revisions list", "description": "List Cloud Run revisions" },
30
+ // app engine
31
+ { "command": "gcloud app describe", "description": "Describe App Engine app" },
32
+ { "command": "gcloud app versions list", "description": "List App Engine versions" },
33
+ { "command": "gcloud app services list", "description": "List App Engine services" },
34
+ // functions
35
+ { "command": "gcloud functions list", "description": "List Cloud Functions" },
36
+ { "command": "gcloud functions describe", "description": "Describe function" },
37
+ // gsutil info
38
+ { "command": "gsutil --version", "description": "Check gsutil version" },
39
+ { "command": "gsutil ls", "description": "List GCS buckets/objects" },
40
+ { "command": "gsutil du", "description": "Show disk usage" },
41
+ { "command": "gsutil stat", "description": "Show object info" },
42
+ // firebase info
43
+ { "command": "firebase --version", "description": "Check Firebase CLI version" },
44
+ { "command": "firebase projects:list", "description": "List Firebase projects" },
45
+ { "command": "firebase apps:list", "description": "List Firebase apps" },
46
+ { "command": "firebase hosting:sites:list", "description": "List Hosting sites" },
47
+ // bq info
48
+ { "command": "bq --version", "description": "Check BigQuery CLI version" },
49
+ { "command": "bq show", "description": "Show dataset/table info" },
50
+ { "command": "bq ls", "description": "List datasets/tables" }
51
+ ],
52
+ "standard": [
53
+ // gcloud builds (no deploy)
54
+ { "command": "gcloud builds submit", "description": "Submit Cloud Build" },
55
+ { "command": "gcloud builds list", "description": "List builds" },
56
+ { "command": "gcloud builds describe", "description": "Describe build" },
57
+ { "command": "gcloud builds log", "description": "View build logs" },
58
+ // cloud run (dry-run)
59
+ { "command": "gcloud run deploy --dry-run", "description": "Dry-run Cloud Run deploy" },
60
+ // logs
61
+ { "command": "gcloud logging read", "description": "Read logs" },
62
+ { "command": "gcloud functions logs read", "description": "Read function logs" },
63
+ { "command": "gcloud run services logs read", "description": "Read Cloud Run logs" },
64
+ // gsutil copy (no delete)
65
+ { "command": "gsutil cat", "description": "Cat GCS object" },
66
+ // firebase local
67
+ { "command": "firebase emulators:start", "description": "Start Firebase emulators" },
68
+ { "command": "firebase emulators:exec", "description": "Run command with emulators" },
69
+ { "command": "firebase serve", "description": "Serve Firebase locally" },
70
+ { "command": "firebase init", "description": "Initialize Firebase project" },
71
+ // bq queries (read-only)
72
+ { "command": "bq head", "description": "Preview table rows" },
73
+ { "command": "bq extract", "description": "Extract table to GCS" },
74
+ // config set
75
+ { "command": "gcloud config set", "description": "Set gcloud config" }
76
+ ],
77
+ "permissive": [
78
+ // cloud run deploy
79
+ { "command": "gcloud run deploy", "description": "Deploy to Cloud Run" },
80
+ { "command": "gcloud run services delete", "description": "Delete Cloud Run service" },
81
+ // app engine deploy
82
+ { "command": "gcloud app deploy", "description": "Deploy to App Engine" },
83
+ { "command": "gcloud app versions delete", "description": "Delete App Engine version" },
84
+ // functions deploy
85
+ { "command": "gcloud functions deploy", "description": "Deploy Cloud Function" },
86
+ { "command": "gcloud functions delete", "description": "Delete Cloud Function" },
87
+ // compute instances
88
+ { "command": "gcloud compute instances create", "description": "Create compute instance" },
89
+ { "command": "gcloud compute instances delete", "description": "Delete compute instance" },
90
+ { "command": "gcloud compute instances start", "description": "Start instance" },
91
+ { "command": "gcloud compute instances stop", "description": "Stop instance" },
92
+ // gsutil write/delete
93
+ { "command": "gsutil cp", "description": "Copy to/from GCS" },
94
+ { "command": "gsutil mv", "description": "Move in GCS" },
95
+ { "command": "gsutil rm", "description": "Remove from GCS" },
96
+ { "command": "gsutil rsync", "description": "Sync with GCS" },
97
+ { "command": "gsutil mb", "description": "Make GCS bucket" },
98
+ { "command": "gsutil rb", "description": "Remove GCS bucket" },
99
+ // firebase deploy
100
+ { "command": "firebase deploy", "description": "Deploy to Firebase" },
101
+ { "command": "firebase hosting:disable", "description": "Disable hosting" },
102
+ { "command": "firebase functions:delete", "description": "Delete function" },
103
+ // bq write
104
+ { "command": "bq query", "description": "Run BigQuery query" },
105
+ { "command": "bq load", "description": "Load data into BigQuery" },
106
+ { "command": "bq mk", "description": "Create dataset/table" },
107
+ { "command": "bq rm", "description": "Remove dataset/table" }
108
+ ]
109
+ }
110
+ }
@@ -0,0 +1,52 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "git",
4
+ "description": "Git version control",
5
+ "category": "Version Control",
6
+ "detection": {
7
+ "directories": [".git/"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ { "command": "git status", "description": "Check working tree status" },
12
+ { "command": "git log", "description": "View commit history" },
13
+ { "command": "git diff", "description": "View changes" },
14
+ { "command": "git branch", "description": "List branches" },
15
+ { "command": "git remote -v", "description": "List remotes" },
16
+ { "command": "git show", "description": "Show commit details" },
17
+ { "command": "git blame", "description": "Show line-by-line authorship" },
18
+ { "command": "git config --list", "description": "List git configuration" },
19
+ { "command": "git describe", "description": "Describe commit with tags" },
20
+ { "command": "git shortlog", "description": "Summarize git log" },
21
+ { "command": "git rev-parse", "description": "Parse git revisions" },
22
+ { "command": "git ls-files", "description": "List tracked files" },
23
+ { "command": "git ls-tree", "description": "List tree contents" }
24
+ ],
25
+ "standard": [
26
+ { "command": "git add", "description": "Stage changes" },
27
+ { "command": "git commit", "description": "Create commits" },
28
+ { "command": "git push", "description": "Push to remote" },
29
+ { "command": "git pull", "description": "Pull from remote" },
30
+ { "command": "git fetch", "description": "Fetch from remote" },
31
+ { "command": "git checkout", "description": "Switch branches or restore files" },
32
+ { "command": "git switch", "description": "Switch branches" },
33
+ { "command": "git restore", "description": "Restore working tree files" },
34
+ { "command": "git merge", "description": "Merge branches" },
35
+ { "command": "git stash", "description": "Stash changes" },
36
+ { "command": "git tag", "description": "Create tags" },
37
+ { "command": "git branch -d", "description": "Delete merged branch" },
38
+ { "command": "git worktree", "description": "Manage worktrees" }
39
+ ],
40
+ "permissive": [
41
+ { "command": "git rebase", "description": "Rebase branches" },
42
+ { "command": "git reset", "description": "Reset changes" },
43
+ { "command": "git cherry-pick", "description": "Cherry-pick commits" },
44
+ { "command": "git revert", "description": "Revert commits" },
45
+ { "command": "git clean", "description": "Clean untracked files" },
46
+ { "command": "git branch -D", "description": "Force delete branch" },
47
+ { "command": "git push --force-with-lease", "description": "Force push safely" },
48
+ { "command": "git reflog", "description": "View reference logs" },
49
+ { "command": "git gc", "description": "Garbage collection" }
50
+ ]
51
+ }
52
+ }
@@ -0,0 +1,132 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "github",
4
+ "description": "GitHub CLI (gh) for repository and workflow management",
5
+ "category": "Utilities",
6
+ "detection": {
7
+ "directories": [".github/workflows/", ".github/"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // gh info
12
+ { "command": "gh --version", "description": "Check GitHub CLI version" },
13
+ { "command": "gh version", "description": "Check GitHub CLI version" },
14
+ { "command": "gh help", "description": "GitHub CLI help" },
15
+ { "command": "gh auth status", "description": "Check authentication status" },
16
+ { "command": "gh config list", "description": "List GitHub CLI config" },
17
+ // repo read
18
+ { "command": "gh repo view", "description": "View repository" },
19
+ { "command": "gh repo list", "description": "List repositories" },
20
+ { "command": "gh repo clone", "description": "Clone repository" },
21
+ // pr read
22
+ { "command": "gh pr list", "description": "List pull requests" },
23
+ { "command": "gh pr view", "description": "View pull request" },
24
+ { "command": "gh pr status", "description": "Show PR status" },
25
+ { "command": "gh pr diff", "description": "View PR diff" },
26
+ { "command": "gh pr checks", "description": "View PR checks" },
27
+ { "command": "gh pr comments", "description": "View PR comments" },
28
+ // issue read
29
+ { "command": "gh issue list", "description": "List issues" },
30
+ { "command": "gh issue view", "description": "View issue" },
31
+ { "command": "gh issue status", "description": "Show issue status" },
32
+ // run read
33
+ { "command": "gh run list", "description": "List workflow runs" },
34
+ { "command": "gh run view", "description": "View workflow run" },
35
+ { "command": "gh run download", "description": "Download run artifacts" },
36
+ // release read
37
+ { "command": "gh release list", "description": "List releases" },
38
+ { "command": "gh release view", "description": "View release" },
39
+ { "command": "gh release download", "description": "Download release assets" },
40
+ // gist read
41
+ { "command": "gh gist list", "description": "List gists" },
42
+ { "command": "gh gist view", "description": "View gist" },
43
+ { "command": "gh gist clone", "description": "Clone gist" },
44
+ // api read
45
+ { "command": "gh api", "description": "GitHub API calls" },
46
+ // search
47
+ { "command": "gh search repos", "description": "Search repositories" },
48
+ { "command": "gh search issues", "description": "Search issues" },
49
+ { "command": "gh search prs", "description": "Search pull requests" },
50
+ { "command": "gh search commits", "description": "Search commits" },
51
+ { "command": "gh search code", "description": "Search code" }
52
+ ],
53
+ "standard": [
54
+ // pr create/edit
55
+ { "command": "gh pr create", "description": "Create pull request" },
56
+ { "command": "gh pr checkout", "description": "Checkout PR branch" },
57
+ { "command": "gh pr edit", "description": "Edit pull request" },
58
+ { "command": "gh pr comment", "description": "Comment on PR" },
59
+ { "command": "gh pr review", "description": "Review pull request" },
60
+ { "command": "gh pr ready", "description": "Mark PR as ready" },
61
+ // issue create/edit
62
+ { "command": "gh issue create", "description": "Create issue" },
63
+ { "command": "gh issue edit", "description": "Edit issue" },
64
+ { "command": "gh issue comment", "description": "Comment on issue" },
65
+ { "command": "gh issue develop", "description": "Create branch for issue" },
66
+ { "command": "gh issue pin", "description": "Pin issue" },
67
+ { "command": "gh issue unpin", "description": "Unpin issue" },
68
+ // run watch/cancel
69
+ { "command": "gh run watch", "description": "Watch workflow run" },
70
+ // gist create
71
+ { "command": "gh gist create", "description": "Create gist" },
72
+ { "command": "gh gist edit", "description": "Edit gist" },
73
+ // project
74
+ { "command": "gh project list", "description": "List projects" },
75
+ { "command": "gh project view", "description": "View project" },
76
+ { "command": "gh project create", "description": "Create project" },
77
+ // label
78
+ { "command": "gh label list", "description": "List labels" },
79
+ { "command": "gh label create", "description": "Create label" },
80
+ // codespace
81
+ { "command": "gh codespace list", "description": "List codespaces" },
82
+ { "command": "gh codespace create", "description": "Create codespace" },
83
+ { "command": "gh codespace code", "description": "Open codespace in VS Code" },
84
+ { "command": "gh codespace ssh", "description": "SSH to codespace" }
85
+ ],
86
+ "permissive": [
87
+ // pr merge/close
88
+ { "command": "gh pr merge", "description": "Merge pull request" },
89
+ { "command": "gh pr close", "description": "Close pull request" },
90
+ { "command": "gh pr reopen", "description": "Reopen pull request" },
91
+ // issue close
92
+ { "command": "gh issue close", "description": "Close issue" },
93
+ { "command": "gh issue reopen", "description": "Reopen issue" },
94
+ { "command": "gh issue delete", "description": "Delete issue" },
95
+ { "command": "gh issue transfer", "description": "Transfer issue" },
96
+ // repo management
97
+ { "command": "gh repo create", "description": "Create repository" },
98
+ { "command": "gh repo delete", "description": "Delete repository" },
99
+ { "command": "gh repo fork", "description": "Fork repository" },
100
+ { "command": "gh repo rename", "description": "Rename repository" },
101
+ { "command": "gh repo archive", "description": "Archive repository" },
102
+ { "command": "gh repo edit", "description": "Edit repository" },
103
+ { "command": "gh repo sync", "description": "Sync repository" },
104
+ // release management
105
+ { "command": "gh release create", "description": "Create release" },
106
+ { "command": "gh release delete", "description": "Delete release" },
107
+ { "command": "gh release edit", "description": "Edit release" },
108
+ { "command": "gh release upload", "description": "Upload release assets" },
109
+ // run management
110
+ { "command": "gh run rerun", "description": "Rerun workflow" },
111
+ { "command": "gh run cancel", "description": "Cancel workflow run" },
112
+ { "command": "gh run delete", "description": "Delete workflow run" },
113
+ // workflow management
114
+ { "command": "gh workflow run", "description": "Run workflow" },
115
+ { "command": "gh workflow enable", "description": "Enable workflow" },
116
+ { "command": "gh workflow disable", "description": "Disable workflow" },
117
+ // gist delete
118
+ { "command": "gh gist delete", "description": "Delete gist" },
119
+ // codespace delete
120
+ { "command": "gh codespace delete", "description": "Delete codespace" },
121
+ { "command": "gh codespace stop", "description": "Stop codespace" },
122
+ // secret management
123
+ { "command": "gh secret list", "description": "List secrets" },
124
+ { "command": "gh secret set", "description": "Set secret" },
125
+ { "command": "gh secret delete", "description": "Delete secret" },
126
+ // variable management
127
+ { "command": "gh variable list", "description": "List variables" },
128
+ { "command": "gh variable set", "description": "Set variable" },
129
+ { "command": "gh variable delete", "description": "Delete variable" }
130
+ ]
131
+ }
132
+ }
@@ -0,0 +1,75 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "go",
4
+ "description": "Go development and golangci-lint",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["go.mod", "go.sum"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // go info
12
+ { "command": "go version", "description": "Check Go version" },
13
+ { "command": "go env", "description": "Show Go environment" },
14
+ { "command": "go help", "description": "Go help" },
15
+ // go module info
16
+ { "command": "go list", "description": "List packages" },
17
+ { "command": "go list -m", "description": "List modules" },
18
+ { "command": "go mod graph", "description": "Show module graph" },
19
+ { "command": "go mod why", "description": "Explain module dependency" },
20
+ { "command": "go mod verify", "description": "Verify dependencies" },
21
+ // go doc
22
+ { "command": "go doc", "description": "Show documentation" },
23
+ // golangci-lint info
24
+ { "command": "golangci-lint --version", "description": "Check golangci-lint version" },
25
+ { "command": "golangci-lint version", "description": "Check golangci-lint version" },
26
+ { "command": "golangci-lint linters", "description": "List available linters" },
27
+ { "command": "golangci-lint help", "description": "golangci-lint help" }
28
+ ],
29
+ "standard": [
30
+ // go build (no install)
31
+ { "command": "go build", "description": "Build package" },
32
+ { "command": "go build -v", "description": "Build with verbose" },
33
+ { "command": "go build -race", "description": "Build with race detector" },
34
+ // go test
35
+ { "command": "go test", "description": "Run tests" },
36
+ { "command": "go test -v", "description": "Run tests verbose" },
37
+ { "command": "go test -race", "description": "Run tests with race detector" },
38
+ { "command": "go test -cover", "description": "Run tests with coverage" },
39
+ { "command": "go test -coverprofile", "description": "Generate coverage profile" },
40
+ { "command": "go test -bench", "description": "Run benchmarks" },
41
+ // go run
42
+ { "command": "go run", "description": "Run Go program" },
43
+ // go formatting
44
+ { "command": "go fmt", "description": "Format code" },
45
+ { "command": "gofmt", "description": "Format code" },
46
+ { "command": "go vet", "description": "Vet code" },
47
+ // go mod tidy
48
+ { "command": "go mod tidy", "description": "Tidy modules" },
49
+ { "command": "go mod edit", "description": "Edit go.mod" },
50
+ // go generate
51
+ { "command": "go generate", "description": "Run go generate" },
52
+ // golangci-lint
53
+ { "command": "golangci-lint run", "description": "Run linters" },
54
+ { "command": "golangci-lint run --fix", "description": "Run linters with fix" }
55
+ ],
56
+ "permissive": [
57
+ // go install
58
+ { "command": "go install", "description": "Install package" },
59
+ { "command": "go get", "description": "Download dependencies" },
60
+ { "command": "go get -u", "description": "Update dependencies" },
61
+ // go mod download
62
+ { "command": "go mod download", "description": "Download modules" },
63
+ { "command": "go mod vendor", "description": "Vendor dependencies" },
64
+ // go clean
65
+ { "command": "go clean", "description": "Clean build cache" },
66
+ { "command": "go clean -cache", "description": "Clean build cache" },
67
+ { "command": "go clean -testcache", "description": "Clean test cache" },
68
+ { "command": "go clean -modcache", "description": "Clean module cache" },
69
+ // go work
70
+ { "command": "go work init", "description": "Initialize workspace" },
71
+ { "command": "go work use", "description": "Add module to workspace" },
72
+ { "command": "go work sync", "description": "Sync workspace" }
73
+ ]
74
+ }
75
+ }
@@ -0,0 +1,98 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "ios",
4
+ "description": "Xcode, Swift, CocoaPods, and iOS development",
5
+ "category": "Mobile Development",
6
+ "detection": {
7
+ "files": ["Podfile", "Podfile.lock", "Package.swift"],
8
+ "directories": ["*.xcodeproj/", "*.xcworkspace/"]
9
+ },
10
+ "levels": {
11
+ "restrictive": [
12
+ // xcodebuild info
13
+ { "command": "xcodebuild -version", "description": "Check Xcode version" },
14
+ { "command": "xcodebuild -showsdks", "description": "List available SDKs" },
15
+ { "command": "xcodebuild -list", "description": "List targets and schemes" },
16
+ { "command": "xcodebuild -showBuildSettings", "description": "Show build settings" },
17
+ // swift info
18
+ { "command": "swift --version", "description": "Check Swift version" },
19
+ { "command": "swift -version", "description": "Check Swift version" },
20
+ { "command": "swift package describe", "description": "Describe Swift package" },
21
+ { "command": "swift package show-dependencies", "description": "Show dependencies" },
22
+ { "command": "swift package dump-package", "description": "Dump package manifest" },
23
+ // xcrun info
24
+ { "command": "xcrun --version", "description": "Check xcrun version" },
25
+ { "command": "xcrun --find", "description": "Find Xcode tool" },
26
+ { "command": "xcrun --show-sdk-path", "description": "Show SDK path" },
27
+ { "command": "xcrun --show-sdk-version", "description": "Show SDK version" },
28
+ // simulator info
29
+ { "command": "xcrun simctl list", "description": "List simulators" },
30
+ { "command": "xcrun simctl status_bar", "description": "Get status bar info" },
31
+ // cocoapods info
32
+ { "command": "pod --version", "description": "Check CocoaPods version" },
33
+ { "command": "pod env", "description": "Show CocoaPods environment" },
34
+ { "command": "pod search", "description": "Search for pods" },
35
+ { "command": "pod spec cat", "description": "Show pod spec" },
36
+ { "command": "pod outdated", "description": "List outdated pods" },
37
+ { "command": "pod list", "description": "List all pods" },
38
+ // xcode-select
39
+ { "command": "xcode-select --print-path", "description": "Show Xcode path" },
40
+ { "command": "xcode-select --version", "description": "Check xcode-select version" }
41
+ ],
42
+ "standard": [
43
+ // xcodebuild (no archive/export)
44
+ { "command": "xcodebuild build", "description": "Build project" },
45
+ { "command": "xcodebuild clean", "description": "Clean build" },
46
+ { "command": "xcodebuild test", "description": "Run tests" },
47
+ { "command": "xcodebuild analyze", "description": "Analyze code" },
48
+ { "command": "xcodebuild build-for-testing", "description": "Build for testing" },
49
+ { "command": "xcodebuild test-without-building", "description": "Test without building" },
50
+ // swift build/test
51
+ { "command": "swift build", "description": "Build Swift package" },
52
+ { "command": "swift test", "description": "Run Swift tests" },
53
+ { "command": "swift run", "description": "Run Swift package" },
54
+ { "command": "swift package resolve", "description": "Resolve dependencies" },
55
+ { "command": "swift package generate-xcodeproj", "description": "Generate Xcode project" },
56
+ // simulator management
57
+ { "command": "xcrun simctl create", "description": "Create simulator" },
58
+ { "command": "xcrun simctl delete", "description": "Delete simulator" },
59
+ { "command": "xcrun simctl erase", "description": "Erase simulator" },
60
+ { "command": "xcrun simctl launch", "description": "Launch app in simulator" },
61
+ { "command": "xcrun simctl terminate", "description": "Terminate app in simulator" },
62
+ { "command": "xcrun simctl openurl", "description": "Open URL in simulator" },
63
+ // cocoapods dry-run
64
+ { "command": "pod install --dry-run", "description": "Dry-run pod install" },
65
+ { "command": "pod update --dry-run", "description": "Dry-run pod update" },
66
+ { "command": "pod deintegrate", "description": "Deintegrate pods" },
67
+ // swiftlint/swiftformat
68
+ { "command": "swiftlint", "description": "Run SwiftLint" },
69
+ { "command": "swiftlint lint", "description": "Lint Swift code" },
70
+ { "command": "swiftlint autocorrect", "description": "Auto-fix lint issues" },
71
+ { "command": "swiftformat", "description": "Format Swift code" }
72
+ ],
73
+ "permissive": [
74
+ // cocoapods install
75
+ { "command": "pod install", "description": "Install pods" },
76
+ { "command": "pod update", "description": "Update pods" },
77
+ { "command": "pod repo update", "description": "Update pod repos" },
78
+ { "command": "pod cache clean", "description": "Clean pod cache" },
79
+ // swift package management
80
+ { "command": "swift package update", "description": "Update dependencies" },
81
+ { "command": "swift package clean", "description": "Clean build artifacts" },
82
+ { "command": "swift package reset", "description": "Reset package" },
83
+ { "command": "swift package init", "description": "Initialize package" },
84
+ // xcodebuild archive/export
85
+ { "command": "xcodebuild archive", "description": "Create archive" },
86
+ { "command": "xcodebuild -exportArchive", "description": "Export archive" },
87
+ // simulator boot/shutdown
88
+ { "command": "xcrun simctl boot", "description": "Boot simulator" },
89
+ { "command": "xcrun simctl shutdown", "description": "Shutdown simulator" },
90
+ { "command": "xcrun simctl install", "description": "Install app on simulator" },
91
+ { "command": "xcrun simctl uninstall", "description": "Uninstall app from simulator" },
92
+ // carthage (if used)
93
+ { "command": "carthage bootstrap", "description": "Bootstrap Carthage" },
94
+ { "command": "carthage update", "description": "Update Carthage deps" },
95
+ { "command": "carthage build", "description": "Build Carthage deps" }
96
+ ]
97
+ }
98
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "../template.schema.json",
3
+ "name": "java",
4
+ "description": "Maven, Gradle, Java, and JVM development",
5
+ "category": "Languages & Runtimes",
6
+ "detection": {
7
+ "files": ["pom.xml", "build.gradle", "build.gradle.kts", "settings.gradle", "settings.gradle.kts"]
8
+ },
9
+ "levels": {
10
+ "restrictive": [
11
+ // java info
12
+ { "command": "java --version", "description": "Check Java version" },
13
+ { "command": "java -version", "description": "Check Java version" },
14
+ { "command": "javac --version", "description": "Check javac version" },
15
+ { "command": "javac -version", "description": "Check javac version" },
16
+ // maven info
17
+ { "command": "mvn --version", "description": "Check Maven version" },
18
+ { "command": "mvn -v", "description": "Check Maven version" },
19
+ { "command": "mvn help:effective-pom", "description": "Show effective POM" },
20
+ { "command": "mvn help:effective-settings", "description": "Show effective settings" },
21
+ { "command": "mvn dependency:tree", "description": "Show dependency tree" },
22
+ { "command": "mvn dependency:list", "description": "List dependencies" },
23
+ { "command": "mvn dependency:analyze", "description": "Analyze dependencies" },
24
+ { "command": "mvn versions:display-dependency-updates", "description": "Show dependency updates" },
25
+ { "command": "mvn versions:display-plugin-updates", "description": "Show plugin updates" },
26
+ // gradle info
27
+ { "command": "gradle --version", "description": "Check Gradle version" },
28
+ { "command": "gradle -v", "description": "Check Gradle version" },
29
+ { "command": "gradle tasks", "description": "List Gradle tasks" },
30
+ { "command": "gradle dependencies", "description": "Show Gradle dependencies" },
31
+ { "command": "gradle projects", "description": "List Gradle projects" },
32
+ { "command": "gradle properties", "description": "Show project properties" },
33
+ // gradle wrapper
34
+ { "command": "./gradlew --version", "description": "Check Gradle wrapper version" },
35
+ { "command": "./gradlew tasks", "description": "List Gradle wrapper tasks" },
36
+ { "command": "./gradlew dependencies", "description": "Show Gradle wrapper dependencies" }
37
+ ],
38
+ "standard": [
39
+ // maven build (no install/deploy)
40
+ { "command": "mvn compile", "description": "Compile sources" },
41
+ { "command": "mvn test-compile", "description": "Compile test sources" },
42
+ { "command": "mvn test", "description": "Run tests" },
43
+ { "command": "mvn package", "description": "Package project" },
44
+ { "command": "mvn verify", "description": "Verify project" },
45
+ { "command": "mvn validate", "description": "Validate project" },
46
+ { "command": "mvn site", "description": "Generate site" },
47
+ // maven plugins
48
+ { "command": "mvn checkstyle:check", "description": "Run checkstyle" },
49
+ { "command": "mvn spotbugs:check", "description": "Run SpotBugs" },
50
+ { "command": "mvn pmd:check", "description": "Run PMD" },
51
+ { "command": "mvn jacoco:report", "description": "Generate coverage report" },
52
+ // gradle build (no publish)
53
+ { "command": "gradle build", "description": "Build project" },
54
+ { "command": "gradle assemble", "description": "Assemble outputs" },
55
+ { "command": "gradle test", "description": "Run tests" },
56
+ { "command": "gradle check", "description": "Run all checks" },
57
+ { "command": "gradle classes", "description": "Compile classes" },
58
+ { "command": "gradle testClasses", "description": "Compile test classes" },
59
+ { "command": "gradle jar", "description": "Create JAR" },
60
+ // gradle wrapper
61
+ { "command": "./gradlew build", "description": "Build with wrapper" },
62
+ { "command": "./gradlew test", "description": "Test with wrapper" },
63
+ { "command": "./gradlew assemble", "description": "Assemble with wrapper" },
64
+ { "command": "./gradlew check", "description": "Check with wrapper" },
65
+ // java execution
66
+ { "command": "java -jar", "description": "Run JAR file" },
67
+ { "command": "java -cp", "description": "Run with classpath" },
68
+ { "command": "java -classpath", "description": "Run with classpath" }
69
+ ],
70
+ "permissive": [
71
+ // maven install/deploy
72
+ { "command": "mvn install", "description": "Install to local repo" },
73
+ { "command": "mvn deploy", "description": "Deploy to remote repo" },
74
+ { "command": "mvn clean", "description": "Clean project" },
75
+ { "command": "mvn clean install", "description": "Clean and install" },
76
+ { "command": "mvn clean package", "description": "Clean and package" },
77
+ { "command": "mvn release:prepare", "description": "Prepare release" },
78
+ { "command": "mvn release:perform", "description": "Perform release" },
79
+ // maven dependency
80
+ { "command": "mvn dependency:resolve", "description": "Resolve dependencies" },
81
+ { "command": "mvn dependency:purge-local-repository", "description": "Purge local repo" },
82
+ // gradle publish
83
+ { "command": "gradle publish", "description": "Publish artifacts" },
84
+ { "command": "gradle publishToMavenLocal", "description": "Publish to local Maven" },
85
+ { "command": "gradle clean", "description": "Clean project" },
86
+ { "command": "gradle wrapper", "description": "Generate Gradle wrapper" },
87
+ // gradle wrapper
88
+ { "command": "./gradlew clean", "description": "Clean with wrapper" },
89
+ { "command": "./gradlew publish", "description": "Publish with wrapper" },
90
+ { "command": "./gradlew publishToMavenLocal", "description": "Publish to local Maven with wrapper" }
91
+ ]
92
+ }
93
+ }