Thanks for kicking the tires. This gets you from zero to running every tool in about ten minutes — then tells you exactly what feedback is most useful.
You'll need:
Python 3.9+ a terminal Obsidian (free) — for Redline only ~10 minutes
Everything runs locally on your machine and makes no network calls except the scans you run. Nothing phones home.
The fastest way to test the whole line is the one download that contains every tool. Set to 100% off for testers — hit “I want this!”, enter your email (no card, no charge), download the zip:
brand.yaml. Get it free → (code FORGETEST pre-applied)Prefer to grab just one tool? Each of these is also a free tester download:
| Anvil | external posture scanner — get it → |
| Hearth | DMARC / email-auth digest — get it → |
| Hammer | pentest report generator — get it → |
| Temper | cyber-insurance readiness pack — get it → |
| Redline | pentester's Obsidian vault — get it → |
Swage and the Forge Kit (Ore · Ingot · Mold · Gauge · Quench) ship only inside Forge Line Complete above.
forge-line-complete folder:
macOS / Linux
$ python3 -m venv .venv && source .venv/bin/activate $ pip install -r requirements.txt $ pip install ./swage ./forgekit # swage / forge / ore / … commands
Windows (PowerShell) — paste each line as-is
powershell -ExecutionPolicy Bypass -File .\install.ps1
.\.venv\Scripts\Activate.ps1 # activate in each new PowerShell window
Then check you're ready and put your name on the output:
$ forge doctor # verifies deps + workspace, shows your OS $ $EDITOR brand.yaml # (notepad brand.yaml on Windows) — onceGrabbing a single tool instead? Each folder has its own
requirements.txt. New here? The bundle's QUICKSTART.md is the 5-minute path to your first report.
A 12-question interview becomes your Rules of Engagement, Authorization-to-Test letter, and Statement of Work — plus the engagement file the rest of the line reads.
$ swage new acme # answer the interview → acme.engagement.yaml $ swage render acme.engagement.yaml --brand brand.yaml # writes RoE + Authorization + SoW
Five tools on one forge command. Ore needs the engagement (scope = your authorization).
$ forge ore --engagement acme.engagement.yaml --forge acme.findings.yaml --brand brand.yaml $ forge quench acme.findings.yaml --engagement acme.engagement.yaml --auto # retest delta
Passive external posture report (DNS, SPF/DKIM/DMARC, TLS, headers, subdomains, and more).
$ pip install -r requirements.txt $ python3 -m anvil example.com # writes example.com-report.html $ python3 -m anvil example.com --deep # also probes exposed files + risky methods
Open the generated .html in a browser. Try it on a domain you own.
Turns DMARC aggregate XML into a plain-English digest. Sample reports are included.
$ pip install pyyaml # optional, for brand.yaml $ python hearth.py samples/reports/ --out digest.html
Turns findings (hand-written or imported from 10 scanners) into a branded, CVSS-scored Word/HTML report.
$ pip install -r requirements.txt $ python hammer.py engagement.example.yaml --out ./report
Open report.html or the .docx.
A short interview becomes a WISP, IR plan, AUP, and a scored readiness checklist.
$ pip install python-docx pyyaml $ python temper.py --interview # answer the questions → generates the pack
One note per engagement, finding, and asset; the dashboards build themselves.
# 1. Unzip "Groundwork Redline.zip" # 2. Obsidian → "Open folder as vault" → pick the Groundwork Redline folder # 3. Enable the Dataview plugin if prompted, then open Home.md
Sample data is tagged #sample — delete it when you're ready.
This is the whole point of the line: the scope you write once, and any finding captured once, both flow straight to the client report — no retyping. With the Complete bundle:
$ python3 -m anvil example.com --forge acme.findings.yaml # or hearth --forge / forge ore $ python hammer/hammer.py acme.findings.yaml \ --engagement acme.engagement.yaml --brand brand.yaml --out report ✓ branded, CVSS-scored report — client name, window & author pulled from the Swage scope
Hammer reads the same findings.yaml from Anvil, Hearth, Ore or Redline; --engagement fills in the report header from your scope file. Add --open-only to report just what's still open after a Quench retest.
Anvil Watch is the always-on version that re-checks a domain weekly and alerts on drift. It's a hosted service, so there's no download:
• Try the free one-shot scanner at anvil.genialarchitect.io, or
• ask David for a comped Watch account and sign in at watch.anvil.genialarchitect.io.
Send David a note with anything you hit — rough or polished, all of it is useful:
| Setup | Did install/run work first try? Where did you get stuck? |
| Output | Is the report/digest something you'd actually hand a client? What's missing? |
| Accuracy | Anything flagged that looks wrong, or missed that should've been caught? |
| Wishlist | The one thing that would make you use it for real. |