torusguard 1.3.2 โ†’ 1.3.4

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 (131) hide show
  1. package/.torusguard/runs/report-latest.html +3 -3
  2. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-115-9a059e/metadata.json +15 -0
  3. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-115-9a059e/minimal_patch_plan.md +21 -0
  4. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-115-9a059e/patch.diff +9 -0
  5. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-119-61557c/metadata.json +15 -0
  6. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-119-61557c/minimal_patch_plan.md +21 -0
  7. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-119-61557c/patch.diff +9 -0
  8. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-265-996ca3/metadata.json +15 -0
  9. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-265-996ca3/minimal_patch_plan.md +21 -0
  10. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-265-996ca3/patch.diff +9 -0
  11. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-503-d11cf8/metadata.json +15 -0
  12. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-503-d11cf8/minimal_patch_plan.md +21 -0
  13. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-503-d11cf8/patch.diff +9 -0
  14. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-79-91f41f/metadata.json +15 -0
  15. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-79-91f41f/minimal_patch_plan.md +21 -0
  16. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-db-004-79-91f41f/patch.diff +9 -0
  17. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-107-516a40/metadata.json +15 -0
  18. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-107-516a40/minimal_patch_plan.md +21 -0
  19. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-107-516a40/patch.diff +9 -0
  20. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-128-7809a1/metadata.json +15 -0
  21. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-128-7809a1/minimal_patch_plan.md +21 -0
  22. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-128-7809a1/patch.diff +9 -0
  23. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-256-c8a22e/metadata.json +15 -0
  24. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-256-c8a22e/minimal_patch_plan.md +21 -0
  25. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-002-256-c8a22e/patch.diff +9 -0
  26. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-003-53-d167b4/metadata.json +15 -0
  27. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-003-53-d167b4/minimal_patch_plan.md +21 -0
  28. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-input-003-53-d167b4/patch.diff +9 -0
  29. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-platform-001-183-47fd5e/metadata.json +15 -0
  30. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-platform-001-183-47fd5e/minimal_patch_plan.md +21 -0
  31. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-platform-001-183-47fd5e/patch.diff +9 -0
  32. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-209-4f6424/metadata.json +15 -0
  33. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-209-4f6424/minimal_patch_plan.md +21 -0
  34. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-209-4f6424/patch.diff +9 -0
  35. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-257-89bf34/metadata.json +15 -0
  36. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-257-89bf34/minimal_patch_plan.md +21 -0
  37. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-257-89bf34/patch.diff +9 -0
  38. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-341-ce228c/metadata.json +15 -0
  39. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-341-ce228c/minimal_patch_plan.md +21 -0
  40. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-341-ce228c/patch.diff +9 -0
  41. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-355-7b190b/metadata.json +15 -0
  42. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-355-7b190b/minimal_patch_plan.md +21 -0
  43. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-355-7b190b/patch.diff +9 -0
  44. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-64-5af31a/metadata.json +15 -0
  45. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-64-5af31a/minimal_patch_plan.md +21 -0
  46. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-64-5af31a/patch.diff +9 -0
  47. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-9-f51467/metadata.json +15 -0
  48. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-9-f51467/minimal_patch_plan.md +21 -0
  49. package/.torusguard/runs/run-20260910-120238-audit/bundles/bnd-tg-sec-001-9-f51467/patch.diff +9 -0
  50. package/.torusguard/runs/run-20260910-120238-audit/findings.json +1520 -0
  51. package/.torusguard/runs/run-20260910-120238-audit/findings.md +560 -0
  52. package/.torusguard/runs/run-20260910-120238-audit/manifest.json +13 -0
  53. package/.torusguard/runs/run-20260910-120238-audit/recheck.md +86 -0
  54. package/.torusguard/runs/run-20260910-120238-audit/remediation.md +262 -0
  55. package/.torusguard/runs/run-20260910-120238-audit/summary.md +5 -0
  56. package/.torusguard/runs/run-20260910-121238-audit/findings.json +794 -0
  57. package/.torusguard/runs/run-20260910-121238-audit/findings.md +344 -0
  58. package/.torusguard/runs/run-20260910-121238-audit/manifest.json +12 -0
  59. package/.torusguard/runs/run-20260910-121238-audit/summary.md +5 -0
  60. package/.torusguard/runs/run-20260910-130454-audit/findings.json +893 -0
  61. package/.torusguard/runs/run-20260910-130454-audit/findings.md +386 -0
  62. package/.torusguard/runs/run-20260910-130454-audit/manifest.json +12 -0
  63. package/.torusguard/runs/run-20260910-130454-audit/summary.md +5 -0
  64. package/.torusguard/runs/run-20260910-130519-audit/findings.json +563 -0
  65. package/.torusguard/runs/run-20260910-130519-audit/findings.md +246 -0
  66. package/.torusguard/runs/run-20260910-130519-audit/manifest.json +12 -0
  67. package/.torusguard/runs/run-20260910-130519-audit/summary.md +5 -0
  68. package/.torusguard/scripts/__pycache__/audit_runner.cpython-311.pyc +0 -0
  69. package/.torusguard/scripts/__pycache__/diff_guard.cpython-311.pyc +0 -0
  70. package/.torusguard/scripts/__pycache__/html_reporter.cpython-311.pyc +0 -0
  71. package/.torusguard/scripts/__pycache__/rules_sync.cpython-311.pyc +0 -0
  72. package/.torusguard/scripts/__pycache__/stack_detect.cpython-311.pyc +0 -0
  73. package/.torusguard/scripts/__pycache__/term_ui.cpython-311.pyc +0 -0
  74. package/.torusguard/scripts/apply_runner.py +138 -100
  75. package/.torusguard/scripts/audit_runner.py +219 -116
  76. package/.torusguard/scripts/harden_runner.py +144 -64
  77. package/.torusguard/scripts/html_reporter.py +8 -3
  78. package/.torusguard/scripts/recheck_runner.py +80 -63
  79. package/.torusguard/scripts/recipes_runner.py +38 -31
  80. package/.torusguard/scripts/stack_detect.py +608 -584
  81. package/.torusguard/scripts/term_ui.py +162 -0
  82. package/.torusguard/skills/torusguard/SKILL.md +61 -31
  83. package/.torusguard/skills/torusguard-apply/SKILL.md +80 -46
  84. package/.torusguard/skills/torusguard-audit/SKILL.md +83 -70
  85. package/.torusguard/skills/torusguard-authorize/SKILL.md +5 -4
  86. package/.torusguard/skills/torusguard-exploit-check/SKILL.md +6 -5
  87. package/.torusguard/skills/torusguard-full/SKILL.md +1 -1
  88. package/.torusguard/skills/torusguard-harden/SKILL.md +94 -63
  89. package/.torusguard/skills/torusguard-init/SKILL.md +64 -52
  90. package/.torusguard/skills/torusguard-recheck/SKILL.md +77 -53
  91. package/.torusguard/skills/torusguard-report/SKILL.md +72 -54
  92. package/.torusguard/skills/torusguard-status/SKILL.md +58 -42
  93. package/.torusguard/skills/torusguard-verify/SKILL.md +8 -7
  94. package/.torusguard/skills/torusguard-web-validate/SKILL.md +8 -7
  95. package/README.md +4 -3
  96. package/bin/torusguard.js +544 -437
  97. package/package.json +1 -1
  98. package/skills/torusguard/SKILL.md +61 -31
  99. package/skills/torusguard/payload/scripts/apply_runner.py +138 -100
  100. package/skills/torusguard/payload/scripts/audit_runner.py +219 -116
  101. package/skills/torusguard/payload/scripts/harden_runner.py +144 -64
  102. package/skills/torusguard/payload/scripts/html_reporter.py +8 -3
  103. package/skills/torusguard/payload/scripts/recheck_runner.py +80 -63
  104. package/skills/torusguard/payload/scripts/recipes_runner.py +38 -31
  105. package/skills/torusguard/payload/scripts/stack_detect.py +608 -584
  106. package/skills/torusguard/payload/scripts/term_ui.py +162 -0
  107. package/skills/torusguard/payload/skills/torusguard/SKILL.md +61 -31
  108. package/skills/torusguard/payload/skills/torusguard-apply/SKILL.md +80 -46
  109. package/skills/torusguard/payload/skills/torusguard-audit/SKILL.md +83 -70
  110. package/skills/torusguard/payload/skills/torusguard-authorize/SKILL.md +5 -4
  111. package/skills/torusguard/payload/skills/torusguard-exploit-check/SKILL.md +6 -5
  112. package/skills/torusguard/payload/skills/torusguard-full/SKILL.md +1 -1
  113. package/skills/torusguard/payload/skills/torusguard-harden/SKILL.md +94 -63
  114. package/skills/torusguard/payload/skills/torusguard-init/SKILL.md +64 -52
  115. package/skills/torusguard/payload/skills/torusguard-recheck/SKILL.md +77 -53
  116. package/skills/torusguard/payload/skills/torusguard-report/SKILL.md +72 -54
  117. package/skills/torusguard/payload/skills/torusguard-status/SKILL.md +58 -42
  118. package/skills/torusguard/payload/skills/torusguard-verify/SKILL.md +8 -7
  119. package/skills/torusguard/payload/skills/torusguard-web-validate/SKILL.md +8 -7
  120. package/skills/torusguard-apply/SKILL.md +80 -46
  121. package/skills/torusguard-audit/SKILL.md +83 -70
  122. package/skills/torusguard-authorize/SKILL.md +5 -4
  123. package/skills/torusguard-exploit-check/SKILL.md +6 -5
  124. package/skills/torusguard-full/SKILL.md +1 -1
  125. package/skills/torusguard-harden/SKILL.md +94 -63
  126. package/skills/torusguard-init/SKILL.md +64 -52
  127. package/skills/torusguard-recheck/SKILL.md +77 -53
  128. package/skills/torusguard-report/SKILL.md +72 -54
  129. package/skills/torusguard-status/SKILL.md +58 -42
  130. package/skills/torusguard-verify/SKILL.md +8 -7
  131. package/skills/torusguard-web-validate/SKILL.md +8 -7
