--- /dev/null
+TODO
+====
+
+* Support more VBoxManage commands.
+* Iteration over a set of VMs.
+* Support for upgrading VMs.
+* Vagrant integration.
--- /dev/null
+#!/bin/bash
+#
+# Simple wrapper around VBoxManage.
+#
+
+# Parameters
+BASENAME="`basename $0`"
+COMMAND="$1"
+VM="$2"
+
+# Usage
+function usage {
+ echo "usage: $BASENAME <command> [vm]"
+ exit 1
+}
+
+# Build options
+if [ ! -z "$VM" ]; then
+ if [ "$COMMAND" == "up" ]; then
+ OPTIONS=""
+ COMMAND="startvm"
+ elif [ "$COMMAND" == "down" ]; then
+ OPTIONS="savestate"
+ COMMAND="controlvm"
+ elif [ "$COMMAND" == "halt" ]; then
+ OPTIONS="poweroff"
+ COMMAND="controlvm"
+ else
+ usage
+ fi
+elif [ "$COMMAND" == "status" ]; then
+ OPTIONS="runningvms"
+ COMMAND="list"
+else
+ usage
+fi
+
+# Dispatch
+VBoxManage $COMMAND $VM $OPTIONS