The 23-year-old twin brothers’ deals had been due to expire in 2018.
Craig has taken 168 wickets in 55 first-class matches while averaging 24.43 with the bat, hitting seven 50s.
Jamie – who, like his brother, is a right-hand bowler and right-hand batsman – has played 95 matches across all three formats, taking 168 wickets.
Somerset chief executive Lee Cooper told the club website: “Craig and Jamie are exceptionally talented players and to have secured their long-term futures is a real coup for the club.”