@@ -1,42 +1,58 @@
1
- ---
2
- name: torusguard-status
3
- description: Display current TorusGuard security posture, active configuration, rules catalog, and run history.
4
- version: 0.9.2
5
- workflow: .torusguard/workflows/status.md
6
- tools: Read, Grep, Glob
7
- scripts-binding:
8
- - .torusguard/scripts/run_manager.py
9
- ---
10
-
11
- # TorusGuard Status โ€” Workspace Security Posture & Diagnostic Overview
12
-
13
- ## Objective
14
- Provide an instant diagnostic summary of the repository's security state, active framework rules, historical run results, and runtime scope validity.
15
-
16
- ---
17
-
18
- ## Execution Steps
19
-
20
- 1. **Read Configuration:** Parse `.torusguard/config/torusguard.json` to verify initialization state and detected framework stack.
21
- 2. **Enumerate Active Rules:** Count rule files physically present in `.torusguard/rules/active/`.
22
- 3. **Inspect Run History:** List historical run folders in `.torusguard/runs/` via `run_manager.py`.
23
- 4. **Check Authorization Scope:** Check `.torusguard/config/scope.json` for active targets and TTL expiration.
24
- 5. **Render Diagnostic Overview:** Output formatted status card.
25
-
26
- ---
27
-
28
- ## Safety Constraints
29
- - Read-only execution; zero file modifications.
30
- - Handle uninitialized workspaces gracefully with advice to run `/torusguard init`.
31
-
32
- ---
33
-
34
- ## Output Format
35
- ```markdown
36
- ๐Ÿ›ก๏ธ [TorusGuard] Workspace Status Overview
37
- - Version: v0.9.2 | Stack: <Detected Framework>
38
- - Active Rules: <Count> rules active in `.torusguard/rules/active/`
39
- - Historical Runs: <Count> runs recorded
40
- - Scope: <Authorized (TTL Active) / Expired / Unconfigured>
41
- - Posture: <SECURE / ACTION REQUIRED>
42
- ```
1
+ ---
2
+ name: torusguard-status
3
+ description: Display current TorusGuard security posture, active configuration, rules catalog, and run history via CLI or AI Agent.
4
+ version: 1.3.4
5
+ workflow: .torusguard/workflows/status.md
6
+ tools: Read, Grep, Glob, run_command
7
+ scripts-binding:
8
+ - .torusguard/scripts/run_manager.py
9
+ - .torusguard/scripts/term_ui.py
10
+ ---
11
+
12
+ # TorusGuard Status โ€” Workspace Security Posture & Diagnostic Overview
13
+
14
+ ## Objective
15
+ Provide an instant diagnostic summary of the repository's security state, active framework rules, historical run results, and runtime scope validity.
16
+
17
+ ---
18
+
19
+ ## Two Execution Modes
20
+
21
+ ### Mode A: Automated CLI Execution
22
+ Run the diagnostic overview from your terminal:
23
+ ```bash
24
+ # Display 75-column status cards
25
+ npx torusguard status
26
+
27
+ # Check status of specific project directory
28
+ npx torusguard status ./examples/vulnerable-react-express
29
+
30
+ # Output machine-readable JSON
31
+ npx torusguard status --json
32
+ ```
33
+ **Under the Hood:**
34
+ - Evaluates `.torusguard/config/torusguard.json` for initialized status and detected stack.
35
+ - Enumerates active rules in `.torusguard/rules/active/` (or canonical 71 rules).
36
+ - Scans `.torusguard/runs/` for run history, finding counts, and verified fixes.
37
+ - Inspects `.torusguard/config/scope.json` for authorized runtime validation targets.
38
+ - Displays mathematically aligned 75-column terminal cards.
39
+
40
+ ### Mode B: In-Session AI Chat Agent Status Check
41
+ When checking workspace status in AI chat:
42
+ 1. **Verify Workspace Setup:** Check if `.torusguard/` exists on disk.
43
+ 2. **Inspect Active Config:** Read `.torusguard/config/torusguard.json` for detected stack, framework, and rules.
44
+ 3. **Inspect Latest Run:** Find the latest run directory under `.torusguard/runs/` and read `manifest.json`.
45
+ 4. **Inspect Memory Engine:** Check `.torusguard/memory/patterns.json` for captured Golden Fix Recipes.
46
+ 5. **Render Diagnostic Card:** Present an overview of posture, stack, and recommended next steps.
47
+
48
+ ---
49
+
50
+ ## Output Card Format
51
+ ```markdown
52
+ ### ๐Ÿ›ก๏ธ TorusGuard Workspace Status Overview
53
+ - **Version:** v1.3.3 | **Stack:** Node.js / React / Express
54
+ - **Active Rules:** 71 canonical security rules enabled
55
+ - **Historical Runs:** 3 runs recorded
56
+ - **Golden Recipes:** 4 distilled into persistent memory
57
+ - **Overall Posture:** SECURE (All targeted vulnerabilities verified closed)
58
+ ```
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: torusguard-verify
3
3
  description: Verify finding evidence sufficiency, audit live code line matches, and calibrate 0โ€“100 confidence scores.
