This document proposes design changes to support bare metal proxy compute nodes in OpenStack Nova. It discusses adding a --baremetal_driver option to specify the underlying architecture or provisioning tool. A new ProxyConnection class would be added to handle bare metal domains. Key methods like create_domain(), activate_node(), get_console_output(), and update_available_resource() need to interface with bare metal specific functions, for example to get idle nodes, set images, boot systems, and retrieve hardware information. The document suggests separating proxy_baremetal.py into multiple files to encapsulate domain management and architecture specific logic.