Breakdown of Никто не знал, что он агент.
он
he / it (for a masculine noun) / it (for a neuter noun)
знать
to know
что
that (conjunction)
никто
nobody
Questions & Answers about Никто не знал, что он агент.
The English translation says "was an agent", but the Russian says он агент (he is an agent). Why isn't it он был агент?
In Russian reported speech or thought, you keep the tense from the original moment. Since the fact at the time was "he is an agent" (present tense), Russian uses the present tense он агент, even though the main verb не знал is in the past. If you said что он был агентом, it would mean no one knew he had previously been an agent before that time.
If I did want to say "no one knew he had been an agent," would I use агент or агентом with был?
You would typically use the instrumental case: что он был агентом. With the past tense verb был (was), professions and roles almost always take the instrumental case. Because our sentence uses the present tense (meaning the verb "is" is invisible), агент stays in the nominative case.