DEV Community

HIROKI II
HIROKI II

Posted on

I Used Codex for 2 Weeks — It Wrote 37TB to My SSD, Then Anthropic Wanted My ID

Cover

From SSD killer to identity wall — is there a third path for AI coding tools? There is. It's called OpenCode.

Last Thursday afternoon, I opened System Information on my MacBook and stared at my SSD health for a solid three minutes.

It had dropped from 96% to 91%. In three months. That's not normal.

I opened a terminal and checked disk write stats. The number that came back made me freeze — 37.2TB total written. My Mac is less than six months old.

The culprit? OpenAI Codex CLI — the "AI coding assistant" I use every day.

My first reaction: this thing is supposed to help me write code. Why is it writing my hard drive to death instead?

⚠️ This isn't a one-off. GitHub Issue #28224 documents it in detail: Codex CLI writes approximately 640TB per year to your SSD. 640TB. An enterprise server's annual write load, quietly running on your MacBook. — Source

The story should have ended there — uninstall Codex, switch tools, move on.

But it didn't.

When I tried to switch to Claude Code, I hit an even higher wall: identity verification. Not the password kind. The government-ID-plus-real-time-selfie kind.

This article is about those three turning points. And about a better option — OpenCode.


💣 Chapter 1: Your AI Assistant Is an SSD Killer

Let me cut to the chase: Codex CLI's SSD write issue is one of the most absurd "feature bugs" I've ever seen.

What Exactly Does It Do?

Codex CLI stores every conversation with the AI in a local SQLite database. That's fine in itself. The problem is how it stores them.

💡 Think of it this way: Imagine you have a journal. Every time you want to write one line, you first copy the entire journal to a new notebook, then add that one line. After copying, you keep the old notebook on your desk instead of throwing it away. With each word you write, the pile of paper on your desk grows an inch higher.

Technically, it's SQLite's WAL (Write-Ahead Logging) mode combined with TRACE-level logging. Every time you send a message, Codex:

  1. Writes the entire conversation to the WAL file
  2. Triggers an insert-clean cycle
  3. The WAL file balloons to several GB
  4. Then merges back into the main database
  5. Meanwhile writing raw WebSocket/SSE data in plaintext to ~/.codex/

Every step writes like crazy. And this TRACE-level logging is hardcoded — setting RUST_LOG=warn? Useless. It doesn't read the env var at all.

Metric Value
Actual writes in 21 days 37TB
Projected annual writes 640TB
Sustained write speed 5–16 MiB/s

What Does This Mean for You?

If you're on a MacBook Pro M4 — the SSD is soldered to the motherboard. A replacement costs $400–700. At 640TB/year, your drive might last 2–3 years. Then congratulations, you get a new motherboard.

What's more unsettling is the privacy problem. Codex writes raw API communication data — including your code snippets and conversation content — in plaintext to disk. Anyone with access to your computer can open ~/.codex/ and see everything. — Source

What Does OpenAI Say?

"We've received your feedback, thank you for your report."

That GitHub Issue is tagged stale. Stale means "expired, we're not dealing with it." 10 months later. No fix. No workaround. No official statement. Not even a "we're looking into it."

I pay $20/month for ChatGPT Plus, use their CLI tool, and it's secretly killing my drive while the company won't even acknowledge it.

The math doesn't add up.

— — — Fine, switch tools — — —


🔒 Chapter 2: Fleeing to Claude Code, Walking Into KYC

OK, Codex is unreliable. Let's switch to Claude Code. Right?

Claude Code is genuinely good. Anthropic's flagship terminal AI assistant. SWE-bench score of 72.7% (highest available), multi-agent collaboration, deep Git integration, and that drool-worthy extended thinking mode.

Technically, it might be the most powerful AI coding agent right now. I'll give them that.

But.

On April 14, 2026, Anthropic rolled out a new policy: all users must complete identity verification (KYC) to access full features. Full enforcement starts July 8.

KYC. Know Your Customer.

💡 Picture this: You walk into your local Starbucks for a coffee. The barista smiles: "Hi, could I see your ID first? And please look at this camera for a quick selfie. Then we'll make your latte." You're stunned. It's just coffee, right? But in Anthropic's world, it absolutely is.

What Does Verification Look Like?

Anthropic outsources identity verification to a third party called Persona. You need to provide:

  • Government-issued physical ID (passport, driver's license, national ID) — not a screenshot, not a scan. Physical photo.
  • Real-time selfie — the system detects if you're present; photo re-captures are rejected
  • Overseas phone number — +86 (China) is not on the supported list
  • Visa/Mastercard credit card — Alipay and WeChat Pay not accepted

In other words, you need a non-Chinese passport, an overseas phone number, an international credit card, and then you sit in front of their camera and hand your biometric data to a US company called Persona.

Then you're done.

⚠️ For developers in mainland China: Mainland China, Hong Kong (China), and Macau (China) are all outside Persona's supported regions. You can't even submit verification. Even if you VPN in and register, you're stuck at this step.


🧱 Chapter 3: That Wall Is Especially High for Chinese Developers

You might think: "I'll just use a proxy, switch my IP, done."

Not that simple. There's a three-layer trap:

Layer Situation Consequence
Layer 1: Registration block China IP gets "Service not available in your region" Can't even open the registration page
Layer 2: Verify = banned Register via proxy → submit Chinese ID → Persona detects unsupported region Account instantly disabled. $20–200 subscription not refunded
Layer 3: Retroactive purge Even if you somehow pass verification, random "integrity checks" happen later Account banned anytime. Code locked in the cloud

Layer 2 is the wildest. One user shared their experience: spent an entire evening getting everything ready, passed the face scan, submitted passport photos. Next morning — account gone. The email had one line: "Your account has been disabled due to policy violations."

No explanation. No appeal. No refund.

You handed over your ID, your face data, your money. And they said "you're not worthy."

💰 Let's do the math: Claude Pro $20/month, Claude Max $100–200/month. If you get banned, maximum loss is $2,400/year. More importantly, those biometrics — face scans, ID photos — are sitting on Persona's servers now. You can't get them back.

Honestly, Claude Code's tech is genuinely excellent. But this "submit your ID first" approach tells Chinese developers one thing:

"We don't welcome you here."

— — — So what now? — — —


🚀 Chapter 4: OpenCode — Doesn't Ask Where You're From, Only What Model You Want

Let me introduce a project that caught my eye — OpenCode.

One sentence: MIT license, fully open source, free, no ID required, 75+ AI model providers.

178K stars on GitHub. 200+ commits per week. Community activity rivals VS Code in its heyday.

What Is It?

OpenCode is a terminal AI coding agent built with TypeScript + Go. Think of it as "Codex CLI + Claude Code's open-source hybrid" — it has its own terminal UI, reads and writes your code, executes commands, operates Git, and isn't tied to any single AI company.

Want to pick your model? Go ahead:

Provider Models Access
OpenAI GPT-5.5, GPT-5, o3/o4-mini API Key or ChatGPT Plus OAuth
Anthropic Claude 4.5 Sonnet/Opus API Key or Claude Pro OAuth
Google Gemini 2.5 Pro/Flash API Key
Local Qwen3, DeepSeek, Llama Ollama / LM Studio / llama.cpp
70+ more Various OpenAI-compatible services Custom endpoint + key

🔑 Killer feature: OAuth routing. This is OpenCode's smartest design — you can use your existing ChatGPT Plus ($20/mo) or Claude Pro ($20/mo) subscription directly through OpenCode. No extra API purchase needed. That $20 you're already paying? Just works. And OpenCode, as a middleware layer, won't nuke your SSD like Codex does. — Source

How Does It Solve Both Problems?

Issue Codex CLI Claude Code OpenCode
SSD writes 640TB/yr 💀 Normal ✅ Controllable ✅
Identity verification Not needed ✅ Mandatory KYC 💀 Not needed ✅
Available in China Needs proxy ⚠️ Basically unusable 💀 Fully usable ✅
Open source Yes (Rust) ✅ No 💀 Yes (MIT) ✅
Monthly cost $20+ $20–200 $0 (software)
Model choice GPT-5.x only Claude only 75+ providers
IDE integration None VS Code VS Code + JetBrains
Privacy Plaintext on disk 💀 Cloud processing ⚠️ Local-first + encryption ✅

Cost Comparison: Who Saves the Most?

Plan Annual Cost Disk Risk Ban Risk
Codex Plus ($20/mo) $240 Extreme Low
Claude Pro ($20/mo) $240 None Extreme (China users)
OpenCode + existing sub $0 Controllable None
OpenCode + pay-per-use API ~$50–100 Controllable None
OpenCode + local models $0 Controllable None

Right. If you already have ChatGPT Plus or Claude Pro, OpenCode itself is completely free. Not one extra cent.

— — — Let me show you how to migrate — — —


🛠️ Chapter 5: 15-Minute Migration Guide

Convinced? Here's how to switch. 15 minutes.

Step 1: Install OpenCode2 min

macOS:

brew install opencode-ai/tap/opencode
Enter fullscreen mode Exit fullscreen mode

Linux:

curl -fsSL https://opencode.ai/install | bash
Enter fullscreen mode Exit fullscreen mode

Windows:

npm install -g opencode-ai
Enter fullscreen mode Exit fullscreen mode

Type opencode in terminal. If you see the welcome screen, you're good.

Step 2: Connect Your AI Subscription5 min

Inside OpenCode, type /connect:

$ opencode
Welcome to OpenCode!
> /connect

? Select provider:
  ❯ OpenAI (ChatGPT Plus/Pro)
    Anthropic (Claude Pro/Max)
    Google (Gemini)
    GitHub Copilot
    Custom Provider
Enter fullscreen mode Exit fullscreen mode

Pick OpenAI → browser pops up with ChatGPT login → authorize → back to terminal. Done.

Yes, that simple. No API key generation, no copy-pasting secrets. Just one login.

Step 3: Migrate Your Workflow8 min

Coming from Claude Code? Copy CLAUDE.md and rename it to AGENTS.md — 90% syntax compatible.

Coming from Codex CLI? Migrate codex.json to opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "openai": {
      "npm": "@opencode-ai/provider-openai"
    }
  },
  "model": "openai/gpt-5.5",
  "tools": {
    "bash": true,
    "edit": true,
    "read": true
  }
}
Enter fullscreen mode Exit fullscreen mode

