# ASA for ChatGPT

Version: 1.0.5.14

ChatGPT の会話を保存するツールです。ウィジェットのアイコンをクリックすると、Chrome 上の会話を HTML / md / txt / PDF に保存できます。

ASA は機能の一部に Chrome 拡張連携を使います。拡張は Chrome ウェブストアから入手します（セットアップの途中でストアのページが開きます）。

サービス側の仕様変更により、予告なく動作しなくなる場合があります。利用にあたっては ChatGPT（OpenAI）の利用規約をご確認ください。

## 無料版と有料版

本ソフトウェアには、無料版（フリーソフト）と有料版があります。ウィンドウのタイトルが `[FREE]` で始まっていれば無料版です。

- 無料版（フリーソフト）: 使用期間・保存回数の制限はありません。保存できる形式は HTML のみ、ファイル名に使えるタグは 3 個まで、オートリカバリー（閉じた後からの保存）とチャットの種類ごとのフォルダ分けは使えません
- 有料版: 保存形式は HTML / Markdown / テキスト / PDF、タグは 50 個まで、オートリカバリーとフォルダ分けが使えます。買い切り 1,480 円で、月額料金はありません

購入: BOOTH（日本国内向け） / Lemon Squeezy（海外向け）

## 要件

- Windows 10/11
- Google Chrome

## インストール

1. ダウンロードした ZIP を任意の場所に展開する（フォルダ名にはバージョンが入ります。例: `ChatGPT_ASA_v1.0`）
2. 展開してできたフォルダ直下の `Setup_ChatGPT_ASA.vbs` をダブルクリック
3. 画面の案内に従って進める（Chrome 拡張機能と連携するための設定を登録します。インターネット接続は不要です）
4. セットアップ完了後、案内に従って Chrome ウェブストアの拡張ページが開きます。「Chrome に追加」で拡張を導入してください

> 拡張は Chrome ウェブストアからの導入が標準 です。ストアから入手できない場合のフォールバックとして、同梱の `chatgpt_extension` フォルダを手動で読み込む方法も用意しています。

## アップグレード・再インストール

1. 新しい ZIP を、今お使いのフォルダの中ではなく、その1つ上の階層に展開してください。フォルダ名にバージョンが入るため、古いバージョンと並んで置かれます
2. 展開してできたフォルダ直下の `Setup_ChatGPT_ASA.vbs` を必ず実行してください。実行し忘れると、ウィジェットが反応しなくなることがあります
3. セットアップの完了画面に、登録したバージョンと場所が表示されます。意図したものになっているか確認してください。拡張機能は入れ直す必要がないので、「いいえ」を選んで終了できます
4. 古いバージョンのフォルダを削除する前に、保存した会話がその中に入っていないか確認してください（次項）

設定は引き継がれます。 タグや保存先などの設定はアプリのフォルダの外に保存されているため、バージョンを入れ替えても消えません。現在動作しているバージョンは、環境設定パネルの「通知」欄で確認できます。

保存した会話も残ります。 バージョン 1.0.5.9 以降、会話の保存先の既定はアプリのフォルダの外（同じ階層）です。アプリのフォルダを入れ替えても消えません。

### 古いフォルダを削除する前に確認してください

バージョン 1.0.5.9 より前は、会話の保存先の既定がアプリのフォルダの中（`<展開したフォルダ>\ChatGPT_ASA_Log\`）でした。保存先をご自分で指定していて、その場所がアプリのフォルダの中になっている場合もあります。

そのまま古いフォルダを削除すると、保存した会話も一緒に消えます。

削除する前に、古いフォルダの中を開いて確認してください。

- `ChatGPT_ASA_Log`（またはご自分で指定した保存先のフォルダ）が古いフォルダの中にある場合は、そのフォルダを1つ上の階層へ移動してから、古いフォルダを削除してください。1つ上が新しい既定の場所なので、移動するだけでそのまま引き継がれます
- 保存先をご自分で指定している場合は、移動後に環境設定パネルの「チャットログ保存先」を新しい場所に設定し直してください。設定は引き継がれるため、移動しただけでは消えたフォルダを指したままになります
- 中に入っていなければ、そのまま削除してかまいません

## 更新確認

環境設定パネルで「起動時に新しいバージョンがあれば通知する」を有効にすると、起動時に外部サイト（GitHub）に接続し、最新バージョン情報を取得します。既定は OFF です。この確認では GitHub に接続して最新バージョン番号を取得するのみで、会話内容などのデータは一切送信しません。

## 起動方法

ChatGPT の画面に追加されるウィジェットには、次のボタンがあります。

ボタン | 名称 | 機能
--- | --- | ---
⬇ | 保存 | クリックで ASA が会話を保存します
🛠 | 設定 | 環境設定パネルを開きます
⦿ | キャプチャモード | スクロールに追従して会話を集めて保存します（後述）
★ | 最前面固定 | 各種ダイアログを常に最前面に固定します（★=ON／☆=OFF、既定は ON）

会話画面内に ASA のウィジェットが表示されないことがあります。そのようなときは、Chrome 上部に固定した ASA のアイコンからも保存を実行できます。

## 使い方

1. Chrome で ChatGPT を開く
2. 保存したい会話を表示する
3. ウィジェットの ⬇（保存）をクリックすると会話が保存されます（タイトル確認ダイアログを ON にしている場合は 4 へ）
4. タイトル確認ダイアログでは、タイトルの編集やタグの選択ができます。OK を押すと会話が保存されます

共有リンクで開いた会話（`/share/` のページ）も、同じ手順でそのまま保存できます。画像やグラフなどの内容も含めて保存されます。

### キャプチャモード

ウィジェットの ⦿（キャプチャモード）をクリックすると有効になります。画面のスクロールに追従しながら会話の内容を集め、1 本の会話としてつなぎ直して保存するモードです。主にオートリカバリー機能を利用する際に使用します。

### オートリカバリー

> ※ この機能は、設定で ON にしたうえで、キャプチャモード中のみ動作します。

- 保存しないままアプリや Chrome を閉じてしまっても、この機能が動作中のみ、ASA は会話内容を一時的に控えます
- 次回の起動時に未保存の会話が見つかると、保存するかどうかを確認するダイアログが表示されます
- 設定パネルにあるオートリカバリーの詳細設定を開くと、起動時以外でもいつでも未保存の会話を確認して保存できます
- 復元した会話は、通常の保存と同じ形式・保存先に保存されます
- ダイアログのキャンセルボタンを押した場合、ASA が控えていた会話データはそのまま破棄されます。ご注意ください

一時チャットなど、一度会話を閉じてしまうと永遠に失われてしまうような状況での利用を想定しています。会話のスタート時に起動しておくことを推奨しますが、会話が進んだ後の起動でも、会話の冒頭まで画面をスクロールすることで全文を取得できます。

## 保存仕様

項目 | 既定値
--- | ---
保存先 | 展開したフォルダと同じ階層にある `ChatGPT_ASA_Log/`（アプリのフォルダの外。バージョンを入れ替えても場所が変わりません）
出力形式 | `html` のみ（設定で md / txt / pdf を追加可）
形式別保存先 | 各形式ごとに個別設定可能。未指定時は共通保存先を使います
サブフォルダ | 既定で形式ごと（`html/` `md/` `txt/` `pdf/`）。設定で形式別に ON/OFF 可
エラーログ | アプリフォルダ内 `info_log/`
ウィンドウ位置 | 前回の位置・サイズを記憶して復元

保存先まわりの仕様:

- 共通保存先は設定の「チャットログ保存先」で変更できます
- HTML / md / txt / PDF は、それぞれ個別の保存先を設定できます（出力詳細）
- 個別保存先を空欄にすると、共通保存先が使われます
- 形式別サブフォルダは既定で有効です。必要なら形式ごとに無効化できます
- プロジェクト名サブフォルダを有効にしている場合は、その配下へ振り分けられます
- 一時チャット専用サブフォルダを有効にしている場合は、その配下へ振り分けられます
- グループチャット専用サブフォルダを有効にしている場合は、その配下へ振り分けられます

> 保存先をアプリのフォルダの中に指定することは推奨しません。 バージョンを入れ替えるときに古いフォルダを削除すると、保存した会話も一緒に消えます。既定の保存先（アプリのフォルダと同じ階層の `ChatGPT_ASA_Log/`）か、ドキュメントフォルダなど、アプリとは無関係の場所をおすすめします。

> どうしてもアプリのフォルダの中に置く場合は、アップデートのたびに、古いフォルダを削除する前に保存先のフォルダを外へ移動し、移動後の場所を設定し直してください。

ファイル名は設定の「タイトル構成」で選んだパーツを並べて生成します。
日付 / 時刻フォーマット（`年-月-日` など）や区切り文字も設定で変更可能です（詳細設定）。
各要素はチェックをつけた順に左から並びます。

- タイトル確認ダイアログで、その場でタイトルを編集できます
- 一時チャットでも会話が始まっていれば保存できます
- 本文の URL 欄は通常チャットでは実 URL を保存し、一時チャットでは URL が保持されないため `一時チャットのため再オープン不可` と記録します
- グループチャットも保存できます（専用サブフォルダへ振り分ける設定もあります）
- md / txt 形式では、ChatGPT が生成した画像などの添付コンテンツは保存されません

## タグ管理

ファイル名にタグ（ラベル）を付加できます。

- 設定パネルの「タグ管理」セクションを開き、「追加タグ」欄にタグ名を入力して Enter を押します
- 登録できるタグは最大 50 個です
- 各タグのチェックをオン / オフして、有効 / 無効を切り替えます
- 「削除」ボタンで削除モードにした後、タグ横の × をクリックすると削除されます
- 「先頭 / 末尾」の設定で、タイトルのどちら側に付くかを変更できます

## 復旧ツール

### ダイアログ位置リセット

ダイアログが画面外に出て操作できなくなったときに使います。

- 実行: `Reset_Dialog_Positions.vbs` をダブルクリック

このツールはアプリフォルダ直下にあります。

## お問い合わせ・不具合報告

不具合のご報告・ご質問は、メールでお願いします。

- メール: dialoguevolts@gmail.com （作者: jellycotton）
- 製品ページ: https://jellycotton.github.io/AI-Session-Archiver/ja/

ご要望・ご意見は、Chrome のツールバーに固定した拡張機能アイコンをクリックすると開く報告フォームからもお送りいただけます。
（会話を保存するページ内のウィジェットとは別のアイコンです。フォームには返信先を書く欄がないため、お返事が必要な場合はメールをご利用ください。）

- 画像やグラフなどが保存されない場合は、その会話の共有リンクを一緒に送っていただけると、原因の特定と解決に大きく役立ちます。
- プライバシーが気になる場合は、実際の会話そのものでなくても構いません。同じ症状を再現した報告用の単発の会話の共有リンクでも、調査には十分です。

## 既知の問題

- 異なる解像度のモニタが混在するマルチモニタ環境で、ダイアログを別モニタへ移動するとレイアウトが崩れる場合があります。現行バージョンではプライマリモニタでの使用を推奨します。
- 会話のタイトルに複数の絵文字を含めた場合、使用ライブラリの制限により、タイトル確認ダイアログでの表示が崩れる場合があります。保存される実際のタイトルや出力ファイル（PDF / HTML / Markdown / テキスト）には影響しません。

## アンインストール

通常（設定と保存した会話を残す場合）
1. ASA for ChatGPT と Chrome を終了
2. 展開したフォルダ（例: `ChatGPT_ASA_v1.0`）を削除
3. Chrome から拡張機能「ASA Bridge for ChatGPT」を削除

保存した会話（`ChatGPT_ASA_Log/`）はアプリのフォルダの外にあるため、この手順では消えません。設定も残ります。

完全初期化（すべて削除する場合）
上記に加えて、次を削除してください。

- Chrome 拡張との連携登録を解除（任意）
  フォルダを削除する前に行う場合は、展開したフォルダ内の `App` フォルダで PowerShell を開き、次を実行します
  `powershell -ExecutionPolicy Bypass -File .\Setup.ps1 -Uninstall`
  すでにフォルダを削除した後でも、この登録が残るだけで害はありません。ASA を入れ直せば上書きされます
- `%LOCALAPPDATA%\ChatGPT_ASA\` フォルダを削除
  例: `C:\Users\<ユーザー名>\AppData\Local\ChatGPT_ASA`
  （設定ファイル・一時保存バッファ・拡張連携情報などが含まれます）
- `%APPDATA%\ChatGPT_ASA\` フォルダがあれば削除
  例: `C:\Users\<ユーザー名>\AppData\Roaming\ChatGPT_ASA`
  （古いバージョンを使っていた場合にのみ存在します）
- 保存した会話が不要な場合は、`ChatGPT_ASA_Log/` フォルダも削除してください

## 著作権・利用規約

© 2026 Dialogue & Volts

- 本ソフトウェアの著作権は Dialogue & Volts に帰属します
- 無料版・有料版とも、導入されたご本人の利用の範囲でご使用いただけます
- 再配布・再販売・改変版の配布を禁止します
- 本ソフトウェアは現状有姿で提供され、動作を保証しません
- 本ソフトウェアの使用により生じたいかなる損害についても、作者は責任を負いません
- 連携先 AI サービスの仕様変更等により、予告なく動作しなくなる場合があります

本製品は次のオープンソースソフトウェアを使用しています：reportlab / ttkbootstrap / Markdown / Python / Tcl-Tk。各ライセンスは同梱の `OSS_LICENSES.txt` をご覧ください。

# ASA for ChatGPT (English)

Version: 1.0.5.14

A tool to save ChatGPT conversations. Click the widget's icon to export conversations in Chrome to HTML / md / txt / PDF.

ASA uses Chrome extension integration for part of its functionality. The extension is installed from the Chrome Web Store (the store page opens during setup).

This tool may stop working without notice due to service-side changes. Users are responsible for complying with ChatGPT (OpenAI) Terms of Service.

## Free and Paid Editions

This software comes in a Free Edition (freeware) and a Paid Edition. If the window title starts with `[FREE]`, you are running the Free Edition.

- Free Edition (freeware): no time limit and no cap on the number of saves. Saves in HTML only, up to 3 filename tags; Auto Recovery (saving after the page is closed) and per-chat-type subfolders are not available
- Paid Edition: saves in HTML / Markdown / text / PDF, up to 50 tags, with Auto Recovery and per-chat-type subfolders. One-time purchase, no subscription

Purchase: Lemon Squeezy / BOOTH (Japan)

## Requirements

- Windows 10/11
- Google Chrome

## Installation

1. Extract the downloaded ZIP to any location (the folder name includes the version, e.g. `ChatGPT_ASA_v1.0`)
2. Double-click `Setup_ChatGPT_ASA.vbs` in the root of the extracted folder
3. Follow the on-screen instructions (this registers the link with the Chrome extension; no internet connection is needed)
4. After setup, the Chrome Web Store page for the extension opens. Click "Add to Chrome" to install it

> The extension is installed from the Chrome Web Store by default. As a fallback when the store is unavailable, you can also load the bundled `chatgpt_extension` folder manually.

## Upgrading / Reinstalling

1. Extract the new ZIP next to your current folder, not inside it. Because the folder name contains the version, the new version sits alongside the old one
2. Always run `Setup_ChatGPT_ASA.vbs` in the root of the newly extracted folder. Skipping this can leave the widget unresponsive
3. The setup completion screen shows which version was registered and where. Check that it matches what you intended. The extension does not need reinstalling, so you can choose No to finish
4. Before deleting the old version's folder, check whether your saved conversations are inside it (see below)

Your settings are carried over. Tags, save locations and other settings are stored outside the app folder, so replacing the version does not clear them. The version currently running is shown in the "Notifications" area of the settings panel.

Your saved conversations stay too. From version 1.0.5.9 on, the default save location is outside the app folder (one level up), so replacing the app folder does not remove them.

### Check this before deleting the old folder

Before version 1.0.5.9, the default save location was inside the app folder (`<extracted folder>\ChatGPT_ASA_Log\`). You may also have chosen a save location of your own that happens to be inside the app folder.

If so, deleting the old folder deletes your saved conversations with it.

Open the old folder and check before you delete it.

- If `ChatGPT_ASA_Log` (or the save folder you chose yourself) is inside the old folder, move that folder one level up first, then delete the old folder. One level up is the new default location, so moving it is all you need
- If you chose the save location yourself, update "Chat log save location" in the settings panel to the new path after moving it. Settings are carried over, so moving the folder alone leaves the setting pointing at a deleted path
- If nothing is inside, you can simply delete it

## Update Check

Enabling "Notify me at startup if a new version is available" in the settings panel connects to an external site (GitHub) at launch to fetch the latest version info. Default is OFF. This check only contacts GitHub to read the latest version number — it never sends your conversations or any other data.

## Launching

The widget added to the ChatGPT screen has the following buttons:

Button | Name | Function
--- | --- | ---
⬇ | Save | Click and ASA saves the conversation
🛠 | Settings | Opens the settings panel
⦿ | Capture mode | Follows the scroll to collect and save the conversation (described below)
★ | Keep on top | Keeps dialogs always on top (★=ON / ☆=OFF, default ON)

The ASA widget may not appear inside the conversation screen. In such cases, you can also run Save from the ASA icon pinned at the top of Chrome.

## Usage

1. Open ChatGPT in Chrome
2. Open the conversation you want to save
3. Click the widget's ⬇ (Save) and the conversation is saved (if you have enabled the title confirmation dialog, go to 4)
4. In the title confirmation dialog you can edit the title and select tags. Press OK to save the conversation

Conversations opened from a share link (`/share/` pages) can also be saved with the same steps, including images and charts.

### Capture Mode

Click the widget's ⦿ (Capture mode) to enable it. It follows the on-screen scroll to collect the conversation content and stitches it back into a single conversation. It is mainly used together with the Auto Recovery feature.

### Auto Recovery

> Note: This feature works only when it is enabled in settings and while capture mode is active.

- Even if you close the app or Chrome without saving, ASA keeps the conversation content (only while this feature is active)
- On the next launch, if an unsaved conversation is found, a dialog asks whether you want to save it
- Opening the Auto Recovery detail settings in the Settings panel lets you check for and save unsaved conversations at any time, not just at launch
- Recovered conversations are saved in the same formats and locations as a normal save
- If you press Cancel in the dialog, the conversation data that ASA was holding is simply discarded. Please be careful

It is intended for situations where a conversation would be lost forever once closed, such as temporary chats. We recommend starting it at the beginning of a conversation, but even if you start it after the conversation has progressed, you can capture the full text by scrolling up to the start of the conversation.

## Save Behavior

Item | Default
--- | ---
Save location | `ChatGPT_ASA_Log/` next to the extracted folder (outside the app folder, so it stays put across version changes)
Output formats | `html` only (add md / txt / pdf in settings)
Per-format save location | Configurable for each format. If blank, the shared save location is used
Subfolders | Per format by default (`html/` `md/` `txt/` `pdf/`), configurable per format
Error log | `info_log/` inside the app folder
Window position | Remembered and restored from last session

Save destination behavior:

- The shared save location can be changed in the Settings panel
- HTML / md / txt / PDF can each use their own save directory (Output Details)
- If a format-specific directory is left blank, the shared save location is used
- Per-format subfolders are enabled by default and can be disabled individually
- If the project-name subfolder option is enabled, files are routed under that subfolder as well
- If the temporary-chat subfolder option is enabled, files are routed under that subfolder as well
- If the group-chat subfolder option is enabled, files are routed under that subfolder as well

> Setting the save location inside the app folder is not recommended. When you upgrade and delete the old folder, your saved conversations go with it. Prefer the default (`ChatGPT_ASA_Log/` next to the app folder) or somewhere unrelated to the app, such as your Documents folder.

> If you do keep it inside the app folder, then on every update you must move that folder out before deleting the old one, and update the setting to point at its new location.

Filenames are generated from parts selected in "Title Configuration".
Date / time format (`Yr-Mo-Day` etc.) and separator are also configurable (Details).
Parts are arranged left-to-right in the order they were checked.

- The title can be edited directly in the confirmation dialog before saving
- Temporary chats can also be saved as long as the conversation has already started
- In the body header, normal chats keep the real URL, while temporary chats record `Temporary chat: cannot reopen` because a reusable URL is not preserved
- Group chats can also be saved (with an optional dedicated subfolder setting)
- In md / txt formats, generated images and other attached content from ChatGPT are not saved

## Tag Management

You can attach tags (labels) to filenames.

- In the Settings panel, go to the Tag Management section → type a tag name in the Add Tag field and press Enter
- You can register up to 50 tags
- Check/uncheck each tag to enable/disable it
- Press the Delete button to enter delete mode, then click × next to a tag to remove it
- Use the Prefix / Suffix setting to control which side of the title the tags appear on

## Recovery Tools

### Dialog Position Reset

Use this when the dialog moves off-screen and becomes inaccessible.

- Run: double-click `Reset_Dialog_Positions.vbs`

This tool is located in the app folder root.

## Feedback & Bug Reports

For bug reports and questions, please contact the author by email.

- Email: dialoguevolts@gmail.com (author: jellycotton)
- Product page: https://jellycotton.github.io/AI-Session-Archiver/

Requests and suggestions can also be sent through the report form, which opens when you click the extension icon pinned to the Chrome toolbar.
(This is a different icon from the in-page widget used to save conversations. The form has no field for a reply address, so please use email if you need a reply.)

- If images, charts, or similar content are not being saved, sending the share link of that conversation along with your report greatly helps us identify and fix the cause.
- If privacy is a concern, it does not have to be the actual conversation. A conversation created specifically to reproduce the same symptom for your report is enough for investigation.

## Known Issues

- In a multi-monitor setup with mixed resolutions, moving dialogs to a different monitor may cause layout issues. Using on the primary monitor is recommended in the current version.
- If a conversation title contains multiple emoji, the title confirmation dialog may display them incorrectly due to a limitation of the library used. The actual saved title and output files (PDF / HTML / Markdown / text) are not affected.

## Uninstall

Normal (keep settings and saved conversations)
1. Close ASA for ChatGPT and Chrome
2. Delete the extracted folder (e.g. `ChatGPT_ASA_v1.0`)
3. Remove the "ASA Bridge for ChatGPT" extension from Chrome

Your saved conversations (`ChatGPT_ASA_Log/`) live outside the app folder, so these steps do not delete them. Your settings are kept as well.

Full reset (delete everything)
In addition to the above, delete the following.

- Unregister the Chrome extension bridge (optional)
  To do this before deleting the folder, open PowerShell in the `App` folder inside the extracted folder and run
  `powershell -ExecutionPolicy Bypass -File .\Setup.ps1 -Uninstall`
  If you already deleted the folder, the registration simply remains behind and is harmless. Reinstalling ASA overwrites it
- Delete the `%LOCALAPPDATA%\ChatGPT_ASA\` folder
  Example: `C:\Users\<your-user-name>\AppData\Local\ChatGPT_ASA`
  (includes settings, the temporary recovery buffer, and extension-bridge data)
- Delete the `%APPDATA%\ChatGPT_ASA\` folder if it exists
  Example: `C:\Users\<your-user-name>\AppData\Roaming\ChatGPT_ASA`
  (only present if you used an older version)
- If you no longer need your saved conversations, delete the `ChatGPT_ASA_Log/` folder as well

## Copyright & Terms

© 2026 Dialogue & Volts

- Copyright of this software belongs to Dialogue & Volts.
- Both the Free and Paid Editions are licensed for personal use by the person who installed the software.
- Redistribution, resale, and distribution of modified versions are prohibited.
- This software is provided "as is" without warranty of any kind.
- The author is not liable for any damages arising from use of this software.
- It may stop working without notice due to changes in the connected AI service.

This product uses the following open-source software: reportlab / ttkbootstrap / Markdown / Python / Tcl-Tk. See the bundled `OSS_LICENSES.txt` for their licenses.