KUROKOTO LAB
Minutes Ago ガイド — 第7章 / 全9章

エージェント連携とショートカット

この Mac 上の AI エージェント(Claude など)やショートカット、直販版のコマンドラインツールから、文字起こし・音声・議事録・保存した録音を取り出し、ミーティングの開始・一時停止・終了やマーカー・画面写真の追加をする。どのアプリからでも使えるキー。上級者向け。

この Mac 上の AI エージェント(Claude など)やショートカットから、まだ保存していない録音の文字起こし・話者付きの文字起こし・音声・議事録を取り出し、ミーティングの開始・一時停止・再開・終了、録音の保存と読み出し、マーカーや画面写真の追加ができます。上級者向けの機能です。

既定はオフ

エージェント連携は、「設定 › エージェント」で「AI エージェントを許可(この Mac の MCP)」をオンにしたときだけ動きます。オンにした設定は、Minutes Ago を再起動しても保たれます。購入前に初めてオンにしたときは、エージェントからの取り出しでお試しを使うことを 1 回だけ説明します。

エージェントのつながり方は版で違います。Mac App Store 版はネットワークで待ち受けず、エージェントが Minutes Ago 自身の実行ファイルを MCP サーバーとして起動します。Web サイトから入手する直販版は、127.0.0.1 でトークン付きの HTTP の MCP サーバーが待ち受けます。「設定 › エージェント」のコピーのボタンは、いつもお使いの版の設定をコピーします。

App Store 版の設定ウインドウのエージェントのペイン(サイドバーは「モデル」を含む 8 つ)。「AI エージェントを許可(この Mac の MCP)」がオン、その下に「この Mac の MCP クライアントから使えます」と直近の接続「直近: 13:27:58 · mcp-client 1 · get_buffer_status · 200」、「Claude 用の設定をコピー」「Claude Code のコマンドをコピー」「ショートカットを追加…」のボタン、「上の設定で登録した MCP クライアントは、まだ保存していない録音と保存した録音の文字起こしを読み、音声を書き出せます。接続できるのはこの Mac のアプリだけです。」の説明。「詳細」は無い

オンにするとどうなるか

App Store 版

  • Minutes Ago はネットワークのポートで待ち受けません。Claude Code や Claude Desktop などの MCP クライアントが、Minutes Ago 自身の実行ファイルを引数 mcp で起動し(/Applications/MinutesAgo.app/Contents/MacOS/MinutesAgo mcp)、stdio の MCP サーバー(サーバー名 minutes-ago)として使います。この起動ではウインドウを出さず、録音もしません。要求を Minutes Ago に取り次ぎ、クライアントが閉じると終わります。
  • Minutes Ago へは、アプリのコンテナの中の接続口(ソケット)~/Library/Containers/com.kurokoto.minutesago/Data/mcp.sock を通して取り次ぎます。接続口はエージェント連携がオンの間だけ作られ、オフにしたときと Minutes Ago の終了時に削除されます。受け付けるのは、この Mac の同じユーザーのプログラムのうち、トークンを持つものからの要求だけです。トークンは実行ファイルがこの Mac のキーチェーンから自分で読むので、設定には出ません。接続できるのはこの Mac のアプリだけです。
  • 「設定 › エージェント」の状態の行は「この Mac の MCP クライアントから使えます」です。オフのときは「オフ」、接続口を開けないときは「使えません: …」です(例: ユーザー名(ホームフォルダの名前)が 40 バイト以上(UTF-8)の Mac では、接続口のパスが macOS の上限を超えます)。
  • エージェント連携がオフの間は、どの要求にもエラー「Agent access is off. Turn on “Allow AI agents” in Minutes Ago › Settings › Agents.」(英語の文面)を返します。オンにすれば次の要求から通ります。クライアントの再起動は要りません。
  • Minutes Ago が起動していなければ、最初の要求で起動し(前面には出しません)、最大 15 秒待ちます。

直販版

  • この Mac の 127.0.0.1 のポート 48151 で、MCP サーバー(Streamable HTTP、サーバー名 minutes-ago)が待ち受けます。接続先は http://127.0.0.1:48151/mcp です。ほかのマシンからはつながりません。
  • 48151 がほかのアプリに使われているときは、48152〜48160 を順に試します。実際のポートは「設定 › エージェント」の状態の行(「127.0.0.1:48151 で待ち受け中」)で分かります。オフのときは「オフ」、待ち受けられないときは「使えません: …」です。
  • 接続にはトークンが要ります。トークンは最初にオンにしたときに作り、この Mac のキーチェーンに保存します。
  • リクエストの Host と Origin を検査し、127.0.0.1 か localhost のこのポート宛て以外は拒否します(HTTP 403)。トークンが無い・違う場合も 403 です。

