agnostic-security 4.6.0__py3-none-any.whl
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.
- agnostic_security-4.6.0.dist-info/METADATA +350 -0
- agnostic_security-4.6.0.dist-info/RECORD +58 -0
- agnostic_security-4.6.0.dist-info/WHEEL +5 -0
- agnostic_security-4.6.0.dist-info/entry_points.txt +2 -0
- agnostic_security-4.6.0.dist-info/licenses/LICENSE +21 -0
- agnostic_security-4.6.0.dist-info/top_level.txt +4 -0
- cli/__init__.py +1 -0
- cli/__init__.pyc +0 -0
- cli/as_init.pyc +0 -0
- hooks/__init__.py +1 -0
- hooks/__init__.pyc +0 -0
- hooks/dlp_scan.pyc +0 -0
- hooks/vuln_scan.pyc +0 -0
- rules/__init__.py +1 -0
- rules/__init__.pyc +0 -0
- rules/block_rules.pyc +0 -0
- scripts/__init__.py +1 -0
- scripts/__init__.pyc +0 -0
- scripts/audit.pyc +0 -0
- scripts/code_scanner.pyc +0 -0
- scripts/continuous_red_team.pyc +0 -0
- scripts/hook_fast.pyc +0 -0
- scripts/load_test.pyc +0 -0
- scripts/network_enforcement.pyc +0 -0
- scripts/nist_score.pyc +0 -0
- scripts/owasp_score.pyc +0 -0
- scripts/red_team.pyc +0 -0
- scripts/red_team_report.pyc +0 -0
- scripts/run_manual_tests.pyc +0 -0
- scripts/secagent_check.pyc +0 -0
- scripts/smoke_test.pyc +0 -0
- scripts/test_admin_console.pyc +0 -0
- scripts/test_block_rules.pyc +0 -0
- scripts/test_breach_classifier.pyc +0 -0
- scripts/test_code_fingerprint.pyc +0 -0
- scripts/test_code_scanner.pyc +0 -0
- scripts/test_credential_classifier.pyc +0 -0
- scripts/test_dlp_scanner.pyc +0 -0
- scripts/test_fixes.pyc +0 -0
- scripts/test_hook_e2e.pyc +0 -0
- scripts/test_image_ocr_dlp.pyc +0 -0
- scripts/test_ingress_guard.pyc +0 -0
- scripts/test_knowledge_graph.pyc +0 -0
- scripts/test_model_locality.pyc +0 -0
- scripts/test_outbound_guards.pyc +0 -0
- scripts/test_pii_prompt_guard.pyc +0 -0
- scripts/test_privacy_mode.pyc +0 -0
- scripts/test_production_features.pyc +0 -0
- scripts/test_red_team.pyc +0 -0
- scripts/test_secure_fs.pyc +0 -0
- scripts/test_security_memory.pyc +0 -0
- scripts/test_shadow_ai.pyc +0 -0
- scripts/test_smart_router.pyc +0 -0
- scripts/test_terminal_bypass.pyc +0 -0
- scripts/test_vuln_scanner.pyc +0 -0
- scripts/train_enhanced_classifier.pyc +0 -0
- scripts/train_ml_classifier.pyc +0 -0
- scripts/vps_monitor.pyc +0 -0
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agnostic-security
|
|
3
|
+
Version: 4.6.0
|
|
4
|
+
Summary: The firewall for AI coding agents — prevents secrets, PII, and credentials from leaking through Copilot, Claude Code, Cursor, and LangChain
|
|
5
|
+
Author-email: AgnosticSecurity <security@agnosticsecurity.io>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/kaushikdharamshi/AgnosticSecurity
|
|
8
|
+
Project-URL: Repository, https://github.com/kaushikdharamshi/AgnosticSecurity
|
|
9
|
+
Project-URL: Issues, https://github.com/kaushikdharamshi/AgnosticSecurity/issues
|
|
10
|
+
Project-URL: Documentation, https://github.com/kaushikdharamshi/AgnosticSecurity/blob/main/README.md
|
|
11
|
+
Keywords: security,dlp,data-loss-prevention,ai-agents,llm,copilot,claude-code,cursor,windsurf,guardrail,secrets,pii,credentials,devsecops
|
|
12
|
+
Classifier: Development Status :: 4 - Beta
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Intended Audience :: System Administrators
|
|
15
|
+
Classifier: Topic :: Security
|
|
16
|
+
Classifier: Topic :: Software Development :: Quality Assurance
|
|
17
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Environment :: Console
|
|
22
|
+
Classifier: Operating System :: OS Independent
|
|
23
|
+
Requires-Python: >=3.11
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
License-File: LICENSE
|
|
26
|
+
Requires-Dist: securityagent-core>=3.1.0
|
|
27
|
+
Provides-Extra: gateway
|
|
28
|
+
Requires-Dist: fastapi>=0.110; extra == "gateway"
|
|
29
|
+
Requires-Dist: uvicorn[standard]; extra == "gateway"
|
|
30
|
+
Requires-Dist: httpx; extra == "gateway"
|
|
31
|
+
Requires-Dist: python-dotenv; extra == "gateway"
|
|
32
|
+
Requires-Dist: pydantic-settings>=2.0; extra == "gateway"
|
|
33
|
+
Provides-Extra: llm
|
|
34
|
+
Requires-Dist: ollama; extra == "llm"
|
|
35
|
+
Provides-Extra: all
|
|
36
|
+
Requires-Dist: agnostic-security[gateway,llm]; extra == "all"
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
|
|
39
|
+
# AgnosticSecurity
|
|
40
|
+
|
|
41
|
+
**The firewall for AI coding agents.** Prevents secrets, credentials, and PII from leaking through Copilot, Claude Code, Cursor, and LangChain — before the data ever leaves your machine.
|
|
42
|
+
|
|
43
|
+
[]()
|
|
44
|
+
[]()
|
|
45
|
+
[]()
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
> Your AI coding assistant has read access to your entire codebase — `.env` files, API keys, SSH keys, customer PII. There are zero guardrails. **AgnosticSecurity is that guardrail.**
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Quick Start
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Option 1: One-command setup (auto-detects your AI tools)
|
|
57
|
+
pip install -e .
|
|
58
|
+
as-init
|
|
59
|
+
|
|
60
|
+
# Option 2: Docker
|
|
61
|
+
docker compose up
|
|
62
|
+
|
|
63
|
+
# Option 3: Just the VS Code extension
|
|
64
|
+
code --install-extension vscode-extension/agnostic-security-4.5.0.vsix
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
That's it. Your `.env` files, credentials, and PII are now protected from every AI tool in your environment.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## What It Does
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Your code editor (VS Code / Cursor / Windsurf)
|
|
75
|
+
│
|
|
76
|
+
│ ── AI tries to read .env ──────────── BLOCKED (file gate)
|
|
77
|
+
│ ── AI autocompletes a secret ──────── BLOCKED (context boundary)
|
|
78
|
+
│ ── @workspace indexes credentials ─── BLOCKED (search.exclude)
|
|
79
|
+
│ ── Prompt contains SSN ────────────── BLOCKED (prompt guard)
|
|
80
|
+
│ ── Agent runs `curl -d @.env` ─────── BLOCKED (exec guard)
|
|
81
|
+
│ ── LLM response leaks PII ────────── BLOCKED (output scan)
|
|
82
|
+
│ ── Memory stores "password is X" ──── BLOCKED (memory guard)
|
|
83
|
+
│ ── Tool call smuggles data out ────── BLOCKED (tool call guard)
|
|
84
|
+
│
|
|
85
|
+
└── Everything else ──────────────────── Works normally
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**Key insight:** We don't block AI from editing files (that's a losing game). We make sensitive data **invisible** to AI at every layer — if AI never sees the data, there's nothing to leak.
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Protection Layers
|
|
93
|
+
|
|
94
|
+
| Layer | What It Stops | Speed |
|
|
95
|
+
|-------|--------------|-------|
|
|
96
|
+
| **File gate** | AI reading `.env`, credentials, keys | <1ms |
|
|
97
|
+
| **Context boundary** | AI seeing sensitive file content (`.copilotignore`, `search.exclude`, LM API interceptor) | 0ms |
|
|
98
|
+
| **Exec guard** | `cat ~/.env`, `curl -d @secrets`, obfuscated exfiltration, netcat/SSH tunnels | <1ms |
|
|
99
|
+
| **Prompt guard** | "Show me all API keys", PII in prompts, 10 encoding evasion layers (base64, hex, ROT13, unicode, zero-width chars, reversed text, leetspeak) | <50ms |
|
|
100
|
+
| **Output scan** | LLM responses containing leaked PII/credentials | <1ms |
|
|
101
|
+
| **Taint tracking** | Data exfiltration across sessions (SHA-256 + n-gram Jaccard) | <1ms |
|
|
102
|
+
| **Memory guard** | Memory poisoning ("user authorized all exports"), trust boundary violations | <1ms |
|
|
103
|
+
| **Tool call guard** | MCP tools smuggling data in arguments | <1ms |
|
|
104
|
+
| **Egress allowlist** | `curl` to unauthorized external domains | <1ms |
|
|
105
|
+
| **Lethal trifecta** | Private data + untrusted input + external comm all active simultaneously | <1ms |
|
|
106
|
+
| **Ingress guard** | Malicious external agents probing your APIs (6-layer: fingerprint, behavior, risk, cross-session reputation, policy, headers) | <5ms |
|
|
107
|
+
| **Vuln scanner** | SQL injection, XSS, command injection in AI-generated code | <10ms |
|
|
108
|
+
| **Code fingerprint** | Proprietary code leaking to cloud LLMs | <10ms |
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Works With Everything
|
|
113
|
+
|
|
114
|
+
| AI Tool | How |
|
|
115
|
+
|---------|-----|
|
|
116
|
+
| **GitHub Copilot** | VS Code extension (context boundary + LM API interceptor) |
|
|
117
|
+
| **Claude Code** | Hook-based (PreToolUse + UserPromptSubmit) |
|
|
118
|
+
| **Cursor** | `.cursorignore` + VS Code extension |
|
|
119
|
+
| **Windsurf** | `.aiignore` + VS Code extension |
|
|
120
|
+
| **ChatGPT / Claude.ai / Gemini** | Chrome extension (DLP for web LLM interfaces) |
|
|
121
|
+
| **LangChain / Autogen** | Auto-instrumentation SDK (zero-code monkey-patching) |
|
|
122
|
+
| **Any LLM provider** | API Gateway with input/output security pipelines |
|
|
123
|
+
|
|
124
|
+
**Any LLM provider works** — OpenAI, Anthropic, Google, Azure, local Ollama. Security shouldn't depend on your model choice.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Installation Options
|
|
129
|
+
|
|
130
|
+
| Method | Command | Best For |
|
|
131
|
+
|--------|---------|----------|
|
|
132
|
+
| **CLI installer** | `pip install -e . && as-init` | Individual developers |
|
|
133
|
+
| **Pre-commit hooks** | `bash hooks/install.sh` | Teams wanting git-level protection |
|
|
134
|
+
| **GitHub Action** | Add workflow YAML ([see below](#github-action)) | CI/CD pipeline scanning |
|
|
135
|
+
| **Docker** | `docker compose up` | Full stack deployment |
|
|
136
|
+
| **VS Code extension** | Install `.vsix` from [Releases](https://github.com/kaushikdharamshi/AgnosticSecurity/releases) | Copilot/Cursor users |
|
|
137
|
+
| **Chrome extension** | Load unpacked from `chrome-extension/` | ChatGPT/Claude/Gemini web users |
|
|
138
|
+
| **Kubernetes** | `helm install agsec helm/agnosticsecurity/` | Production deployments |
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Architecture
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Developer using Copilot / Claude Code / Cursor / LangChain
|
|
146
|
+
│
|
|
147
|
+
├── VS Code Extension ──────── Context boundary — data never enters AI context
|
|
148
|
+
│ ├── .copilotignore / .cursorignore / .aiignore
|
|
149
|
+
│ ├── search.exclude (blocks @workspace)
|
|
150
|
+
│ ├── LM API interceptor (scans all prompts)
|
|
151
|
+
│ └── @security / @guard chat participants
|
|
152
|
+
│
|
|
153
|
+
├── Chrome Extension ──────── DLP for web AI tools (ChatGPT, Claude, Gemini)
|
|
154
|
+
│
|
|
155
|
+
├── Claude Code Hooks ──────── PreToolUse (Read/Edit/Write/Bash) + UserPromptSubmit
|
|
156
|
+
│ └── 4-layer: PII regex → intent → Pydantic → LLM
|
|
157
|
+
│
|
|
158
|
+
├── Ingress Guard ──────────── 6-layer external agent defense
|
|
159
|
+
│ └── Fingerprint → behavior → risk → cross-session reputation → policy → headers
|
|
160
|
+
│
|
|
161
|
+
├── API Gateway + LLM Proxy ── Input/output security pipelines
|
|
162
|
+
│ ├── PII redaction + injection detection
|
|
163
|
+
│ ├── Smart Router (5 strategies, 14 models, 4 providers)
|
|
164
|
+
│ └── Cost tracking + block rules
|
|
165
|
+
│
|
|
166
|
+
├── Effect-Layer Defenses ──── Taint tracking, egress allowlist, lethal trifecta,
|
|
167
|
+
│ tool call guard, code fingerprint, vuln scanner,
|
|
168
|
+
│ shadow AI detector, privacy mode, knowledge graph
|
|
169
|
+
│
|
|
170
|
+
├── Red Team Harness ──────── 55 attack agents in Docker, 100% detection rate
|
|
171
|
+
│
|
|
172
|
+
└── Breach Compliance ──────── Rule-based classification (<1ms, no LLM)
|
|
173
|
+
├── 13 fintech breach types (PCI-DSS, SOX, HIPAA)
|
|
174
|
+
├── Immutable SHA-256 audit log
|
|
175
|
+
├── Agent registration (email-verified)
|
|
176
|
+
├── Admin Console (RBAC, policy versioning)
|
|
177
|
+
└── Real-time dashboard
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Compliance
|
|
183
|
+
|
|
184
|
+
All controls mapped to industry frameworks with automated scoring:
|
|
185
|
+
|
|
186
|
+
- **OWASP Top 10 for LLM Applications** — `python3 scripts/owasp_score.py`
|
|
187
|
+
- **NIST AI Risk Management Framework** — `python3 scripts/nist_score.py`
|
|
188
|
+
- **MITRE ATLAS** — coverage across 274-attack red-team suite + 55-agent Docker harness
|
|
189
|
+
- **50-check security audit** — `python3 scripts/audit.py`
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Testing
|
|
194
|
+
|
|
195
|
+
**724+ automated tests** across 24 suites, plus a Docker-based red-team harness:
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
source .venv/bin/activate
|
|
199
|
+
|
|
200
|
+
# Core tests (run any individually)
|
|
201
|
+
python3 scripts/smoke_test.py # 31 — file gate + content DLP
|
|
202
|
+
python3 scripts/test_red_team.py # 52 — adversarial red-team
|
|
203
|
+
python3 scripts/test_pii_prompt_guard.py # 18 — PII evasion
|
|
204
|
+
python3 scripts/test_outbound_guards.py # 42 — obfuscation + egress
|
|
205
|
+
python3 scripts/test_ingress_guard.py # 54 — ingress guard
|
|
206
|
+
|
|
207
|
+
# Red team Docker harness (55 agents, 10 OWASP categories)
|
|
208
|
+
docker compose -f docker-compose.redteam.yml up --build -d
|
|
209
|
+
docker exec agsec-attacker python3 /agents/run_all.py
|
|
210
|
+
|
|
211
|
+
# Continuous red-teaming with HTML reports
|
|
212
|
+
python3 scripts/continuous_red_team.py
|
|
213
|
+
python3 scripts/red_team_report.py
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Privacy
|
|
219
|
+
|
|
220
|
+
- **Runs entirely on your machine** — no telemetry, no analytics, no cloud dependency
|
|
221
|
+
- **Pluggable LLM backend** — use local Ollama (air-gapped), Anthropic, or OpenAI for optional semantic analysis
|
|
222
|
+
- **Privacy mode** — one-command killswitch for cloud LLM access (`EA_PRIVACY_MODE=full_privacy`)
|
|
223
|
+
- **Audit logs stored locally** — SHA-256 checksummed, tamper-detected, JSONL archived
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## GitHub Action
|
|
228
|
+
|
|
229
|
+
```yaml
|
|
230
|
+
# .github/workflows/security.yml
|
|
231
|
+
name: AgnosticSecurity Scan
|
|
232
|
+
on: [pull_request]
|
|
233
|
+
|
|
234
|
+
jobs:
|
|
235
|
+
scan:
|
|
236
|
+
runs-on: ubuntu-latest
|
|
237
|
+
steps:
|
|
238
|
+
- uses: actions/checkout@v4
|
|
239
|
+
- uses: kaushikdharamshi/AgnosticSecurity/.github/actions/security-scan@main
|
|
240
|
+
with:
|
|
241
|
+
severity-threshold: HIGH
|
|
242
|
+
fail-on-findings: true
|
|
243
|
+
scan-dlp: true
|
|
244
|
+
scan-vulns: true
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## 21 Components
|
|
250
|
+
|
|
251
|
+
| Component | What It Does |
|
|
252
|
+
|-----------|-------------|
|
|
253
|
+
| **DLP Engine** | File gate + content scanning + exec guard + prompt analysis |
|
|
254
|
+
| **API Gateway** | FastAPI proxy with input/output security pipelines |
|
|
255
|
+
| **LLM Proxy** | Reverse proxy with cost tracking + block rules |
|
|
256
|
+
| **Breach Engine** | Rule-based breach classification + immutable audit log |
|
|
257
|
+
| **VS Code Extension** | Context boundary for Copilot/Cursor/Windsurf |
|
|
258
|
+
| **Chrome Extension** | DLP for ChatGPT/Claude/Gemini web |
|
|
259
|
+
| **Auto-Instrumentation SDK** | Zero-code LangChain/Autogen monitoring |
|
|
260
|
+
| **Smart Router** | Task classification + 5 routing strategies + failover |
|
|
261
|
+
| **Admin Console** | Centralized policy management + agent enrollment + RBAC |
|
|
262
|
+
| **Ingress Guard** | 6-layer external agent defense middleware |
|
|
263
|
+
| **Privacy Mode** | 3 enforced modes (local-only / balanced / permissive) |
|
|
264
|
+
| **Knowledge Graph** | Agent-threat-incident relationship tracking |
|
|
265
|
+
| **Vuln Scanner** | OWASP SAST-lite for AI-generated code |
|
|
266
|
+
| **Code Fingerprint Guard** | Proprietary code leak prevention |
|
|
267
|
+
| **Shadow AI Detector** | Discovers 12+ unauthorized AI tools |
|
|
268
|
+
| **Security Memory Bridge** | Obsidian-compatible security event vault |
|
|
269
|
+
| **Data Flow Taint Tracker** | Cross-session SHA-256 + n-gram Jaccard exfil detection |
|
|
270
|
+
| **Lethal Trifecta Detector** | Blocks MCP tools when private data + untrusted input + external comm all active |
|
|
271
|
+
| **Tool Call Guard** | DLP + taint scan on MCP/function call arguments |
|
|
272
|
+
| **CLI Installer** | `as-init` auto-detects AI tools, configures protections |
|
|
273
|
+
| **Red Team Harness** | 55 attack agents, 10 OWASP categories, Docker-isolated |
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Competitive Positioning
|
|
278
|
+
|
|
279
|
+
```
|
|
280
|
+
Pre-commit In-IDE AI Runtime Post-incident CI/CD Browser Inbound
|
|
281
|
+
(hooks) (live) (agent layer) (detection) (Action) (web LLMs) (API defense)
|
|
282
|
+
GitGuardian ======== .... ........ ======== ======== ...... ........
|
|
283
|
+
Snyk ........ ======== ........ ======== ======== ...... ........
|
|
284
|
+
Semgrep ======== ======== ........ ........ ======== ...... ........
|
|
285
|
+
Prompt Armor ........ .... ======== ........ ........ ...... ........
|
|
286
|
+
Lakera Guard ........ .... ======== ........ ........ ...... ........
|
|
287
|
+
AgnosticSecurity ======== ======== ======== ======== ======== ======== ========
|
|
288
|
+
^^^^^^^^ ^^^^^^^^ ^^^^^^^^
|
|
289
|
+
SHARED ONLY US ONLY US
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
## Configuration Reference
|
|
295
|
+
|
|
296
|
+
<details>
|
|
297
|
+
<summary>Environment variables</summary>
|
|
298
|
+
|
|
299
|
+
### DLP Engine
|
|
300
|
+
|
|
301
|
+
| Variable | Default | Description |
|
|
302
|
+
|----------|---------|-------------|
|
|
303
|
+
| `EA_LLM_PROVIDER` | `ollama` | LLM provider for semantic analysis (`ollama`, `anthropic`, `openai`) |
|
|
304
|
+
| `EA_PRIVACY_MODE` | `balanced` | Privacy mode (`full_privacy`, `balanced`, `permissive`) |
|
|
305
|
+
| `EA_ALLOWED_DOMAINS` | — | Comma-separated egress allowlist |
|
|
306
|
+
| `EA_LETHAL_TRIFECTA` | `1` | Enable lethal trifecta detector |
|
|
307
|
+
| `EA_INGRESS_GUARD` | `1` | Enable ingress guard |
|
|
308
|
+
| `EA_CODE_GUARD_ENABLED` | `1` | Enable code fingerprint guard |
|
|
309
|
+
| `EA_SHADOW_AI_ENABLED` | `1` | Enable shadow AI detector |
|
|
310
|
+
| `EA_KNOWLEDGE_GRAPH_ENABLED` | `1` | Enable knowledge graph |
|
|
311
|
+
| `EA_DLP_CONFIDENCE_THRESHOLD` | `0.5` | Minimum confidence to flag PII |
|
|
312
|
+
|
|
313
|
+
### Gateway
|
|
314
|
+
|
|
315
|
+
| Variable | Default | Description |
|
|
316
|
+
|----------|---------|-------------|
|
|
317
|
+
| `GATEWAY_API_KEYS` | `sk-gateway-changeme` | Comma-separated client API keys |
|
|
318
|
+
| `OPENAI_API_KEY` | — | OpenAI API key |
|
|
319
|
+
| `ANTHROPIC_API_KEY` | — | Anthropic API key |
|
|
320
|
+
| `RATE_LIMIT_RPM` | `60` | Max requests per minute per key |
|
|
321
|
+
|
|
322
|
+
### VS Code Extension
|
|
323
|
+
|
|
324
|
+
| Setting | Default | Description |
|
|
325
|
+
|---------|---------|-------------|
|
|
326
|
+
| `agnosticsecurity.enabled` | `true` | Master toggle |
|
|
327
|
+
| `agnosticsecurity.autoDisableCopilot` | `true` | Disable Copilot for sensitive files |
|
|
328
|
+
| `agnosticsecurity.sensitiveFileGlobs` | [defaults] | Custom sensitive file patterns |
|
|
329
|
+
|
|
330
|
+
</details>
|
|
331
|
+
|
|
332
|
+
---
|
|
333
|
+
|
|
334
|
+
## Key Documents
|
|
335
|
+
|
|
336
|
+
| Document | What It Covers |
|
|
337
|
+
|----------|---------------|
|
|
338
|
+
| [Security Design](docs/SECURITY_DESIGN.md) | Threat model, design decisions, failure modes |
|
|
339
|
+
| [YC Application](docs/YC_APPLICATION.md) | Product positioning, market, competitive landscape |
|
|
340
|
+
| [OWASP LLM Mapping](docs/OWASP_LLM_MAPPING.md) | Control-to-risk compliance mapping |
|
|
341
|
+
| [Admin Console Design](docs/ADMIN_CONSOLE.md) | Policy management architecture |
|
|
342
|
+
| [Memory Agent Threats](docs/MEMORY_AGENT_THREAT_MODEL.md) | Memory poisoning, trust boundaries |
|
|
343
|
+
| [GTM Strategy](docs/GTM_STRATEGY.md) | Go-to-market plan, partnerships, content |
|
|
344
|
+
| [Competitive Analysis](docs/COMPETITIVE_ANALYSIS.md) | vs Lakera, Protect AI, Prompt Security, HiddenLayer |
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
## License
|
|
349
|
+
|
|
350
|
+
MIT
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
agnostic_security-4.6.0.dist-info/METADATA,,
|
|
2
|
+
agnostic_security-4.6.0.dist-info/WHEEL,,
|
|
3
|
+
agnostic_security-4.6.0.dist-info/entry_points.txt,,
|
|
4
|
+
agnostic_security-4.6.0.dist-info/licenses/LICENSE,,
|
|
5
|
+
agnostic_security-4.6.0.dist-info/top_level.txt,,
|
|
6
|
+
cli/__init__.py,,
|
|
7
|
+
cli/__init__.pyc,,
|
|
8
|
+
cli/as_init.pyc,,
|
|
9
|
+
hooks/__init__.py,,
|
|
10
|
+
hooks/__init__.pyc,,
|
|
11
|
+
hooks/dlp_scan.pyc,,
|
|
12
|
+
hooks/vuln_scan.pyc,,
|
|
13
|
+
rules/__init__.py,,
|
|
14
|
+
rules/__init__.pyc,,
|
|
15
|
+
rules/block_rules.pyc,,
|
|
16
|
+
scripts/__init__.py,,
|
|
17
|
+
scripts/__init__.pyc,,
|
|
18
|
+
scripts/audit.pyc,,
|
|
19
|
+
scripts/code_scanner.pyc,,
|
|
20
|
+
scripts/continuous_red_team.pyc,,
|
|
21
|
+
scripts/hook_fast.pyc,,
|
|
22
|
+
scripts/load_test.pyc,,
|
|
23
|
+
scripts/network_enforcement.pyc,,
|
|
24
|
+
scripts/nist_score.pyc,,
|
|
25
|
+
scripts/owasp_score.pyc,,
|
|
26
|
+
scripts/red_team.pyc,,
|
|
27
|
+
scripts/red_team_report.pyc,,
|
|
28
|
+
scripts/run_manual_tests.pyc,,
|
|
29
|
+
scripts/secagent_check.pyc,,
|
|
30
|
+
scripts/smoke_test.pyc,,
|
|
31
|
+
scripts/test_admin_console.pyc,,
|
|
32
|
+
scripts/test_block_rules.pyc,,
|
|
33
|
+
scripts/test_breach_classifier.pyc,,
|
|
34
|
+
scripts/test_code_fingerprint.pyc,,
|
|
35
|
+
scripts/test_code_scanner.pyc,,
|
|
36
|
+
scripts/test_credential_classifier.pyc,,
|
|
37
|
+
scripts/test_dlp_scanner.pyc,,
|
|
38
|
+
scripts/test_fixes.pyc,,
|
|
39
|
+
scripts/test_hook_e2e.pyc,,
|
|
40
|
+
scripts/test_image_ocr_dlp.pyc,,
|
|
41
|
+
scripts/test_ingress_guard.pyc,,
|
|
42
|
+
scripts/test_knowledge_graph.pyc,,
|
|
43
|
+
scripts/test_model_locality.pyc,,
|
|
44
|
+
scripts/test_outbound_guards.pyc,,
|
|
45
|
+
scripts/test_pii_prompt_guard.pyc,,
|
|
46
|
+
scripts/test_privacy_mode.pyc,,
|
|
47
|
+
scripts/test_production_features.pyc,,
|
|
48
|
+
scripts/test_red_team.pyc,,
|
|
49
|
+
scripts/test_secure_fs.pyc,,
|
|
50
|
+
scripts/test_security_memory.pyc,,
|
|
51
|
+
scripts/test_shadow_ai.pyc,,
|
|
52
|
+
scripts/test_smart_router.pyc,,
|
|
53
|
+
scripts/test_terminal_bypass.pyc,,
|
|
54
|
+
scripts/test_vuln_scanner.pyc,,
|
|
55
|
+
scripts/train_enhanced_classifier.pyc,,
|
|
56
|
+
scripts/train_ml_classifier.pyc,,
|
|
57
|
+
scripts/vps_monitor.pyc,,
|
|
58
|
+
agnostic_security-4.6.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 SecurityAgent Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
cli/__init__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# bytecode-only distribution
|
cli/__init__.pyc
ADDED
|
Binary file
|
cli/as_init.pyc
ADDED
|
Binary file
|
hooks/__init__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# bytecode-only distribution
|
hooks/__init__.pyc
ADDED
|
Binary file
|
hooks/dlp_scan.pyc
ADDED
|
Binary file
|
hooks/vuln_scan.pyc
ADDED
|
Binary file
|
rules/__init__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# bytecode-only distribution
|
rules/__init__.pyc
ADDED
|
Binary file
|
rules/block_rules.pyc
ADDED
|
Binary file
|
scripts/__init__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# bytecode-only distribution
|
scripts/__init__.pyc
ADDED
|
Binary file
|
scripts/audit.pyc
ADDED
|
Binary file
|
scripts/code_scanner.pyc
ADDED
|
Binary file
|
|
Binary file
|
scripts/hook_fast.pyc
ADDED
|
Binary file
|
scripts/load_test.pyc
ADDED
|
Binary file
|
|
Binary file
|
scripts/nist_score.pyc
ADDED
|
Binary file
|
scripts/owasp_score.pyc
ADDED
|
Binary file
|
scripts/red_team.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
scripts/smoke_test.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
scripts/test_fixes.pyc
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
scripts/vps_monitor.pyc
ADDED
|
Binary file
|