Ledge.sh 実行可能な Markdown ノートブック – 機能、利用シーン、コミュニティの反応

Ledge.sh は Markdown ノート内にコードを直接実行でき、単純なテキストドキュメントをインタラクティブなノートブックに変換します

Ledge.sh は無料で、Apache‑2.0 ライセンスのもと提供されるノートブックであり、囲みコードブロック内でシェルコマンド、Python、SQL、AIプロンプトを実行できます。コードブロック内で ⌘↩ を押すと、その出力がブロックの下にストリームされ、ノートがドキュメントとライブ実行環境の両方として機能します。


ノートごとの永続的シェル

  • 各ノートは独自のシェルセッションを所有するため、cd、エクスポートされた変数、アクティブな仮想環境などが実行間で保持されます。
  • ⌘↩ はカーソル位置のブロックを実行します;⇧⌘↩ はブロックを分離可能なターミナルドロワーに送信し、インタラクティブに使用できます。
  • フロントマターのキー cwd: と env: は、ノートのシェルの開始ディレクトリと環境変数を定義します。
  • 囲みコードに norun を追加すると実行ボタンが無効化され、実行せずにコマンドを引用できます。

"Plain Markdown に実行可能なノートがあるのは、一人で開発する際の素晴らしい一歩です—ドキュメントとシェルの間でコピペする回数が減ります。" – michaelastreiko (Hacker News)


リモートホストでの実行とサーバー駆動のノート

  • Ledge を任意の SSH でアクセス可能なマシンに接続できます;サーバーが Markdown ファイルを保存し、シェルを実行します。
  • 別のアカウントやクラウドサービスは不要—SSH 認証のみで十分です。
  • 複数のクライアント(デスクトップ、iPhone、iPad、別のラップトップ)が同時に同じサーバーに接続でき、タブやペインを共有できます。
  • ledge backup は1時間ごとにノートを S3 互換バケットに暗号化してバックアップします。

モバイル対応

  • iOS および Android クライアントはリモートサーバーへの軽量なウィンドウとして機能し、ノートをローカルに保存しません。
  • ledge pair が印刷するペアリングコードは、プライベートキーを露出せずに、Secure Enclave を使って認証キーを生成します。
  • 検索、タグ、バックリンク、デイリーノート、ウィキリンクといった通常の編集機能はモバイルでも動作し、アプリに戻ったときにコマンドの出力が表示されます。

任意のホストでのブロック実行

  • フロントマターに host: 行を追加すると、すべてのブロック実行が指定されたホストに SSH でルーティングされます。
  • 最初の実行時にホスト選択を促され、最後の選択は記憶されます。
  • confirm 囲みコードは実行前にコードとターゲットホストを表示し、誤実行を防ぎます。
  • ノートの cwd と env は実行とともに移動するため、シークレットがノートファイルに含まれません。

ペインベースの UI とワークスペースレイアウト

  • ⌘D でビューを垂直に分割;⇧⌘D で水平に分割。各ペインは独立したタブとノートを保持します。
  • ペインは独自のシェルセッションを保持するため、2つのプロジェクトを並行して作業できます。
  • ワークスペースレイアウトは起動時に保存・復元され、⌘1〜⌘9 で保存されたワークスペースを切り替えられます。

セキュアなプロファイルと暗号化されたノート

  • プロファイルはノートフォルダ外に保存される plain .env ファイル(例:~/.config/ledge/profiles/deploy.env)です。profile: deploy を宣言したノートは、その変数をシェルに読み込みます。
  • ロックされたノートはパスフレーズで本文をディスク上に暗号化します;タイトル、タグ、フロントマターはナビゲーション用に表示されます。
  • 検索やバックリンクは暗号化された本文をスキップし、何件のノートが省略されたかを報告します。

エージェント統合

  • Ledge は MCP サーバーを内蔵しています;Claude などの AI エージェントは claude mcp add ledge でノートを読み取り、検索、作成、編集できます。
  • エージェントは prompt ブロックを実行でき、AI の応答をブロックの下にストリームで受け取れます。
  • ノートはタイトルで参照されるため(リネーム後も維持される)、エージェントは安定した参照を維持できます。

