Ce n'est qu'à l'occasion d'une année sabbatique dans un des laboratoires de DEC qu'à l'automne 1987, il met au point une bibliothèque de commandes qui pourront être exécutées depuis un programme en langage C (embeddable commands), tout en permettant d'écrire des scripts, à la manière des shells d'UNIX. Cette bibliothèque de commandes, le Tool Command Language, est présentée en 1990 lors de la conférence USENIX, et rendue gratuitement téléchargeable depuis la plate-forme FTP de l’Université de Berkeley[3].
En 1994, alors qu'il est reçu sociétaire de l’Association for Computing Machinery[4], Ousterhout reçoit de Sun Microsystems l’offre de poursuivre le développement de Tcl-Tk au sein de l'entreprise : la bibliothèque reste « open-source », mais son auteur doit en faire le langage universel de l'Internet. Au cours des trois années suivantes, Ousterhout et son équipe porteront le langage sous Windows et sur Macintosh tout en le dotant de mécanismes de gestion de ports distants. Mais en 1997, il devient clair que Sun va porter tout son effort sur Java, langage compilable et mieux structuré pour le développement orienté objet.
Afin de poursuivre le développement de Tcl-Tk, Ousterhout fonde la société Scriptics fin 1997 et édite la solution professionnelle Tcl Pro 1.0 dès , tout en conservant open-source le noyau, qui connaît une version 8.1 (). Devant les dangers d'explosion de la bulle Internet, Scriptics fusionne en 2000 avec Ajuba (laquelle sera à son tour rachetée par Interwoven à l'automne 2000) avant d'abandonner le développement ultérieur de Tcl-tk au Core Development Team.