Originally Posted by
TehVoyager
Lol i got skipped
but srsly. Calling TF 30 times a second might cause issues
I've already added in a check in the latest version to only cast when it's off CD. You probably haven't updated to 1.8.6 yet 
Code:
local tfEnergy = UnitPower("Player")
local BSstart, BSduration = GetSpellCooldown(106951)
local BScooldown = (BSstart + BSduration - GetTime())
local tfStart, tfDuration = GetSpellCooldown(5217)
local tfCD = tfStart + tfDuration - GetTime()
if BScooldown > 25 and tfEnergy <= 45 and tfCD < 1 then
CastSpellByName(tostring(GetSpellInfo(5217)))
elseif BScooldown < 1 and tfEnergy <= 45 and tfCD < 1 then
CastSpellByName(tostring(GetSpellInfo(5217)))
end