4
- version: 0.9.2
4
+ version: 1.3.4
5
5
  workflow: .torusguard/workflows/verify.md
6
6
  tools: Read, Grep, Glob, Write
7
7
  scripts-binding:
@@ -18,14 +18,15 @@ Audit the evidence sufficiency of candidate findings by reading current disk lin
18
18
  ## Execution Steps
19
19
 
20
20
  1. **Locate Target Findings:** Load active findings from `.torusguard/runs/<latest-run>/findings.md`.
21
- 2. **Live Disk Line Match:** Inspect exact cited lines using `view_file` to confirm code presence.
22
- 3. **Audit Evidence Sufficiency:** Verify source-to-sink flow against criteria below.
23
- 4. **Calibrate Confidence Score:**
21
+ 2. **Handle CLI Failures:** If `python .torusguard/scripts/finding_scorer.py` or the verify workflow fails, YOU must manually read the code and calibrate the score based on the evidence parameters.
22
+ 3. **Live Disk Line Match:** Inspect exact cited lines using `view_file` to confirm code presence.
23
+ 4. **Audit Evidence Sufficiency:** Verify source-to-sink flow against criteria below.
24
+ 5. **Calibrate Confidence Score:**
24
25
  ```bash
25
26
  python .torusguard/scripts/finding_scorer.py --run <run_dir> --verify
26
27
  ```
