quarto-dsh — 自動化(正確に・自動で)

Quarto の編集・レンダリングを強化するハーネス(CLI / Web UI / LSP)の解説と既存チュートリアルへの導線

概要

quarto-dsh は、Quarto の 編集・レンダリングを「正確に・自動で」支えるハーネス です。quarto-pe(実在キー・記法の辞書)と deepseek-harness(プラグイン型エージェント基盤)の技術エッセンスを融合し、実在キーの検証・記法の検査・レンダリングの自動化を CLI / Web UI / LSP から提供します。

  • リポジトリ: https://github.com/watanabe3tipapa/quarto-dsh
  • 公開サイト: https://watanabe3tipapa.github.io/quarto-dsh/
  • ライセンス: MIT(v0.1.3)

役割

「Quarto を正しく仕立てる」ことを担当します。ネットに転がる誤った設定に惑わされず、公式仕様に基づく正確な設定だけを手元で確認し、レンダリング・デプロイまでを自動化します。

コマンド 内容
quarto-dsh lint _quarto.yml / front matter を実在キーで検証
quarto-dsh scan callout 型・チャンクオプション・相互参照・Div 開閉を検査
quarto-dsh render quarto render / preview を CLI・エージェント・CI から実行
quarto-dsh project 5 種のテンプレートからプロジェクトを生成
quarto-dsh ci GitHub Pages 自動デプロイ設定を生成
quarto-dsh chat DeepSeek エージェントで検証・修正・レンダリングを遂行
quarto-dsh web ブラウザで lint / scan / render / preview / chat
quarto-dsh-lsp エディタの補完・診断

特徴

  • 実在キーの検証: 辞書は quarto-pe のリファレンスを基に凍結・独立管理(scripts/extract-quarto-pe.ts)。project.type: blog のような実在しない値も即座に指摘
  • 正確さが命: project.type は実在値のみ(default / website / book / manuscript)。実在しないコマンド(quarto check project など)は収録しない
  • プラグイン型アーキテクチャ: 実物の Cordis(@cordisjs/core)上に構築し、能力シーム(llm / shell / tools)で構成
  • LLM エージェント: chat が DeepSeek モデルとツールを組み合わせてタスクを遂行し、step / turn を append-only セッションログに記録
  • LSP: エディタで YAML キー・記法の補完と診断

使い方

git clone https://github.com/watanabe3tipapa/quarto-dsh.git
cd quarto-dsh
pnpm install
pnpm build

quarto-dsh lint          # 設定の検証(実在キーかどうか)
quarto-dsh scan index.qmd
quarto-dsh render        # レンダリング

前提: Quarto >= 1.3、Node.js >= 20。LLM エージェントを使う場合は DEEPSEEK_API_KEY が必要です。

長所

  • 誤りを機械的に検出: lint / scan が実在キー・記法を検証し、Web 上の誤情報に惑わされない
  • ワンストップ: 検証 → レンダリング → CI デプロイまでカバー
  • エージェント対応: chat で編集・検証・修正を LLM に委任できる
  • 複数インターフェース: CLI / Web UI / LSP を同じコアで提供
  • quarto-pe との親和: 知識層の出典が明示され、凍結・独立管理されている

短所・制約

  • 前提が重い: Quarto + Node.js >= 20 + pnpm の準備が必要
  • LLM 依存: chat は DeepSeek API キーが必要で、エージェント機能を使わない場合は不要
  • 辞書の凍結: 知識層は quarto-pe から取り込んだ時点で凍結するため、quarto-pe 側の更新に追随するには再取り込み(extract-quarto-pe)が必要
  • 対象は Quarto に特化: Quarto 以外の文書形式(.adoc など)の統合は担当外(そこは quarto-plus の担当)

適用例

  • 本サイト quarto-dsh 自体の LP・チュートリアル・REPORT の検証・ビルド・公開(lint / scan / render / ci)
  • Kitesurf × Quarto 情報収集のような収集→検証→レポート化パイプライン
  • CI でプッシュのたびに設定・記法を検査してからデプロイ

関連(既存チュートリアル)

関連(Brothers)