torusguard 1.4.0 → 2.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 (160) hide show
  1. package/.torusguard/.manifest.json +50 -28
  2. package/.torusguard/auth.json +5 -0
  3. package/.torusguard/rules/container/TG-CONT-001-root-user-execution.md +50 -0
  4. package/.torusguard/rules/container/TG-CONT-002-docker-socket-mount.md +47 -0
  5. package/.torusguard/rules/container/TG-CONT-003-privileged-container-mode.md +53 -0
  6. package/.torusguard/rules/container/TG-CONT-004-build-arg-secret-exposure.md +43 -0
  7. package/.torusguard/rules/git/TG-GIT-001-historical-secret-in-git-commit.md +44 -0
  8. package/.torusguard/rules/git/TG-GIT-002-plaintext-credentials-in-git-config.md +41 -0
  9. package/.torusguard/rules/git/TG-GIT-003-sensitive-tracked-file-gitignore-breach.md +40 -0
  10. package/.torusguard/rules/rag/TG-RAG-001-untrusted-rag-context-injection.md +72 -0
  11. package/.torusguard/rules/rag/TG-RAG-002-autonomous-llm-tool-unsandboxed-call.md +51 -0
  12. package/.torusguard/rules/rag/TG-RAG-003-unpartitioned-vector-tenant-lookup.md +51 -0
  13. package/.torusguard/rules/redos/TG-REDOS-001-catastrophic-exponential-backtracking.md +46 -0
  14. package/.torusguard/rules/redos/TG-REDOS-002-unbounded-nested-quantifier.md +43 -0
  15. package/.torusguard/rules_catalog.json +338 -518
  16. package/.torusguard/scripts/__pycache__/apply_runner.cpython-314.pyc +0 -0
  17. package/.torusguard/scripts/__pycache__/audit_runner.cpython-314.pyc +0 -0
  18. package/.torusguard/scripts/__pycache__/harden_runner.cpython-314.pyc +0 -0
  19. package/.torusguard/scripts/__pycache__/html_reporter.cpython-314.pyc +0 -0
  20. package/.torusguard/scripts/__pycache__/manifest_builder.cpython-314.pyc +0 -0
  21. package/.torusguard/scripts/__pycache__/recipes_runner.cpython-314.pyc +0 -0
  22. package/.torusguard/scripts/__pycache__/report_sync.cpython-314.pyc +0 -0
  23. package/.torusguard/scripts/manifest_builder.py +1 -1
  24. package/.torusguard/skills/torusguard/SKILL.md +69 -24
  25. package/.torusguard/skills/torusguard/bootstrap.py +57 -24
  26. package/.torusguard/skills/torusguard-ai-guard/SKILL.md +95 -0
  27. package/.torusguard/skills/torusguard-apply/SKILL.md +60 -34
  28. package/.torusguard/skills/torusguard-audit/SKILL.md +73 -24
  29. package/.torusguard/skills/torusguard-authorize/SKILL.md +48 -6
  30. package/.torusguard/skills/torusguard-container/SKILL.md +94 -0
  31. package/.torusguard/skills/torusguard-exploit-check/SKILL.md +50 -6
  32. package/.torusguard/skills/torusguard-full/SKILL.md +62 -19
  33. package/.torusguard/skills/torusguard-git-mine/SKILL.md +92 -0
  34. package/.torusguard/skills/torusguard-harden/SKILL.md +81 -50
  35. package/.torusguard/skills/torusguard-init/SKILL.md +61 -14
  36. package/.torusguard/skills/torusguard-ocr-scan/SKILL.md +94 -0
  37. package/.torusguard/skills/torusguard-recheck/SKILL.md +71 -18
  38. package/.torusguard/skills/torusguard-redos/SKILL.md +91 -0
  39. package/.torusguard/skills/torusguard-report/SKILL.md +50 -9
  40. package/.torusguard/skills/torusguard-status/SKILL.md +63 -10
  41. package/.torusguard/skills/torusguard-verify/SKILL.md +52 -10
  42. package/.torusguard/skills/torusguard-web-validate/SKILL.md +53 -8
  43. package/.torusguard/snapshots/20260921-182638/go.mod.bak +11 -0
  44. package/.torusguard/snapshots/20260921-185213/file.go.bak +5 -0
  45. package/.torusguard/workflows/ai-guard.md +31 -0
  46. package/.torusguard/workflows/apply.md +32 -55
  47. package/.torusguard/workflows/audit.md +28 -46
  48. package/.torusguard/workflows/authorize.md +27 -50
  49. package/.torusguard/workflows/container.md +29 -0
  50. package/.torusguard/workflows/exploit-check.md +28 -50
  51. package/.torusguard/workflows/git-mine.md +25 -0
  52. package/.torusguard/workflows/harden.md +29 -48
  53. package/.torusguard/workflows/init.md +27 -50
  54. package/.torusguard/workflows/memory.md +18 -23
  55. package/.torusguard/workflows/ocr-scan.md +25 -0
  56. package/.torusguard/workflows/recheck.md +28 -46
  57. package/.torusguard/workflows/redos.md +27 -0
  58. package/.torusguard/workflows/report.md +33 -52
  59. package/.torusguard/workflows/status.md +31 -52
  60. package/.torusguard/workflows/verify.md +29 -49
  61. package/.torusguard/workflows/web-validate.md +22 -45
  62. package/README.md +336 -386
  63. package/package.json +1 -1
  64. package/skills/torusguard/SKILL.md +71 -24
  65. package/skills/torusguard/__pycache__/bootstrap.cpython-314.pyc +0 -0
  66. package/skills/torusguard/bootstrap.py +60 -71
  67. package/skills/torusguard/payload/.manifest.json +50 -28
  68. package/skills/torusguard/payload/TORUSGUARD.md +145 -145
  69. package/skills/torusguard/payload/agents/auditor.md +41 -41
  70. package/skills/torusguard/payload/agents/profiler.md +49 -49
  71. package/skills/torusguard/payload/agents/remediator.md +41 -41
  72. package/skills/torusguard/payload/agents/reviewer.md +39 -39
  73. package/skills/torusguard/payload/agents/validator.md +46 -46
  74. package/skills/torusguard/payload/config/scope.json +24 -24
  75. package/skills/torusguard/payload/references/csharp-security.md +41 -41
  76. package/skills/torusguard/payload/references/go-security.md +41 -41
  77. package/skills/torusguard/payload/references/java-security.md +40 -40
  78. package/skills/torusguard/payload/references/polyglot-security-matrix.md +25 -25
  79. package/skills/torusguard/payload/references/rust-security.md +40 -40
  80. package/skills/torusguard/payload/rules/container/TG-CONT-001-root-user-execution.md +50 -0
  81. package/skills/torusguard/payload/rules/container/TG-CONT-002-docker-socket-mount.md +47 -0
  82. package/skills/torusguard/payload/rules/container/TG-CONT-003-privileged-container-mode.md +53 -0
  83. package/skills/torusguard/payload/rules/container/TG-CONT-004-build-arg-secret-exposure.md +43 -0
  84. package/skills/torusguard/payload/rules/custom/.gitkeep +1 -1
  85. package/skills/torusguard/payload/rules/custom/README.md +30 -30
  86. package/skills/torusguard/payload/rules/git/TG-GIT-001-historical-secret-in-git-commit.md +44 -0
  87. package/skills/torusguard/payload/rules/git/TG-GIT-002-plaintext-credentials-in-git-config.md +41 -0
  88. package/skills/torusguard/payload/rules/git/TG-GIT-003-sensitive-tracked-file-gitignore-breach.md +40 -0
  89. package/skills/torusguard/payload/rules/rag/TG-RAG-001-untrusted-rag-context-injection.md +72 -0
  90. package/skills/torusguard/payload/rules/rag/TG-RAG-002-autonomous-llm-tool-unsandboxed-call.md +51 -0
  91. package/skills/torusguard/payload/rules/rag/TG-RAG-003-unpartitioned-vector-tenant-lookup.md +51 -0
  92. package/skills/torusguard/payload/rules/redos/TG-REDOS-001-catastrophic-exponential-backtracking.md +46 -0
  93. package/skills/torusguard/payload/rules/redos/TG-REDOS-002-unbounded-nested-quantifier.md +43 -0
  94. package/skills/torusguard/payload/rules_catalog.json +338 -518
  95. package/skills/torusguard/payload/scripts/__pycache__/term_ui.cpython-314.pyc +0 -0
  96. package/skills/torusguard/payload/scripts/manifest_builder.py +1 -1
  97. package/skills/torusguard/payload/scripts/rules_sync.py +321 -321
  98. package/skills/torusguard/payload/scripts/safety_gate.py +64 -64
  99. package/skills/torusguard/payload/skills/torusguard/SKILL.md +69 -24
  100. package/skills/torusguard/payload/skills/torusguard/bootstrap.py +57 -24
  101. package/skills/torusguard/payload/skills/torusguard-ai-guard/SKILL.md +95 -0
  102. package/skills/torusguard/payload/skills/torusguard-apply/SKILL.md +60 -34
  103. package/skills/torusguard/payload/skills/torusguard-audit/SKILL.md +73 -24
  104. package/skills/torusguard/payload/skills/torusguard-authorize/SKILL.md +48 -6
  105. package/skills/torusguard/payload/skills/torusguard-container/SKILL.md +94 -0
  106. package/skills/torusguard/payload/skills/torusguard-exploit-check/SKILL.md +50 -6
  107. package/skills/torusguard/payload/skills/torusguard-full/SKILL.md +62 -19
  108. package/skills/torusguard/payload/skills/torusguard-git-mine/SKILL.md +92 -0
  109. package/skills/torusguard/payload/skills/torusguard-harden/SKILL.md +81 -50
  110. package/skills/torusguard/payload/skills/torusguard-init/SKILL.md +61 -14
  111. package/skills/torusguard/payload/skills/torusguard-ocr-scan/SKILL.md +94 -0
  112. package/skills/torusguard/payload/skills/torusguard-recheck/SKILL.md +71 -18
  113. package/skills/torusguard/payload/skills/torusguard-redos/SKILL.md +91 -0
  114. package/skills/torusguard/payload/skills/torusguard-report/SKILL.md +50 -9
  115. package/skills/torusguard/payload/skills/torusguard-status/SKILL.md +63 -10
  116. package/skills/torusguard/payload/skills/torusguard-verify/SKILL.md +52 -10
  117. package/skills/torusguard/payload/skills/torusguard-web-validate/SKILL.md +53 -8
  118. package/skills/torusguard/payload/templates/audit-report.template.md +54 -54
  119. package/skills/torusguard/payload/templates/authorization.template.md +34 -34
  120. package/skills/torusguard/payload/templates/finding-card.template.md +32 -32
  121. package/skills/torusguard/payload/templates/remediation-bundle.template.md +35 -35
  122. package/skills/torusguard/payload/workflows/ai-guard.md +31 -0
  123. package/skills/torusguard/payload/workflows/apply.md +31 -62
  124. package/skills/torusguard/payload/workflows/audit.md +27 -51
  125. package/skills/torusguard/payload/workflows/authorize.md +27 -50
  126. package/skills/torusguard/payload/workflows/container.md +29 -0
  127. package/skills/torusguard/payload/workflows/exploit-check.md +28 -50
  128. package/skills/torusguard/payload/workflows/git-mine.md +25 -0
  129. package/skills/torusguard/payload/workflows/harden.md +28 -52
  130. package/skills/torusguard/payload/workflows/init.md +27 -56
  131. package/skills/torusguard/payload/workflows/memory.md +18 -23
  132. package/skills/torusguard/payload/workflows/ocr-scan.md +25 -0
  133. package/skills/torusguard/payload/workflows/recheck.md +28 -46
  134. package/skills/torusguard/payload/workflows/redos.md +27 -0
  135. package/skills/torusguard/payload/workflows/report.md +39 -62
  136. package/skills/torusguard/payload/workflows/status.md +31 -55
  137. package/skills/torusguard/payload/workflows/verify.md +29 -49
  138. package/skills/torusguard/payload/workflows/web-validate.md +22 -45
  139. package/skills/torusguard/references/csharp-security.md +41 -0
  140. package/skills/torusguard/references/go-security.md +41 -0
  141. package/skills/torusguard/references/java-security.md +40 -0
  142. package/skills/torusguard/references/polyglot-security-matrix.md +25 -0
  143. package/skills/torusguard/references/rust-security.md +40 -0
  144. package/skills/torusguard-ai-guard/SKILL.md +95 -0
  145. package/skills/torusguard-apply/SKILL.md +60 -34
  146. package/skills/torusguard-audit/SKILL.md +73 -24
  147. package/skills/torusguard-authorize/SKILL.md +48 -6
  148. package/skills/torusguard-container/SKILL.md +94 -0
  149. package/skills/torusguard-exploit-check/SKILL.md +50 -6
  150. package/skills/torusguard-full/SKILL.md +62 -19
  151. package/skills/torusguard-git-mine/SKILL.md +92 -0
  152. package/skills/torusguard-harden/SKILL.md +81 -50
  153. package/skills/torusguard-init/SKILL.md +61 -14
  154. package/skills/torusguard-ocr-scan/SKILL.md +94 -0
  155. package/skills/torusguard-recheck/SKILL.md +71 -18
  156. package/skills/torusguard-redos/SKILL.md +91 -0
  157. package/skills/torusguard-report/SKILL.md +50 -9
  158. package/skills/torusguard-status/SKILL.md +63 -10
  159. package/skills/torusguard-verify/SKILL.md +52 -10
  160. package/skills/torusguard-web-validate/SKILL.md +53 -8
