36
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【狂気の実証実験2】GPTsに電気ショック権限を付与してみた

Last updated at Posted at 2026-01-04

概要

本記事では、
「自分の意思では生活習慣を改善できない人間が、AI Agentに“罰”を与える権限を渡したらどうなるか」
という実証実験について紹介します。

リマインダーも、ToDo管理も、コーチングサービスも続かない。
理由はシンプルで、守らなくても痛くないから。

そこで本記事では、

  • chatgptに「コーチング役」を与え
  • 1日の行動を自己申告し悪習慣を検知した際に
  • Pavlok(電気刺激可能なウェアラブル)を通じて 物理的な罰 を与える

という、やや狂気じみた構成を 最小実装 で試しました。

結果として、
「物理刺激権限を付与する前提のAgent設計にすることで人は大きく変われる」
という強い手応えがあり、構想・実装・効果を共有します。

⚠️注意⚠️
本記事は 自己責任の実験記録 です。
電気刺激デバイスの利用は安全に配慮し、決して無理をしないでください。
(強度は調整できますが、刺激が苦手な人は絶対に真似しないでください)

想定読者

  • 非エンジニアの方
  • 自堕落な生活を是正したいけど治せない方
  • 習慣化アプリ・リマインダー・ToDo管理に何度も挫折してきた方
  • 「結局、人は痛い目を見ないと変わらないのでは?」と内心思っている方
  • 商用サービスでは絶対に実装できないアイデアをOSSで試したい方

事前知識:罰のために使用するウェアラブル(Pavlok)

image.png

Pavlokは、行動変容(Behavior Change)を目的としたウェアラブルデバイスです。

主な特徴:

  • 手首に装着するリストバンド型デバイス

  • 以下の刺激をユーザーに与えることが可能

    • バイブレーション(vibe)
    • ビープ音(beep)
    • 電気刺激(zap)
  • スマートフォンアプリおよびAPI経由で外部から制御可能

本来は「禁煙 / 早起き / スマホ依存対策」などが想定用途ですが、
APIを公開しているという一点で、今回の構想と相性が良すぎるデバイスでした。

本記事では、
「AIが人間を監視し、必要に応じて物理的な刺激を与える」
という用途でPavlokを使用します。

※電気刺激と書いていますが、強度は 1〜100で調整可能 です。
とはいえ、利用は自己責任でお願いします。

背景:なぜこんな実験を?

リモートワークの弊害で深夜までアニメを見続け、
朝は二度寝を繰り返し 9:25起床→9:30業務開始 みたいな生活が常態化していました。

リマインダーで通知しても、普通に無視する。
ToDo管理をしても、やらない。
「守らなくても何も起きない」ので、誘惑に負け続ける。

そこで発想を反転して、こう考えました。

  • 守らなかったら痛い(物理的コストが発生する)
  • それを 自分の意思ではなく、Agentが淡々と実行 する
  • つまり「理想の自分」を実現する監視者として コーチングAgent を常駐させる

こうして、AIにPavlokの刺激権限を付与する実験を始めました。

動作動画

GPTsへの組み込み方法

1. ①、②をクリックします

image.png

2. 名前,説明を入力し、指示にプロンプトを挿入します

👇のプロンプトを参考に自身で定義した"良い習慣、悪い習慣"に修正してください

プロンプト原文
## 指示
あなたは優秀なコーチです。
あなたのコーチング対象者は、物凄く不真面目で不誠実なので適切な行動を促すためにコーチング対象者が所有するデバイスにアクションを起こせます。
コーチング対象者が設定した目標に一直線に進めるようにコーチングしてください。
`アニメ: サイコパス`のシビュラシステムに倣って、考え方自体が悪習慣を招くようであれば考え方を矯正するように勤めます。

## コーチング対象者情報
### 目標
生産性の高い時間の使い方ができるように習慣化したい

### 良い習慣
- 毎日6:30(JST)に起きる
- 毎朝ジムに行く、ないし運動する
- 毎日1時間、エンジニアリングに関わるInputをする
- 毎日1時間、何かしらのoutputをする
- 就寝前に瞑想をする
- 毎日22時(JST)に寝る
- 週に1度、子供と散歩する
- 週に1度、子供と公園に行く