"私は、日々の作業でノートからターミナルへコマンドをコピペしていることにうんざりしていたので、Ledge を作りました… 自分のパイプラインを探索するには便利だと思いますが、本格的なプロジェクト管理には使わないようにしてください。" – Piraty (Hacker News)


Git ベースの同期とコラボレーション

  • ノートは通常の Markdown ファイルです;iCloud、Dropbox、Syncthing、Git などの任意のフォルダ同期ソリューションが即座に動作します。
  • Ledge はフォルダの外部変更を監視し、開いているノートをリアルタイムで更新します。
  • 専用の Sync ノートは ⌘↩ 1回で git add -A && git commit -m "notes $(date +%F)" && git pull --rebase && git push を実行します。
  • マージコンフリクトは通常の Git コンフリクトとして表示され、Ledge は開いているファイルを保持したまま、別のバージョンをワークスペースのゴミ箱に移動します。

6つの組み込みノートタイプ

タイプ 一般的な用途 例のブロック
データ探索 速やかな SQL や Python クエリ sql / python ブロック
プロジェクトランブック サービス起動、マイグレーション実行 sh ブロックに docker compose up -d db
インシデント対応 ログ照会、Redis 確認 redis ブロック
コーディング学習 小さな言語スニペット ruby ブロック
ホームラブ管理 リモートホストでコマンド実行 host: homelab + sh ブロック
デイリージャーナル プロンプト駆動のタスクリスト prompt ブロック

コミュニティの反応

  • 肯定的 – ドキュメントと実行のシームレスな統合が称賛され、コピペの煩わしさが減り、一人開発者や小規模チームに魅力的と指摘されました。
  • 比較 – 複数のコメント者が Ledge を Org‑Babel、Jupyter ノートブック、Observable Framework と比較しましたが、ネイティブな Markdown 形式とクロスプラットフォーム GUI が差別化ポイントであると強調しました。
  • 批判と提案 – シェル補完の統合強化、ノートブック風のセル実行コントロール、Obsidian プラグインラッパーの可能性といった要望が寄せられています。
  • パフォーマンスの指摘 – 高性能 Linux マシンでも UI の遅延が報告されており、今後の最適化の余地があると示唆されています。

Ledge.sh を採用すべきタイミング

  • DevOps プレイブック – API キーをプロファイルに保存し、デプロイスクリプトを実行し、ログを同じノートに保持します。
  • データ分析 – ノートブックから離れることなく、SQL、Python、シェルパイプラインを混在させられます。
  • AI 補助ワークフロー – Claude や他のエージェントにクエリを送信し、応答をインラインでキャプチャする prompt ブロックを埋め込みます。
  • リモートファーストチーム – SSH ベースのサーバーモデルを使って、ラップトップ、スマートフォン、CI ランナー間で単一の真実のソースを維持します。

はじめ方

# 任意のノートをホストするマシンにサーバーコンポーネントをインストール
curl -fsSL https://ledge.sh/server.sh | sh

# デスクトップクライアントのインストール(macOS、Linux、WSL による Windows)— https://ledge.sh/docs/installation を参照

インストール後、Markdown ファイルを作成し、囲みコードブロックを追加し、カーソルをブロック内に置き、⌘↩ を押します。出力がブロックの下に表示され、ノートは自動的に設定されたサーバーに同期されます。


最後に

Ledge.sh は、Git でバージョン管理可能なシンプルなファイルとしてのノートを維持しながら、デスクトップ、モバイル、リモートホストで動作するライブで再現可能なノートブックに、単純な Markdown を変換します。永続的なノートごとのシェル、セキュアなプロファイル、エージェント統合といった設計選択により、既存のノートブックやランブックツールの多くの課題に対処しており、開発者、DevOps エンジニア、AI 補助ワークフローに魅力的な選択肢となっています。

Sources

関連

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