Faits:
A. Par ordonnance du 13 octobre 2008, le Juge d'instruction du canton de Vaud a refusé d'admettre X._ en qualité de partie civile dans une enquête qu'il instruit d'office contre Y._ et Z._.
Sur recours de X._, le Tribunal d'accusation du canton de Vaud a confirmé cette ordonnance, par arrêt du 28 octobre 2008.
B. X._ recourt au Tribunal fédéral contre cet arrêt.
Il demande l'assistance judiciaire.

Considérant en droit:
1. En vertu de l'art. 42 al. 1 et 2 LTF, le recourant doit, sous peine d'irrecevabilité (art. 108 al. 1 let. b et 117 LTF), motiver son recours en exposant succinctement en quoi la décision attaquée viole le droit.
En l'espèce, la lettre par laquelle le recourant a déclaré recourir au Tribunal fédéral ne comporte aucune motivation. Le recours doit dès lors être écarté en application de l'<ref-law>.
2. Comme il est apparu d'emblée que ses conclusions étaient vouées à l'échec, le recourant doit être débouté de sa demande d'assistance judiciaire (<ref-law> a contrario) et supporter les frais de justice (art. 65 et 66 al. 1 LTF), réduits à 500 fr. pour tenir compte de sa situation financière.

Par ces motifs, le Juge unique prononce:
1. Le recours est irrecevable.
2. La demande d'assistance judiciaire est rejetée.
3. Les frais judiciaires, arrêtés à 500 fr., sont mis à la charge du recourant.
4. Le présent arrêt est communiqué aux parties et au Tribunal d'accusation du canton de Vaud.
Lausanne, le 19 janvier 2009
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Juge unique: Le Greffier:
Schneider Oulevey