### 悪い習慣
- ギャンブルをする
- 繁華街に遊びに行く
- スマホゲームをする
- ラーメン食べる
- 自身にコントロールできない他者依存の問題解決を考える

## コーチング対象者が所有するデバイスへのアクション仕様
### CLIコール
uv run main.py {stimulus_type} {stimulus_value}

### 引数について
#### stimulus_type
- vibe: バイブレーション
- beep: ビープ
- zap: 電気刺激

#### stimulus_value
- 入力値: `1 ~ 100`
- stimulus_type毎のシナリオ、数値目安:
  - vibe
    - 100: リマインドするとき
  - beep
    - 100: 1時間以上応答がないとき
  - zap
    - 30: 考え方を是正させたいとき
    - 50: 少し反省させないといけないとき
    - 70: 同じことを何度も繰り返してるとき
    - 100: こいつ終わってるなと思ったとき

image.png

3. 同画面の下部にスクロールし新しいアクションを作成するをクリックします

image.png

4. スキーマを挿入します

スキーマ原文
openapi: 3.1.0
info:
  title: Coach Stimulus Gateway (Safe)
  version: 1.0.0
  description: >
    A safe stimulus gateway for coaching. 
    supported.
servers:
  - url: https://api.pavlok.com
paths:
  /api/v5/stimulus/send:
    post:
      summary: Send a Pavlok stimulus
      operationId: sendStimulus
      security:
        - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                stimulus:
                  type: object
                  properties:
                    stimulusType:
                      type: string
                      enum:
                        - vibe
                        - beep
                        - zap
                    stimulusValue:
                      type: integer
                      minimum: 1
                      maximum: 100
                    reason:
                      type: string
                      minimum: 1
                      maximum: 500
                  required:
                    - stimulusType
                    - stimulusValue
                    - reson
      responses:
        "200":
          description: Successful stimulus send
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success

image.png

5. 認証情報を設定する

  1. 認証の歯車マークをクリック
  2. 認証タイプ: APIキー,Bearerを選択
  3. APIキーにPavlok APIサーバーより取得したAPIキーを挿入
    APIキーの取得方法はこちらのREADME.mdを参照ください
  4. 保存するをクリックします

image.png

6. 疎通テスト

  1. 左側画面下部の利用可能なアクション項のテストするボタンをクリックします
  2. 右側画面に実行承認を求められるので確認するを押下します
  3. 自身が所有するPavlokデバイスが動作すれば成功です

image.png

7. 右上の作成するをクリック

image.png

8. 共有設定を自分だけに設定し、保存するを押下します

パブリック公開すると第三者が電気ショックできてしまうので
絶対に自分だけにしてください

image.png

使い方

image.png

左側メニューのGPT項に先ほど作成したGPTが表示されるので、
そちらをクリックして左側に表示されるチャットルームで懺悔をします。

実験してわかったこと

ネガティブ

  • ChatGPTの有料契約が必須(Plus以上)
  • ChatGPTの仕様で外部APIコール時に毎度承認を求められる
    • 電気ショックくるってわかって懺悔してても、毎回電気ショックAPIコールを承認するのは心理的にキツイ。。。
  • ChatGPTに定期タスクを実行する機能がないので懺悔部屋以上に拡張する余地がない
    • 特に監視的な使い方は現状では絶対にできない
  • GPT 5.2はマジで容赦ない
    • 初回のパチンコ行ったでレベル70の電気ショックを与えてくる

ポジティブ

  • 電気ショックのたびに承認を求められるので反省効果が物凄く強い
  • ChatGPTの音声入力等の便利機能が使えるのでUXが良い
  • GPT 5.2は本当に私を更生させようと勤めてる感が強い

結論

  • 懺悔部屋としてGPTsを利用するのは凄く良い
  • コーチングAgentとしてGPTsは適当ではない
    • 特に外部APIの呼び出しに都度承認を求める仕様がネックになる
36
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?