27
- 5. **Update State:** Mark finding as `Confirmed`, `Needs Review`, or `False Positive`.
28
- 6. **Emit Verified Evidence:** Save report in `.torusguard/runs/<run_id>/verified-evidence.md`.
28
+ 6. **Update State:** Mark finding as `Confirmed`, `Needs Review`, or `False Positive`.
29
+ 7. **Emit Verified Evidence:** Save report in `.torusguard/runs/<run_id>/verified-evidence.md`.
29
30
 
30
31
  ---
31
32
 
@@ -47,7 +48,7 @@ A finding is verified as sufficient when:
47
48
 
48
49
  ## Output Format
49
50
  ```markdown
50
- ๐Ÿงช [TorusGuard] Finding Verification Complete
51
+ ๐Ÿงช [TorusGuard] Finding Verification Complete (AI Assisted)
51
52
  - Findings Audited: <Count> | Confirmed Real: <Count>
52
53
  - False Positives Filtered: <Count> | Refined Mean Score: <Score>/100
53
54
  - Artifact: `.torusguard/runs/<run_id>/verified-evidence.md`
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: torusguard-web-validate
3
3
  description: Execute authorized HTTP probing against local/staging web applications โ€” session capture, transparent audit headers, and secret redaction.
4
- version: 0.9.2
4
+ version: 1.3.4
5
5
  workflow: .torusguard/workflows/web-validate.md
6
6
  tools: Read, Grep, Glob, Bash, Write
7
7
  scripts-binding:
@@ -34,11 +34,12 @@ All requests pass through `.torusguard/scripts/safety_gate.py`:
34
34
  ## Execution Steps
35
35
 
36
36
  1. **Gate Check:** Validate scope in `scope.json` and query `safety_gate.py`.
37
- 2. **Inject Audit Header:** Attach `X-TorusGuard-AuthID: <auth_id>` to all outbound requests.
38
- 3. **Dispatch Bounded Probe:** Send single non-destructive HTTP request.
39
- 4. **Validate Security Headers:** Check for CSP, HSTS, X-Content-Type-Options, and CORS configurations.
40
- 5. **Audit Cookie Flags:** Verify `HttpOnly`, `Secure`, and `SameSite` on session cookies.
41
- 6. **Capture Replay Trace:** Save sanitized trace in `.torusguard/runs/<run_id>/requests.json`.
37
+ 2. **Handle Automation Failure:** If automated web validation scripts fail, YOU must manually construct the HTTP requests (using `curl` or `fetch`) and inspect the responses.
38
+ 3. **Inject Audit Header:** Attach `X-TorusGuard-AuthID: <auth_id>` to all outbound requests.
39
+ 4. **Dispatch Bounded Probe:** Send single non-destructive HTTP request.
40
+ 5. **Validate Security Headers:** Check for CSP, HSTS, X-Content-Type-Options, and CORS configurations.
41
+ 6. **Audit Cookie Flags:** Verify `HttpOnly`, `Secure`, and `SameSite` on session cookies.
42
+ 7. **Capture Replay Trace:** Save sanitized trace in `.torusguard/runs/<run_id>/requests.json`.
42
43
 
43
44
  ---
44
45
 
@@ -56,7 +57,7 @@ All Bearer tokens, cookies, passwords, and API keys are redacted prior to disk s
56
57
 
57
58
  ## Output Format
58
59
  ```markdown
