Claude Codeで非エンジニアが転ぶ7か所
コードが書けなくても使えるツールです。ただ「書けないまま」で走ると、最初の1週間でだいたいどこかで転びます。
この記事は、Claude Codeをこれから入れる非エンジニア・入れたばかりの初心者向けの注意点まとめです。読み終えると、初日の30分でやっておく安全設定チェックリスト(コピペできる設定ファイル付き)が手に入ります。
「怖いからやめよう」という話ではありません。転ぶ場所があらかじめ分かっていれば、そこだけ避けて走れます。
前提は3つだけ。Claude Codeが使えるプラン(Pro=月20ドル、年払いなら月あたり17ドル。無料プランには含まれません)に入っていること、ターミナルにコマンドを1行ずつ貼り付けられること、そして作業用のフォルダを1つ用意できること。プログラミングの知識は要りません。
ターミナルというのは、コマンドを打ち込むための黒い画面のアプリです。Macなら「アプリケーション → ユーティリティ → ターミナル」、Windowsならスタートメニューで「ターミナル」または「PowerShell」を検索すると出てきます。この記事のコマンドは、そこに1行ずつ貼り付けてEnterを押すだけです。
調査日:2026年8月6日。仕様は更新が速いので、設定周りは公式ドキュメントで最新を確認してください。
その前に:Claude Codeは「賢い新人」ではなく「鍵を預けたプログラム」
最初に持っておくと全部の話が繋がる前提が、ひとつだけあります。
ChatGPTやClaudeのチャット画面は、いくら間違えても文章が返ってくるだけです。実害はありません。Claude Codeは違います。あなたのパソコンの中でファイルを書き換え、コマンドを実行します。 「削除して」と言えば削除しますし、うっかり「いらないファイルを整理して」と言えば、何がいらないかはClaudeが判断します。
Anthropicの公式ドキュメントも、ここははっきり書いています。
Claude Code only has the permissions you grant it. You're responsible for reviewing proposed code and commands for safety before approval. (Claude Codeはあなたが与えた権限しか持ちません。提案されたコードやコマンドを承認前に安全性の観点で確認する責任は、あなたにあります)
つまり「許可を出したのはあなたです」という設計です。だから、許可の出し方を最初に覚えるのがいちばん効きます。以下の7つは、全部そこに繋がっています。
1か所目:「もう全部許可でいいや」に手が伸びる
「YOLOモード」は普段使いのPCでは踏まない
Claude Codeは初期状態だと、ファイルを書き換えるたび・コマンドを実行するたびに確認を求めてきます。読み取り専用の動作(ls、cat、git status など)は聞かずに走りますが、それ以外はいちいち止まります。
これが、正直めんどくさい。5回目くらいで「毎回聞かないで」と思い始めます。
そこで検索すると、--dangerously-skip-permissions というオプションが出てきます。名前のとおり「危険なほど権限確認をスキップする」フラグです。ネット上では「YOLOモード」と呼ばれていて、実際これを付けると作業はぐっと速くなります。
公式ドキュメントの警告はこうです。
Only use this mode in isolated environments like containers, VMs, or dev containers without internet access, where Claude Code cannot damage your host system. (コンテナやVMなど、Claude Codeがホストシステムに損害を与えられない隔離環境でのみ使ってください)
普段使いのMacやWindowsは「隔離環境」ではありません。ここは踏まない、でいいです。
代わりにPlanモードを主戦場にする
Shift+Tabを押すと、権限モードが順番に切り替わります。切り替わる順番と中身はこうです。

