Repository navigation
Heimdall v0.5.0 — ACH Workbench + Multi-Format Export
Highlights
v0.5.0 closes the loop from collection to publishable analytical product. Two major Phase 1 features land: an ACH (Analysis of Competing Hypotheses) workbench that implements Heuer's gold-standard methodology end-to-end, and a multi-format export funnel that turns any analytical product into PDF, Markdown, JSON, NATO INTREP, or AES-encrypted bundle. Combined with v0.4's tradecraft foundation, Heimdall is now the most methodologically rigorous open-source intel platform you can put on an analyst's desk.
ACH Hypothesis Workbench
Implements the full Heuer methodology, the same one taught at the Sherman Kent School and used by every Western intel service:
- Define 3–5 mutually exclusive hypotheses
- List every relevant piece of evidence
- Score each piece against each hypothesis (CC / C / N / I / II)
- Pick the hypothesis with the LEAST disconfirming evidence (NOT the most confirming) — Heuer's most counterintuitive but methodologically critical principle
- Identify "diagnostic" evidence — pieces with high score variance across hypotheses
New sidebar entry under Intelligence (/ach). Two-pane layout: sessions list left, scoring matrix right. Click any cell to cycle through CC / C / N / I / II. Live analysis card surfaces:
- Total counts + scoring progress
- The leading hypothesis (Heuer principle, weighted by evidence credibility)
- Count of diagnostic evidence pieces
- Per-hypothesis weighted +/− totals shown in column headers
AI-powered hypothesis generator — "Suggest 3" button calls the LLM with an explicit adversarial-framing prompt that demands MUTUALLY EXCLUSIVE hypotheses (not variations). Output marked with source: 'agent' so analyst-authored vs AI-suggested are distinguishable.
Migration 017 adds 4 new tables: ach_sessions, ach_hypotheses, ach_evidence, ach_scores. Every create/delete/score-change is hash-chain audited.
Multi-format Export
Single audit-funneled IPC channel exports any artifact (DPB brief, ACH session, preliminary report, HUMINT report, raw intel) in five formats:
| Format | Purpose |
|---|---|
Printable, classification-banner-wrapped (top + bottom). Renders via Electron's built-in webContents.printToPDF — no native deps, no puppeteer |
|
| Markdown | Raw source for Obsidian re-edit / archive |
| JSON | Structured payload for downstream tools |
| NATO INTREP | Human-readable approximation of STANAG 5500/4774 INTREP/INTSUM with proper FM/TO/BT framing, NATO Date-Time Group, classification line, SUBJ/SCEN/CLAS/GENTEXT structure |
| Encrypted Bundle | AES-256-GCM-encrypted blob (scrypt-derived key, salt + IV + GCM tag + ciphertext) containing markdown + JSON + INTREP + manifest. Heimdall imports its own format on the receiving side |
Wired into:
- Dashboard → Daily Brief modal (top-right Export menu)
- ACH session header
- Intel Feed detail pane (alongside Open Source / Mark Reviewed)
Every export funnels through ExportService.export() → one export.write row in the tamper-evident audit chain per write. Filenames auto-suggested as heimdall-<kind>-<YYYY-MM-DD>-<title-slug>.<ext>.
Phase 1 status — 8 of 9 themes done
- ✓ STANAG 2511 source rating + ICD 203 estimative language (v0.4)
- ✓ Classification levels + hash-chained audit chain (v0.4)
- ✓ Multi-Agent Analyst Council (v0.4)
- ✓ I&W Workbench + DPB generator (v0.4)
- ✓ ACH Hypothesis Workbench (v0.5)
- ✓ Multi-format export — PDF / Markdown / JSON / NATO INTREP / Encrypted bundle (v0.5)
- ⏳ Compartmentalization + SQLCipher encryption (Phase 1's last unimplemented theme)
Migrations applied automatically
017 ach_workbench. Pre-migration backup created automatically, no destructive changes.
Downloads
- Intel Mac:
Heimdall-0.5.0.dmg(167 MB) - Apple Silicon:
Heimdall-0.5.0-arm64.dmg(162 MB)
Unsigned build — on first launch right-click the app → Open → Open to bypass Gatekeeper.