個人開発の記録です。前の記事で今朝の「偽の警報」の話を書きましたが、同じ朝にもう一つ、地味だけど大事なことを学びました。ターミナルで動くAI(CLI版のClaude Code)の画面に出てくる文字を、危うく”自分への指示”だと勘違いしかけた話です。AIツールを安全に使うための、初学者向けリテラシーとして残します。

Contents

まず結論

AIツールの画面には、「自分が打つべき指示」と「ツールが勝手に表示している情報」の2種類が混ざって流れています。この2つを見分けられないと、ツールの独り言を指示だと思って従ってしまう危険があります。見分ける鍵は、行の先頭についている記号でした。

きっかけ:見慣れない「recap」という行

今朝、電車アプリを直している最中、ターミナルのAIの画面に、こんな1行がふっと現れました(英語で、要約するとこんな内容です)。

※ recap: これまでライブデータを日々分析してバグを直してきた。昨日の騒ぎは接続が切れていたのが原因と判明。次のステップは再起動後に接続が自動復活するか確認すること。

読んだ瞬間、「これは私への指示かな? 次にこれをやれ、ということ?」と一瞬身構えました。でも、そうではありませんでした。

正体:AIが自分のために書いた”付箋”だった

この recap(要約) は、私への指示でも、誰かからのメッセージでもなく、AIツールが自分用に残した「ここまでのあらすじメモ」でした。

なぜこんなものが出るのか。初学者向けに言うと、こういう仕組みです。ターミナルのAIは、会話が長くなると古いやり取りを全部は覚えていられません(記憶できる量に上限がある)。そこで、話の筋を見失わないように、要点だけを短くまとめたメモを自分で自分に向けて書いているのです。人間が長い会議の途中で「ここまでの論点」を付箋に書くのと同じです。

同じ仲間に、「○秒考えました」「ファイルを1つ読みました」「コマンドを1回実行しました」といった行もあります。これらは全部AIの動作ログで、私が打つものではありません。

見分ける鍵は「行の先頭の記号」

では、どう見分けるか。教わった線引きは、とてもシンプルでした。

  • 記号つきの行(※ や ✻ など)= 状況説明。読むだけ。ツールが「今こうなっています」と教えてくれている情報
  • 入力用の記号(❯ など)の後ろ = 自分の出番。ここに自分でコマンドや指示を打ち込む

つまり、記号つきの行は”ツールの説明”、入力記号の後ろが”自分の番”。この区別さえ持っておけば、独り言のメモを指示と取り違えて、意図しない操作に進んでしまう事故を防げます。

なぜこれが「安全」の話になるのか

ここが一番大事なところでした。これは単なる操作の慣れの問題ではなく、セキュリティの基本につながります。

AIツールの画面には、AI自身のメモだけでなく、外から流れ込んでくる文字(読み込んだファイルの中身、ネットから取ってきた文章など)も表示されることがあります。もしそういうテキストを、いちいち「これは指示かな?」と鵜呑みにして従っていたら——中に紛れ込んだ悪意ある一文で、やるつもりのない操作をさせられる危険すらあります。

だから、「画面に出た文字=自分がやること」ではないと線を引いておくのが、身を守る第一歩なのです。自分が主語になるのは、あくまで入力記号の後ろに自分で打った一手だけ。この感覚は、AIと一緒に開発する時代には、掛け算で効いてくる基礎体力だと思います。

おわりに

「AIが速く賢くコードを書いてくれる」ことばかりに目が行きがちですが、今朝学んだのは真逆の方向でした。AIツールが画面に流す情報を、正しく”読む”側のリテラシーです。

どれが現実で、どれが自分のミスか。どれが指示で、どれがツールの独り言か。作っている電車アプリでも、使っているAIツールでも、結局いつも問われているのは同じことでした——目の前の表示を鵜呑みにせず、一段引いて”これは何者か”を確かめる。それが、AIと組む個人開発でいちばん錆びない技術なのかもしれません。


個人開発 / AIツール / セキュリティ / リテラシー

このブログでは、ローカルLLM・Aider・個人開発の試行錯誤をそのまま記録しています。