Editions

The record is free software. The practice around it is the product.

Everything that makes a run defensible (the guards, the trace, the ledger, the report and its signed releases, the console) is published under the AGPL and stays that way. What a lab pays for is a verified toolset and the images built for it, a dedicated host for each case, and our time.

Communityavailable now
FreeGNU AGPL v3 or later · no account, no key, no seat limit

The whole harness, for an examiner working on their own hardware. Free is not a trial: the licence guarantees that everything a run's defensibility depends on stays free software, for everyone, for good.

  • The swarm: board, leases, critic, sentinel
  • Each agent in its own microVM, on macOS with Apple silicon or Linux with KVM; host mode, unisolated, by choice where a machine cannot run one
  • Every guard the host can enforce, recorded
  • Tool work as jobs in throwaway worker VMs, sealed into a store with a hash-chained journal; a catalogue of the evidence that grows while the agents work
  • The hash-chained trace, ledger and case file; the report as one self-contained HTML document, printable to PDF
  • A ledger of findings, events, indicators, searches that found nothing, hypotheses and limitations, each naming what it rests on
  • One register of what a case is asked: the goal's questions, the agents' and the questions analysts add while it runs, claimed or signed
  • Answers with their result, and negatives held to a bar: a coverage record, the hub's count, a review by another seat
  • Caps that pause the run for you, and resume: the same run continues after a stop or a signed release
  • The case contract: a policy preset, requests to you by id, evidence added during the run, material with its provenance
  • A network closed by default, and lookups decided by rules and fetched on the host when a run allows them
  • A custody verdict with a status for every check, signed and timestamped when you ask, and custody-verify to check it again
  • The report's releases: a draft the machine seals at the stop, the release the examiner signs after reading it, and each amendment naming the one before
  • Signing with an ssh key, a FIDO2 security key or a PKCS#11 e-signature token, from the console or the command line, with a technical reviewer's signed review first when the run requires one
  • A package signed with your ssh key, redacted where entries are sensitive, and verify for whoever receives it, which checks every signature
  • The live console and the terminal panes
  • Mixed teams across providers and local models
  • The agents' own tools, and a library that grows
  • Twelve method & tool packs: 107 skills, 69 tools, 14 goal templates
  • Forty-five investigations: a goal document per kind of case, each with its own checks
  • The finish-line contract, and checks the agents cannot edit
Run it on client cases and charge what you like; the AGPL asks nothing for that.
Proby contact
Talk to uspricing on request · scoped to your lab

For the practitioner and the small lab: a toolset we have checked, and images built for it.

  • A verified, curated toolset: packs whose tools are checked and shipped by us
  • Pro packs installed with pack install, under a commercial licence
  • Private, digest-pinned prebuilt images for every pack, checked for you
  • Paid support, arranged by contact
Provided through direct contact: tell us about the lab and the cases, and what you need is scoped with you.
Enterpriseby contact
Talk to usscoped per organisation · in your lab, air-gapped on request

For the lab that keeps every case apart: everything in Pro, with each case on a host of its own in your lab.

  • A dedicated host per case, in your lab, with nothing of any other case on it
  • Air-gapped where the evidence demands it, with the case file as the only thing that leaves
Every Enterprise deployment starts with a conversation about the evidence, the network and the lab it runs in.
todayCommunity is the edition you can run right now, and it is free. It is the same code that Pro and Enterprise are built on; nothing a run's defensibility depends on is held back, metered or time-limited. contactPro and Enterprise are provided through direct contact. Write to us with the lab, the evidence you work and the hosts it has to hold on; the deployment is scoped with you, and the record you get is the same.
Method & tool packs

A swarm that starts the case already knowing how the work is done.

The swarm writes the tools it lacks and keeps them; a pack is that library, curated in advance. Each pack has four parts: skills, the method written for the agents the way a senior examiner would brief a junior one; tools, written, typed and tested against the artefacts they parse; a host check that names the binaries the case needs, from which the job images are built; and goal templates with finish lines and report sections for that kind of case. Several packs also ship catalogue recipes, which the job service runs over the evidence and over what the jobs produce.

Twelve packs ship in the repository, under the same licence as the harness, and every one of them is in the free edition. A hundred and seven skills, sixty-nine tools and fourteen goal templates, each pack sealed and checksummed, each one verified before a run starts. Every tool keeps its whole result: where a result is long, the agent reads a page of it and the rest is kept in a named file.

Not a tool listMuch of what these packs hold began as a tool an agent wrote in the middle of a case because the host had none. The packs curate that library and add the method around it; the swarm keeps adding to it, on every case it works. Nothing changes in how a run is recorded: every pack tool's calls are on the trace under its name, and the console says which pack each one came from.
12packs
107skills
69tools
14goal templates
87host tools recognised
Why the skills are a tree of filesThe index is given once. A body arrives when an agent reaches that artefact family.
1 · THE INDEX, IN FRONT OF EVERY AGENT ONCE skills in this pack evidence/imaging · the offset every command needs evidence/verify · prove it is unchanged filesystem/mft · what a record proves filesystem/shadowcopies · the volume last week logs/security · the records that carry weight logs/powershell · what an operator typed execution/prefetch · run count and last run registry/system-profile · the first ten minutes antiforensics/traces · what hiding leaves behind …and twenty-six more, one line each about 1,300 tokens, for a Windows case 2 · THE AGENT REACHES AN ARTEFACT FAMILY skill("filesystem/mft") one call, recorded on the trace 3 · ONE BODY ARRIVES, AND MAY NAME OTHERS filesystem/mft the skill it needs first, and its tools filesystem/extract mft_records about 800 tokens, and only when it is needed THE SAME TWO PACKS, MEASURED 35 skill bodies · about 18,000 tokens the index every agent is given · about 1,300 tokens
Swipe to see the whole drawing
Computer Forensics Base Community · free

The method that is true whatever the evidence came from: read the container and find the volume, prove the evidence is unchanged, read the catalog before spending a token, extract and carve, tell an encrypted volume from an unreadable one, keep a timeline, cite every claim. Every other pack depends on it.

11 skills, 13 toolsIts timestamp_decode reads a bare number under every epoch in forensic use, because a guess there is wrong by decades or by a factor of a thousand.
Windows Forensics Community · free

Ten artefact families: $MFT and the journals, the hives, execution evidence, the event logs and the records inside a cleared one, accounts and remote access, persistence, shell artefacts, browsers, shadow copies, memory, and what anti-forensics leaves behind.

24 skills, 20 tools, 3 goal templatesMuch of this shelf the swarm wrote for itself: the event-log query, the prefetch decompressor, the journal walker, each written in the middle of a case because the host had none.
Linux Forensics Community · free

The system profile and its timezone, auth.log and the systemd journal, accounts and the keys that need no account, persistence across all six cron locations and systemd timers, ext4's own creation time, containers, and the package database that says which binary was replaced.

10 skills, 6 tools, 2 goal templatesauth_log follows the rotated and gzipped files in order and works out the year syslog never records, saying per file which year it applied.
macOS Forensics Community · free

Property lists in all three encodings, the unified log that replaced the text logs, FSEvents, the KnowledgeC activity database, launch items and the permissions TCC records, and what APFS snapshots keep that a deleted file does not.

8 skills, 4 tools, 1 goal templateplist_read removes the commonest wasted hour on the platform: most system plists are binary, and a grep over one finds nothing while the value sits in plain sight.
Mobile Forensics Community · free

What kind of extraction you were handed and what it therefore cannot contain, the iOS backup manifest that turns hash-named files back into a file system, Android packages and their installers, app databases and their write-ahead logs, location with its accuracy, and protobuf without a schema.

7 skills, 3 tools, 1 goal templatesqlite_freespace walks the per-page freeblock chain, which is where a deleted message's bytes actually sit.
Memory Forensics Community · free

What the container is before anything is run against it, what a memory image gives you with no framework at all, processes and injected code, network state including the connections that had already closed, credential exposure, and how a capture is made.

9 skills, 3 tools, 1 goal templateIts one wrapper drives MemProcFS, which is AGPL-3.0 like the harness; Volatility is called as a program under its own licence, and the pack says why in writing.
Network Forensics Community · free

What a capture can and cannot contain, session reconstruction, what survives encryption in DNS and the TLS handshake, finding something that calls home, exfiltration by volume, and tying any of it back to a machine.

8 skills, 6 tools, 1 goal templateThe capture parser is written in the pack, so a host with no Wireshark still answers the first four questions about a pcap.
Reverse Engineering Community · free

Static triage under quarantine: what a file is from its bytes rather than its name, where it is packed, PE, ELF and Mach-O structure, the strings a sample hides from a plain search, capability mapping, documents and the references that fetch on open, and writing a rule that survives a recompile.

7 skills, 4 tools, 1 goal templateThe method never executes a sample, and the harness mounts every extraction directory no-exec in every agent's microVM, and denies execution there in host mode.
Encrypted Containers Community · free

Which scheme this is, from the header: BitLocker and every key protector on it, LUKS key slots read with no key at all, FileVault, the container that leaves no signature on purpose, password-protected archives, and where the key already is.

5 skills, 3 tools, 1 goal templateThe BitLocker unlocker was written by an agent that needed it, on a case the host could not open. The pack keeps what it learned.
Cloud & SaaS Community · free

Logs that belong to somebody else's computer: what each provider keeps and for how long, the Microsoft 365 unified audit log, Entra sign-ins, AWS CloudTrail, Google Workspace, and the tokens and consents that survive a password reset.

