Skip to content

Commit 93fe663

Browse files
committed
readme: bullet points in architecture SVG, fix OWASP column wrapping
1 parent d73f8f7 commit 93fe663

2 files changed

Lines changed: 32 additions & 38 deletions

File tree

README.md

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -109,12 +109,6 @@ Heddle is for exposing APIs as MCP tools with real runtime controls — not just
109109
<img src="docs/assets/architecture.svg" alt="Heddle runtime pipeline" width="900">
110110
</p>
111111

112-
- **Load** — YAML config is parsed, validated against Pydantic schema, and checked for cross-field consistency
113-
- **Generate** — Each `exposes` entry becomes a typed MCP tool with parameter schemas
114-
- **Bridge** — HTTP bridge maps tool calls to API requests with `{{param}}` template rendering
115-
- **Enforce** — Every call passes through a six-layer dispatch pipeline: rate limiting → access mode check → escalation rules → trust tier enforcement → input validation → execution
116-
- **Audit** — Every tool call, violation, and credential access is logged to a hash-chained, tamper-evident audit trail
117-
118112
<h2 id="current-status">Current Status</h2>
119113

120114
What Heddle can do today, what is partially implemented, and what is still planned:
@@ -155,15 +149,15 @@ Heddle's security controls map to OWASP Agentic Top 10, NIST AI RMF, and MAESTRO
155149

156150
| Control | What It Does | Framework |
157151
|:-------:|:-------------|:---------:|
158-
| **Trust tiers** | 4 levels (observer → privileged), runtime-enforced, violations blocked and logged | OWASP Agentic #3 |
159-
| **Credential broker** | Per-config secret access policy, `{{secret:key}}` resolved at runtime, never stored in YAML | OWASP Agentic #7 |
160-
| **Audit log** | Hash-chained JSON Lines, tamper-evident, 5 event types, secret redaction | OWASP Agentic #9 |
161-
| **Input validation** | Type checking, length limits, injection pattern detection (shell, SQL, LLM prompt) | OWASP Agentic #1 |
162-
| **Config signing** | HMAC-SHA256 on all agent configs, tamper detection | OWASP Agentic #8 |
163-
| **Config quarantine** | AI-generated configs staged for review before promotion | OWASP Agentic #8 |
164-
| **Rate limiting** | Sliding window per-config per-tool | OWASP Agentic #4 |
165-
| **Sandbox policies** | Docker container config generation and network policies (enforcement planned) | OWASP Agentic #6 |
166-
| **Escalation rules** | Conditional hold-for-review when parameters match thresholds or patterns | OWASP Agentic #3 |
152+
| **Trust tiers** | 4 levels (observer → privileged), runtime-enforced, violations blocked and logged | OWASP&nbsp;Agentic&nbsp;#3 |
153+
| **Credential broker** | Per-config secret access policy, `{{secret:key}}` resolved at runtime, never stored in YAML | OWASP&nbsp;Agentic&nbsp;#7 |
154+
| **Audit log** | Hash-chained JSON Lines, tamper-evident, 5 event types, secret redaction | OWASP&nbsp;Agentic&nbsp;#9 |
155+
| **Input validation** | Type checking, length limits, injection pattern detection (shell, SQL, LLM prompt) | OWASP&nbsp;Agentic&nbsp;#1 |
156+
| **Config signing** | HMAC-SHA256 on all agent configs, tamper detection | OWASP&nbsp;Agentic&nbsp;#8 |
157+
| **Config quarantine** | AI-generated configs staged for review before promotion | OWASP&nbsp;Agentic&nbsp;#8 |
158+
| **Rate limiting** | Sliding window per-config per-tool | OWASP&nbsp;Agentic&nbsp;#4 |
159+
| **Sandbox policies** | Docker container config generation and network policies (enforcement planned) | OWASP&nbsp;Agentic&nbsp;#6 |
160+
| **Escalation rules** | Conditional hold-for-review when parameters match thresholds or patterns | OWASP&nbsp;Agentic&nbsp;#3 |
167161

168162
---
169163

docs/assets/architecture.svg

Lines changed: 23 additions & 23 deletions
Loading

0 commit comments

Comments
 (0)