CVM is an archive format used in the PS2 versions of Persona 3 and Persona 4. It was developed by CRI Middleware and based on ISO9660. It is also known internally as "ROFS" format. Essentially, they are ISO files with a special header. Due to this, most programs that can normally extract ISOs can also extract CVMs. All game data (except the executable) is stored in CVM archives.
Commandline tool ROFS tool v0.02 was released by roxfan in 2010. It can "split" the CVM into separate header and ISO files, so that you can edit the contents of the archive and then "make" a new CVM.
Extract ISO file from a ROFS volume
split [-p <password>] <file.cvm> <file.iso> [<file.hdr>]
Make a ROFS volume from an ISO file and header file
mkcvm [-p <password>] <file.cvm> <file.iso> <file.hdr>
The tool can be found in TGE's PersonaPatcher. For more information on editing ISO files, see ISO.
DKZ is the first known program that can edit CVM files directly. The latest available version is 0.92 Beta. It was originally released in Spanish, but has support for Language packs in DSL format. An English language DSL is included in the download. All changes to a CVM are saved automatically, and using the program's built-in "save" function seems to be broken. You also cannot replace small files with bigger ones without corrupting the CVM.