どちらの版も

  • 「設定 › エージェント」に直近の接続(「直近: 時刻 · クライアント · ツール · ステータス」)が出ます。まだ無ければ「まだ接続はありません」。

Minutes Ago 自身はデータを Mac の外へ送りません。ただし、接続したエージェントがそのデータを外部のサービスへ送ることがあります。どのエージェントを接続するかはご自身で決めてください。

Claude に登録する(App Store 版)

先に「設定 › エージェント」でエージェント連携をオンにし、状態が「この Mac の MCP クライアントから使えます」になっていることを確かめます。トークンは要りません。

Claude Code

  1. 「設定 › エージェント」の「Claude Code のコマンドをコピー」を押します。
  2. ターミナルで、コピーしたコマンドを実行します。次の形です。
claude mcp add minutes-ago -- "/Applications/MinutesAgo.app/Contents/MacOS/MinutesAgo" mcp
  1. 既定ではいまのプロジェクトだけに登録されます。すべてのプロジェクトで使うときは -s user を付けます。
  2. Claude Code の中で /mcp を開き、minutes-ago がつながって 14 のツールが見えることを確かめます。

Claude Desktop

  1. 「設定 › エージェント」の「Claude 用の設定をコピー」を押します。次の JSON がコピーされます。
{
  "mcpServers" : {
    "minutes-ago" : {
      "args" : [ "mcp" ],
      "command" : "/Applications/MinutesAgo.app/Contents/MacOS/MinutesAgo"
    }
  }
}
  1. Claude Desktop の 設定 › 開発者 › 構成を編集 で claude_desktop_config.json を開き、mcpServers に minutes-ago の項目を追加します。
  2. Claude Desktop を再起動し、ツールの一覧に Minutes Ago のツールが出ることを確かめます。
  • パスは、コピーしたときに Minutes Ago があった場所です(ふつうは /Applications/MinutesAgo.app)。アプリを移動したときは、設定をコピーし直して登録し直してください。
  • Claude のカスタムコネクタ(URL で追加するもの)は、この Mac のプログラムを起動できません。設定ファイルで登録してください。
  • この JSON は Claude Code の .mcp.json や claude mcp add-json と同じ mcpServers の形です。

Claude に登録する(直販版)

先に「設定 › エージェント」でエージェント連携をオンにし、状態が「127.0.0.1:48151 で待ち受け中」になっていることを確かめます。直販版では、代わりにコマンドラインツールを登録することもできます(下)。

Claude Code

  1. 「設定 › エージェント」の「Claude Code のコマンドをコピー」を押します。
  2. ターミナルで、コピーしたコマンドを実行します。次の形です(<token> は実際のトークン)。
claude mcp add --transport http minutes-ago http://127.0.0.1:48151/mcp --header "Authorization: Bearer <token>"
  1. 既定ではいまのプロジェクトだけに登録されます。すべてのプロジェクトで使うときは -s user を付けます。
  2. Claude Code の中で /mcp を開き、minutes-ago がつながって 14 のツールが見えることを確かめます。

Claude Desktop

  1. 「設定 › エージェント」の「Claude 用の設定をコピー」を押します。次の JSON がコピーされます。
{
  "mcpServers" : {
    "minutes-ago" : {
      "headers" : { "Authorization" : "Bearer <token>" },
      "type" : "http",
      "url" : "http://127.0.0.1:48151/mcp"
    }
  }
}
  1. Claude Desktop の 設定 › 開発者 › 構成を編集 で claude_desktop_config.json を開き、mcpServers に minutes-ago の項目を追加します。
  2. Claude Desktop を再起動し、ツールの一覧に Minutes Ago のツールが出ることを確かめます。
  • Claude Desktop の版によっては、設定ファイルで HTTP のサーバーを受け付けないことがあります。その場合は、stdio と HTTP を橋渡しするツール(例: mcp-remote。Node.js が必要)を使います。
  • Claude のカスタムコネクタ(URL で追加するもの)はクラウド側から接続するため、この Mac の 127.0.0.1 には届かない見込みです。設定ファイルで登録してください。
  • この JSON は Claude Code の .mcp.json や claude mcp add-json と同じ mcpServers の形です。

