def action(action_callback=None, **kwargs):
    """
    Chisel action decorator
    """

    if action_callback is None:
        return lambda fn: action(fn, **kwargs)
    else:
        return Action(action_callback, **kwargs).decorate_module(action_callback)