Clone this repo:
  1. caf32ff TODO: add an item for placement of Link: when applying patch by SeongJae Park · 8 hours ago master
  2. d93c429 hkml_write: always write coloring notice at start of body by SeongJae Park · 5 days ago
  3. 1a9d3ee release_note: update for lines folding by SeongJae Park · 13 days ago
  4. e026edf hkml_view_text: implement a menu for unfolding all lines by SeongJae Park · 13 days ago
  5. 49f63fd hkml_view_text: add indentation based line folding menu by SeongJae Park · 13 days ago

HacKerMaiL

CI

HacKerMaiL (hkml) is a mails management tool for hackers who collaborate using mailing lists. It requires no complicated setup but just git. Using it, you can fetch mailing list archives, read mails in those, and post replies or new mails.

For now, hackermail supports public-inbox managed mailing list archives and manually exported mbox file contents. Linux Kernel Mailing Lists (LKML) are good examples of the public-inbox managed mailing list archives. Specifically, it is being used for, and aimed to support development of DAMON and general parts of Linux kernel.

Demo

interactive list

OSSummit JP'25 Demo Video

(Note that the above demos are recorded on an old version of hkml. Latest version may have different features/interface.)

Getting Started

List recent mails in Linux kernel DAMON subsystem mailing list (https://lore.kernel.org/damon):

$ ./hkml list damon

For the first time, the command will ask you if you want to initialize the setup and fetch the mails from the internet, with some questions. For this specific case (listing mails of a Linux kernel subsystem mailing list), you can simply select default options and ‘yes’. Then, it will open an interactive list of the mails. From it, users can do actions for mails including below.

  • Opening a mail
  • Listing complete thread of a mail
  • Replying to a mail
  • Forwarding a mail
  • Continue writing a draft mail
  • Managing tags of a mail
  • Checking/applying patch mails
  • Exporting mails

Press ‘?’ for help, or read “Interactive Viewer” section of USAGE.md.

For more detail and complete list of features,

$ ./hkml -h
$ ./hkml list -h

or refer to USAGE.md file. For daily use of hkml, particularly, you may want to know how to manage tags of mails (useful for managing ‘sent’ and ‘drafts’ mails) and how you can backup/syncronize those.

Additional Resources

  • SeongJae Park, hkml: Mailing Tool for Simple Linux Kernel Development. In Open Source Summit Japan, Dec 2025. Slides, Video, Link