The CoreASM project was first introduced in ASM 2005 as a novel attempt to make abstract state machines (ASMs) executable. The aim of this project is to specify and implement an extensible ASM execution engine for an extensible language that is as close as possible to the mathematical definition of pure ASMs. We present the architecture of the CoreASM engine together with its extensibility mechanisms that are used by the engine to accommodate arbitrary backgrounds, rule forms, and scheduling policies. An alpha implementation of the engine and some standard plug-ins will also be presented.