There are 3 branches to Openbox's development. See below for each branch and a description of its purpose.
The Stable branch is (in theory) a bug-free version of Openbox. To get to this state takes a fair amount of testing and time, so it is also the most 'behind development' in its features.
The Testing branch is where new development features come to be tested thoroughly before being released on the Stable branch. This means that this branch will be much closer to the current development of Openbox, but your chances of finding a bug also go up.
The Development branch is only available via cvs. It is where all development on the Openbox project takes place, and can be very unstable at times.
Snapshots are taken against the Openbox cvs-tree every night, and the latest one can be downloaded here.
To stay completely up-to-date with development, you need to get the current tree directly from cvs.
cvs -d :pserver:firstname.lastname@example.org:/cvs/cvsroot login
You will now have an "openbox" directory which contains all of the newest code. To update this code base to stay up-to-date with changes in the Openbox cvs, you need to do this:
Go to the top directory of the openbox source code you retrieved from cvs.
You can also browse the cvs repository. Be sure to check the branch you are viewing to be sure the files you are looking at are the ones you are interested in.
To submit a patch against the cvs-tree of Openbox, see here.