依頼の例: 「minutes-ago で直近 30 分の話者付き文字起こしを取得して、議事録を作って」。

MCP サーバーのツールは、開発元の MCP クライアントで動作を確かめています。Claude Desktop と Claude Code から実際に接続しての確認は、まだ行っていません。

14 のツール

まだ保存していない録音を読む 5 つ、ミーティング・保存した録音・マーカーの 8 つ、画面写真の 1 つです。

範囲を取るツールでは、範囲を次のどちらかで指定します。両方の指定や、どちらも無い指定はエラーです。

  • last_minutes — 直近の分数(0 より大きく 1440 以下)。
  • start(ISO 8601、UTC からの時差を必ず付ける)と、任意の end(省略すると現在)。24 時間を超える範囲や、終わりが始まりより前の範囲はエラーです。

範囲は、まだ保存していない録音として残っている範囲に切り詰めます。重ならなければエラーです。track は both(既定。2 つのトラックを時刻順にまとめる)、microphone、app から選びます。知らない引数はエラーです。

まだ保存していない録音

ツール 引数 返すもの
get_buffer_status なし 残っている範囲、録音の状態、トラック(マイクのデバイス名、相手の声のアプリ)と文字起こしの状態、発話数、話す言語、書き出し先、議事録のエンジンと使えない理由、進行中のミーティング(paused・paused_seconds・active_seconds を含む)、まだ保存していない録音の置き場(liveAudioStorage: memory / disk)、ライセンスの行(お試しの残り)
get_transcript 範囲、track 時刻付きの文字起こし([HH:mm:ss] 話者: 本文)。置換辞書を適用したもので、コピーや書き出しと同じ。アプリ音声を録っているとき、話者の付いていない行は「自分」「相手」です(英語の表示では Me / Others)
get_speaker_transcript 範囲、track、format(markdown 既定 / json / text / vtt / srt)、refresh 話者ラベル付きの文字起こし。ラベルは相手の声が S1、S2…、マイクが M1、M2…、または付けた名前です。行のあるトラックをそれぞれ分けます。話者の付いていない行が多いとき、範囲の終わりに残っているとき、refresh が true のときは、先に話者分離を実行します
export_audio 範囲、track、format(m4a 既定 / wav) 書き出し先フォルダに書いたファイルの絶対パス。相手の声があれば … mic.m4a と … app.m4a
generate_minutes 範囲 議事録の Markdown。「設定 › 議事録」の既定のプロバイダと議事録プリセットで作ります

ミーティング・保存した録音・マーカー

ツール 引数 返すもの
start_meeting name、screenshot_interval(3 / 5 / 10 / 20 / 30 / 60 秒。省略か 0 は画面写真なし)、screenshot_app(撮るアプリの bundle ID。既定は相手の声のアプリ)、この会議だけの language(BCP 47。例 en-US)・app_audio(bundle ID か none)・microphone(デバイスの名前か none)・preset(「設定 › 録音 › プリセット」の名前)。どれも任意 始めたミーティングと、その話す言語・相手の声・マイク、足りないものがあれば警告。画面収録の許可は求めません。許可が無ければ画面写真なしで始め、その旨を返します
stop_meeting discard(既定 false) ミーティングを録音として保存し、その ID・フォルダ・ファイルを返します。discard なら保存せずに終了します
pause_meeting なし 進行中のミーティングを一時停止します。resume_meeting まで何も録音せず、ミーティングの時計も止まります。get_buffer_status と同じ形のミーティングを返します。ミーティングが無い・すでに一時停止中・保存中のときはエラー
resume_meeting なし 一時停止中のミーティングを再開します。録音が再び始まり、時計も進みます。一時停止した時間の累計とともにミーティングを返します。一時停止していないときはエラー
save_recording 範囲、name、track(both / microphone) まだ保存していない録音の範囲を録音として保存します(書き出し先フォルダではありません)。返すものは stop_meeting と同じ
list_recordings limit(1〜200、既定 20) 保存した録音の一覧(新しい順、ID 付き)。source は meeting・range・agent(save_recording)・file(音声ファイルから取り込んだ録音)
get_recording id(必須)、format(markdown 既定 / text / json / vtt / srt)、include_markers(既定 true) 保存した録音 1 件の文字起こしとマーカー、そのフォルダ・音声・議事録・画面写真のパス。文字起こしはアプリで表示しているもの(今のモデルのもの)です。JSON には transcription_model(その文字起こしのモデル。録音中に作ったものは live)と transcripts(録音が持つモデルごとの文字起こしの一覧)も入ります。音声ファイルから取り込んだ録音(source が file)では audio.microphone が取り込んだ音声で、Minutes Ago が文字起こしし終えるまでは行がありません
add_marker name 今の時点にマーカーを付けます。録音していないとき、ミーティングの一時停止中はエラー