@@ -1,14 +1,15 @@
1
1
  ---
2
2
  description: Baseline project discovery, workspace scaffolding, stack detection, and framework-tailored security rule activation.
3
- tools: Read, Grep, Glob, Bash, Write
4
- version: 1.3.6
3
+ tools: Read, Grep, Glob, Bash, Write, run_command
4
+ version: 2.0.0
5
5
  agent: profiler
6
6
  lifecycle-phase: Phase 0 (Baseline Setup)
7
7
  required-skills:
8
8
  - torusguard-init
9
9
  scripts-binding:
10
- - .torusguard/scripts/report_sync.py
11
- - .torusguard/scripts/stack_detect.py
10
+ - internal/workspace/workspace.go
11
+ - cmd/torusguard/main.go
12
+ - cmd/torusguard/mcp.go
12
13
  ---
13
14
 
14
15
  # /torusguard init — Project Baseline & Workspace Initialization
@@ -18,65 +19,42 @@ $ARGUMENTS
18
19
  ---
19
20
 
20
21
  ## Objective
21
- Baseline project discovery, workspace scaffolding, stack detection, and security rule activation.
22
+ Baseline project discovery, workspace scaffolding across polyglot stacks, and activation of 74 canonical security rules across 18 families.
22
23
 
23
24
  ---
