はじめに
こんにちは、KUDs です。
以前、以下の記事で、自作の Tampermonkey スクリプト「ChatGPT Timestamp Injector」を紹介しました。

今回、その後継にあたる正式なブラウザ拡張機能を新しく作りましたので、改めて3つの方法を紹介し直します。
先に断っておくと、旧スクリプトのコードをそのまま拡張機能に移植したわけではなく、ゼロから作り直した別プロダクトです。
開発の過程で色々と学びもあったので、後半では技術的な話も交えて紹介します。
本記事では、ChatGPTのチャットに日時を表示させる方法を3つ紹介します。
- 方法1: カスタム指示(プロンプト)で制御する
- 方法2: ブラウザ拡張機能を使う
- 方法3: Tampermonkey(旧スクリプト、非推奨)
方法1: カスタム指示(プロンプト)で制御する
ChatGPTには「ChatGPTをカスタマイズする」という設定があり、ここに「毎回の返信の最後に現在の日時を記載してください」のような指示を書いておくことで、ChatGPT自身に時刻を答えさせることができます。
インストール作業が一切不要で、アプリ版でも使えるのが強みです。
以前の記事でも触れている内容ですが、改めておさらいしましょう。
使用イメージ
まず、使用イメージは以下のような感じです。

上記画像では、会話の最後にタイムスタンプが追加されてますが、実際の時刻とのずれがひどいですね。
メリット・デメリット
- メリット
- ChatGPT 上で簡単に設定できる
- アプリ版でも使用できる
- デメリット
- 時刻ずれがひどい(上述の画像参照)
- 過去のメッセージには依然としてタイムスタンプは付かない(新規チャットからタイムスタンプ記録開始)
- 表記揺れの可能性あり
過去のやりとりの記録が見たいのに、過去のメッセージには反映されないのが最大の弱点です。
設定手順
まず、ChatGPT を開き、画面左のメニューから「ChatGPT をカスタマイズする」を選択

次に、「ChatGPT にどのような特徴を求めていますか?」にてタイムスタンプの記録を依頼します。

なお、上記画像のようにタイムスタンプの形式を指定することも可能です。
(YYYY-MM-DD hh:mm:ss Timezone 等)
最後に設定を保存すれば、それ以降の新しいチャットの会話でタイム
方法2: ブラウザ拡張機能を使う
方法1のやり方では、カスタマイズした後のメッセージには日時が表示されますが、カスタマイズ前のメッセージは日時がわからないままです。
私の場合、「過去メッセージの送受信日時を知りたい」が要件だったので、ブラウザ拡張機能「Timestamp Injector for ChatGPT」を開発し、公開しました。
Chrome・Firefox・Edge の主要3ブラウザに対応してます。
利用イメージ
以下のようなイメージです。

設定方法
Chrome
Chrome ウェブストアからインストールするだけで、特に設定も不要です。画面のリロードはしてください。

Firefox
Firefox Add-ons(AMO)からインストールできます。

Edge
Microsoft Edge アドオンストアからインストールできます。
GitHub(ソースコード)
ソースコードは GitHub 上で公開しています。
ストアを経由せず、git clone したソースを「パッケージ化されていない拡張機能を読み込む」から手動でインストールすることも可能です。

メリット・デメリット
メリット:
- 過去ログを含めて正確: ChatGPT内部のReactデータから直接時刻を取得するため正確。(方法1のような「推測」ではない)
- 通信不要: アクセストークンの取得やAPIコールが一切不要になったため、ネットワーク周りの不具合リスクが減りました。(以前のスクリプトでは API コールしてた。)
- 自動で全メッセージに付与される: 一度インストールすれば、以降は何もせずに全ての会話へ自動で適用されます。
- カスタマイズ性: 色・文字サイズ・日付フォーマットをポップアップから調整できます。
デメリット:
- React内部実装への依存:
__reactFiber$...やmemoizedPropsはReactの非公開な内部実装です。バックエンドAPIより不安定になり得る、ある種のワークアラウンドである点は否めません。ChatGPT側のReactバージョンアップやコンポーネント構造の変更で、予告なく壊れる可能性があります。
方法3: Tampermonkey(旧スクリプト、非推奨)
冒頭でも触れた通り、以前は自作のTampermonkeyスクリプト「ChatGPT Timestamp Injector」をGreasyforkで公開していました。

このスクリプトは今後アップデートされません。
方法2で紹介した正式な拡張機能に完全に置き換わっているため、これから導入する場合は拡張機能をご利用ください。
旧スクリプトの技術的な仕組み(アクセストークン取得+バックエンドAPI直接呼び出し)や当時のコード全文は、旧記事にまとめてありますので、興味のある方はそちらをご参照ください。
メリット・デメリット
メリット:
- ストア審査が不要: コードを書いたその場ですぐに試せる。
- 自由に改変できる: コード全体を自分の手元で管理可能。私の以前のスクリプト含め、世の中に転がっているさまざまなスクリプトを参考にカスタマイズできます。(ライセンスは確認しましょう)
デメリット:
- 専用の設定UIがない: 色やフォーマットを変えたい場合、スクリプトのコード自体を直接編集する必要があります。あるいは自分で設定用の画面要素を実装する必要があります。
- Tampermonkey等のインストールが別途必要: 当然ですが、ユーザースクリプトマネージャーの導入が前提になります。
さいごに
ChatGPTのチャットに日時を表示させる3つの方法を紹介しました。
お勧めな使い分けは以下です。
- スマホしか利用しない方 → 方法1: カスタム指示
- PC メインで利用する方、過去メッセージ含め正確な時刻を自動で表示させたい方 → 方法2: ブラウザ拡張機能
- 過去のTampermonkeyスクリプトを使っていた方 → 方法2への移行をおすすめします
現時点では、方法2の拡張機能が最もおすすめです。
旧スクリプトをお使いの方は、今後のアップデートがないことも踏まえ、ぜひ拡張機能への切り替えをご検討ください。


コメント