[Dovecot] Feature request - search and tag protocol - notmuch-alike approach

Kirill A. Shutemov kirill at shutemov.name
Fri Feb 3 13:20:49 EET 2012

Hi all,

notmuch[1] becomes more and more popular. At least in geek community.
But notmuch is local-only (except ssh)...

It looks like it's hard (if even possible) to use IMAP as transport for
notmuch-alike work flow. I think it would be great to create a new
protocol based global search and message tagging.

All core notmuch operations (search, show, count, tag) can be mapped to
the new protocol (more or less) directly.
Search syntax can be reused as is, I think.

The tricky part is initial tagging. It requires some kind of transaction
to be able to tag new messages without racing with upcoming messages.

Request (command) syntax can be similar to unix command. This way we can
reuse notmuch syntax even deeper. Like:

search --limit 10 --sort=oldest-first tag:to-me tag:unread

Replies are often structured. I think it's reasonable to use JSON for all

Any ideas?

I've started to write a proof-of-concept, but it moves too slow, since my
knowledge of dovecot internals is poor and it's hard to find time for the
I hope somebody else has similar idea in mind and just wait opportunity to
discuss the idea and start to write code. ;)

[1] http://notmuchmail.org/

 Kirill A. Shutemov

More information about the dovecot mailing list