6 skills, 3 tools, 1 goal templatesignin_analyse computes the implied travel speed rather than asserting impossible travel, so the claim is measurable.
Ransomware Response Community · free

The order the case has to be worked in: scope, then what left before anything was encrypted, then entry and spread, then the encryptor. What was destroyed deliberately, what can actually be recovered, and the report a regulator, an insurer and a negotiator each need.

7 skills, 2 tools, 1 goal templateencrypted_survey measures what was actually encrypted, and finds the bytes every encrypted file ends with, which identifies a family better than an extension an affiliate can change.
Triage & Collection Community · free

The shape most cases arrive in. Which collector made this, what its own log says failed, the paths it rewrote and how to map them back, what a logical acquisition can never contain, and what to ask for when the collection has not happened yet.

5 skills, 2 tools, 1 goal templateIt flags a tree whose files all share one modification date, because an intermediate copy dropped the originals and every timestamp conclusion would be about the copy.
Pro

A verified toolset.

Pro packs carry tools we have checked against the artefacts they parse and ship ourselves, installed with scripts/pack.sh install beside the free ones, under a commercial licence. Each comes with a private, digest-pinned image that holds the programs it calls. The format is published, so a lab can still write its own packs without asking anyone.

Third-party toolsNothing third-party is redistributed in a pack. Host binaries are declared with their licence and their install command and invoked as executables, which is how the Sleuth Kit, Suricata and Volatility can all be used by an AGPL project without a licence question arising. Every program and Python library a pack needs is declared beside it, with its licence, and the images install them, so a pack's tools run wherever its image runs.

What each edition gives you.

Community is free and runs today. Pro and Enterprise are provided through direct contact.

Every guard, and what holds it →
Capability
Communityfree · available nowYour own machine, the whole harness, the AGPL.
Proby contactA verified toolset, and images built for it.
Enterpriseby contactEverything in Pro, with a dedicated host per case in your lab.
Where it runsisolationA microVM per agent on your own machine, on macOS with Apple silicon or Linux with KVM. Where a machine cannot run one, host mode by choice, unisolated: seatbelt profiles on macOS; Landlock, mount and network namespaces on Linux.The same microVM per agent on your own machine, booted from private, digest-pinned images prebuilt for every pack.The same, with each case on a dedicated host in your lab; air-gapped on request.
Egress guardnetworkIn a microVM, the host's network policy for that VM, and keys that enter it only as placeholders. In host mode, fail-closed on Linux and advisory on macOS, and the report says so.The same as Community.The same, and on an air-gapped host no egress at all.
EvidencecustodyA read-only share in every agent's microVM, or a read-only copy; hashed before, held to the imager's acquisition hashes, and re-hashed on the host after. The verdict gives every check a status, seals every chain it read, is anchored outside the run, can be signed and timestamped, and is checked again with custody-verify.The same as Community.The same, on the case's own host in your lab.
Modelsthe teamAny provider, any private endpoint, any local model, mixed in one team.The same as Community.The same; on an air-gapped host, a local-only team.
Toolsthe libraryAgents write their own tools, and the library grows with every case you work. Twelve method & tool packs ship with it: 107 skills and 69 parsers across Windows, Linux, macOS, mobile, memory, network, reverse engineering, encrypted containers, cloud, ransomware and triage collections.A verified, curated toolset: Pro packs whose tools are checked and shipped by us, installed with pack install under a commercial licence, with the programs they call already in the prebuilt images.The same as Pro.
After a stopcase continuityThe same run goes on after a stop or a signed release: resume with new questions, in the same sandbox on the same chains, each earlier seal and signed release still valid for what it bound. Evidence acquired later joins a running case as a sealed inventory revision. A second opinion is a new run with the first one's findings kept unreadable.The same as Community.The same, on the case's own host.
Questionswhat a case is askedThe goal's questions, the agents' and those analysts add while it runs, in one register with who asked each and how, claimed or signed. Each answer carries its result, and a negative says where it looked and is reviewed by another seat before the run may finish.The same as Community.The same as Community.
What it may ask outsideintelligenceThe providers the team needs, plus any host the case adds, and nothing else. A key aimed at the wrong host is stopped and logged; in host mode every refused connection is logged too. In a dynamic microVM run an agent may ask for one lookup from a reference service, decided by rules under the case policy (standard, live_adversary, internal or ctf) and fetched on the host.The same as Community.The same; on an air-gapped host, nothing.
Signingthe report's releaseThe examiner adopts each answer and signs the release with an ssh key, a FIDO2 security key, or the certificate on a PKCS#11 e-signature token (CAdES-BES, verified against the issuer's CA chain), from the console or the command line. A technical reviewer signs their own review first when the run requires one, and verify checks every signature against the organisation's register or the CA.The same as Community.The same as Community.
The recordwhat you hand overFull, on your disk: board, ledger, chained trace, report, the jobs' sealed outputs and their journal, case file with hashes, the examiner's review, every release of the report as it was sealed and signed, the operator's record, and a signature over the package when you sign it. A redacted package leaves out what a sensitive entry says, and every chain in it still verifies.The same as Community.The same as Community, kept on the case's own host.
Supportwho answersThe documentation, the published case records, and GitHub issues.Paid support from the maintainer, arranged by contact.The same as Pro.
LicencetermsGNU AGPL v3 or later. Free to run, study, change and share.The Pro packs under a commercial licence; the harness stays AGPL.The same as Pro.
Support and consulting

Someone alongside the tool, when your lab wants one.

The Community edition is free and stays free, and nothing a run's defensibility depends on is held back. What is paid here is time: getting it into your lab, shaping the method around it, and standing behind a run that has to survive review. The work is done remotely, with labs anywhere.

Getting it into your lab

A working deployment on your own hosts, the guards your platform can actually enforce, and a first case run with your examiners watching. For a team that wants to adopt it without reading the repository first.

Method, and a review before it leaves

Writing the goal documents your casework needs, building the checks a finish line has to carry, and reading a completed run before it goes to a client or a court. The questions a reviewer will ask, asked first.

A case worked with you

Your evidence, your questions, and the swarm run beside your own examiners. You keep the whole record: the board, the ledger, the trace and the report, with the hashes that let anyone replay it.

Who you would be working withMessages go straight to the maintainer, who has spent twenty-five years in information security and founded two companies in it. Who builds this sets out the decisions in the harness and the reasoning behind them.
Running it on client cases

The AGPL asks nothing of you for running the software, on your own machines, for clients, whatever you charge. What you sell is the investigation.

When you need the commercial licence

Offering a modified version as a service to others without publishing your changes, shipping it inside a closed product, or a policy that forbids AGPL software.

The name

Fork the code freely; give the fork its own name. "DFIR Swarm" says which build produced a result, and in a forensic report that matters.

Licence and editions

The questions the licence answers.

Is the Community edition really free, and will it stay free?
Yes. It is published under the GNU AGPL v3 or later, which guarantees everyone the freedom to run, study, change and share it. The licence cannot be revoked for the versions already published, and nothing a run's defensibility depends on is metered or time-limited.
Are the method packs free too?
All twelve of them, in the repository under the same AGPL as the harness: 107 skills, 69 tools and 14 goal templates across Windows, Linux, macOS, mobile, memory, network, reverse engineering, encrypted containers, cloud, ransomware and triage collections. The format is published with them, so a lab can write its own without asking anyone. What Pro adds is a verified, curated toolset: Pro packs whose tools are checked and shipped by us, with images prebuilt to run them.
Can a case stay open for more questions in the free edition?
Yes. Analysts can add questions to a running swarm, evidence acquired later can join a running case, and a run that stopped or was signed can be resumed as the same run with new questions. All of it is in the Community edition under the AGPL, with the question register, the negative bar, the stop policy, the case contract and the dynamic network. Pro and Enterprise work the same way.
Is signing a report part of the free edition?
Yes. Enrolling an examiner and a technical reviewer, the three kinds of key (an ssh key with a passphrase, a FIDO2 security key, the certificate on a PKCS#11 e-signature token), signing a release from the console or the command line, two-stage review and verification are all in the Community edition, under the AGPL. Pro and Enterprise sign the same way.
Can I run it on paid client engagements?
Yes. Running the software, on your own machines, for clients, at any price, is exactly what the licence permits. What you sell is the investigation.
Can I get paid support, or hire you to work with us?
Yes. The software stays free and no part of a run's defensibility is held back, so support is never the price of a working tool. What is paid is time: a deployment on your own hosts, the method and goal documents your casework needs, a review of a completed run before it leaves the lab, or a case worked beside your own examiners. It is arranged by contact and done remotely, with labs anywhere. Pick Support or consulting on the form below.
When do I need the commercial licence?
When you offer a modified version to others as a service without publishing your changes, when you ship it inside a closed product, or when your organisation's policy forbids AGPL software. The commercial licence comes with Pro and Enterprise.
How do I get Pro or Enterprise?
Through contact. Write to us about the lab, the evidence you work and the hosts it has to hold on, and the deployment is scoped with you. Community is the edition you can download and run today, free.
Can I fork it?
Yes, under the same licence. Give the fork its own name: "DFIR Swarm" says which build produced a result, and in a forensic report that matters.
Contact

Tell us what you are investigating.

A case you want to run, a host it has to hold on, a pack your lab needs, support for a lab already running it, an edition you want to shape. Messages go straight to the maintainer.

halil@halilozturkci.com · github.com/halilozturkci/dfirswarm

About
Delivered to the maintainer's inbox. No list, no tracking.