codegate-ai 0.1.0

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 (147) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +390 -0
  3. package/dist/cli-prompts.d.ts +6 -0
  4. package/dist/cli-prompts.js +94 -0
  5. package/dist/cli.d.ts +64 -0
  6. package/dist/cli.js +443 -0
  7. package/dist/commands/run-policy.d.ts +27 -0
  8. package/dist/commands/run-policy.js +39 -0
  9. package/dist/commands/scan-command/helpers.d.ts +28 -0
  10. package/dist/commands/scan-command/helpers.js +233 -0
  11. package/dist/commands/scan-command.d.ts +90 -0
  12. package/dist/commands/scan-command.js +403 -0
  13. package/dist/commands/undo.d.ts +5 -0
  14. package/dist/commands/undo.js +14 -0
  15. package/dist/config.d.ts +50 -0
  16. package/dist/config.js +187 -0
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.js +1 -0
  19. package/dist/knowledge-base/claude-code.json +152 -0
  20. package/dist/knowledge-base/cline.json +224 -0
  21. package/dist/knowledge-base/codex.json +162 -0
  22. package/dist/knowledge-base/copilot.json +132 -0
  23. package/dist/knowledge-base/cursor.json +134 -0
  24. package/dist/knowledge-base/gemini-cli.json +112 -0
  25. package/dist/knowledge-base/jetbrains-junie.json +208 -0
  26. package/dist/knowledge-base/kiro.json +102 -0
  27. package/dist/knowledge-base/opencode.json +128 -0
  28. package/dist/knowledge-base/roo-code.json +116 -0
  29. package/dist/knowledge-base/schema.json +77 -0
  30. package/dist/knowledge-base/windsurf.json +80 -0
  31. package/dist/knowledge-base/zed.json +88 -0
  32. package/dist/layer1-discovery/config-parser.d.ts +12 -0
  33. package/dist/layer1-discovery/config-parser.js +52 -0
  34. package/dist/layer1-discovery/file-walker.d.ts +13 -0
  35. package/dist/layer1-discovery/file-walker.js +77 -0
  36. package/dist/layer1-discovery/knowledge-base.d.ts +36 -0
  37. package/dist/layer1-discovery/knowledge-base.js +58 -0
  38. package/dist/layer1-discovery/tool-detector.d.ts +20 -0
  39. package/dist/layer1-discovery/tool-detector.js +138 -0
  40. package/dist/layer2-static/detectors/command-exec.d.ts +11 -0
  41. package/dist/layer2-static/detectors/command-exec.js +343 -0
  42. package/dist/layer2-static/detectors/consent-bypass.d.ts +8 -0
  43. package/dist/layer2-static/detectors/consent-bypass.js +330 -0
  44. package/dist/layer2-static/detectors/env-override.d.ts +8 -0
  45. package/dist/layer2-static/detectors/env-override.js +132 -0
  46. package/dist/layer2-static/detectors/git-hooks.d.ts +11 -0
  47. package/dist/layer2-static/detectors/git-hooks.js +61 -0
  48. package/dist/layer2-static/detectors/ide-settings.d.ts +8 -0
  49. package/dist/layer2-static/detectors/ide-settings.js +66 -0
  50. package/dist/layer2-static/detectors/plugin-manifest.d.ts +9 -0
  51. package/dist/layer2-static/detectors/plugin-manifest.js +1943 -0
  52. package/dist/layer2-static/detectors/rule-file.d.ts +7 -0
  53. package/dist/layer2-static/detectors/rule-file.js +299 -0
  54. package/dist/layer2-static/detectors/symlink.d.ts +9 -0
  55. package/dist/layer2-static/detectors/symlink.js +45 -0
  56. package/dist/layer2-static/engine.d.ts +28 -0
  57. package/dist/layer2-static/engine.js +83 -0
  58. package/dist/layer2-static/evidence.d.ts +12 -0
  59. package/dist/layer2-static/evidence.js +128 -0
  60. package/dist/layer2-static/rule-engine.d.ts +24 -0
  61. package/dist/layer2-static/rule-engine.js +138 -0
  62. package/dist/layer2-static/state/scan-state.d.ts +32 -0
  63. package/dist/layer2-static/state/scan-state.js +296 -0
  64. package/dist/layer3-dynamic/command-builder.d.ts +15 -0
  65. package/dist/layer3-dynamic/command-builder.js +39 -0
  66. package/dist/layer3-dynamic/local-text-analysis.d.ts +19 -0
  67. package/dist/layer3-dynamic/local-text-analysis.js +73 -0
  68. package/dist/layer3-dynamic/meta-agent.d.ts +17 -0
  69. package/dist/layer3-dynamic/meta-agent.js +33 -0
  70. package/dist/layer3-dynamic/prompt-templates/local-text-analysis.md +32 -0
  71. package/dist/layer3-dynamic/prompt-templates/security-analysis.md +13 -0
  72. package/dist/layer3-dynamic/prompt-templates/tool-poisoning.md +15 -0
  73. package/dist/layer3-dynamic/resource-fetcher.d.ts +25 -0
  74. package/dist/layer3-dynamic/resource-fetcher.js +119 -0
  75. package/dist/layer3-dynamic/sandbox.d.ts +13 -0
  76. package/dist/layer3-dynamic/sandbox.js +40 -0
  77. package/dist/layer3-dynamic/tool-description-acquisition.d.ts +22 -0
  78. package/dist/layer3-dynamic/tool-description-acquisition.js +76 -0
  79. package/dist/layer3-dynamic/tool-description-scanner.d.ts +11 -0
  80. package/dist/layer3-dynamic/tool-description-scanner.js +53 -0
  81. package/dist/layer3-dynamic/toxic-flow.d.ts +12 -0
  82. package/dist/layer3-dynamic/toxic-flow.js +57 -0
  83. package/dist/layer4-remediation/actions/quarantine.d.ts +1 -0
  84. package/dist/layer4-remediation/actions/quarantine.js +8 -0
  85. package/dist/layer4-remediation/actions/remove-field.d.ts +5 -0
  86. package/dist/layer4-remediation/actions/remove-field.js +53 -0
  87. package/dist/layer4-remediation/actions/replace-value.d.ts +5 -0
  88. package/dist/layer4-remediation/actions/replace-value.js +26 -0
  89. package/dist/layer4-remediation/actions/strip-unicode.d.ts +5 -0
  90. package/dist/layer4-remediation/actions/strip-unicode.js +8 -0
  91. package/dist/layer4-remediation/backup-manager.d.ts +32 -0
  92. package/dist/layer4-remediation/backup-manager.js +138 -0
  93. package/dist/layer4-remediation/diff-generator.d.ts +6 -0
  94. package/dist/layer4-remediation/diff-generator.js +29 -0
  95. package/dist/layer4-remediation/remediation-runner.d.ts +36 -0
  96. package/dist/layer4-remediation/remediation-runner.js +230 -0
  97. package/dist/layer4-remediation/remediator.d.ts +36 -0
  98. package/dist/layer4-remediation/remediator.js +117 -0
  99. package/dist/path-display.d.ts +1 -0
  100. package/dist/path-display.js +20 -0
  101. package/dist/pipeline.d.ts +34 -0
  102. package/dist/pipeline.js +259 -0
  103. package/dist/report-summary.d.ts +6 -0
  104. package/dist/report-summary.js +48 -0
  105. package/dist/reporter/html.d.ts +2 -0
  106. package/dist/reporter/html.js +103 -0
  107. package/dist/reporter/json.d.ts +2 -0
  108. package/dist/reporter/json.js +3 -0
  109. package/dist/reporter/markdown.d.ts +2 -0
  110. package/dist/reporter/markdown.js +52 -0
  111. package/dist/reporter/sarif.d.ts +2 -0
  112. package/dist/reporter/sarif.js +84 -0
  113. package/dist/reporter/terminal.d.ts +5 -0
  114. package/dist/reporter/terminal.js +94 -0
  115. package/dist/runtime/signal-handlers.d.ts +10 -0
  116. package/dist/runtime/signal-handlers.js +17 -0
  117. package/dist/scan-target/helpers.d.ts +20 -0
  118. package/dist/scan-target/helpers.js +268 -0
  119. package/dist/scan-target/staging.d.ts +5 -0
  120. package/dist/scan-target/staging.js +114 -0
  121. package/dist/scan-target/types.d.ts +18 -0
  122. package/dist/scan-target/types.js +1 -0
  123. package/dist/scan-target.d.ts +3 -0
  124. package/dist/scan-target.js +31 -0
  125. package/dist/scan.d.ts +54 -0
  126. package/dist/scan.js +593 -0
  127. package/dist/tui/app.d.ts +10 -0
  128. package/dist/tui/app.js +21 -0
  129. package/dist/tui/theme.d.ts +8 -0
  130. package/dist/tui/theme.js +7 -0
  131. package/dist/tui/views/dashboard.d.ts +6 -0
  132. package/dist/tui/views/dashboard.js +8 -0
  133. package/dist/tui/views/deep-scan-consent.d.ts +5 -0
  134. package/dist/tui/views/deep-scan-consent.js +6 -0
  135. package/dist/tui/views/progress.d.ts +4 -0
  136. package/dist/tui/views/progress.js +6 -0
  137. package/dist/tui/views/summary.d.ts +5 -0
  138. package/dist/tui/views/summary.js +16 -0
  139. package/dist/types/discovery.d.ts +12 -0
  140. package/dist/types/discovery.js +1 -0
  141. package/dist/types/finding.d.ts +46 -0
  142. package/dist/types/finding.js +15 -0
  143. package/dist/types/report.d.ts +25 -0
  144. package/dist/types/report.js +23 -0
  145. package/dist/wrapper.d.ts +35 -0
  146. package/dist/wrapper.js +220 -0
  147. package/package.json +97 -0
