Custom Rule
I have a dictionary file with common English words.  I want to create a rule that will take one word and combine it with every other word in the same dictionary file, then add three digits to the end.  

I know I can add the digits at the end with a hybrid attack, but I am not sure how to write the rule to combine words in the dictionary file.

I would also like to make all letters lower case even if the dictionary file has otherwise.

I am sure most of you already see what I am wanting to do, but here is an example.

My dictionary has three words:  first second third

I am trying to get the following combinations as well as brute force 3 digits at the end.

firstfirst (with 000-999 at the end)
firstsecond (with 000-999 at the end)
firstthird (with 000-999 at the end)
secondfirst (with 000-999 at the end)
secondsecond (with 000-999 at the end)

Thank you in advance for any insight.
Maybe try this:
First generate a brute force rule as described here:
Then use a combinator attack (-a 1) with two times your wordlist as input.
Finally use the generated rule file with "-k" parameter to apply the rules to every word on the right.
To make all words lowercase use the "l" rule with "-r".
I'm not sure if this will work though. I don't know if the "-k" parameter can handle rule files.
If it doesn't, the only other thing currently coming to my mind would be to --stdout a combinator attack and pipe it into a hybrid attack.
Someone else might has a better idea.