And if you examine the source (specifically modSkills.vb) you'll get a reasonable idea of what's going on (or what's going on in a very good approximation anyway...)

Code:

' *** calculate trickle-down from abilities to skills ***
Public Function calcTrickleDown(ByVal abilities() As Integer, ByVal skillID As Integer) As Integer
Dim i As Integer
Dim weightedAbility As Double = 0
For i = 0 To 5
weightedAbility = weightedAbility + (abilities(i) * skillAbilities(skillID, i))
Next
Return roundUp(weightedAbility / 4.0)
End Function

Where abilities() is an array of the 6 ability scores, and skillAbilities() is an array of the relative fractions each ability contributes to the trickle-down of a given skill (skillID).

Skill colour gives an approximate indication of skill cost (that is how many IP going from N to N+1 will cost you), each colour represents a range of costs (see the skillCosts() array for the actual numbers and the costToRate() array for how those numbers relate to things like number of increases per level and title caps).

Every skill is the sum of it's base value, the number of bought increases, the trickle-down and any buffs from nanos, equipment, perks etc.