画面写真

ツール 引数 返すもの
add_screenshot なし ミーティングのアプリの画面写真を今すぐ撮って残します(画面が変わっていなくても残します)。時刻、保存したファイルのパス、ミーティングの枚数を返します。画像は返しません(パスのファイルを読みます)。画面写真ありのミーティング中、録音中だけ使えます(ミーティングの一時停止中は使えません)
  • start_meeting で指定したこの会議だけの値は、ミーティングを終える(保存・破棄)まで使い、その後は設定の値に戻ります。preset と一緒に指定した引数は、プリセットの値より優先します。
  • ミーティングの一時停止中は何も録音せず(まだ保存していない録音にも残りません)、ミーティングの時計も止まり、Minutes Ago を再起動しても一時停止のままです。stop_meeting はそのままの状態で保存します。保存した録音には「ミーティングを一時停止」「ミーティングを再開」のマーカーが入ります。ミーティングのバー・メニュー・どのアプリからでも使えるキー・ショートカットのアクションからも同じように一時停止できます。
  • vtt と srt は、見出しを付けずに字幕ファイルの中身だけを返します。そのまま .vtt / .srt として保存できます。字幕の時刻は、get_speaker_transcript では範囲の始まりから、get_recording では録音の始まりから数えます。
  • stop_meeting・save_recording・list_recordings・get_recording・add_screenshot が返すパスは Minutes Ago のコンテナの中です。Minutes Ago が管理しているので、読むだけにしてください。
  • 音声ファイルの取り込み、保存した録音の削除・書き出し・文字起こしのやり直しや、文字起こしのモデルを選ぶツールはありません。アプリで行ってください(文字起こしとモデル)。アプリでまだ保存していない録音の範囲を文字起こしし直すと、get_transcript と get_speaker_transcript は新しい行を返します。保存した録音のほかのモデルの文字起こしは、エージェントからは読めません(表示しているものだけです)。どのアプリからでも使えるキーも、エージェントからは読めず変えられません。
  • export_audio は、書き出し先フォルダを選んでいないとエラーになります。「設定 › ライブラリ › 書き出し先フォルダ」で選ぶか、先にアプリで一度書き出してください。
  • 話者分離と議事録は、終わるまで待ってから結果を返します。途中経過は返しません。開発機での計測(合成会議、直近 30 分)では、話者付きの文字起こしが約 12 秒、議事録が約 101 秒でした。両方のトラックの話者を分けるときは、1 本の 2 倍ほどかかります。クライアントのツールのタイムアウトがこれより短いと失敗します。
  • 同時に複数の話者分離・議事録の要求が来たときは、前の処理が終わってから次を始めます。
  • 範囲を変えて話者分離し直すと、S1 と S2(M1 と M2)の対応が入れ替わることがあります(名前を付けた話者は引き継ぎます)。
  • 無料の範囲とお試しは、下のエージェントが無料で使える範囲を見てください。

Mac の外へ送るプロバイダのとき

既定の議事録のプロバイダが Mac の外へ送るもの(OpenAI、Anthropic、Google Gemini、OpenAI 互換のサーバー。Apple Private Cloud Compute は準備中)のとき、generate_minutes は確認のダイアログを出しません。アプリでその送信先に「今後表示しない」を選んでいる場合だけ実行し、それ以外はエラーで理由を返します(話者分離と議事録)。エージェントからは画面写真を送りません(文字だけ)。

エージェントが無料で使える範囲