24
25
 
25
- ## Mandatory Pre-Flight Context Inspection
26
+ ## Tri-Mode Execution
26
27
 
27
- Inspect workspace state before running initialization:
28
- 1. **Config State (`.torusguard/config/torusguard.json`):** Check if workspace is already initialized. If active, prompt before re-writing.
29
- 2. **Project Manifests:** Check root for `package.json`, `manage.py`, `requirements.txt`, `pyproject.toml`, `go.mod`, or `Cargo.toml`.
30
- 3. **Disclosure Policy (`SECURITY.md`):** Check for existing responsible disclosure policy.
31
- 4. **Bootstrapper:** If `.torusguard/` is absent, invoke `python skills/torusguard/bootstrap.py` to unpack offline assets.
32
- 5. **Runtime Preconditions:** Ensure Python 3.10+ is available in the current execution shell.
28
+ | Mode | Command / Tool | Execution Method |
29
+ | :--- | :--- | :--- |
30
+ | **Mode A: Terminal CLI** | `torusguard init [--force] [--stack <name>]` | Terminal execution of workspace scaffolder. |
31
+ | **Mode B: AI Chat Slash** | `/torusguard init` | Conversational stack profiling and rule activation. |
32
+ | **Mode C: Native MCP Tool** | Administrative Command | Agents execute `torusguard init` via shell and monitor via `torusguard_status`. |
33
33
 
34
34
  ---
35
35
 
36
- ## When to Use /torusguard init
36
+ ## Mandatory Pre-Flight Context Inspection
37
37
 
38
- | Trigger Scenario | Recommended Command |
39
- | :--- | :--- |
40
- | First-time onboarding in any repository | Run `/torusguard init` |
41
- | Framework upgrade or major dependency changes | Run `/torusguard init` to refresh tailored rules |
42
- | Repository already configured | Run `/torusguard audit` |
43
- | Inspecting existing configuration | Run `/torusguard status` |
44
- | Testing legal boundaries | Run `/torusguard authorize` |
38
+ Inspect workspace state before running initialization:
39
+ 1. **Config State (`.torusguard/config/torusguard.json`):** Check if workspace is already initialized.
40
+ 2. **Project Manifests:** Check root for `package.json`, `go.mod`, `Cargo.toml`, `requirements.txt`, `pyproject.toml`.
41
+ 3. **Disclosure Policy (`SECURITY.md`):** Check for existing responsible disclosure policy.
45
42
 
46
43
  ---
47
44
 
48
45
  ## Living Report Invariant
49
- - Provisions baseline `security_report.md` single-source-of-truth ledger.
46
+ - Provisions baseline `SECURITY.md` responsible disclosure policy.
50
47
  - Activates tailored rules across 18 families based on detected stack.
51
48
 
52
- ## Execution Steps
53
-
54
- 1. **Scaffold Directory Topology:** Verify `.torusguard/` structure (`config/`, `rules/active/`, `runs/`, `scripts/`, `workflows/`, `templates/`, `schemas/`).
55
- 2. **Execute Stack Detection:**
56
- ```bash
57
- python .torusguard/scripts/stack_detect.py .
58
- ```
59
- 3. **Activate Tailored Rules:** Symlink or copy matching security rules from `.torusguard/rules/` into `.torusguard/rules/active/`.
60
- 4. **Write Configuration (`.torusguard/config/torusguard.json`):**
61
- Record detected stack, enabled rules count, timestamp, and runtime constraints.
62
- 5. **Verify Initialization:** Assert `.torusguard/config/torusguard.json` and `.torusguard/config/scope.json` exist.
63
-
64
49
  ---
65
50
 
66
- ## Failure Recovery
67
-
68
- - **Script Exit 1 (Detection Failed):** Check Python version (`python --version` >= 3.10) and verify read access to root manifests.
69
- - **Permission Error:** Verify write permissions for `.torusguard/config/` and `.torusguard/rules/active/`.
70
- - **Missing Directories:** Re-run directory scaffolding if any subfolder creation fails.
71
- - **Halt Condition:** If root directory is empty, halt and prompt user to open the project root.
72
-
73
- ---
74
-
75
- ## Hallucination Guard
51
+ ## Execution Steps
76
52
 
77
- - ❌ Never invent framework dependencies not present in `package.json` or `requirements.txt`.
78
- - ❌ Never overwrite an existing `.torusguard/config/scope.json` containing authorized domains.
79
- - ✅ Always execute `.torusguard/scripts/stack_detect.py` to ground detected technologies.
53
+ 1. **Scaffold Directory Topology:** Create `.torusguard/` structure (`config/`, `rules/active/`, `runs/`, `snapshots/`, `memory/`).
54
+ 2. **Detect Stack:** Automatically identify frameworks across 16+ polyglot languages.
55
+ 3. **Persist Configuration:** Write `.torusguard/config/torusguard.json`.
56
+ 4. **Provision Policy:** Generate baseline `SECURITY.md` at workspace root.
57
+ 5. **Recommend Audit:** Direct user to `/torusguard audit` or `torusguard audit`.
80
58
 
81
59
  ---
82
60
 
@@ -84,11 +62,10 @@ Inspect workspace state before running initialization:
84
62
 
85
63
  ```markdown
86
64
  ### 🛡️ TorusGuard Workspace Initialization
87
- - **Primary Framework:** [Detected Stack or None]
88
- - **Components:** [Backend / Frontend / Database]
89
- - **Active Rules:** [Count] rules enabled in `.torusguard/rules/active/`
65
+ - **Primary Framework:** [Detected Stack]
66
+ - **Active Rules:** 74 rules enabled across 18 families
90
67
  - **Config:** `.torusguard/config/torusguard.json` generated
91
- - **Scope Template:** `.torusguard/config/scope.json` ready
68
+ - **Policy:** `SECURITY.md` provisioned
92
69
  - **Status:** READY — run `/torusguard audit` to scan codebase
93
70
  ```
94
71
 
@@ -1,14 +1,15 @@
1
1
  ---
2
2
  description: TorusGuard Adaptive Security Memory Engine — view memory stats, export/import intelligence, apply TTL decay, and manage false positives.
3
- tools: Read, Grep, Glob, Bash
4
- version: 1.3.6
3
+ tools: Read, Grep, Glob, Bash, Write, run_command
4
+ version: 2.0.0
5
5
  agent: reviewer
6
6
  lifecycle-phase: Intelligence / Memory
7
7
  required-skills:
8
8
  - torusguard
9
9
  scripts-binding:
10
- - .torusguard/scripts/report_sync.py
11
- - .torusguard/scripts/memory_engine.py
10
+ - internal/memory/recipes.go
11
+ - cmd/torusguard/main.go
12
+ - cmd/torusguard/mcp.go
12
13
  ---
13
14
 
14
15
  # /torusguard memory — Adaptive Security Memory Engine & Intelligence Management
@@ -18,37 +19,31 @@ $ARGUMENTS
18
19
  ---
19
20
 
20
21
  ## Objective
21
- Inspect, manage, export, import, or compact persistent local security memory patterns, context window cards, and false positive suppressions.
22
+ Inspect, manage, export, import, or compact persistent local security memory patterns, context window cards, and Golden Fix Recipes.
22
23
 
23
24
  ---
24
25
 
25
- ## Subcommands & Usage
26
+ ## Tri-Mode Execution
26
27
 
27
- | Command | Action | Description |
28
+ | Mode | Command / Tool | Execution Method |
28
29
  | :--- | :--- | :--- |
29
- | `npx torusguard memory` | Status | Display memory stats, pattern count, and context token estimate |
30
- | `npx torusguard memory context` | Context Dump | Output the active pre-computed context window cards |
31
- | `npx torusguard memory fp --rule <RULE_ID>` | False Positive | Suppress rule as false positive across future scans |
32
- | `npx torusguard memory decay [--ttl 90]` | TTL Decay | Apply confidence decay to stale, unconfirmed patterns |
33
- | `npx torusguard memory export --path <FILE>` | Export | Export memory bundle for team sharing |
34
- | `npx torusguard memory import --path <FILE>` | Import | Merge external memory bundle into local project intelligence |
35
- | `npx torusguard memory compact` | Compaction | Archive raw events older than 30 days into single archive |
30
+ | **Mode A: Terminal CLI** | `torusguard recipes [list \| show \| export]` | Terminal management of Golden Fix Recipes. |
31
+ | **Mode B: AI Chat Slash** | `/torusguard recipes` | Interactive exploration of verified remediation patterns. |
32
+ | **Mode C: Native MCP Tool** | `torusguard://rules_catalog` | Programmatic access to catalog rules and distilled patterns. |
36
33
 
37
34
  ---
38
35
 
39
- ## Execution Steps
36
+ ## Subcommands & Usage
40
37
 
41
- 1. **Verify Memory Subsystem:** Confirm `.torusguard/memory/` exists and is shielded by `.gitignore`.
42
- 2. **Execute Requested Action:** Invoke `.torusguard/scripts/memory_engine.py` with appropriate action flag:
43
- ```bash
44
- python .torusguard/scripts/memory_engine.py --action status
45
- ```
46
- 3. **Verify Context Token Budget:** Confirm `context.json` remains within token budget ($\le 2,000$ tokens).
47
- 4. **Display Intelligence Card:** Render summary card to user.
38
+ | Command | Action | Description |
39
+ | :--- | :--- | :--- |
40
+ | `torusguard recipes` | List | Display Golden Fix recipes library |
41
+ | `torusguard recipes list` | Catalog | Enumerate verified fix patterns |
42
+ | `torusguard recipes export` | Export | Export memory bundle for team sharing |
48
43
 
49
44
  ---
50
45
 
51
46
  ## Privacy & Security Invariants
52
47
  - Memory files remain strictly local under `.torusguard/memory/` and are always gitignored.
