A recompilation program, often called make, is a crucial utility employed by many programmers during the development of sophisticated programs. It provides an elegant method for the compilation of programs which are made up of many components, written in any programming language. In this report, we present a new implementation of make based on command tracing. Our approach takes advantages of command transactions monitored by a user shell named brush. All the information that is required to check for the need to re-compile a particular program component is acquired via these transactions. There is no requirement for a file to specify dependencies and commands, as with the Makefile used by make. All that is needed is that each program component must be compiled at least once, by hand or from a shell script, to establish the command used.