アプリと同じ範囲です(無料で使えるのはどこまでですか)。

  • 無料で、回数も減らないもの: エージェント連携をオンにすること、get_buffer_status、直近 30 分の get_transcript(相手の声の行を含んでも無料。話者名は外して返し、見出しにそう書きます)、start_meeting、pause_meeting、resume_meeting、discard を付けた stop_meeting、list_recordings、get_recording(録音は保存したときに精算済み)、add_marker、add_screenshot。
  • Pro を入手するまで(直販版はライセンスを有効にするまで)1 回ごとにお試しを使うもの: 30 分より前の get_transcript、get_speaker_transcript、export_audio、generate_minutes、録音の保存(stop_meeting、save_recording)。get_recording は、保存した後に話者名を付けた録音のときだけ、1 回だけお試しを使います。
  • 応答に残り回数が載ります。残りが無いときや無料では取り出せない範囲のときは、範囲を黙って切り詰めずにツールのエラーを返します。

トークンの再生成と停止

  • トークンを再生成(直販版のみ) — 「設定 › エージェント」の「詳細」にある「トークンを再生成」で作り直します。それまでの設定は接続できなくなる(403)ので、「Claude 用の設定をコピー」か「Claude Code のコマンドをコピー」でコピーし直して、登録し直してください。App Store 版には「詳細」も「トークンを再生成」もありません(設定にトークンを含まないため)。
  • 止める — 「AI エージェントを許可(この Mac の MCP)」をオフにします。App Store 版では接続口が削除され、登録したクライアントには、オンに戻すまで「Agent access is off」のエラーが返ります。直販版では待ち受けを閉じます。
  • 直販版でポートが 48152 以降に変わったときも、登録した URL と合わなくなります。設定をコピーし直してください。

ショートカット

同じ操作を、ショートカット App のアクションとして使えます。ショートカット App でアクションを検索するか、アプリの一覧から「Minutes Ago」を選ぶと並びます。

アクション パラメータ(既定) 結果
バッファの状態を取得 なし テキスト
文字起こしを取得 分数(30)、トラック(マイクとアプリ音声)、開始 / 終了(任意) テキスト
話者付きの文字起こしを取得 分数(30)、形式(Markdown。ほかに JSON、プレーンテキスト、WebVTT、SRT)、トラック、もう一度話者分離(オフ)、開始 / 終了 テキスト
音声を書き出す 分数(30)、形式(M4A(AAC))、トラック、開始 / 終了 音声ファイル(書き出し先フォルダに書いたファイルの中身)
議事録を作成 分数(30)、開始 / 終了 Markdown のテキスト
マーカーを付ける 名前(任意) なし(録音していなければエラー)
ミーティングを開始 名前、画面写真の間隔(0 = なし)、アプリ、この会議だけの話す言語・相手の声・マイク・プリセット(どれも任意) テキスト
ミーティングを終了 破棄(オフ) テキスト(保存した録音)
録音を保存 分数(30)、開始 / 終了、名前(任意) テキスト(保存した録音)
録音の一覧 件数(20) テキスト
録音を取得 ID(必須)、形式(Markdown。ほかにプレーンテキスト、JSON、WebVTT、SRT) テキスト(文字起こし。マーカーを含む)
画面写真を追加 なし 保存した画面写真のパス
ミーティングを一時停止 なし テキスト(ミーティングが無い・すでに一時停止中のときはエラー)
ミーティングを再開 なし テキスト(一時停止していないときはエラー)
  • 「開始」を指定すると、直近の分数ではなく時間範囲で取り出します。「終了」を省くと現在までです。
  • 「音声を書き出す」も書き出し先フォルダが必要です。WAV は大きくなる(30 分で数百 MB)ので、大きい音声を扱うときはエージェント連携(MCP)の export_audio のほうが向いています(ファイルのパスを返します)。
  • アクションはエージェントのツールと同じ扱いです。無料の範囲とお試し、Mac の外へ送るプロバイダの扱いは同じで、「ミーティングを開始」と「画面写真を追加」は画面収録の許可を求めません。結果にお試しの残り回数は載りません。
  • 「マーカーを付ける」は、録音の今の時点にマーカーを付けます。録音していないときは「録音していません。マーカーは Minutes Ago の録音中に付けられます。」のエラーになります。
  • このうち 9 つは Siri と Spotlight からも使えます(App Shortcuts。例:「Minutes Ago でマーカーを付ける」「Minutes Ago でミーティングを開始」)。「録音の一覧」「録音を取得」「画面写真を追加」「ミーティングを一時停止」「ミーティングを再開」はアクションだけです。
  • ショートカットが結果を出力するとき、ショートカットごとに初回だけ、ショートカット App が「“…”が 1 個のテキスト項目を出力することを許可しますか?」と尋ねます。

ショートカット App のアクションの検索欄に「Minutes Ago」と入れたところ。マーカーを付ける、ミーティングを開始、ミーティングを終了、音声を書き出す、録音の一覧、録音を取得、録音を保存、議事録を作成、文字起こしを取得、バッファの状態を取得、話者付きの文字起こしを取得の 11 のアクションが並ぶ

ターミナルから実行する(shortcuts run)

shortcuts run は、ショートカット App のライブラリにあるショートカットだけを名前で実行します。アプリが提供するアクション(App Shortcuts)を直接は実行できません。

「設定 › エージェント」の 「ショートカットを追加…」 で、Minutes Ago に同梱したショートカットを追加できます(同梱しているビルドのときだけ出ます)。ショートカット App が 1 つずつ確認するので、使うものは「ショートカットを追加」を押します。同梱のショートカットは、それぞれ 1 つのアクションを既定の値で実行します。

shortcuts run で使う名前 アクション
Minutes Ago: Transcript with Speakers (30 min) 話者付きの文字起こしを取得(直近 30 分、Markdown)
Minutes Ago: Transcript (30 min) 文字起こしを取得(直近 30 分)
Minutes Ago: Export Audio (30 min) 音声を書き出す(直近 30 分、m4a)
Minutes Ago: Generate Minutes (30 min) 議事録を作成(直近 30 分)
Minutes Ago: Buffer Status バッファの状態を取得
Minutes Ago: Start Meeting ミーティングを開始(名前なし、画面写真なし)
Minutes Ago: Stop Meeting ミーティングを終了(保存する)
Minutes Ago: Save Recording (30 min) 録音を保存(直近 30 分)
Minutes Ago: List Recordings 録音の一覧(20 件)
Minutes Ago: Add Marker マーカーを付ける(名前なし)
Minutes Ago: Add Screenshot 画面写真を追加(保存したファイルのパスを出力)
Minutes Ago: Pause Meeting ミーティングを一時停止
Minutes Ago: Resume Meeting ミーティングを再開

ほかの設定で使うときは、ショートカット App で自分のショートカットを作ります。

  1. ショートカット App で新規ショートカットを作り、「話者付きの文字起こしを取得」などのアクションを 1 つ追加します。
  2. 名前を付けます(例: MA 話者付き 30分)。
  3. ターミナルで実行します。
shortcuts run "Minutes Ago: Transcript with Speakers (30 min)" | cat
shortcuts run "MA 話者付き 30分" | cat
shortcuts run "Minutes Ago: Export Audio (30 min)" -o ~/Desktop/
  • 初回は上の出力の許可を尋ねられ、応答するまで shortcuts run は戻りません。
  • 音声のように結果がファイルのときは -o で出力先を指定します。

どのアプリからでも使えるキー

「設定 › キーボード」の「どのアプリからでも使えるキー」で、次の 8 つの操作に、どのアプリが前面でも効くキーを割り当てられます。

  • マーカーを付ける
  • ミーティングを開始(前回の設定ですぐ始めます)
  • ミーティングを終了して保存
  • 直近 30 分を保存
  • 録音と議事録を開く
  • 話す言語の一覧
  • 画面写真を追加(使っているアプリは前面のまま)
  • ミーティングを一時停止 / 再開(進行中のミーティングを一時停止し、一時停止中なら再開します)