53
- - Memory files are never packaged into npm release tarballs.
48
+ - Memory files are never packaged into release tarballs.
54
49
  - Export operations only occur when explicitly invoked by user command.
@@ -0,0 +1,25 @@
1
+ # /torusguard-ocr-scan — Multi-Modal OCR Secret Scanning
2
+
3
+ $ARGUMENTS
4
+
5
+ ---
6
+
7
+ ## Objective
8
+ Detect optical leaks of private API keys, AWS credentials, database URIs, GitHub personal access tokens, and private certificates embedded inside visual artifacts (`.png`, `.jpg`, `.jpeg`, `.webp`, `.bmp`, `.tiff`) up to 10MB using Tesseract OCR and deterministic regex signatures.
9
+
10
+ ---
11
+
12
+ ## Tri-Mode Parity
13
+ - **Mode A (Terminal CLI):** `torusguard ocr-scan <target>`
14
+ - **Mode B (AI Chat Slash Command):** `/torusguard ocr-scan <target>`
15
+ - **Mode C (Native MCP Tool):** `torusguard_ocr_scan`
16
+
17
+ ---
18
+
19
+ ## Execution Steps
20
+
21
+ 1. **Verify Target:** Check target image or directory exists on disk.
22
+ 2. **Inspect File Size:** Reject images exceeding 10MB (`DefaultMaxImageSize`) to preserve DoS resilience.
23
+ 3. **Execute OCR Extraction:** Run Tesseract optical text analysis via Go scanner or MCP tool.
24
+ 4. **Pattern Match Secrets:** Evaluate optical text against `TG-SEC-001` through `TG-SEC-007` signatures.
25
+ 5. **Redact & Report:** Emit sanitized finding cards and synchronize into `security_report.md`.
@@ -1,16 +1,15 @@
1
1
  ---
2
2
  description: Targeted differential AST re-scan, fix closure verification, and regression state machine transitions.
3
- tools: Read, Grep, Glob, Bash, Write
4
- version: 1.3.6
3
+ tools: Read, Grep, Glob, Bash, Write, run_command
4
+ version: 2.0.0
5
5
  agent: reviewer
6
6
  lifecycle-phase: Phase 6 (Targeted Recheck & Verification)
7
7
  required-skills:
8
8
  - torusguard-recheck
9
9
  scripts-binding:
10
- - .torusguard/scripts/recheck_runner.py
11
- - .torusguard/scripts/report_sync.py
12
- - .torusguard/scripts/run_manager.py
13
- - .torusguard/scripts/finding_scorer.py
10
+ - internal/recheck/recheck.go
11
+ - cmd/torusguard/main.go
12
+ - cmd/torusguard/mcp.go
14
13
  ---
15
14
 
16
15
  # /torusguard recheck — Targeted Differential Recheck & Regression Audit
@@ -20,31 +19,28 @@ $ARGUMENTS
20
19
  ---
21
20
 
22
21
  ## Objective
23
- Targeted differential AST re-scan, fix closure verification, and regression state transitions.
22
+ Targeted differential AST re-scan, fix closure verification, and regression state machine transitions across modified files.
23
+
24
+ ---
25
+
26
+ ## Tri-Mode Execution
27
+
28
+ | Mode | Command / Tool | Execution Method |
29
+ | :--- | :--- | :--- |
30
+ | **Mode A: Terminal CLI** | `torusguard recheck` | Terminal execution of differential AST scanner. |
31
+ | **Mode B: AI Chat Slash** | `/torusguard recheck` | Conversational differential review and regression verification. |
32
+ | **Mode C: Native MCP Tool** | `torusguard_recheck` | Agent tool call with `{"target": "."}` returning diff assertions. |
24
33
 
25
34
  ---
26
35
 
27
36
  ## Mandatory Pre-Flight Context Inspection
28
37
 
29
38
  Inspect applied patch history and target file scope before re-checking:
30
- 1. **Applied Patch Record:** Verify `apply-log.json` or modified file list exists in the active run.
39
+ 1. **Applied Patch Record:** Inspect git status or diff for modified files.
31
40
  2. **Scope Limitation:** Restrict differential scan strictly to modified files to conserve token budget.
32
- 3. **Rollback Availability:** Confirm `.bak` snapshot exists in `pre_apply/` in case regression is detected.
41
+ 3. **Rollback Availability:** Confirm `.bak` snapshot exists in `.torusguard/snapshots/` in case regression is detected.
33
42
  4. **4-State Transition Engine:** Prepare to transition findings to `Fixed`, `Partially Fixed`, `Not Fixed`, or `Regression`.
34
43
  5. **Fresh Syntax Validation:** Ensure no compiler or syntax errors exist before re-evaluating rules.
35
- 6. **AST Consistency:** Ensure imported dependencies on modified lines resolve correctly.
36
-
37
- ---
38
-
39
- ## When to Use /torusguard recheck
40
-
41
- | Trigger Scenario | Recommended Action |
42
- | :--- | :--- |
43
- | Immediately after applying a remediation patch | Run `/torusguard recheck` |
44
- | Verifying that a specific finding is eliminated | Run `/torusguard recheck` |
45
- | Checking whether a patch introduced new security flaws | Run `/torusguard recheck` |
46
- | Whole repository baseline audit | Run `/torusguard audit` |
47
- | Generating final signed release report | Run `/torusguard report` |
48
44
 
49
45
  ---
50
46
 
@@ -52,32 +48,19 @@ Inspect applied patch history and target file scope before re-checking:
52
48
  - Verified fix closures transition findings in `security_report.md` to `RESOLVED 🟢`.
53
49
  - Regressions transition findings to `REGRESSED ❌`.
54
50
 
55
- ## Execution Steps
56
-
57
- 1. **Identify Modified Files:** Extract list of altered files from latest apply step.
58
- 2. **Execute Differential AST Scan:** Re-run active security rules exclusively against modified files.
59
- 3. **Evaluate Finding Status:**
60
- - If original vulnerable AST pattern is absent and no new sink appears: transition to `Fixed`.
61
- - If new security rule triggers on altered lines: classify as `Regression`.
62
- 4. **Update Finding State:** Record verified resolution status into `findings.json`.
63
- 5. **Emit Recheck Report:** Write `recheck-report.md` into the active run folder.
64
-
65
- ---
66
-
67
- ## Failure Recovery
68
-
69
- - **Finding Still Present (`Not Fixed`):** Review patch diff; the remediation did not neutralize the AST sink.
70
- - **New Vulnerability Detected (`Regression`):** Alert operator; prompt to revert from `.bak` snapshot.
71
- - **File Not Found:** Verify file path matches git repository layout.
72
- - **Halt Trigger:** Abort if diff shows changes outside approved patch scope.
73
-
74
51
  ---
75
52
 
76
- ## Hallucination Guard
53
+ ## Execution Steps
77
54
 
78
- - ❌ Never mark a finding as `Fixed` without re-scanning the actual AST of the patched file.
79
- - ❌ Never ignore new warnings introduced in modified lines.
80
- - ✅ Always provide before/after line comparisons confirming sink removal.
55
+ 1. **Trigger Recheck:**
56
+ - **Mode A (CLI):** Run `torusguard recheck`.
57
+ - **Mode B (Chat):** Review modified files and re-scan AST sinks.
58
+ - **Mode C (MCP):** Call `torusguard_recheck`.
59
+ 2. **Evaluate Finding Status:**
60
+ - If original vulnerable pattern is absent and no new sink appears: transition to `✔ [Confirmed Fixed]`.
61
+ - If new security rule triggers on altered lines: classify as `✖ [Regressed]`.
62
+ 3. **Update Finding State:** Update `security_report.md`.
63
+ 4. **Recommend Posture Report:** Advise running `torusguard report --html`.
81
64
 
82
65
  ---
83
66
 
@@ -89,7 +72,6 @@ Inspect applied patch history and target file scope before re-checking:
89
72
  - **Target Finding:** `TG-XXX-HASH`
90
73
  - **Result:** [FIXED / REGRESSION / PARTIAL]
91
74
  - **Regressions Introduced:** 0
92
- - **Report:** `.torusguard/runs/<run_id>/recheck-report.md`
93
75
  - **Status:** VERIFIED — ready for `/torusguard report`
94
76
  ```
95
77
 
@@ -0,0 +1,27 @@
1
+ # /torusguard-redos — Regular Expression Complexity Scanner
2
+
3
+ $ARGUMENTS
4
+
5
+ ---
6
+
7
+ ## Objective
8
+ Detect and remediate catastrophic exponential ($O(2^n)$) and polynomial backtracking regular expressions in web applications to prevent availability and thread starvation DoS attacks.
9
+
10
+ ---
11
+
12
+ ## Tri-Mode Parity
13
+ - **Mode A (Terminal CLI):** `torusguard redos [target]`
14
+ - **Mode B (AI Chat Slash Command):** `/torusguard redos [target]`
15
+ - **Mode C (Native MCP Tool):** `torusguard_redos`
16
+
17
+ ---
18
+
19
+ ## Execution Steps
20
+
21
+ 1. **Locate Regex Definitions:** Walk source tree to find regex literals and constructor calls (`RegExp`, `re.compile`, `regexp.MustCompile`).
22
+ 2. **Analyze Backtracking Complexity:**
23
+ - Detect nested quantifiers (`(x+)+`, `(x*)*`) causing $O(2^n)$ exponential blowup (`TG-REDOS-001`).
24
+ - Detect overlapping alternations with outer repetition causing polynomial blowup (`TG-REDOS-002`).
25
+ 3. **Audit Input Length Guardrails:** Check if untrusted inputs evaluated against regexes are bounded in character length.
26
+ 4. **Formulate Safe Remediation:** Refactor vulnerable regexes into linear deterministic expressions, anchor tokens, or parser logic.
27
+ 5. **Synchronize Report:** Log all ReDoS findings in `security_report.md`.
@@ -1,16 +1,16 @@
1
1
  ---
2
2
  description: Executive posture reporting, cluster analysis, signed compliance audit, and OASIS SARIF v2.1.0 structured export.
3
- tools: Read, Grep, Glob, Bash, Write
4
- version: 1.3.6
3
+ tools: Read, Grep, Glob, Bash, Write, run_command
4
+ version: 2.0.0
5
5
  agent: reviewer
6
6
  lifecycle-phase: Phase 7 (Reporting & SARIF Export)
7
7
  required-skills:
8
8
  - torusguard-report
9
9
  scripts-binding:
10
- - .torusguard/scripts/html_reporter.py
11
- - .torusguard/scripts/report_sync.py
12
- - .torusguard/scripts/sarif_exporter.py
13
- - .torusguard/scripts/run_manager.py
10
+ - internal/report/html.go
11
+ - internal/report/sarif.go
12
+ - cmd/torusguard/main.go
13
+ - cmd/torusguard/mcp.go
14
14
  ---
15
15
 
16
16
  # /torusguard report — Unified Security Posture Report & SARIF Export
@@ -20,30 +20,28 @@ $ARGUMENTS
20
20
  ---
21
21
 
22
22
  ## Objective
23
- Executive posture reporting, cluster analysis, signed compliance audit, and SARIF v2.1.0 export.
23
+ Executive posture reporting, cluster analysis, signed compliance audit, and OASIS SARIF v2.1.0 export.
24
+
25
+ ---
26
+
27
+ ## Tri-Mode Execution
28
+
29
+ | Mode | Command / Tool | Execution Method |
30
+ | :--- | :--- | :--- |
31
+ | **Mode A: Terminal CLI** | `torusguard report --html [--sarif]` | Shell compilation of HTML dashboard and SARIF log. |
32
+ | **Mode B: AI Chat Slash** | `/torusguard report` | Executive summary generation and posture calculation. |
33
+ | **Mode C: Native MCP Tool** | `torusguard://security_report` | Agent reads resource payload directly from living report. |
24
34
 
25
35
  ---
26
36
 
27
37
  ## Mandatory Pre-Flight Context Inspection
28
38
 
29
39
  Inspect run records and reporting parameters before generating release artifacts:
30
- 1. **Active Run Records:** Ensure target run folder contains `findings.json` or `findings.md`.
40
+ 1. **Living Report State:** Ensure `security_report.md` exists and reflects latest findings.
31
41
  2. **SARIF v2.1.0 Schema:** Validate output structure against official OASIS SARIF standard.
