I've thought about puffers. Brackish is something I've never kept before. Liveaquaria is saying 30 gallon minimum for them? Are they really messy or something?
I've had 3 so far, all have been kept singly in a 15g. The longest lasted 5-6 years. It died when I moved the tank, gutted, still gutted.
The last one i got is still alive! I've had it since November 2011.
They aren't too messy. They'll need a supply of snails though. So if you have "pest species" then you're set. This is required to grind down the tooth plates. (See puffers overgrown teeth.)
If your one can eat chopped mussel, that works the same if there is shell in the mix, frozen cubes. I say this because my current puffer doesn't recognise mussel as food. Also they do not eat dry stock, bloodworms and snails all day long for this species, any frozen or fresh meaty fare, black mossies etc. it's a case of trial and observation for your particular fish so make sure to have a good supply of snails until you find a substitute feed. First chance is bloodworm. You can hand feed them.
It's possible (I've learnt recently) to keep groups of these fish which would require a tank that size, @30g. As far as brackish goes, it's basically watered down salt mix. I keep mine around 1.005-1.006 SG. If you have a reef you'll already have salt. If you don't have a hydrometer you'll need one as refractometers don't register this low. Same deal with RO top ups to maintain salinity which is something you should already be accustomed to. Normally these fish are kept in freshwater at stores, so check your shop before you cycle your tank. When adjusting SG, allow time for the bacteria to catch up, slight adjustments over a week or so is ok, no more than 0.003. I use a weak half mix and allow the weekly change to adjust it. Eventually you get there. Another note is the water level, make a mark so you can gauge evaporation, same as your reef sump, this helps with the top up.
I change out 25 litre per week with top ups of about 0.5-1 litre. Usually it's 0.8. Depends on the humidity/temp variable. This keeps things in perfect order.
I think that's everything!