59
- ๐ŸŒ [TorusGuard] Web Validation Completed
60
+ ๐ŸŒ [TorusGuard] Web Validation Completed (AI Assisted)
60
61
  - Target: <Host URL> | Endpoints Tested: <Count>
61
62
  - Header Posture: <CSP/HSTS Status> | Cookies: <Flags Status>
62
63
  - Replay Trace: `.torusguard/runs/<run_id>/requests.json`
package/README.md CHANGED
@@ -5,9 +5,9 @@
5
5
 
6
6
  **Autonomous Security Guardrails, Governed Remediation, and Authorized Runtime Validation for AI-Built Web Applications.**
7
7
 
8
- [![npm version](https://img.shields.io/badge/npm-v1.3.2-cb3837.svg?style=flat-square&logo=npm)](https://www.npmjs.com/package/torusguard)
9
- [![GitHub Packages](https://img.shields.io/badge/GitHub%20Packages-v1.3.2-181717.svg?style=flat-square&logo=github)](https://github.com/githubmofo/TorusGuard/pkgs/npm/torusguard)
10
- [![Release](https://img.shields.io/badge/Release-v1.3.2-blue.svg?style=flat-square)](https://github.com/githubmofo/TorusGuard/releases/latest)
8
+ [![npm version](https://img.shields.io/badge/npm-v1.3.4-cb3837.svg?style=flat-square&logo=npm)](https://www.npmjs.com/package/torusguard)
9
+ [![GitHub Packages](https://img.shields.io/badge/GitHub%20Packages-v1.3.4-181717.svg?style=flat-square&logo=github)](https://github.com/githubmofo/TorusGuard/pkgs/npm/torusguard)
10
+ [![Release](https://img.shields.io/badge/Release-v1.3.4-blue.svg?style=flat-square)](https://github.com/githubmofo/TorusGuard/releases/latest)
11
11
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg?style=flat-square)](LICENSE)
12
12
  [![Python 3.10+](https://img.shields.io/badge/Python-3.10%2B-blue.svg?style=flat-square&logo=python&logoColor=white)](https://python.org)
13
13
  [![Node.js 18+](https://img.shields.io/badge/Node.js-18%2B-339933.svg?style=flat-square&logo=node.js&logoColor=white)](https://nodejs.org)
@@ -176,6 +176,7 @@ flowchart TD
176
176
  - **Pre-Commit Diff Guard:** 1-command installer (`diff-guard --install-hook`) blocks bypasses (`InsecureSkipVerify`, `[AllowAnonymous]`, `csrf().disable()`, `unsafe`) before git commit.
177
177
  - **AI IDE Rules Auto-Sync:** Compiles project security invariants into Cursor, Claude Code, Antigravity, and Windsurf within a strict $\le 300$ token overhead ceiling.
178
178
  - **Visual HTML Posture Dashboard:** Generates a 100% self-contained, offline-ready dark-mode report with animated SVG score gauges and interactive diff viewers.
179
+ - **Standardized 75-Column Terminal UI:** Mathematically aligned, zero-distortion terminal cards across all commands, featuring Unicode emoji width calculation, ANSI escape stripping, and visual truncation with ellipsis.
179
180
 
180
181
  ---
181
182