Command cheat sheet:

Feature Codex CLI Claude Code OpenCode
Init project codex init /init /init
Switch model Not supported /model /model
Connect sub Auto Auto /connect
Run code codex "..." claude "..." opencode "..."
Interactive codex claude opencode

🎁 Pro Tips:

  • Create AGENTS.md in your project root — OpenCode reads it automatically
  • Use /model to switch models anytime, even mid-session
  • Multiple subscriptions? Set up multi-provider routing to auto-switch to the one with the most quota
  • Local models (Ollama) work too — offline coding is possible

🏁 Wrapping Up

Looking back at these two weeks, I went through three phases:

  1. Shock: Codex is secretly killing my drive. OpenAI doesn't care.
  2. Anger: Claude Code demands my ID. Anthropic says Chinese developers aren't welcome.
  3. Relief: OpenCode showed up — free, open source, asks nothing about where you're from.

I'm not saying OpenCode is perfect. It has bugs, missing features, and the UI isn't as polished as Claude Code. But it has one quality that matters most: it's yours.

No ID required. No ban risk. No dead SSD. It's MIT-licensed, code is on GitHub, you can audit every line.

In an era of AI tools turning into walled gardens, OpenCode is a breath of fresh air. It says: good tools should serve people, not make people prove they're "worthy" of using them.

🔗 Related links:

If you're using Codex CLI — go check your SSD write stats today.

If you're using Claude Code in China — start preparing Plan B.

If you haven't started with any AI coding tool — congratulations, you skip all the pitfalls. Start with OpenCode.

Your SSD and your identity should never be the price of using AI tools.


📝 ~4,500 words · 12 min read · Written by a developer migrating from Codex to OpenCode

Top comments (0)