設定 › キーボード。「どのアプリからでも使えるキー」に 8 つの操作(マーカーを付ける ⌃⌘M、ミーティングを開始 なし、ミーティングを終了して保存 なし、直近 30 分を保存 ⌃⌘P、録音と議事録を開く なし、話す言語の一覧 なし、画面写真を追加 ⌃⌘K、ミーティングを一時停止 / 再開 なし)と各行の「録る」「消す」。下に「アプリ内のキー」の一覧(設定… ⌘,、書き出す ⌘E、テキストをコピー ⇧⌘C、議事録を作成 ⇧⌘M、ライブラリに保存… ⇧⌘S、文字起こしを検索 ⌘F、行を編集 ダブルクリック、選択した行を削除 ⌫、話す言語のピン(メニュー)⌘1〜⌘5。下端で切れている)

  • 選ぶまでは何も割り当てません(以前の版で選んだマーカーのキーは引き継ぎます)。「録る」を押してキーを押します。Esc で中止、Delete で消去です。「消す」で外せます。
  • ⌘ か ⌃ を含むキーにしてください。⌘ のときは、⌃・⌥・⇧ のどれかも一緒に押します。Minutes Ago のウインドウで使うキー(⌘E など)は使えません(「「…」で使っています」)。
  • ほかのアプリが使っているキーは「使えません(ほかのアプリが使用中)」と出ます。キーを録るときに「キーが届きませんでした。ほかのアプリが使っているかもしれません。」と出ることもあります。
  • メニューの各項目の横に、割り当てたキーが出ます。
  • キーでミーティングを開始・保存すると、画面の上に短く表示します(「ミーティングを開始 · 言語 · アプリ」「ミーティングを保存しました · 名前」)。キーで画面写真ありのミーティングを始めても画面収録の許可は求めず、許可が無ければ表示に「写真なし(許可が無いため)」が付きます。
  • 同じペインに、Minutes Ago の中で使うキーの一覧(「アプリ内のキー」。「録音と議事録」ウインドウの ⌘E 書き出し、⇧⌘M 議事録など)もあります。
  • エージェント・ショートカット・コマンドラインツールからは、これらのキーを読めず、変えられません。

コマンドラインツール(直販版)

直販版のみ。 Mac App Store 版には含まれません。

Web サイトから配布する直販版には、コマンドラインツール minutesago が同梱されています。上の 14 のツールと同じ操作を、ターミナルやスクリプトから実行できます。

  • 場所は /Applications/Minutes Ago.app/Contents/MacOS/minutesago です(アプリを別の場所に置いたときは、そのアプリの Contents/MacOS/minutesago)。
  • 「エージェント連携」をオンにしなくても使えます。受け付けるのは、この Mac の同じユーザーのプロセスからだけです。トークンは要りません。
  • ユーザー名(ホームフォルダの名前)が 17 バイト以上(UTF-8)の Mac では、接続口のパスが macOS の上限を超えるため、コマンドラインツールは使えません。そのときは、「設定 › エージェント」の「コマンドラインツール」の欄とツール自身がその旨を表示します。
  • Minutes Ago が起動していなければ、起動して待ちます(--no-launch を付けると起動しません)。
  • 無料の範囲と回数はエージェント連携と同じです(上)。
  • 出力の文面は英語だけです。

インストール

「設定 › エージェント」の「コマンドラインツール」の欄に、ツールのパスと次の 2 つのコマンドが出て、コピーできます。どちらか一方を実行します。

/usr/local/bin にリンクを作る(パスワードを求められます):

sudo ln -sf "/Applications/Minutes Ago.app/Contents/MacOS/minutesago" /usr/local/bin/minutesago

または、PATH にフォルダを足す(sudo なし):

echo 'export PATH="/Applications/Minutes Ago.app/Contents/MacOS:$PATH"' >> ~/.zshrc

新しいターミナルを開くと minutesago で呼べます。アプリがリンクや PATH を書き換えることはありません。コマンドの一覧は minutesago --help で表示されます。

サブコマンド

