cli-anything-audacity は何をしますか?
オーディオ編集のためのステートフルなコマンドラインインターフェース。このリポジトリ内のGIMPやBlender CLIと同じパターンに従います。
インストール
このCLIはcli-anything-audacityパッケージの一部としてインストールされます。
pip install cli-anything-audacity
前提条件:
- Python 3.10+
- システムにAudacityがインストールされていること
使い方
基本的なコマンド
# ヘルプを表示
cli-anything-audacity --help
# インタラクティブなREPLモードを開始
cli-anything-audacity
# 新しいプロジェクトを作成
cli-anything-audacity project new -o project.json
# JSON出力で実行(エージェントが利用する場合)
cli-anything-audacity --json project info -p project.json
REPLモード
サブコマンドなしで呼び出すと、インタラクティブなREPLセッションが開始されます。
cli-anything-audacity
# タブ補完と履歴を使って対話的にコマンドを入力
コマンドグループ
プロジェクト
プロジェクト管理コマンド。
| コマンド | 説明 |
|---|---|
new | 新しいプロジェクトを作成 |
open | 既存のプロジェクトを開く |
save | 現在のプロジェクトを保存 |
info | プロジェクト情報を表示 |
settings | プロジェクト設定を表示または更新 |
json | プロジェクトの生JSONを出力 |
トラック
トラック管理コマンド。
| コマンド | 説明 |
|---|---|
add | 新しいトラックを追加 |
remove | インデックスでトラックを削除 |
list | すべてのトラックを一覧表示 |
set | トラックのプロパティ(名前、ミュート、ソロ、音量、パン)を設定 |
クリップ
クリップ管理コマンド。
| コマンド | 説明 |
|---|---|
import | オーディオファイルをプローブ/インポート(メタデータを表示) |
add | トラックにオーディオクリップを追加 |
remove | トラックからクリップを削除 |
trim | クリップの開始および/または終了をトリミング |
split | 指定した時間位置でクリップを分割 |
move | クリップを新しい開始時間に移動 |
list | トラック上のクリップを一覧表示 |
エフェクトグループ
エフェクト管理コマンド。
| コマンド | 説明 |
|---|---|
list-available | 利用可能なすべてのエフェクトを一覧表示 |
info | エフェクトの詳細を表示 |
add | トラックにエフェクトを追加 |
remove | インデックスでエフェクトを削除 |
set | エフェクトパラメータを設定 |
list | トラック上のエフェクトを一覧表示 |
選択
選択管理コマンド。
| コマンド | 説明 |
|---|---|
set | 選択範囲を設定 |
all | すべて選択(プロジェクト全体) |
none | 選択を解除 |
info | 現在の選択範囲を表示 |
ラベル
ラベル/マーカー管理コマンド。
| コマンド | 説明 |
|---|---|
add | 時間位置にラベルを追加 |
remove | インデックスでラベルを削除 |
list | すべてのラベルを一覧表示 |
メディア
メディアファイル操作。
| コマンド | 説明 |
|---|---|
probe | オーディオファイルを分析 |
check | 参照しているすべてのオーディオファイルが存在することを確認 |
エクスポートグループ
エクスポート/レンダリングコマンド。
| コマンド | 説明 |
|---|---|
presets | エクスポートプリセットを一覧表示 |
preset-info | プリセットの詳細を表示 |
render | プロジェクトをオーディオファイルにレンダリング |
セッショングループ
セッション管理コマンド。
| コマンド | 説明 |
|---|---|
status | セッションの状態を表示 |
undo | 最後の操作を元に戻す |
redo | 元に戻した操作をやり直す |
history | 元に戻す履歴を表示 |
例
新しいプロジェクトを作成
新しいAudacityプロジェクトファイルを作成します。
cli-anything-audacity project new -o myproject.json
# またはプログラムでの使用のためにJSON出力を使用
cli-anything-audacity --json project new -o myproject.json
インタラクティブなREPLセッション
元に戻す/やり直しをサポートするインタラクティブセッションを開始します。
cli-anything-audacity
# 対話的にコマンドを入力
# 'help' で利用可能なコマンドを表示
# 'undo' と 'redo' で履歴を移動
プロジェクトのエクスポート
プロジェクトを最終出力形式にエクスポートします。
cli-anything-audacity --project myproject.json export render output.pdf --overwrite
状態管理
CLIはセッション状態を以下の方法で管理します。
- 元に戻す/やり直し: 最大50レベルの履歴
- プロジェクトの永続化: プロジェクト状態をJSONで保存/読み込み
- セッション追跡: 変更内容を追跡
出力形式
すべてのコマンドは2つの出力モードをサポートしています。
- 人間が読める形式(デフォルト): テーブル、色付け、書式設定されたテキスト
- 機械可読形式(
--jsonフラグ): エージェントが利用する構造化JSON
# 人間向け出力
cli-anything-audacity project info -p project.json
# エージェント向けJSON出力
cli-anything-audacity --json project info -p project.json
AIエージェント向け
このCLIをプログラム的に使用する場合:
- 常に
--jsonフラグを使用して解析可能な出力を取得する - リターンコードを確認する - 0は成功、0以外はエラー
- エラー発生時はstderrを解析してエラーメッセージを取得する
- すべてのファイル操作で絶対パスを使用する
- エクスポート操作後は出力が存在することを確認する
詳細情報
- 完全なドキュメント: パッケージ内のREADME.mdを参照
- テストカバレッジ: パッケージ内のTEST.mdを参照
- 方法論: cli-anything-plugin内のHARNESS.mdを参照
バージョン
1.0.0