Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

コマンドラインインターフェース

SpecForgeツールのコア機能は、コマンドラインインターフェース(CLI)を介してアクセスできます。

SpecForge CLIを追加の引数なしで実行すると、利用可能なコマンドのリストが表示されます。以下はコマンドの簡単な概要です。

  • serve: VSCode拡張機能とPython SDKを介したインタラクティブ開発のためのSpecForgeサーバーを起動します。
  • init: サンプルのlilo.tomlファイルとサンプル仕様を含む新しいLiloプロジェクトをセットアップします。
  • parse: 指定されたLiloファイルのリストが構文的に正しいか確認します。
  • check: 指定されたLiloファイルのリストを型検査します。
  • format: 指定されたLiloファイルのリストをフォーマットし、場合によっては仕様をインライン化します。
  • export: Lilo仕様を別の形式(例: .jsonまたは.lilo)にエクスポートします。
  • eval: 指定された入力信号でLilo仕様を評価します。つまり、入力信号の最初のタイムスタンプで仕様の値を決定します。
  • monitor: 指定された入力信号でLilo仕様を監視します。つまり、入力信号のすべてのタイムスタンプで仕様を評価することにより、出力信号を生成します。
  • streammon: ストリーミングモードでLilo仕様を監視します。このモードは、標準入力からJSONLレコードとして入力信号を1行ずつ読み取り、(該当する場合)仕様の値をストリーミング方式で出力します。

各CLIツールのドキュメントは、コマンドで--helpフラグを使用して直接アクセスする必要があります。以下は例です:

$ cabal exec specforge -- monitor --help
Usage: specforge monitor PROJDIR SYSTEM DATAFILE PARAMFILE DEFNAME
                      [--file-format FORMAT] [RECORD_ENCODING]

  Monitor a spec file

Available options:
  PROJDIR                  Path to the project directory
  SYSTEM                   System in which the spec lives
  DATAFILE                 Path to the data file
  PARAMFILE                Path to the param file
  DEFNAME                  Name of the definition to monitor
  --file-format FORMAT     One of these formats: csv, json, jsonl
  -h,--help                Show this help text

Record Encodings:
  flat                     Flat JSON with separator
  nested                   Nested JSON