OpenCodeAppの使用方法について詳しく説明します。
# デバッグビルドで実行
swift run
# またはビルド済みの実行ファイルを実行
./.build/arm64-apple-macosx/debug/OpenCodeApp# リリースビルド
swift build -c release
# 実行
./.build/arm64-apple-macosx/release/OpenCodeApp# バックグラウンドで実行
./.build/arm64-apple-macosx/debug/OpenCodeApp &
# プロセスIDを確認
echo $!# プロセスIDを使用して停止
kill <PID>
# または名前で停止
pkill OpenCodeApp
# 強制終了
kill -9 <PID>起動すると、メニューバーにアイコンが表示されます:
- アイコン: macOSウィンドウアイコン 🪟
- 位置: メニューバーの右側(システム時計の近く)
- メニューバーのアイコンをクリック
- ポップアップが開きます
- ポップアップの外側をクリック
- または再度メニューバーアイコンをクリック
ポップアップは以下のセクションで構成されています:
┌─────────────────────────────────┐
│ ヘッダー │
│ OpenCode [アクティブ] │
├─────────────────────────────────┤
│ │
│ メッセージ表示エリア │
│ (スクロール可能) │
│ │
│ [ユーザーメッセージ] │
│ [アシスタントメッセージ] │
│ │
├─────────────────────────────────┤
│ エラーメッセージ (エラー時) │
├─────────────────────────────────┤
│ 入力エリア │
│ [テキスト入力] [送信] [📷] │
│ │
│ [セッション作成] [クリア] │
└─────────────────────────────────┘
- 「セッション作成」ボタンをクリック
- 新しいセッションが作成されます
- ヘッダーのステータスが「非アクティブ」→「アクティブ」に変わります
- チャット履歴がクリアされます
ヘッダーのステータスでセッション状態を確認できます:
- アクティブ: セッションが有効
- 非アクティブ: セッションが存在しない
- 「クリア」ボタンをクリック
- 現在のセッションが終了します
- チャット履歴がクリアされます
- 新しいセッションを作成するには「セッション作成」をクリック
- テキストフィールドにメッセージを入力
- Enterキーを押すか「送信」ボタンをクリック
- メッセージがOpenCode APIに送信されます
送信されたメッセージとレスポンスは以下のように表示されます:
ユーザーメッセージ:
- 右側に青いバブルで表示
- 送信時刻が表示されます
アシスタントメッセージ:
- 左側に灰色のバブルで表示
- 受信時刻が表示されます
メッセージが増えるとスクロールバーが表示されます:
- マウススクロールで上下にスクロール
- 最新のメッセージが下に表示されます
- Shiftキーを押しながらマウスをドラッグ
- 矩形範囲を選択
- マウスを離すとスクリーンショットが取得され、入力ランチャーが開きます
入力ランチャーで以下の手順で送信します:
- スクリーンショットが添付された状態で表示されます
- 必要に応じてテキストを入力します(テキストなしでも送信可能)
- Enterキーまたは「送信」ボタンをクリック
- 会話ログに結果が追加されます
エラーが発生した場合、入力エリアの上部に赤いテキストでエラーメッセージが表示されます。
原因: セッションを作成せずにメッセージを送信しようとした
対処法:
- 「セッション作成」ボタンをクリック
- セッションが作成された後にメッセージを送信
原因: APIキーが無効または期限切れ
対処法:
.config.jsonのAPIキーを確認- APIキーが有効か確認
- 必要であれば新しいAPIキーを取得
原因: OpenCode APIサーバーでの問題
対処法:
- インターネット接続を確認
- OpenCode APIのステータスを確認
- しばらく待ってから再試行
原因: スクリーンショット取得時のエラー
対処法:
- メイン画面が接続されているか確認
- macOSのプライバシー設定を確認
- アプリケーションを再起動
- アプリケーションを起動
- メニューバーアイコンをクリック
- 「セッション作成」をクリック
- テキストフィールドにメッセージを入力
- Enterキーを押して送信
- レスポンスを確認
- アプリケーションを起動
- Shift+マウスドラッグで矩形範囲を選択
- 入力ランチャーが開いたら必要に応じてテキストを入力
- 送信してレスポンスを確認
- アプリケーションを起動
- 問題のある画面を表示
- Shift+マウスドラッグで矩形範囲を選択
- 入力ランチャーで問題を説明して送信(テキストなしでも送信可)
- 解決策を確認
以下のショートカットはアプリ全体で利用可能です:
- Cmd+Shift+O: チャットウィンドウの表示/非表示切り替え
- Cmd+Shift+I: 入力ランチャーを表示
- Shift+マウスドラッグ: 矩形選択スクリーンショット(入力ランチャーに添付)
- ESC: 選択キャンセル
- Enter: メッセージの送信
- Tab: 入力フィールド間の移動
- Cmd+O: チャットウィンドウを表示
- Cmd+I: 入力ランチャーを表示
- Cmd+Q: 終了
フローティングチャットウィンドウは、独立したチャットインターフェースを提供します。
- サイズ: 初期サイズは340x600ピクセル
- リサイズ可能: ウィンドウの端をドラッグしてサイズ変更可能
- 配置: 画面左側に配置
- レベル: フローティングレベルで最前面に表示
- 表示方法:
- メニューバーをクリックして「チャットウィンドウを表示」を選択
- グローバルショートカット
Cmd+Shift+Oを使用
- 非表示方法: ウィンドウを閉じるボタンをクリック、または再度
Cmd+Shift+Oを押下
- 長いチャットセッション中にメニューバーのポップアップが閉じてしまう場合
- 複数のアプリを同時に操作しながらチャットを継続する場合
- 画面スペースを確保しながらチャットを表示する場合
入力ランチャーは、クイックメッセージ送信用の簡易ウィンドウです。
- サイズ: 560x320ピクセル
- 配置: 画面中央に表示
- 動作:
- メッセージ送信後、自動的にクローズ
- キャンセルボタンまたはEscキーでクローズ
- 表示時にテキストフィールドに自動フォーカス
- セッション未作成でも自動作成して送信
- スクリーンショット添付時はテキストなしでも送信可能
- 表示方法:
- メニューバーをクリックして「入力ランチャーを表示」を選択
- グローバルショートカット
Cmd+Shift+Iを使用
- 短いメッセージを素早く送信したい場合
- チャット履歴を見る必要がない場合
- 他の作業を中断せずに素早く質問したい場合
入力ランチャーとチャットウィンドウは排他的に動作します:
- 入力ランチャーを表示すると、チャットウィンドウが自動的に非表示になります
- チャットウィンドウを表示すると、入力ランチャーが自動的に非表示になります
メニューバーアイコンをクリックすることで、以下の機能にアクセスできます:
-
チャットウィンドウを表示 (Cmd+O)
- フローティングチャットウィンドウを表示します
- 既に表示されている場合は前面に表示されます
-
入力ランチャーを表示 (Cmd+I)
- 入力ランチャーウィンドウを表示します
- 画面中央に簡易入力ウィンドウが表示されます
-
再起動
- アプリケーションを再起動します
- 設定ファイルの変更を反映させる場合などに使用
-
終了 (Cmd+Q)
- アプリケーションを終了します
- すべてのウィンドウが閉じられます
- セッションの目的を明確に: 最初のメッセージで目的を明確に伝える
- スクリーンショットを活用: 視覚的な情報を含めると回答の精度が向上
- 具体的な質問: 曖昧な質問は避け、具体的にする
- 古いセッションのクリア: メッセージが多くなるとパフォーマンスが低下
- 定期的な再起動: 長時間の使用後はアプリケーションを再起動
- アプリケーションを強制終了
- 再起動
- 問題が続く場合は、
.config.jsonを確認
- セッションが作成されているか確認
- インターネット接続を確認
- APIキーが有効か確認
- 画面の解像度を確認
- 複数ディスプレイの場合、メイン画面を確認
- アプリケーションを再起動
ログファイルは以下のパスに保存されます:
~/github/chrome-to-opencode/opencode_app.log
ログには以下の情報が含まれます:
- アプリケーション初期化のステータス
- API通信の詳細
- ウィンドウ操作のログ
- エラーメッセージとスタックトレース
# 最新のログを表示
tail -50 ~/github/chrome-to-opencode/opencode_app.log
# ログを監視
tail -f ~/github/chrome-to-opencode/opencode_app.logデバッグ情報を表示して実行:
swift runまたはビルド済みの実行ファイル:
./.build/arm64-apple-macosx/debug/OpenCodeMenuAppバグを報告する場合、以下の情報を含めてください:
- macOSのバージョン
- アプリケーションのバージョン
- エラーメッセージ
- 再現手順
- ログファイル
使用方法を理解したら: