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
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト