Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

ChatGPTにパーソナルトレーナーになってもらう

めっちゃ簡単なアプリを作って1ヶ月半ほどトレーニングしているのだが、今のところ不満がほぼない。

Muscle Memory

動作原理、コンセプト

(動作原理ってほどでもないが)

このアプリの基本コンセプトは 「プロンプトと記録をまとめて保存してしまおう」 って感じ。とにかくシンプル。記録を外部に保存しておいて、使うときは記録ごと全文送信する。ハルシネーションもほとんど起きてない。

これは筋トレの記録です。

このプロンプトが送られてきたら、まず過去の記録を分析し、本日のトレーニングメニューを提案してください。その後、記録の更新を待ってください。

(略)

=====

records:
  - date: 2026-07-14
    exercises:
      - name: ワンハンドダンベルローイング
        weight: 24kg/手
        reps: [10, 10, 10]
        rest: 2分
        note: 左→右で実施

こんな感じのを送信すると、プロンプトに従ってメニューを考えてくれる。あとはやるだけ。

使い方

細かい使い方はこんな感じ。

  1. アプリを開く
  2. 「コピーしてChatGPTを開く」を押す
  3. ChatGPTが立ち上がるので、プロンプトのところで貼り付ける
  4. 今日のメニューが生成される
  5. それの通りにメニューをこなす

超カンタン。これだけで、前回までの記録を踏まえて今日やるべきメニューを考えてくれる。めっちゃ便利。さらに、「今日は別の種目にしてみようかな〜」と相談すればそのメニューも考えてくれる。

youtu.be

記録するほうもカンタン。

  1. 記録内容を適当に書く (結構いい感じに解釈してくれる)
    • 「インクライン 15 15 12 腕立て 20 20 15」とか書くと「インクラインベンチプレス 20kg 15,15,12」「腕立て伏せ 20,20,15」みたいによしなに解釈してくれる
  2. yamlが吐き出されるのでコピーする
  3. アプリに戻って「貼り付けて記録」を押す
  4. ペーストを押す

割と雑に書いても結構ちゃんと記録形式に直してくれる。

試行錯誤とか

当初はほんとうに 記録を出力する時にも全文出させて丸ごと保存していた。 まさに脳筋仕様。ただ、これだと3週間分くらいの記録で出力限界に引っかかってしまった。なので仕方なく差分だけ出して保存するようにした。出力時間も短くなったし今のところはこれで困ってない。

また、MCPにする計画もしていたのだが(貼り付けが手間なので)、これはあまりうまくいかなかった。 実際に「Google driveから前回の記録を読み出してそれを元にメニューを考案、保存も勝手にやってくれる」って構成で作ってみたが、 driveへの接続時間が長くて使いものにならなかった。 (←書いてて思ったが、毎日定時で提案してくれるようなアプリであればdriveへの接続時間も問題にならないし、それで良くないか?)

グラフ機能も一応ある

yamlで保存してあるのでグラフもシュッと作れた。なかなか便利。まあそこまで見てはないけどたまにみてモチベが上げられてる。

まとめ: どの筋トレアプリより続けやすい

筋トレアプリは「入力しづらい」「今回のメニューを考えるのがめんどい」という問題がずっとあった。このアプリはそれらをAIを使うことで解決できている。シンプルなアイデアだったがちゃんとワークして嬉しい。みんなも筋トレやろう!