サブコマンド 対応するツール 内容
status get_buffer_status 残っている範囲、録音の状態、トラック、議事録のエンジンなど
transcript get_transcript 時刻付きの文字起こし
speakers get_speaker_transcript 話者付きの文字起こし。--format(markdown 既定 / json / text / vtt / srt)、--refresh(話者分離をやり直す)
export-audio export_audio 音声を書き出し先フォルダに書き、ファイルのパスを出力します。--format(m4a 既定 / wav)
minutes generate_minutes 議事録の Markdown(--track は受けません)
meeting start start_meeting ミーティングを開始します。--name、--screenshots <秒>(3 / 5 / 10 / 20 / 30 / 60。0 = なしが既定)、--app <bundle ID>(撮るアプリ。--screenshots が必要)、この会議だけの --language <BCP 47>・--audio-app <bundle ID か none>・--microphone <名前か none>・--preset <名前>
meeting stop stop_meeting ミーティングを終了して録音として保存します。--discard で保存せずに終了
meeting pause pause_meeting ミーティングを一時停止します。meeting resume まで何も録音せず、時計も止まります(無料)
meeting resume resume_meeting 一時停止中のミーティングを再開します(無料)
save save_recording まだ保存していない録音の範囲を録音として保存します(書き出し先フォルダではありません)。--last / --start / --end、--name、`–track both
list list_recordings 保存した録音の一覧を ID 付きで。--limit <n>(1〜200、既定 20)
show <id> get_recording 保存した録音 1 件の文字起こし。--format(markdown 既定 / text / json / vtt / srt)、--no-markers
marker add add_marker 今マーカーを付けます。--name
screenshot add add_screenshot ミーティングのアプリの画面写真を今撮り、保存したファイルの時刻とパスを出力します(画面写真ありのミーティング中、録音中だけ。無料)
mcp — stdio の MCP サーバーとして動きます(下の「Claude に登録する(コマンドラインツール経由)」)
version — 版を表示します

共通の引数:

  • --last <分> — 直近の分数(既定 30)。transcript・speakers・export-audio・minutes・save で使います。
  • --start <ISO 8601> と、任意の --end <ISO 8601> — 時間範囲。範囲の規則は上のツールと同じです。
  • --track both|microphone|app — トラック(既定 both)。
  • --json — 結果全体(content・structuredContent・isError)を JSON で出力します。
  • --no-launch — Minutes Ago が起動していないとき、起動せずに終わります(終了コード 3)。
  • --timeout <秒> — ツールの完了を待つ上限(既定 600)。議事録は範囲が長いと数分かかります。

既定では、ツールの結果のテキストを標準出力に、エラーの本文を標準エラー出力に書きます。改行で終わる出力(字幕・文字起こし)はそのまま書くので、> file.vtt でそのままのファイルになります。

例:

# 直近 30 分の文字起こし(マイクのみ。無料の範囲)
minutesago transcript --last 30 --track microphone

# 10:00〜11:00 の話者付きの文字起こしを JSON で
minutesago speakers --start 2026-10-01T10:00:00+09:00 --end 2026-10-01T11:00:00+09:00 --format json

# 直近 60 分の議事録をファイルに保存
minutesago minutes --last 60 > minutes.md

# この会議だけ英語・Teams・マイクなしでミーティングを開始し、終了して保存
minutesago meeting start --name "定例" --language en-US --audio-app com.microsoft.teams2 --microphone none
minutesago meeting stop

# 最近保存した録音の一覧と、そのうち 1 件を字幕で
minutesago list --limit 5
minutesago show <id> --format vtt > teirei.vtt

終了コード

スクリプトから結果を判定できるよう、終了コードは次のとおりです。

コード 意味
0 成功
1 ツールのエラー(範囲外、書き出し先フォルダが未設定、録音していない、画面写真ありのミーティングが無い、生成の失敗など。本文は標準エラー出力)
3 Minutes Ago に接続できない(起動できない、待ち時間切れ)
4 ライセンスが要る(お試しが残っていない)
5 範囲が無料の範囲(直近 30 分)の外(お試しが残っていない)
64 引数の誤り
70 内部のエラー(応答が読めないなど)
78 ユーザー名が長く、接続口(ソケット)のパスを作れない(上の 17 バイトの制限)

Claude に登録する(コマンドラインツール経由)

minutesago mcp を登録すると、「エージェント連携」をオンにせず、トークンも使わずに、Claude から 14 のツールを使えます。上の「Claude に登録する(直販版)」(HTTP)とは別の登録方法で、どちらか一方で足ります。Claude Code 用のコマンドは「設定 › エージェント」の「コマンドラインツール」の欄からコピーできます。

Claude Code:

claude mcp add minutes-ago -- "/Applications/Minutes Ago.app/Contents/MacOS/minutesago" mcp

Claude Desktop(claude_desktop_config.json の mcpServers):

{
  "mcpServers": {
    "minutes-ago": {
      "command": "/Applications/Minutes Ago.app/Contents/MacOS/minutesago",
      "args": ["mcp"]
    }
  }
}

Minutes Ago が起動していなければ、最初の呼び出しで起動します。

コマンドラインツールのアンインストール

  • リンクを作った場合: sudo rm /usr/local/bin/minutesago(リンクは sudo で作ったため、削除にも sudo が要ります)。
  • PATH に足した場合: ~/.zshrc から足した行を消します。

アプリを削除すると、リンクは切れて使えなくなります。