libraryコマンドにより返されます。常、自分自身のサポートプロシージャのライブラリも持っています。的に$app_libraryグロバール変数の値によって与えられます。appはアプリケーションの名前です。場所は変数$tk_libraryに保持されています。アプリケーションがTclライブラリのプロシージャにアクセスするにはライブラリ内のファイルinit.tclをsource文でソースに挿入しなければなりません。init.tcl]アプリケーションのTcl_AppInitプロシージャからライブラリプロシージャTcl_Initを呼び出すと、自動的に処理が行われます。unknownプロシージャを定義します。これは下記で説明するオートロードメカニズムを使って、他のプロシージャが要求に応じて自動ロード(on-demand)できるようにするものです。コマンドのプロシージャ以下のプロシージャがTclライブラリで提供されています。cmd名前がcmdの実行可能ファイルか、あるいは組込み式シェルが存在するかを判定します。execに渡される引数のリストを返します。存在しなければ空文字列を返します。ルが存在するか検査します。execコマンドと同様にディレクトリとファイル拡張子によって拡張されます。auto_execはauto_execsという配列で前回の検索に関する情報を保存しておきます。これにより以降に同じcmdに対するパス検索のための重複呼び出しを防止します。auto_resetはauto_execokにキャッシュされた情報を廃棄させるためのコマンドです。patternauto_importはpatternに指定されたインポートコマンドが、オートロードライブラリにあるかどうかを判定します。importの間に呼び出されます。あると判断した場合には、該当コマンドは、インタープリタがインポートリンクを作成する際に利用できるように、ロードされます。該当コマンドがオートロードライブラリにない場合には、auto_importは何もしません。importのマッチングルールに従って行われます。cmd本コマンドはcmdという名前のTclコマンドの定義をロードすることを試みます。これを行うために、1つ以上のディレクトリのリストであるオートロードパスを検索します。$auto_pathで与えられます。TCLLIBPATH環境変数に存在すれば使われます。両方存在しなければ、オートロードパスは単にTclライブラリディレクトリだけになります。オートロードパス内の各ディレクトリの中には、tclIndexファイルが存在しなければなりません。(tclIndexファイルには)そのディレクトリで定義されている1つ以上のコマンドとそのコマンドをロードするために評価するスクリプトが記述されています。ファイルはauto_mkindexコマンドによって生成されます。インデックスファイル内でcmdを見つかると、適切なスクリプトがそのコマンドを作成するために評価されます。auto_loadコマンドはcmdが作成されたら1を返します。このcmdのインデックスエントリが存在しないか、スクリプトには実際にはcmdを定義していない場合は(例、インデックスの情報が古くなっている)0を返します。スクリプトの処理中にエラーが発生し場合、エラーが返されます。auto_loadはインデックス情報を一度だけ読込み、配列auto_indexに保存します。以降のauto_load呼び出しではインデックスファイルを再読込みせずに配列でcmdを確認できます。キャッシュされたインデックス情報はコマンドauto_resetで削除できます。削除すると次のauto_loadコマンドはディスクからインデックスデータベースを再読込しなければなりません。使用するために適切なインデックスを作成します。このコマンドはdirを検索して、pattern引数の何れかにマッチ(マッチングはglobコマンドで行われる)するすべてのファイルを要求します。マッチしたすべてのファイルの中で、定義されているすべてのTclコマンドプロシージャのインデックスを生成し、インデックス情報をdirのtclIndexというファイルに格納します。パターンが与えられない場合、*.tclのパターンが仮定されます。*.tclはサブディレクトリfoo内のすべての.tclファイルを読込み、新しいインデックスファイルfoo/tclIndexを生成します。auto_mkindexはTclスクリプトをサブインタープリタに渡して解析します。同時に実行されるprocと名前空間コマンドを監視します。auto_mkindex_parserパッケージを使うことができます。これがどのように機能するかを理解するためにはauto.tclを参照してください。auto_mkindex_oldはTclスクリプトをあまり洗練されていない方法で解析します。先頭にprocという単語を持つ行はプロシージャ定義であると仮定されます。行の次の単語がプロシージャの名前とみなされます。この方法で見つからなかったプロシージャ定義は(例、procの前にスペースがある)インデックスを付けられません。]等の特別な文字のような「危険な」コードを含む場合、auto_mkindex_oldを使用したほうが安全です。auto_resetauto_execokとauto_loadによってキャッシュされている情報を廃棄します。この情報は次に必要になったときにディスクから再び読込みされます。auto_resetは同時に、オートロードインデックスにリストされているすべてのプロシージャを削除します。したがってインデックスの新しいコピーが次に使われるときにロードされます。完全に修飾された名前のリストを計算します。このリストは標準のTclインタープリタがコマンド検索のためにたどるパスを反映します。最初に現在のネームスペースにおけるコマンドを検索し、その後、グローバルネームスペースにおけるコマンドを検索します。相対的で、かつnamespaceが::ではない場合、返されたリストは2つの要素を持ちます。