この表は「今日はどれで走るか」を決めるために使います。非エンジニアがいちばん恩恵を受けるのはPlanモードです。いきなり作業させず、まず「何をどうするつもりか」を書かせて、読んで、納得してからGOを出す。日本語の説明が返ってくるので、コードが読めなくても方針の妥当性は判断できます。
Shift+Tabで切り替えるか、プロンプトの頭に /plan を付けるだけです。
2か所目:「Escを2回押せば全部戻せる」と思っている
/rewind が戻せないもの、3つ
Claude Codeには巻き戻し機能があります。/rewind と打つか、入力欄が空の状態でEscを2回押すと、「どのプロンプトの時点に戻すか」を選べるメニューが開きます。コードだけ戻す、会話だけ戻す、両方戻す、が選べます。
かなり優秀な機能です。ただし戻せないものがあります。ここが落とし穴です。
公式ドキュメントに書かれている制限のうち、非エンジニアに効いてくるのは主にこの3つ。
bashコマンドでの変更は追跡されません。 Claudeが rm file.txt や mv old.txt new.txt を実行してファイルを消したり動かしたりした場合、それは巻き戻しの対象外です。追跡されるのは、Claudeが「ファイル編集ツール」で行った編集だけ。
サブエージェントの編集は復元されません。 Claudeは大きな作業を分担させるために、裏でもう一体のClaude(サブエージェント)を動かすことがあります。そちらが編集した分は、巻き戻しても戻りません。
セッションの外で起きた変更は追跡されません。 あなたが手で直したファイル、別のウィンドウで動かしたClaudeの変更は入っていません。
さらにチェックポイントは直近100件まで、セッションと一緒に30日で消えます。公式も「Gitの代わりにはならない」と明言しています。
Think of checkpoints as "local undo" and Git as "permanent history". (チェックポイントは「ローカルのundo」、Gitは「恒久的な履歴」だと考えてください)
作業前の3行で、本物のセーブポイントを作る
作業を始める前に、そのフォルダをGitで管理下に置きます。コマンドは3行です。
cd 作業したいフォルダ
git init
git add -A && git commit --allow-empty -m "Claude Codeを使う前の状態"
意味が分からなくても構いません。「この瞬間の状態にいつでも戻れるセーブポイントを作った」だけです(--allow-empty は、フォルダがまだ空でもエラーにせずセーブポイントを作るための指定です)。以降は、区切りのいいところで git add -A && git commit -m "メモ" を打つ。あるいはClaudeに「ここまでをコミットして」と頼んでもいい。
これをやっておくと、この先に出てくる事故のほとんどが「戻せる事故」に格下げされます。順番としては、Claude Codeを入れた直後にやる価値があります。
3か所目:起動するフォルダを選んでいない
起動したフォルダの下は、全部が射程内
Claude Codeは「起動したフォルダ」を作業範囲にします。公式の説明はこうです。
Claude Code can only write to the folder where it was started and its subfolders, and cannot modify files in parent directories without explicit permission. (Claude Codeは起動したフォルダとそのサブフォルダにしか書き込めず、明示的な許可なしに親ディレクトリのファイルを変更することはできません)
裏を返すと、起動したフォルダの下は全部が射程内ということです。デスクトップで起動すればデスクトップ全部が、ホームフォルダで起動すれば書類も写真もダウンロードも全部が射程に入ります。
しかもAccept Editsモードでは、作業フォルダ(起動したフォルダ)内のパスに対する mkdir(フォルダ作成)、touch(ファイル作成)、rm(削除)、mv(移動)、cp(コピー)、sed(一括置換)が自動承認されます。rm が入っている、というのがポイントです。「散らかってるので整理して」と頼んだ結果、消えてほしくないものが消える構図はここから生まれます。
実際、Claude CodeのGitHubリポジトリには、意図しない削除でファイルを失ったというユーザー報告がいくつも上がっています。これらは当事者の自己申告で、再現できずクローズされているものもあり、原因が確定したわけではありません。ただ「そういう報告が出る構造にはなっている」ことは、上の仕様から読み取れます。
ついでにもうひとつ。Claude Codeは、初めてのフォルダで起動すると「このフォルダを信頼しますか?」という確認を出します(他人からもらったフォルダで勝手に動き出さないための仕組みです)。ところがホームフォルダ直下で起動した場合だけ、この承諾が保存されず、起動のたびに毎回聞かれます。地味に鬱陶しいので、この意味でもホーム直下での起動は避けたほうがいいです。
作業ごとに、専用の「部屋」を作る
使うたびに、専用のフォルダを作ってその中で起動します。
mkdir -p ~/projects/試しに作るやつ
cd ~/projects/試しに作るやつ
claude
「作業のたびに新しい部屋を用意して、その部屋の中だけで動いてもらう」という感覚です。デスクトップやホームで claude と打つ癖がついていたら、そこだけ直してください。
4か所目:APIキーが平文のまま置いてある
流出は年2,865万件。Claude Code経由は「率」が2倍
何かサービスを作ろうとすると、必ずAPIキーの話が出てきます。OpenAIのキー、決済サービスのキー、データベースの接続情報。これらは盗まれると請求が来る種類のものです。
GitGuardianが2026年3月に出した調査によると、2025年の1年間で公開GitHubのコミットに新たに流出したシークレットは 28,649,024件(約2,865万件)、前年比34%増でした。同社はあわせて「Claude Codeが共著者(co-author)になっているコミットは、公開GitHub全体の基準値のおよそ2倍の率でシークレットを漏らしている」とも報告しています。件数ではなく率の話で、報道された内訳では全体1.5%に対しClaude Code共著コミットが3.2%です。
同社の見方では、AIが特別に不注意なのではありません。書くスピードが上がった結果、もともとあった悪い癖が同じスピードで増えている、という説明です。
非エンジニアがここでやりがちなのは、次の2つ。
キーをコードの中に直接書く(Claudeに「ここにキーを入れといて」と言うとやってくれてしまう)
そのフォルダをそのままGitHubに公開する
キーは .env へ。Claudeにも読ませない
キーは .env という名前のファイルにまとめる。そして .gitignore に .env と書く。この2つはClaudeに「.envと.gitignoreを作って、キーは.envに移して」と頼めば全部やってくれます。
そのうえで、Claude自身にも .env を読ませない設定を入れておく。後半のチェックリストにコピペ用を置きました。
GitHubに上げるときは、最初は必ずPrivateにする。Publicにするのは、中身を人の目で見てからです。
ひとつ補足しておくと、この読み取り禁止ルールは万能ではありません。公式ドキュメントによれば、拒否ルールが効くのはClaude内蔵のファイル読み書きツールと、cat のようなファイルを直接開くコマンドまで。逆に、Claudeが書いたPythonやNodeのスクリプトが自分でファイルを開く経路には効きません。
だから「設定したから絶対安全」ではなく、「うっかりの経路をひとつ塞いだ」くらいに捉えてください。
5か所目:気づいたら今週分の上限を使い切っている
「ちょっと聞いただけ」で使用量が減る理由
Claude Codeを使うには、Pro(月20ドル/年払いなら月あたり17ドル)以上のプランが要ります。無料プランには含まれません。Maxは月100ドルから、使用量はProの5倍または20倍を選べます。
ここでつまずくのが、使用量の増え方が直感と合わないことです。
使用量の枠は2種類あって、5時間ごとにリセットされるセッション枠と、週次の枠。そして重要なのが、この枠はClaudeのチャット画面と共有だという点です。Claude Codeで使い切ると、ブラウザのClaudeも止まります。
さらに、公式ドキュメントが説明している「長時間セッションで使用量が伸びる理由」がこれです。
Claude Code sends your full conversation with every request(Claude Codeはリクエストのたびに会話全体を送信します)
つまり、朝から開きっぱなしのセッションで夕方に一言質問すると、その日の会話全部を積んだ状態のリクエストになります。「ちょっと聞いただけなのに」が起きる仕組みはここです。
しかもこれには割引の仕掛けがあって、直前までのやり取りを使い回す「キャッシュ」が効いているあいだは安く済みます。ただしその有効期間は1時間。昼休みを挟んで戻ってきた1発目はキャッシュが切れていて、会話を丸ごと読み直すことになります。
/clear・/usage・/model の3つだけ覚える
話題が変わったら /clear。 新しいセッションを始めるコマンドで、これ自体にコストはかかりません。「同じ話の続き」でないなら、迷わず打つ。
/usage で残量を見る癖をつける。 d と w で「直近24時間」「直近7日」を切り替えられます。何に食われているか(長いコンテキスト、キャッシュミスなど)の内訳も出ます。
重い作業以外はモデルを下げる。 /model と打つとモデルの一覧が出るので、矢印キーでSonnetを選んでEnter。Opusは上限が別枠なので、「Opusの上限に達しました」と出たときも /model で他のモデルに変えれば作業は続けられます。
なお /compact(会話を要約して圧縮するコマンド)は、要約するために会話全体を読み込むのでそれ自体が大きなリクエストになります。続きが要らないなら /compact より /clear のほうが安上がりです。
6か所目:拾ってきたMCPサーバをそのまま入れる
「監査していない」と公式が書いている
少し使い慣れてくると、「MCP」という言葉に出会います。Claudeに外部サービス(Slack、Notion、データベースなど)を触らせるための拡張です。便利なので、記事やSNSで見かけたものをそのまま入れたくなります。
ここが、この記事でいちばん取り返しがつかない場所です。Anthropic公式ドキュメントの記述を、そのまま引用します。
Anthropic reviews connectors against its listing criteria before adding them to the Anthropic Directory, but does not security-audit or manage any MCP server. (AnthropicはAnthropic Directoryへの掲載前に掲載基準に照らしてコネクタをレビューしますが、いかなるMCPサーバのセキュリティ監査も管理も行いません)
審査していない、と公式が書いています。 MCPサーバは他人が書いたプログラムで、あなたのマシンで動きます。
実例があります。2025年9月、postmark-mcp というnpmパッケージが、バージョン1.0.16で「送信される全メールを外部アドレスにBCCで転送する」1行を追加していたことが判明しました。15バージョンにわたって正規のツールとして振る舞ってから、バックドア化した形です。発見したKoi Securityの推定では、約300組織が利用しており、1日あたり3,000〜15,000通のメールが窃取されていたとされています。
あわせて:Claude Code本体のアップデートも溜めない
これはMCPそのものの話ではありませんが、同じ「他人が用意したものを開く」リスクの話なので、ここで一緒に片づけておきます。
Claude Code本体についても、信頼していないフォルダで起動した際に設定ファイル経由でコードが自動実行される(CVE-2025-59536、v1.0.111で修正)、悪意あるリポジトリがAPIの接続先を書き換えてAPIキーを持ち出せる(CVE-2026-21852、v2.0.65で修正)といった脆弱性がセキュリティ研究者から報告され、いずれも修正されています。
つまり古いバージョンを使い続けること自体がリスクです。いま入っているバージョンは claude --version で確認できます。
MCPを入れる前にやること
MCPは「必要になったら1個ずつ」。試したい気持ちは分かりますが、まとめて入れない。
入れる前に、そのMCPのGitHubページ(プログラムの公開置き場。「◯◯/◯◯」という形のURLで、ページ上部に説明文=READMEと、右上に★の数が表示されています)を開いて、①そのサービス自身が公式に出しているか ②最終更新が直近3か月以内か ③★が3桁以上あるかを見る。公式かどうかはREADMEの冒頭を読めば大体わかります。①が満たせないなら、②③がどれだけ良くても保留。判断がつかないなら、そのMCPは今日は入れない。
知らない人からもらったフォルダやリポジトリの中でClaude Codeを起動しない。 Claude Codeには「初回起動時の信頼確認」がありますが、これは万能ではありません。公式も「これらの保護はリスクを大幅に減らしますが、あらゆる攻撃に完全に免疫のあるシステムは存在しません」と書いています。
7か所目:「動いた=完成」だと思う
調査では、98%に何らかの脆弱性
最後は、いちばん静かに効いてくる話です。
Claude Codeで作ったものは、たいてい動きます。ブラウザで開けば画面が出るし、ボタンも押せる。ここで「できた」と思って公開すると、動くけれど守られていないものが世に出ます。
数字があります。セキュリティ企業Symbiotic Securityが2026年6月に発表した調査では、AIコーディングツール(Lovable、v0、Bolt.new、Replitなど)で作られて公開されていたサイト1,072件をスキャンした結果、98%が最低ひとつの脆弱性を持ち、16%が「クリティカル」判定でした。内訳には「認証なしでデータを削除できるサイト172件」「認証なしでデータを書き換えられるサイト172件」といった項目が並びます。
別の調査(Escape、2025年10月)でも、同種のツールで作られて公開されていた5,600超のアプリから、2,000件超の脆弱性、400件超の露出したシークレット、175件の個人情報露出(医療記録や金融情報を含む)が見つかっています。
いずれもClaude Codeだけを対象にした調査ではありません。ただ「AIに書かせたコードをそのまま公開する」という行為そのものが持つリスクの大きさは、この数字でだいたい掴めます。
つまり「動くこと」と「公開して大丈夫なこと」は別物で、AIは黙っていると前者までしかやってくれません。
公開前にやる3つのこと
人に配る前に、Claude自身にレビューさせる。 Claude Codeには /security-review というコマンドがあり、いま作業しているブランチの変更に対してセキュリティの観点でチェックを走らせられます。完璧ではありませんが、「認証がかかっていない」「キーが画面側に出ている」レベルの穴はここでかなり拾えます。
質問を1つ足す。「このアプリで、ログインしていない人ができてしまうことを全部挙げて」。この聞き方だと、Claudeは実装を読み直して答えます。
最初の公開は、身内だけにする。URLを知っている人だけがアクセスできる状態で1週間動かしてから広げる。
初日の30分でやること(チェックリスト)
ここまでの7つを、順番に並べ直しました。上から実行すれば30分弱で終わります。必要なのはターミナルと、Claude Codeが動くプランだけです。
手順(上から順に)
途中で入力先の画面が切り替わります。各手順の見出しに〈ターミナル〉〈Claudeの画面〉と書いてあるので、そのとおりに打ってください。
□ 1.〈ターミナル〉作業用のフォルダを作って、その中に移動する
mkdir -p ~/projects/my-first-app
cd ~/projects/my-first-app
□ 2.〈ターミナル〉そのフォルダをGit管理にする
git init
git add -A && git commit --allow-empty -m "初期状態"
(ここでエラーが出た人は、この章の最後の「うまくいかないときの切り分け」を先に見てください。初回だけ引っかかる箇所が2つあります)
□ 3.〈ターミナル〉Claude Codeを起動する
claude
ここから先、画面はClaude Codeとの対話に切り替わります。以降の依頼は、この画面に日本語で打ち込みます。
□ 4.〈Claudeの画面〉安全設定ファイルを作ってもらう
次のように頼みます。JSONの部分もそのまま一緒に貼り付けてください。
~/.claude/settings.json を作って、中身をこの内容にして。既にファイルがあるなら、既存の設定を壊さないようにマージして。
{
"permissions": {
"defaultMode": "plan",
"deny": [
"Read(.env)",
"Read(**/.env)",
"Read(**/.env.*)",
"Edit(.env)",
"Edit(**/.env)"
],
"disableBypassPermissionsMode": "disable"
}
}
それぞれの意味は次のとおりです。
defaultMode: "plan" … 起動時は必ずPlanモードで始める。 いきなり書き換えず、まず計画を出させる。作業に入るときはShift+Tabで抜ける
deny の .env 系 … 認証情報ファイルをClaudeに読ませない・書き換えさせない
disableBypassPermissionsMode: "disable" … キー名にも値にも「disable」が入っていて紛らわしいのですが、これは「全部許可モードのほうを無効化する」という意味です。自分自身に封印をかけて、将来うっかり手を出しかけたときのブレーキにします
□ 5.〈Claudeの画面〉.gitignore に .env を追加してもらう
.gitignore を作って、.env を追加して
□ 6.〈Claudeの画面 → ターミナル〉いったん終了して、起動し直す
ここが飛ばされやすい一手です。defaultMode は起動したときに読まれるので、設定を作った今のセッションにはまだ効いていません。
まずClaudeの画面で /exit と打って抜けます。するとターミナルに戻るので、そこでもう一度 claude と打ちます。今度は最初からPlanモードで立ち上がり、画面下に ⏸ plan mode on のバッジが出ます。
□ 7.〈Claudeの画面〉Shift+Tabを3回押して、モードが一周することを確認する
Manual → Accept Edits → Plan の3つを順に巡って元に戻ります。押すたびに画面下のバッジが変わるので、「今どのモードか」を体で覚えられます。
□ 8.〈Claudeの画面〉/usage を1回打って、残量画面を見ておく
初日に一度見ておくと、「増えてきた」に気づけるようになります。
□ 9. 話題を変えるときは /clear、と自分に言い聞かせる
これだけです。あとは普通に使ってください。
うまくいかないときの切り分け
git: command not found と出る … Gitがまだ入っていません。Macなら、そのまま実行すると「開発者ツールをインストールしますか」というダイアログが出るのでインストールを選びます(数分かかります。完了のダイアログが出るまで待ってから打ち直してください)。Windowsなら git-scm.com からインストーラを落として、設定はすべて既定のままで進めればOKです。
Please tell me who you are と出て git commit が止まる … Gitの初回設定が済んでいません。次の2行を1回だけ打てば、以降は出なくなります(名前とメールは自分のもので、公開されるわけではありません)。
git config --global user.name "あなたの名前" git config --global user.email "you@example.com"
起動しても Plan モードにならない … まず、設定を作ったあとに起動し直したかを確認してください(手順6)。設定ファイルは起動時に読まれるので、作った直後のセッションには効きません。入り直しても変わらないなら、ファイルの場所か、JSONの書式ミスです。カンマの付け忘れ・全角の引用符が定番。ファイルの中身をそのままClaudeに貼って「このJSONの文法が正しいか見て」と聞けば直してくれます。
設定が効いているか確かめたい … セッション中に /permissions と打つと、いま有効な許可・拒否ルールの一覧が出ます。公式も「/permissions で定期的に権限設定を監査する」ことを推奨しています。.env の行が並んでいれば効いています。
.env を読ませない設定を入れたのに、中身を見られている気がする … 拒否ルールが効くのはClaude内蔵のファイルツールと cat などのコマンドまでです。Claudeが書いたPythonやNodeのスクリプトが自分でファイルを開く経路は対象外だと、公式ドキュメントが明記しています。そこまで塞ぎたい場合は、OSレベルで隔離する「サンドボックス」機能の領域になります(この記事の範囲外です。公式ドキュメントで「sandboxing」を引いてください)。
設定を入れたら確認が増えすぎて進まない … Planモードのまま作業しようとしている可能性が高いです。計画に納得したらShift+Tabで抜けてください。それでも多いなら、permissions.allow に「よく使う安全なコマンド」を足していくのが正攻法です。書き方は deny と同じ形式で、たとえばこうなります。
"allow": [ "Bash(npm run *)", "Bash(git status)" ]
自分で書かなくても、確認ダイアログで「はい、今後は聞かない」を選べば同じルールが自動で追加されます。
おさらい
Claude Codeは「賢い新人」ではなく「あなたが鍵を渡したプログラム」。責任の所在は許可を出した側にある
--dangerously-skip-permissions は普段使いのPCでは踏まない。代わりにPlanモードを主戦場にする
/rewind はbashコマンドでの変更を戻せない。Gitが本当のセーブポイント
起動フォルダ=射程範囲。デスクトップやホームで起動しない
キーは .env へ。.gitignore に書き、Claudeにも読ませない
使用量はチャットと共通。話題が変わったら /clear、たまに /usage
MCPは公式が「監査していない」と明言している領域。1個ずつ、素性を見てから
動いた≠公開して大丈夫。/security-review と「ログインしてない人が何をできる?」を通してから出す
7つのうち、今日やる価値がいちばん高いのは 2番目(git init) です。これさえ済んでいれば、残りの6つで失敗しても「戻せる失敗」で済みます。
コードが書けないことは、Claude Codeを使ううえでほとんどハンデになりません。ハンデになるのは、何を許可したのか分からないまま使うことのほうです。
参照ソース
Claude Code公式ドキュメント|Security:https://code.claude.com/docs/en/security
Claude Code公式ドキュメント|Permission modes:https://code.claude.com/docs/en/permission-modes
Claude Code公式ドキュメント|Configure permissions:https://code.claude.com/docs/en/permissions
Claude Code公式ドキュメント|Checkpointing:https://code.claude.com/docs/en/checkpointing
Claude Code公式ドキュメント|Manage costs effectively:https://code.claude.com/docs/en/costs
Anthropic|Pricing:https://claude.com/pricing
Anthropicサポート|Use Claude Code with your Pro or Max plan:https://support.claude.com/en/articles/11145838-use-claude-code-with-your-pro-or-max-plan
GitGuardian|State of Secrets Sprawl 2026:https://www.gitguardian.com/state-of-secrets-sprawl-report-2026
GitGuardian|When We Use AI To Ship Fast, Secrets Spread Fast:https://blog.gitguardian.com/ai-secrets-spread-fast/
Koi Security|postmark-mcp npm backdoor:https://www.koi.ai/blog/postmark-mcp-npm-malicious-backdoor-email-theft
The Hacker News|Claude Code Flaws Allow Remote Code Execution(CVE-2025-59536 ほか):https://thehackernews.com/2026/02/claude-code-flaws-allow-remote-code.html
Symbiotic Security|We scanned 1,072 vibe coded apps:https://www.symbioticsec.ai/blog/we-scanned-1-072-vibe-coded-apps-98-had-security-flaws
Escape|How we discovered vulnerabilities in apps built with vibe coding:https://escape.tech/blog/methodology-how-we-discovered-vulnerabilities-apps-built-with-vibe-coding/
