ACT-R is a popular cognitive architecture. Although its psychological theory is well-investigated, it lacks a formal foundation. This inhibits computational analysis of cognitive models and leads to technical artifacts in ACT-R implementations. In this paper we present an adaptable implementation of ACT-R derived from our formalization presented in previous work. We show how this formal approach supported by the use of the declarative programming language Constraint Handling Rules (CHR) leads to an implementation of the ACT-R close to the theory while maintaining interoperability. Due to the adaptability of our implementation we are able to extend the conflict resolution strategy of the system by production rule refraction in our implementation easily avoiding the problem of over-programming in some ACT-R models. The use of CHR facilitates the application of analytical methods from the CHR ecosystem paving the way for ACT-R model analysis.