@@ -0,0 +1,152 @@
1
+ {
2
+ "tool": "claude-code",
3
+ "version_range": ">=1.0.0",
4
+ "config_paths": [
5
+ {
6
+ "path": ".claude/settings.json",
7
+ "scope": "project",
8
+ "format": "jsonc",
9
+ "risk_surface": ["env_override", "hooks", "consent_bypass", "mcp_config"],
10
+ "fields_of_interest": {
11
+ "env": "environment variable overrides",
12
+ "hooks": "shell command hooks",
13
+ "enableAllProjectMcpServers": "MCP auto-approval flag",
14
+ "enabledMcpjsonServers": "per-server auto-approval list"
15
+ }
16
+ },
17
+ {
18
+ "path": ".claude/settings.json",
19
+ "scope": "user",
20
+ "format": "jsonc",
21
+ "risk_surface": ["env_override", "hooks", "consent_bypass", "mcp_config"],
22
+ "fields_of_interest": {
23
+ "env": "environment variable overrides",
24
+ "hooks": "shell command hooks",
25
+ "enableAllProjectMcpServers": "MCP auto-approval flag",
26
+ "enabledMcpjsonServers": "per-server auto-approval list"
27
+ }
28
+ },
29
+ {
30
+ "path": ".claude/settings.local.json",
31
+ "scope": "project",
32
+ "format": "jsonc",
33
+ "risk_surface": ["env_override", "hooks", "consent_bypass", "mcp_config"],
34
+ "fields_of_interest": {
35
+ "env": "environment variable overrides",
36
+ "hooks": "shell command hooks",
37
+ "enableAllProjectMcpServers": "MCP auto-approval flag",
38
+ "enabledMcpjsonServers": "per-server auto-approval list"
39
+ }
40
+ },
41
+ {
42
+ "path": ".claude/settings.local.json",
43
+ "scope": "user",
44
+ "format": "jsonc",
45
+ "risk_surface": ["env_override", "hooks", "consent_bypass", "mcp_config"],
46
+ "fields_of_interest": {
47
+ "env": "environment variable overrides",
48
+ "hooks": "shell command hooks",
49
+ "enableAllProjectMcpServers": "MCP auto-approval flag",
50
+ "enabledMcpjsonServers": "per-server auto-approval list"
51
+ }
52
+ },
53
+ {
54
+ "path": "CLAUDE.md",
55
+ "scope": "project",
56
+ "format": "markdown",
57
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
58
+ },
59
+ {
60
+ "path": ".claude/CLAUDE.md",
61
+ "scope": "project",
62
+ "format": "markdown",
63
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
64
+ },
65
+ {
66
+ "path": ".claude/CLAUDE.md",
67
+ "scope": "user",
68
+ "format": "markdown",
69
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
70
+ },
71
+ {
72
+ "path": ".claude/plugins.json",
73
+ "scope": "project",
74
+ "format": "jsonc",
75
+ "risk_surface": ["plugin_config", "remote_resource", "command_exec"]
76
+ },
77
+ {
78
+ "path": ".claude/plugins.json",
79
+ "scope": "user",
80
+ "format": "jsonc",
81
+ "risk_surface": ["plugin_config", "remote_resource", "command_exec"]
82
+ },
83
+ {
84
+ "path": ".mcp.json",
85
+ "scope": "project",
86
+ "format": "jsonc",
87
+ "risk_surface": ["command_exec", "remote_resource"],
88
+ "fields_of_interest": {
89
+ "mcpServers.*.command": "stdio command",
90
+ "mcpServers.*.args": "stdio command arguments",
91
+ "mcpServers.*.url": "remote endpoint",
92
+ "mcpServers.*.env": "runtime environment variables",
93
+ "mcp_servers.*.command": "stdio command (snake_case alias)",
94
+ "mcp_servers.*.args": "stdio command arguments (snake_case alias)",
95
+ "mcp_servers.*.url": "remote endpoint (snake_case alias)",
96
+ "mcp_servers.*.env": "runtime environment variables (snake_case alias)",
97
+ "context_servers.*.command": "stdio command (context server alias)",
98
+ "context_servers.*.args": "stdio command arguments (context server alias)",
99
+ "context_servers.*.url": "remote endpoint (context server alias)",
100
+ "context_servers.*.env": "runtime environment variables (context server alias)"
101
+ }
102
+ },
103
+ {
104
+ "path": ".mcp.json",
105
+ "scope": "user",
106
+ "format": "jsonc",
107
+ "risk_surface": ["command_exec", "remote_resource"],
108
+ "fields_of_interest": {
109
+ "mcpServers.*.command": "stdio command",
110
+ "mcpServers.*.args": "stdio command arguments",
111
+ "mcpServers.*.url": "remote endpoint",
112
+ "mcpServers.*.env": "runtime environment variables",
113
+ "mcp_servers.*.command": "stdio command (snake_case alias)",
114
+ "mcp_servers.*.args": "stdio command arguments (snake_case alias)",
115
+ "mcp_servers.*.url": "remote endpoint (snake_case alias)",
116
+ "mcp_servers.*.env": "runtime environment variables (snake_case alias)",
117
+ "context_servers.*.command": "stdio command (context server alias)",
118
+ "context_servers.*.args": "stdio command arguments (context server alias)",
119
+ "context_servers.*.url": "remote endpoint (context server alias)",
120
+ "context_servers.*.env": "runtime environment variables (context server alias)"
121
+ }
122
+ }
123
+ ],
124
+ "skill_paths": [
125
+ {
126
+ "path": ".claude/commands/**/*.md",
127
+ "scope": "project",
128
+ "type": "custom_command",
129
+ "risk_surface": ["prompt_injection"]
130
+ },
131
+ {
132
+ "path": ".claude/commands/**/*.md",
133
+ "scope": "user",
134
+ "type": "custom_command",
135
+ "risk_surface": ["prompt_injection"]
136
+ }
137
+ ],
138
+ "extension_mechanisms": [
139
+ {
140
+ "type": "claude_sdk_plugin",
141
+ "install_pattern": "claude plugin install <package>",
142
+ "risk": "plugin packages can add tools and execution-capable workflows",
143
+ "fetchable": true
144
+ },
145
+ {
146
+ "type": "mcp_npm_package",
147
+ "install_pattern": "npx -y <package>",
148
+ "risk": "arbitrary code execution at install/runtime",
149
+ "fetchable": true
150
+ }
151
+ ]
152
+ }
@@ -0,0 +1,224 @@
1
+ {
2
+ "tool": "cline",
3
+ "version_range": ">=0.1.0",
4
+ "config_paths": [
5
+ {
6
+ "path": ".clinerules",
7
+ "scope": "project",
8
+ "format": "markdown",
9
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
10
+ },
11
+ {
12
+ "path": ".clinerules/**/*.md",
13
+ "scope": "project",
14
+ "format": "markdown",
15
+ "risk_surface": ["prompt_injection", "unicode_backdoor", "command_exec"]
16
+ },
17
+ {
18
+ "path": ".clinerules/**/*.txt",
19
+ "scope": "project",
20
+ "format": "text",
21
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
22
+ },
23
+ {
24
+ "path": "Documents/Cline/Rules/**/*.md",
25
+ "scope": "user",
26
+ "format": "markdown",
27
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
28
+ },
29
+ {
30
+ "path": "Documents/Cline/Rules/**/*.txt",
31
+ "scope": "user",
32
+ "format": "text",
33
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
34
+ },
35
+ {
36
+ "path": ".cline/settings.json",
37
+ "scope": "project",
38
+ "format": "jsonc",
39
+ "risk_surface": ["mcp_config", "consent_bypass", "command_exec"]
40
+ },
41
+ {
42
+ "path": ".cline/settings.json",
43
+ "scope": "user",
44
+ "format": "jsonc",
45
+ "risk_surface": ["mcp_config", "consent_bypass", "command_exec"]
46
+ },
47
+ {
48
+ "path": ".cline/mcp.json",
49
+ "scope": "project",
50
+ "format": "jsonc",
51
+ "risk_surface": ["mcp_config", "command_exec", "remote_resource", "consent_bypass"],
52
+ "fields_of_interest": {
53
+ "mcpServers.*.command": "stdio command",
54
+ "mcpServers.*.args": "stdio command arguments",
55
+ "mcpServers.*.url": "remote endpoint",
56
+ "mcpServers.*.env": "runtime environment variables",
57
+ "mcpServers.*.alwaysAllow": "auto-approval toggle"
58
+ }
59
+ },
60
+ {
61
+ "path": ".cline/mcp.json",
62
+ "scope": "user",
63
+ "format": "jsonc",
64
+ "risk_surface": ["mcp_config", "command_exec", "remote_resource", "consent_bypass"],
65
+ "fields_of_interest": {
66
+ "mcpServers.*.command": "stdio command",
67
+ "mcpServers.*.args": "stdio command arguments",
68
+ "mcpServers.*.url": "remote endpoint",
69
+ "mcpServers.*.env": "runtime environment variables",
70
+ "mcpServers.*.alwaysAllow": "auto-approval toggle"
71
+ }
72
+ },
73
+ {
74
+ "path": ".cline/data/settings/cline_mcp_settings.json",
75
+ "scope": "user",
76
+ "format": "jsonc",
77
+ "risk_surface": ["mcp_config", "command_exec", "remote_resource", "consent_bypass"],
78
+ "fields_of_interest": {
79
+ "mcpServers.*.command": "stdio command",
80
+ "mcpServers.*.args": "stdio command arguments",
81
+ "mcpServers.*.url": "remote endpoint",
82
+ "mcpServers.*.env": "runtime environment variables",
83
+ "mcpServers.*.alwaysAllow": "auto-approval toggle"
84
+ }
85
+ },
86
+ {
87
+ "path": ".cline/data/cache/remote_config_*.json",
88
+ "scope": "user",
89
+ "format": "jsonc",
90
+ "risk_surface": ["mcp_config", "remote_resource", "consent_bypass"]
91
+ },
92
+ {
93
+ "path": "Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json",
94
+ "scope": "user",
95
+ "format": "jsonc",
96
+ "risk_surface": ["mcp_config", "command_exec", "remote_resource", "consent_bypass"],
97
+ "fields_of_interest": {
98
+ "mcpServers.*.command": "stdio command",
99
+ "mcpServers.*.args": "stdio command arguments",
100
+ "mcpServers.*.url": "remote endpoint",
101
+ "mcpServers.*.env": "runtime environment variables",
102
+ "mcpServers.*.alwaysAllow": "auto-approval toggle"
103
+ }
104
+ },
105
+ {
106
+ "path": "Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/cache/remote_config_*.json",
107
+ "scope": "user",
108
+ "format": "jsonc",
109
+ "risk_surface": ["mcp_config", "remote_resource", "consent_bypass"]
110
+ },
111
+ {
112
+ "path": ".cline/hooks.json",
113
+ "scope": "project",
114
+ "format": "jsonc",
115
+ "risk_surface": ["hooks", "command_exec"]
116
+ },
117
+ {
118
+ "path": ".cline/hooks.json",
119
+ "scope": "user",
120
+ "format": "jsonc",
121
+ "risk_surface": ["hooks", "command_exec"]
122
+ },
123
+ {
124
+ "path": ".clinerules/hooks/*",
125
+ "scope": "project",
126
+ "format": "text",
127
+ "risk_surface": ["hooks", "command_exec"]
128
+ },
129
+ {
130
+ "path": "Documents/Cline/Hooks/*",
131
+ "scope": "user",
132
+ "format": "text",
133
+ "risk_surface": ["hooks", "command_exec"]
134
+ },
135
+ {
136
+ "path": ".cline/workflows.json",
137
+ "scope": "project",
138
+ "format": "jsonc",
139
+ "risk_surface": ["command_exec", "prompt_injection"]
140
+ },
141
+ {
142
+ "path": ".cline/workflows.json",
143
+ "scope": "user",
144
+ "format": "jsonc",
145
+ "risk_surface": ["command_exec", "prompt_injection"]
146
+ },
147
+ {
148
+ "path": ".cline/marketplace.json",
149
+ "scope": "project",
150
+ "format": "jsonc",
151
+ "risk_surface": ["plugin_config", "remote_resource", "command_exec"]
152
+ },
153
+ {
154
+ "path": ".cline/marketplace.json",
155
+ "scope": "user",
156
+ "format": "jsonc",
157
+ "risk_surface": ["plugin_config", "remote_resource", "command_exec"]
158
+ }
159
+ ],
160
+ "skill_paths": [
161
+ {
162
+ "path": ".cline/skills/**/*.md",
163
+ "scope": "project",
164
+ "type": "skill",
165
+ "risk_surface": ["prompt_injection"]
166
+ },
167
+ {
168
+ "path": ".clinerules/skills/**/*.md",
169
+ "scope": "project",
170
+ "type": "skill",
171
+ "risk_surface": ["prompt_injection"]
172
+ },
173
+ {
174
+ "path": ".cline/skills/**/*.md",
175
+ "scope": "user",
176
+ "type": "skill",
177
+ "risk_surface": ["prompt_injection"]
178
+ },
179
+ {
180
+ "path": ".cline/workflows/*.md",
181
+ "scope": "project",
182
+ "type": "workflow",
183
+ "risk_surface": ["prompt_injection", "command_exec"]
184
+ },
185
+ {
186
+ "path": ".clinerules/workflows/**/*.md",
187
+ "scope": "project",
188
+ "type": "workflow",
189
+ "risk_surface": ["prompt_injection", "command_exec"]
190
+ },
191
+ {
192
+ "path": ".cline/workflows/*.md",
193
+ "scope": "user",
194
+ "type": "workflow",
195
+ "risk_surface": ["prompt_injection", "command_exec"]
196
+ },
197
+ {
198
+ "path": "Documents/Cline/Workflows/**/*.md",
199
+ "scope": "user",
200
+ "type": "workflow",
201
+ "risk_surface": ["prompt_injection", "command_exec"]
202
+ },
203
+ {
204
+ "path": ".cline/commands/**/*.md",
205
+ "scope": "project",
206
+ "type": "slash_command",
207
+ "risk_surface": ["prompt_injection", "command_exec"]
208
+ },
209
+ {
210
+ "path": ".cline/commands/**/*.md",
211
+ "scope": "user",
212
+ "type": "slash_command",
213
+ "risk_surface": ["prompt_injection", "command_exec"]
214
+ }
215
+ ],
216
+ "extension_mechanisms": [
217
+ {
218
+ "type": "cline_marketplace",
219
+ "install_pattern": "cline install <extension>",
220
+ "risk": "extensions can register tools and command workflows",
221
+ "fetchable": true
222
+ }
223
+ ]
224
+ }
@@ -0,0 +1,162 @@
1
+ {
2
+ "tool": "codex-cli",
3
+ "version_range": ">=0.1.0",
4
+ "config_paths": [
5
+ {
6
+ "path": ".codex/config.toml",
7
+ "scope": "project",
8
+ "format": "toml",
9
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"],
10
+ "fields_of_interest": {
11
+ "mcp_servers.*.command": "stdio command",
12
+ "mcp_servers.*.args": "stdio command arguments",
13
+ "mcp_servers.*.url": "remote endpoint",
14
+ "mcp_servers.*.env": "runtime environment variables",
15
+ "approval_policy": "interactive approval mode",
16
+ "sandbox_mode": "sandbox policy"
17
+ }
18
+ },
19
+ {
20
+ "path": ".codex/config.toml",
21
+ "scope": "user",
22
+ "format": "toml",
23
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"],
24
+ "fields_of_interest": {
25
+ "mcp_servers.*.command": "stdio command",
26
+ "mcp_servers.*.args": "stdio command arguments",
27
+ "mcp_servers.*.url": "remote endpoint",
28
+ "mcp_servers.*.env": "runtime environment variables",
29
+ "approval_policy": "interactive approval mode",
30
+ "sandbox_mode": "sandbox policy"
31
+ }
32
+ },
33
+ {
34
+ "path": ".config/codex/config.toml",
35
+ "scope": "user",
36
+ "format": "toml",
37
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"],
38
+ "fields_of_interest": {
39
+ "mcp_servers.*.command": "stdio command",
40
+ "mcp_servers.*.args": "stdio command arguments",
41
+ "mcp_servers.*.url": "remote endpoint",
42
+ "mcp_servers.*.env": "runtime environment variables",
43
+ "approval_policy": "interactive approval mode",
44
+ "sandbox_mode": "sandbox policy"
45
+ }
46
+ },
47
+ {
48
+ "path": "Library/Application Support/codex/config.toml",
49
+ "scope": "user",
50
+ "format": "toml",
51
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"],
52
+ "fields_of_interest": {
53
+ "mcp_servers.*.command": "stdio command",
54
+ "mcp_servers.*.args": "stdio command arguments",
55
+ "mcp_servers.*.url": "remote endpoint",
56
+ "mcp_servers.*.env": "runtime environment variables",
57
+ "approval_policy": "interactive approval mode",
58
+ "sandbox_mode": "sandbox policy"
59
+ }
60
+ },
61
+ {
62
+ "path": "AppData/Roaming/codex/config.toml",
63
+ "scope": "user",
64
+ "format": "toml",
65
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"],
66
+ "fields_of_interest": {
67
+ "mcp_servers.*.command": "stdio command",
68
+ "mcp_servers.*.args": "stdio command arguments",
69
+ "mcp_servers.*.url": "remote endpoint",
70
+ "mcp_servers.*.env": "runtime environment variables",
71
+ "approval_policy": "interactive approval mode",
72
+ "sandbox_mode": "sandbox policy"
73
+ }
74
+ },
75
+ {
76
+ "path": ".codex/.env",
77
+ "scope": "project",
78
+ "format": "dotenv",
79
+ "risk_surface": ["env_override"]
80
+ },
81
+ {
82
+ "path": ".codex/.env",
83
+ "scope": "user",
84
+ "format": "dotenv",
85
+ "risk_surface": ["env_override"]
86
+ },
87
+ {
88
+ "path": ".config/codex/.env",
89
+ "scope": "user",
90
+ "format": "dotenv",
91
+ "risk_surface": ["env_override"]
92
+ },
93
+ {
94
+ "path": "Library/Application Support/codex/.env",
95
+ "scope": "user",
96
+ "format": "dotenv",
97
+ "risk_surface": ["env_override"]
98
+ },
99
+ {
100
+ "path": "AppData/Roaming/codex/.env",
101
+ "scope": "user",
102
+ "format": "dotenv",
103
+ "risk_surface": ["env_override"]
104
+ },
105
+ {
106
+ "path": "codex.json",
107
+ "scope": "project",
108
+ "format": "jsonc",
109
+ "risk_surface": ["command_exec", "mcp_config", "consent_bypass"]
110
+ },
111
+ {
112
+ "path": "AGENTS.md",
113
+ "scope": "project",
114
+ "format": "markdown",
115
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
116
+ },
117
+ {
118
+ "path": ".codex/AGENTS.md",
119
+ "scope": "user",
120
+ "format": "markdown",
121
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
122
+ },
123
+ {
124
+ "path": "CODEX.md",
125
+ "scope": "project",
126
+ "format": "markdown",
127
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
128
+ },
129
+ {
130
+ "path": ".codex/CODEX.md",
131
+ "scope": "user",
132
+ "format": "markdown",
133
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
134
+ }
135
+ ],
136
+ "skill_paths": [
137
+ {
138
+ "path": ".codex/commands/**/*.md",
139
+ "scope": "project",
140
+ "type": "custom_command",
141
+ "risk_surface": ["prompt_injection"]
142
+ },
143
+ {
144
+ "path": ".codex/commands/**/*.md",
145
+ "scope": "user",
146
+ "type": "custom_command",
147
+ "risk_surface": ["prompt_injection"]
148
+ },
149
+ {
150
+ "path": ".codex/skills/**/*.md",
151
+ "scope": "project",
152
+ "type": "skill",
153
+ "risk_surface": ["prompt_injection"]
154
+ },
155
+ {
156
+ "path": ".codex/skills/**/*.md",
157
+ "scope": "user",
158
+ "type": "skill",
159
+ "risk_surface": ["prompt_injection"]
160
+ }
161
+ ]
162
+ }
@@ -0,0 +1,132 @@
1
+ {
2
+ "tool": "github-copilot",
3
+ "version_range": ">=1.0.0",
4
+ "config_paths": [
5
+ {
6
+ "path": ".github/copilot-instructions.md",
7
+ "scope": "project",
8
+ "format": "markdown",
9
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
10
+ },
11
+ {
12
+ "path": ".instructions.md",
13
+ "scope": "project",
14
+ "format": "markdown",
15
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
16
+ },
17
+ {
18
+ "path": "*.instructions.md",
19
+ "scope": "project",
20
+ "format": "markdown",
21
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
22
+ },
23
+ {
24
+ "path": ".github/instructions/*.instructions.md",
25
+ "scope": "project",
26
+ "format": "markdown",
27
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
28
+ },
29
+ {
30
+ "path": ".github/prompts/*.prompt.md",
31
+ "scope": "project",
32
+ "format": "markdown",
33
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
34
+ },
35
+ {
36
+ "path": ".github/chatmodes/*.chatmode.md",
37
+ "scope": "project",
38
+ "format": "markdown",
39
+ "risk_surface": ["prompt_injection", "unicode_backdoor"]
40
+ },
41
+ {
42
+ "path": ".vscode/mcp.json",
43
+ "scope": "project",
44
+ "format": "jsonc",
45
+ "risk_surface": ["command_exec", "mcp_config"]
46
+ },
47
+ {
48
+ "path": "Library/Application Support/Code/User/mcp.json",
49
+ "scope": "user",
50
+ "format": "jsonc",
51
+ "risk_surface": ["command_exec", "mcp_config"]
52
+ },
53
+ {
54
+ "path": "AppData/Roaming/Code/User/mcp.json",
55
+ "scope": "user",
56
+ "format": "jsonc",
57
+ "risk_surface": ["command_exec", "mcp_config"]
58
+ },
59
+ {
60
+ "path": "Library/Application Support/Code - Insiders/User/mcp.json",
61
+ "scope": "user",
62
+ "format": "jsonc",
63
+ "risk_surface": ["command_exec", "mcp_config"]
64
+ },
65
+ {
66
+ "path": "AppData/Roaming/Code - Insiders/User/mcp.json",
67
+ "scope": "user",
68
+ "format": "jsonc",
69
+ "risk_surface": ["command_exec", "mcp_config"]
70
+ },
71
+ {
72
+ "path": ".vscode/extensions.json",
73
+ "scope": "project",
74
+ "format": "json",
75
+ "risk_surface": ["ide_settings", "plugin_config"]
76
+ },
77
+ {
78
+ "path": "Library/Application Support/Code/User/extensions.json",
79
+ "scope": "user",
80
+ "format": "json",
81
+ "risk_surface": ["ide_settings", "plugin_config"]
82
+ },
83
+ {
84
+ "path": "AppData/Roaming/Code/User/extensions.json",
85
+ "scope": "user",
86
+ "format": "json",
87
+ "risk_surface": ["ide_settings", "plugin_config"]
88
+ },
89
+ {
90
+ "path": "Library/Application Support/Code - Insiders/User/extensions.json",
91
+ "scope": "user",
92
+ "format": "json",
93
+ "risk_surface": ["ide_settings", "plugin_config"]
94
+ },
95
+ {
96
+ "path": "AppData/Roaming/Code - Insiders/User/extensions.json",
97
+ "scope": "user",
98
+ "format": "json",
99
+ "risk_surface": ["ide_settings", "plugin_config"]
100
+ },
101
+ {
102
+ "path": ".vscode/settings.json",
103
+ "scope": "project",
104
+ "format": "json",
105
+ "risk_surface": ["ide_settings"]
106
+ },
107
+ {
108
+ "path": "Library/Application Support/Code/User/settings.json",
109
+ "scope": "user",
110
+ "format": "json",
111
+ "risk_surface": ["ide_settings"]
112
+ },
113
+ {
114
+ "path": "AppData/Roaming/Code/User/settings.json",
115
+ "scope": "user",
116
+ "format": "json",
117
+ "risk_surface": ["ide_settings"]
118
+ },
119
+ {
120
+ "path": "Library/Application Support/Code - Insiders/User/settings.json",
121
+ "scope": "user",
122
+ "format": "json",
123
+ "risk_surface": ["ide_settings"]
124
+ },
125
+ {
126
+ "path": "AppData/Roaming/Code - Insiders/User/settings.json",
127
+ "scope": "user",
128
+ "format": "json",
129
+ "risk_surface": ["ide_settings"]
130
+ }
131
+ ]
132
+ }