32
42
  3. **Multi-Analysis Category:** Tag static findings under category `torusguard/static` to prevent CI collision.
33
43
  4. **Secret Masking:** Ensure zero unredacted authorization tokens or API keys appear in report.
34
- 5. **Role Boundary:** Enforce reviewer agent sign-off before archiving run results.
35
-
36
- ---
37
-
38
- ## When to Use /torusguard report
39
-
40
- | Trigger Scenario | Recommended Action |
41
- | :--- | :--- |
42
- | Concluding a security review cycle or audit milestone | Run `/torusguard report` |
43
- | Exporting SARIF v2.1.0 logs for GitHub Code Scanning | Run `/torusguard report` |
44
- | Sharing executive posture summaries with stakeholders | Run `/torusguard report` |
45
- | Applying code modifications | Run `/torusguard apply` |
46
- | Re-checking modified files | Run `/torusguard recheck` |
44
+ 5. **Zero-CDN Guarantee:** Ensure HTML report contains zero external CDN script dependencies.
47
45
 
48
46
  ---
49
47
 
@@ -51,33 +49,17 @@ Inspect run records and reporting parameters before generating release artifacts
51
49
  - Executive posture reports incorporate health scoring and metrics from `security_report.md`.
52
50
  - Emits visual dark-mode HTML (`--html`) and OASIS SARIF v2.1.0 (`--sarif`).
53
51
 
54
- ## Execution Steps
55
-
56
- 1. **Aggregate Lifecycle Data:** Load all finding cards, verification traces, and recheck logs.
57
- 2. **Export OASIS SARIF v2.1.0:**
58
- ```bash
59
- python .torusguard/scripts/sarif_exporter.py --run <run_dir> --output <run_dir>/results.sarif
60
- ```
61
- 3. **Compile Executive Markdown Report:** Generate `report.md` with executive summary, posture score, and metrics.
62
- 4. **Sign Off Run Manifest:** Update `.torusguard/runs/<run_id>/manifest.json` with final status counts.
63
- 5. **Archive Results:** Confirm artifacts (`report.md`, `results.sarif`, `summary.md`) are saved on disk.
64
-
65
- ---
66
-
67
- ## Failure Recovery
68
-
69
- - **SARIF Schema Error:** Re-run `sarif_exporter.py` with schema validation flag to locate invalid properties.
70
- - **Empty Findings List:** Emit valid clean report indicating zero security vulnerabilities detected.
71
- - **Missing Run Folder:** Point script to latest valid timestamped run in `.torusguard/runs/`.
72
- - **Halt Trigger:** Abort if unredacted private secrets are detected in output text.
73
-
74
52
  ---
75
53
 
76
- ## Hallucination Guard
54
+ ## Execution Steps
77
55
 
78
- - ❌ Never invent vulnerability counts not backed by actual findings in the run ledger.
79
- - ❌ Never generate invalid SARIF JSON with missing physical location URIs.
80
- - ✅ Always export standard-compliant SARIF v2.1.0 with AST line fingerprints.
56
+ 1. **Trigger Report Generation:**
57
+ - **Mode A (CLI):** Run `torusguard report --html --sarif`.
58
+ - **Mode B (Chat):** Calculate posture score from `security_report.md` and present summary card.
59
+ - **Mode C (MCP):** Query resource `torusguard://security_report`.
60
+ 2. **Compile Visual HTML:** Generate zero-dependency dark-mode HTML dashboard at `report.html`.
61
+ 3. **Export SARIF v2.1.0:** Produce schema-compliant SARIF log for CI/CD pipelines.
62
+ 4. **Sign Off Ledger:** Confirm artifacts are persisted to disk.
81
63
 
82
64
  ---
83
65
 
@@ -85,12 +67,11 @@ Inspect run records and reporting parameters before generating release artifacts
85
67
 
86
68
  ```markdown
87
69
  ### 📊 TorusGuard Security Posture Report
88
- - **Run ID:** `run-YYYYMMDD-HHMMSS`
89
- - **Total Findings:** [Count] ([Fixed] Fixed, [Open] Open)
90
- - **Security Posture Score:** [Score]/100
91
- - **SARIF v2.1.0 Export:** `.torusguard/runs/<run_id>/results.sarif`
92
- - **Executive Report:** `.torusguard/runs/<run_id>/report.md`
93
- - **Status:** COMPLETE — report published
70
+ - **Posture Score:** 100/100 (OPTIMAL DEFENSE)
71
+ - **Total Invariants:** 74 Defended across 18 families
72
+ - **HTML Dashboard:** `report.html`
73
+ - **SARIF v2.1.0 Export:** `results.sarif`
74
+ - **Living Ledger:** `security_report.md`
94
75
  ```
95
76
 
96
77
  ---
@@ -98,4 +79,4 @@ Inspect run records and reporting parameters before generating release artifacts
98
79
  ## Next Steps
99
80
 
100
81
  1. Upload `results.sarif` to GitHub Code Scanning via `.github/workflows/`.
101
- 2. Share `report.md` with engineering stakeholders and project maintainers.
82
+ 2. Open `report.html` in browser for visual audit presentation.
@@ -1,14 +1,15 @@
1
1
  ---
2
2
  description: Read-only diagnostic overview of workspace security posture, active configuration, rules catalog, and run history.
3
- tools: Read, Grep, Glob, Bash
4
- version: 1.3.6
3
+ tools: Read, Grep, Glob, Bash, Write, run_command
4
+ version: 2.0.0
5
5
  agent: reviewer
6
6
  lifecycle-phase: System / Diagnostics
7
7
  required-skills:
8
8
  - torusguard-status
9
9
  scripts-binding:
10
- - .torusguard/scripts/report_sync.py
11
- - .torusguard/scripts/run_manager.py
10
+ - cmd/torusguard/main.go
11
+ - cmd/torusguard/mcp.go
12
+ - internal/workspace/workspace.go
12
13
  ---
13
14
 
14
15
  # /torusguard status — Workspace Security Posture & Diagnostic Overview
@@ -18,30 +19,27 @@ $ARGUMENTS
18
19
  ---
19
20
 
20
21
  ## Objective
21
- Read-only diagnostic overview of workspace security posture, active configuration, and run history.
22
+ Read-only diagnostic overview of workspace security posture, active configuration, and run history across 74 canonical security rules and 18 families.
22
23
 
23
24
  ---
24
25
 
25
- ## Mandatory Pre-Flight Context Inspection
26
+ ## Tri-Mode Execution
26
27
 
27
- Inspect workspace state and configuration records prior to status display:
28
- 1. **Config State (`.torusguard/config/torusguard.json`):** Confirm workspace initialization and read detected stack.
29
- 2. **Active Rules Directory (`.torusguard/rules/active/`):** Count active rule files.
30
- 3. **Run Folder Ledger (`.torusguard/runs/`):** Check run history and locate latest `manifest.json`.
31
- 4. **Scope Record (`.torusguard/config/scope.json`):** Check whether runtime authorization TTL is active or expired.
32
- 5. **Read-Only Invariant:** Ensure command performs zero file modifications or disk mutations.
28
+ | Mode | Command / Tool | Execution Method |
29
+ | :--- | :--- | :--- |
30
+ | **Mode A: Terminal CLI** | `torusguard status [--json]` | Terminal execution of 75-column diagnostic cards. |
31
+ | **Mode B: AI Chat Slash** | `/torusguard status` | Conversational diagnostic inspection of active config and ledger. |
32
+ | **Mode C: Native MCP Tool** | `torusguard_status` | Agent tool call with `{"target": "."}` returning posture JSON/string. |
33
33
 
34
34
  ---
35
35
 
36
- ## When to Use /torusguard status
36
+ ## Mandatory Pre-Flight Context Inspection
37
37
 
38
- | Trigger Scenario | Recommended Action |
39
- | :--- | :--- |
40
- | Checking workspace configuration and active security posture | Run `/torusguard status` |
41
- | Reviewing recent audit runs and finding counts | Run `/torusguard status` |
42
- | Checking active legal scope authorization TTL | Run `/torusguard status` |
43
- | Initializing workspace for the first time | Run `/torusguard init` |
44
- | Executing full security scan | Run `/torusguard audit` |
38
+ Inspect workspace state and configuration records prior to status display:
39
+ 1. **Config State (`.torusguard/config/torusguard.json`):** Confirm workspace initialization and read detected stack.
40
+ 2. **Active Rules Directory (`.torusguard/rules/active/`):** Count active rule files (74 canonical rules).
41
+ 3. **Living Report (`security_report.md`):** Read current open vs resolved findings.
42
+ 4. **Read-Only Invariant:** Ensure command performs zero file modifications or disk mutations.
45
43
 
46
44
  ---
47
45
 
@@ -49,33 +47,16 @@ Inspect workspace state and configuration records prior to status display:
49
47
  - Reads current health score and status breakdown directly from `security_report.md`.
50
48
  - Displays 18 rule families and 74 rules in standardized 75-column terminal cards.
51
49
 
52
- ## Execution Steps
53
-
54
- 1. **Read Configuration:** Load `.torusguard/config/torusguard.json`; extract stack, version, and enabled rule count.
55
- 2. **Enumerate Active Rules:** Count rule files physically present in `.torusguard/rules/active/`.
56
- 3. **Inspect Run History:**
57
- ```bash
58
- python .torusguard/scripts/run_manager.py list
59
- ```
60
- 4. **Evaluate Scope Expiry:** Parse `.torusguard/config/scope.json`; report if TTL is valid or expired.
61
- 5. **Print Status Overview:** Render complete workspace diagnostic overview card.
62
-
63
50
  ---
64
51
 
65
- ## Failure Recovery
66
-
67
- - **Uninitialized Workspace:** If config is missing, prompt user to execute `/torusguard init`.
68
- - **Zero Runs Found:** Display clean status card noting no historical audit runs exist yet.
69
- - **Corrupt Config File:** Report parsing error and recommend re-running `/torusguard init`.
70
- - **Halt Trigger:** Abort command if read access to `.torusguard/` is denied.
71
-
72
- ---
73
-
74
- ## Hallucination Guard
52
+ ## Execution Steps
75
53
 
76
- - ❌ Never display fabricated finding counts not substantiated by run manifests.
77
- - ❌ Never execute modifying shell commands or edit source code during status inspection.
78
- - ✅ Always report factual file counts from `.torusguard/rules/active/` and `.torusguard/runs/`.
54
+ 1. **Trigger Status Check:**
55
+ - **Mode A (CLI):** Run `torusguard status`.
56
+ - **Mode B (Chat):** Read `torusguard.json` and `security_report.md`.
57
+ - **Mode C (MCP):** Call `torusguard_status`.
58
+ 2. **Evaluate Posture:** Report detected stack, active invariants, and living findings ledger.
59
+ 3. **Recommend Next Actions:** Direct user to audit or remediation as needed.
79
60
 
80
61
  ---
81
62
 
@@ -83,13 +64,11 @@ Inspect workspace state and configuration records prior to status display:
83
64
 
84
65
  ```markdown
85
66
  ### 🛡️ TorusGuard Workspace Status
86
- - **Version:** v0.9.2
87
- - **Framework Detected:** [Stack or None]
88
- - **Active Rules:** [Count] rules active in `.torusguard/rules/active/`
89
- - **Total Runs:** [Count] historical runs recorded
90
- - **Latest Run:** `run-YYYYMMDD-HHMMSS` ([Findings Count] findings)
91
- - **Scope Status:** [Authorized (TTL Active) / Expired / Unconfigured]
92
- - **Health Posture:** [GOOD / ACTION NEEDED]
67
+ - **Version:** v2.0.0
68
+ - **Framework Detected:** [Stack]
69
+ - **Active Rules:** 74 canonical rules active across 18 families
70
+ - **Living Report:** `security_report.md`
71
+ - **Health Posture:** [OPTIMAL DEFENSE / ACTION NEEDED]
93
72
  ```
94
73
 
95
74
  ---
@@ -97,4 +76,4 @@ Inspect workspace state and configuration records prior to status display:
97
76
  ## Next Steps
98
77
 
99
78
  1. Run `/torusguard audit` to scan codebase for security vulnerabilities.
100
- 2. Run `/torusguard authorize` to configure or refresh live target scope.
79
+ 2. Run `/torusguard report --html` to view interactive dashboard.