Back to Blog

$1 Genius Bar

My MacBook's microphone worked in FaceTime but stayed silent in Voice Memos and Discord – Claude Code dug through Core Audio, found the daemon stuck in a bad state, and fixed it with a sequence of three commands.

My microphone stopped working on the last day of my AppleCare warranty.

I noticed it when Voice Memos – Apple's own native app – recorded nothing but silence. Then I tried Discord. Same thing. My first thought was hardware failure. The built-in mic on my MacBook Pro had simply died. These things happen.

I checked when my AppleCare expires. Thirty minutes before the store closes. The nearest Apple Store is a forty-minute drive.

Although I was already on the stable Tahoe 26.2 build, I remembered I'd been running the macOS 26 Developer Beta for weeks before that – I was working on an iOS app and wanted to play around with the new Liquid Glass design. Maybe that broke something. Maybe a clean reinstall would help. I tried everything I could think of: the classic sudo killall coreaudiod command that restarts the entire audio subsystem (I'd been using it a lot after running the Xcode Simulator – the Developer Beta had a bug where it would corrupt the entire audio subsystem, couldn't even play music), resetting microphone permissions via tccutil, checking System Preferences, digging through privacy settings. Nothing worked.

I gave up and started using my AirPods microphone instead. It worked, but after a while, reaching for AirPods every time you need to talk to someone is annoying.

A few days later, I discovered something strange. The microphone worked perfectly in FaceTime. So it wasn't a hardware issue after all. I tested the native Dictation feature – press F5, speak, watch your words appear on screen. That worked too. The microphone was clearly functional, just... selectively.

I went back to Google. Forums. Reddit. Apple Support Communities. Every search result offered the same advice: restart Core Audio, reset permissions, reboot. I'd already tried all of it, multiple times.

I decided to try Claude Code. A highball attempt – I wasn't expecting much. I'd been reading posts on X about how Claude Code can effectively control almost anything on your computer and come up with solutions that aren't "learned" in the traditional sense for large language models – meaning it wasn't just recalling a fix it had seen during training. This exact problem probably didn't exist in any training data. It systematically tries various established strategies within the problem domain the user is dealing with. So I gave it a shot.

My initial prompt:

I have a problem on my MacBook where the microphone doesn't work in some applications. For example, it doesn't work in the native Voice Memos app. But when I use FaceTime, it suddenly works. It just works in some places and not in others. For example, it doesn't work on Discord when I join a room – even though I've explicitly allowed the Discord app to use the microphone in macOS settings. Look deep down at all levels and settings of the microphone itself and see what you can do about it. Then tell me the options and I'll choose one. Take as much time as you need.

What followed was fascinating to watch. Claude started listing audio devices via system_profiler. It found an MS Teams virtual audio driver I'd forgotten was installed. It checked HAL plugins, kernel extensions, TCC permissions. When it couldn't read the system privacy database directly (blocked by SIP), it found workarounds.

The breakthrough came when Claude tested the microphone using ffmpeg – recording a few seconds of audio and measuring the volume levels. The built-in MacBook microphone produced silence: -91 dB, essentially noise floor. But when it tested my iPhone microphone (connected via Continuity), it recorded actual sound at -46 dB.

When I mentioned the Dictation thing to Claude, it immediately said "that's key information" – and explained that Dictation and FaceTime use a completely different audio pipeline than apps like Voice Memos and Discord, which go through AVFoundation. The problem was isolated to the built-in microphone specifically, but only through AVFoundation. I didn't know any of this.

Claude's diagnosis: coreaudiod, the Core Audio daemon, was stuck in an inconsistent state. The built-in microphone had broken routing for AVFoundation specifically. The fix was a sequence of three commands: remove the MS Teams virtual audio driver that may have contributed to the instability, reset TCC microphone permissions, and restart the Core Audio daemon.

Voilà. My microphone works.

At the end, I asked Claude how many tokens the session consumed. A little over a dollar.

How much time and energy would it have cost me to back up my entire MacBook and do a factory reset? How much time and money would it have cost to drive to the nearest Apple Store, wait in line, explain the problem, and pay for a repair if the reset didn't fix it?

The $1 Genius Bar solved it for me.

PS: I couldn't remember exactly what Claude Code did during that session, so I found a VS Code extension that can search through specific conversation threads (Claude Code stores sessions locally for 30 days) and export them to a readable .md file – without the long thinking process blocks. I found the exact thread from about a week ago through that extension. I clicked the export button and hit a paywall – $4/month or $29.99 for lifetime access. So I wrote a prompt in Claude Code... and I probably don't need to explain the rest.

And I hope I don't need to explain that while it's incredible that Claude Code fixed my microphone this way, and amusing that it managed to "bypass" an extension's paywall, this blog post isn't really about the microphone or bypassing paywalls.

For all the less technical users out there, I recommend trying Claude Cowork – it should theoretically have the same capabilities, but with a friendlier UI compared to the terminal-based Claude Code.