I wrote an script to do message archiving in the Open Source Edition. I haven't used in production yet but I tested it a lot in a testing machine.
It requires a mailboxd restart to flush some internal caches. I haven't found a command to do that without restart.
The only thing that you need is to create a second volume for arching (the script support compression if it's enabled in the volume) and write the configuration file (there is an example in the script itself).