 
             module._compile transformed, fileName
 
+    # setup any custom post processors
+    if _.isArray(options.postProcessors) and options.postProcessors.length
+        options.postProcessors.forEach (processorOpts={}) ->
+            {ext, fn} = processorOpts
+            if !(_.isString(ext) and _.isFunction(fn))
+                return
+            else if "._coffee" is ext and options.streamlinejs
+                return
+
+            originalHandler = require.extensions[ext]
+
+            require.extensions[ext] = (module, fileName) ->
+                if excludeFile fileName, options
+                    return originalHandler.call this, module, fileName
+
+                processed = compiledCache.get fileName, ->
+                    compiled = instrumentFile fileName
+                    fn(compiled, fileName)
+
+                module._compile processed, fileName
+
     if options.writeOnExit
         process.on 'exit', ->
             try

# * `options.writeOnExit` - A file to write a JSON coverage file to on completion.  This will
#   stringify the variable set in `options.coverageVar` and write it to disk.
#
# * `options.streamlinejs` - Enable support for streamlinejs.  You can either pass `true`
#   here, or a set of options to pass on to
#   [transform](https://github.com/Sage/streamlinejs/blob/master/lib/callbacks/transform.md).
#
# * `options.cachePath` - A folder to write instrumented code to.  Subsequent runs will load
#   instrumented code from the cache if the source files haven't changed.  This is recommended

    replaceHandler ".litcoffee"
    replaceHandler ".coffee.md"

    # legacy option for `streamlinejs` < 1.x.
    # NOTE: deprecated. Use `options.postProcessors` instead.
    if options.streamlinejs
        console.warn "\noptions.streamlinejs is deprecated. Please use options.postProcessors\n"
        try
            streamlineTransform = require 'streamline/lib/callbacks/transform'
        catch err
            throw new Error "Could not load streamline transformer < 1.x"

        origStreamineCoffeeHandler = require.extensions["._coffee"]

        require.extensions["._coffee"] = (module, fileName) ->
