Historyk i publicysta. Przed 1989 rokiem współpracował z prasą podziemną, m.in. z emigracyjnym paryskim „Kontaktem”. W latach 1984 – 1991 był dziennikarzem „Tygodnika Powszechnego.” Od 1993 do 2005 roku był publicystą „Gazety Wyborczej”. W 2007 roku opublikował poświęconą lustracji książkę „Tropem SB. Jak czytać teczki”. Obecnie jest pracownikiem krakowskiego oddziału IPN-u oraz niezależnym publicystą.