devenjarvis/lathe

Generate hands-on, multi-part technical tutorials on demand, with LLM skills tuned to make content approachable. Then you work through them yourself, by hand ✋

Lathe – AI 搭載の実践的チュートリアル生成ツール

概要

  • Go ベースの CLI + ローカル Web UI で、コーディングエージェント LLM(Claude、Gemini、Codex など)に、指定した任意のトピックについてステップバイステップの技術チュートリアルを書かせることができます。
  • 生成されたチュートリアルはローカルに保存され、拡張、検証、クエリが可能で、目次、サイドノート、演習を備えた見やすいブラウザベースのリーダーで表示されます。

主な機能

  • プロンプト駆動のチュートリアル作成 – 対応するコーディングエージェントで /lathe build a 3D slicer in Erlang のようなスラッシュコマンドを入力すると、LLM が複数パートの Markdown チュートリアルを書きます。
  • ローカル UI – lathe serve で Web サーバー(デフォルト http://localhost:4242)が起動し、チュートリアルライブラリを表示、閲覧、検索、フィルタリング、ダーク/ライトモードで読むことができます。
  • インタラクティブなワークフロー – UI のボタンで LLM アクション(質問、コード検証、新しいパートの追加)をトリガーします。ライブワーカーループ(/lathe‑work)経由か、生成された /lathe‑* コマンドをエージェントにコピーして実行します。
  • ボイスシステム – チュートリアルはさまざまな「ボイス」(例:plainspoken や companion)で書くことができます。ボイスは単なるスタイルのプロンプトであり、カスタムボイスを追加できます。
  • 出典の追跡 – 各チュートリアルは、LLM モデル、ボイス、生成中に参照されたソース URL のリストを記録します。
  • クロスエージェント対応 – スキルはバイナリに同梱されており、Claude Code、Cursor、Codex、Gemini CLI、opencode、Cline、Windsurf などにインストールできます。
  • セルフホストモデル対応 – Lathe 自体は LLM を呼び出しません。使用中のエージェントに依存するため、エージェントを Ollama などのローカルの OpenAI 互換エンドポイントに向けることができます。

インストール

  • macOS: brew install devenjarvis/tap/lathe(プリビルドバイナリとして配布)。
  • Linux/macOS: ワンライナースクリプト curl -sSf https://raw.githubusercontent.com/devenjarvis/lathe/main/install.sh | sh。
  • ソースから: go install github.com/devenjarvis/lathe@latest(Go 1.25+ が必要)。
  • バイナリをインストールしたら、lathe skills install … を実行して、LLM スキルファイルをコーディングエージェントの適切なディレクトリに配置します。

仕組み

  1. LLM スキル – Markdown ベースのスキルファイル(SKILL.md)はコーディングエージェントが読み取ります。/lathe、/lathe‑extend、/lathe‑verify、/lathe‑ask などのコマンドにより、エージェントが LLM を呼び出し、チュートリアルパートを生成または変更し、lathe CLI にコールバックして結果を保存します。
  2. CLI – ~/.lathe/tutorials/ の永続ストレージを管理し、UI を提供し、Web UI とエージェント側のワーカーループ間の通信を仲介します。
  3. ライブモード vs コピーペースト – エージェントで /lathe‑work を開始すると、UI のボタンがジョブをキューに入れ、ワーカーが処理してシームレスな体験を提供します。ワーカーが実行されていない場合、UI はエージェントに貼り付けられる正確な /lathe‑* コマンドを表示します。

典型的なワークフロー

# コーディングエージェントのチャットウィンドウで
/lathe build a 3D slicer in Erlang

# ターミナルで
lathe serve   # ブラウザ UI を開く
  • リストを閲覧し、チュートリアルをクリックしてパートを読みます。
  • Ask、Verify、Add a part ボタンを使用して、コードを進めながら LLM と対話します。
  • 必要に応じて新しいパートでチュートリアルを拡張したり、ボイスを調整したりします。

ユースケース

  • 人間のチュートリアルが少ないニッチな技術や新興技術向けの実践的なガイドをすばやく生成します。
  • 個人学習: LLM が構造化された説明、引用、演習を提供する間、ユーザーは「実践」ループにとどまります。
  • カスタムボイスによるさまざまな指導スタイルの実験。

制限と注意点

  • 品質は基盤となる LLM に依存します。幻覚が発生する可能性があります。著者は、アクセスできる最大の「思考」モデルを使用することを推奨しています。
  • Lathe 自体はモデル推論を実行しません。LLM エンドポイントを設定した互換性のあるコーディングエージェントが必要です。
  • 現在は macOS 専用の Homebrew cask として配布されています。Linux ユーザーはインストールスクリプトを使用するか、ソースからビルドする必要があります。
  • 個人学習用です。生成されたチュートリアルの商用再配布は推奨されません。

詳細情報

  • リポジトリ: https://github.com/devenjarvis/lathe
  • ドキュメントとスクリーンショットはリポジトリの docs/ フォルダにあります。
  • 問題や機能リクエストは GitHub で受け付けています。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト