Claude Code Unpacked : A visual guide (ccunpacked.dev)
960 points by autocracy101 14 hours ago
Related ongoing threads:
The Claude Code Source Leak: fake tools, frustration regexes, undercover mode - https://news.ycombinator.com/item?id=47586778 - March 2026 (406 comments)
Claude Code's source code has been leaked via a map file in their NPM registry - https://news.ycombinator.com/item?id=47584540 - March 2026 (956 comments)
Also related: https://www.ccleaks.com
autocracy101 10 hours ago
Author here. I built this in a few hours after the Claude Code leak.
I've been working on my own coding agent setup for a while. I mostly use pi [0] because it's minimal and easy to extend. When the leak happened, I wanted to study how Anthropic structured things: the tool system, how the agent loop flows, A 500K line codebase is a lot to navigate, so I mapped it visually to give myself a quick reference I could come back to while adapting ideas into my own harness and workflow.
I'm actively updating the site based on feedback from this thread. If anything looks off, or you find something I missed, lmk.
[0] https://pi.dev/
lateforwork 7 hours ago
How about releasing your own source code? It is a beautiful site, love the UX as well as functionality.
azinman2 5 hours ago
It screams vibe coding. This is the anthropic look. Just ask Claude and give it a screenshot.
cowlby 4 hours ago
lateforwork 5 hours ago
kordlessagain 5 hours ago
Guess what? People have ZERO reason to Open Source anything now.
DustinKlent 17 minutes ago
pixl97 5 hours ago
vntok 5 hours ago
smrtinsert 7 hours ago
As a cynical modern eng look for landing page skills
boomskats 8 hours ago
This is nice, I really like the style/tone/cadence.
The only suggestion/nit I have is that you could add some kind of asterisk or hover helper to the part when you talk about 'Anthropic's message format', as it did make me want to come here and point out how it's ackchually OpenAI's format and is very common.
Only because I figure if this was my first time learning about all this stuff I think I'd appreciate a deep dive into the format or the v1 api as one of the optional next steps.
ontouchstart 6 hours ago
I’m using pi and cc locally in a docker container connected to a local llama.cpp so the whole agentic loop is 100% offline.
I had used pi and cc to analyze the unpacked cc to compare their design, architecture and implementation.
I guess your site was also coded with pi and it is very impressive. Wonderful if you can do a visualization for pi vs cc as well. My local models might not be powerful enough.
Thanks for the hard work!
order-matters 5 hours ago
what level of success are you getting with a 100% offline loop (and on what hardware if you dont mind sharing)?
ontouchstart 4 hours ago
andoando 34 minutes ago
Is there any nice themes for pi?
hatmanstack 2 hours ago
Thank you for this brother, well done
haliliceylan 9 hours ago
Can you give me more info about your own agentic setup ?
amangsingh 8 hours ago
A 500k line codebase for an agent CLI proves one thing: making a probabilistic LLM behave deterministically is a massive state-management nightmare. Right now, they're great for prompting simple sites/platforms but they break at large enterprise repos.
If you don't have a rigid, external state machine governing the workflow, you have to brute-force reliability. That codebase bloat is likely 90% defensive programming; frustration regexes, context sanitizers, tool-retry loops, and state rollbacks just to stop the agent from drifting or silently breaking things.
The visual map is great, but from an architectural perspective, we're still herding cats with massive code volume instead of actually governing the agents at the system level.
ttcbj 6 hours ago
I find it really strange that there is so much negative commentary on the _code_, but so little commentary on the core architecture.
My takeaway from looking at the tool list is that they got the fundamental architecture right - try to create a very simple and general set of tools on the client-side (e.g. read file, output rich text, etc) so that the server can innovate rapidly without revving the client (and also so that if, say, the source code leaks, none of the secret sauce does).
Overall, when I see this I think they are focused on the right issues, and I think their tool list looks pretty simple/elegant/general. I picture the server team constantly thinking - we have these client-side tools/APIs, how can we use them optimally? How can we get more out of them. That is where the secret sauce lives.
olejorgenb 6 hours ago
The tools was mostly already known, no? (I wish they had a "present" tool which allowed to model to copy-paste from files/context/etc. showing the user some content without forcing it through the model)
AnotherGoodName 4 hours ago
jayd16 5 hours ago
Why are "tools" for local IO interesting and not just the only way to do it? I can't really imagine a server architecture that gets to read your local files and present them without a fat client of some kind.
What is the naive implementation you're comparing against? Ssh access to the client machine?
abossy 4 hours ago
acedTrex 5 hours ago
> but so little commentary on the core architecture.
The core architecture is not interesting? its an LLM tui, theres not much there to discuss architecturally. The code itself is the actual fascinating train wreck to look at.
sunir 7 hours ago
It’s not surprising. There has been quite a bit of industrial research in how to manage mere apes to be deterministic with huge software control systems, and they are an unruly bunch I assure you.
RALaBarge 6 hours ago
Sunir! Hope you are doing well man, I got a good chuckle from this.
sunir 6 hours ago
comboy 7 hours ago
It's hard to tell how much it says about difficulty of harnessing vs how much it says about difficulty of maintaining a clean and not bloated codebase when coding with AI.
amangsingh 7 hours ago
Why not both? AI writes bloated spaghetti by default. The control plane needs to be human-written and rigid -> at least until the state machine is solid enough to dogfood itself. Then you can safely let the AI enhance the harness from within the sandbox.
whiplash451 6 hours ago
Were human organizations (not individuals) any good at the latter anyway?
chrismarlow9 5 hours ago
We propped the entire economy up on it. Just look at the s&p top 10. Actually even top 50 holdings.
If it doesn't deliver on the promise we have bigger problems than "oh no the code is insecure". We went from "I think this will work" to "this has to work because if it doesn't we have one of those 'you owe the bank a billion dollars' situations"
jayd16 4 hours ago
It's weird to look at the world like this. If they deliver doesn't that invalidate thousands of other business plans? What about paying for that?
If they fail, doesn't software and the giant companies that make it go back to owning the world?
xp84 3 hours ago
cheesecompiler an hour ago
There seem to be multiple mechanisms compensating for imperfect, lossy memory. "Dreaming" is another band-aid on inability to reliably store memory without loss of precision. How lossy is this pruning process?
It's one thing to give Claude a narrow task with clear parameters, and another to watch errors or incorrect assumptions snowball as you have a more complex conversation or open-ended task.
nicoburns 6 hours ago
Kinda depends how much of it is vibe coded. It could easily be 5x larger than it needs to be just because the LLM felt like it if they've not been careful.
saynay 6 hours ago
Claude folks proudly claim to have Claude effectively writing itself. The CEO claims it will read an issue and automatically write a fix, tests, commit and submit a PR for it.
amangsingh 6 hours ago
Bingo. And them 'being careful' is exactly what bloats it to 500k lines. It's a ton of on-the-fly prompt engineering, context sanitizers, and probabilistic guardrails just to keep the vibes in check.
pred_ 4 hours ago
The time is ripe for deterministic AI; incidentally, this was also released today: https://itsid.cloud/ - presumably will be useful for anyone who wants to quickly recreate an open source Python package or other copyrighted work to change its license.
nyrikki 2 hours ago
Can you please explain the use here? I tried the demo, and cat, cp, echo, etc... seem to do the exact same thing without the cost.
Their demo even says:
`Paste any code or text below. Our model will produce an AI-generated, byte-for-byte identical output.`
Unless this is a parody site can you explain what I am missing here?Token echoing isn't even to the lexeme/pattern level, and not even close to WSD, Ogden's Lemma, symbol-grounding etc...
The intentionally 'Probably approximately complete' statistical learning model work, fundamentally limits reproducibility for PAC/Stastical methods like transformers.
CFG inherently ambiguity == post correspondence problem == halt == open domain frame-problem == system identification problem == symbol-grounding problem == entscheidungsproblem
The only way to get around that is to construct a grammar that isn't. It will never exist for CFGs, programs, types, etc... with arbitrary input.
I just don't see why placing a `14-billion parameter identity transformer` that just basically echos tokens is a step forward on what makes the problem hard.
Please help me understand.
BloondAndDoom 3 hours ago
I don’t understand what this is, is it satire? What is it supposed to be doing or solving?
climclam an hour ago
whycombagator 6 hours ago
> Right now, they're great for prompting simple sites/platforms but they break at large enterprise repos
Can you expand on this?
My experience is they require excessive steering but do not “break”
oblio 6 hours ago
I think the "breakage" is in terms of conciseness and compactness, not outright brokenness.
Like that drunk uncle that takes half an hour and 20 000 words to tell you a 500 word story.
xp84 4 hours ago
Indeed. In some ways, this is just kind of an extrapolation of the overall trend toward extreme bloat that we’ve seen in the past 15 years, just accelerated because LLMs code a lot faster. I’m pretty accustomed to dealing with Web application code bases that are 6-10 years old, where the hacks have piled up on top of other hacks, piled on top of early, tough-to-reverse bad decisions and assumptions, and nobody has had time to go back and do major refactors. This just seems like more of the same, except now you can create a 10 year-old hack-filled code base in three hours.
tracyhenry 5 hours ago
> they break at large enterprise repos.
I don't know where you get this. you should ask folks at Meta. They are probably the biggest and happiest users of CC
batshit_beaver 5 hours ago
You mean the company where engineers ask chat bots to write chess games in their spare time in order to hit their AI usage requirements? That Meta?
tracyhenry 2 hours ago
jimbokun 2 hours ago
bogdanoff_2 7 hours ago
What do you mean by "actually governing the agents at the system level", and how is it different from "herding cats"?
amangsingh 7 hours ago
Herding cats is treating the LLM's context window as your state machine. You're constantly prompt-engineering it to remember the rules, hoping it doesn't hallucinate or silently drop constraints over a long session.
System-level governance means the LLM is completely stripped of orchestration rights. It becomes a stateless, untrusted function. The state lives in a rigid, external database (like SQLite). The database dictates the workflow, hands the LLM a highly constrained task, and runs external validation on the output before the state is ever allowed to advance. The LLM cannot unilaterally decide a task is done.
I got so frustrated with the former while working on a complex project that I paused it to build a CLI to enforce the latter. Planning to drop a Show HN for it later today, actually.
skeledrew 4 hours ago
mywacaday 6 hours ago
fallinditch 7 hours ago
marcuscog 5 hours ago
I think these folks are attempting to build systems with IAM, entity states, business rules: all built over two foundational DSLs - https://typmo.com
ap99 4 hours ago
So this is more like an art than science - and Claude Code happens to be the best at this messy art (imo).
mbesto 4 hours ago
Thousands of developers are using Claude Code successfully (I think?).
So what specifically is the gripe? If it works, it works right?
bwfan123 5 hours ago
brute-forcing pattern-matching at scale. These are brittle systems with enormous duct-taping to hold everything together. workarounds on workarounds.
p-e-w 7 hours ago
> A 500k line codebase for an agent CLI proves one thing: making a probabilistic LLM behave deterministically is a massive state-management nightmare.
Considering what the entire system ends up being capable of, 500k lines is about 0.001% of what I would have expected something like that to require 10 years ago.
You can combine that with all the training and inference code, and at the end of the day, a system that literally writes code ends up being smaller than the LibreOffice codebase.
It boggles the mind, really.
davidkunz 6 hours ago
Oh, you should have a look at Pi then.
https://github.com/badlogic/pi-mono/tree/main/packages/codin...
sarchertech 7 hours ago
> You can combine that with all the training and inference code, and at the end of the day, a system that literally writes code ends up being smaller than the LibreOffice codebase.
You really need to compare it to the model weights though. That’s the “code”.
pixl97 5 hours ago
oblio 6 hours ago
It even wrote an entire browser!
By "just" wrapping a browser engine.
raincole 6 hours ago
... what are you even talking about? "The system that literally writes code" has a few hundreds of trillions of parameters. How is this smaller than LibreOffice?
I know xkcd 1053, but come on.
ramesh31 7 hours ago
>A 500k line codebase for an agent CLI proves one thing: making a probabilistic LLM behave deterministically is a massive state-management nightmare. Right now, they're great for prompting simple sites/platforms but they break at large enterprise repos.
Is that the case? I'm pretty sure Claude Code is one of the most massively successful pieces of software made in the last decade. I don't know how that proves your point. Will this codebase become unmanageable eventually? Maybe, but literally every agent harness out there is just copying their lead at this point.
amangsingh 6 hours ago
Claude code is a massively successful generator, I use it all the time, but it's not a governance layer.
The fact that the industry is copying a 500k-line harness is the problem. We're automating security vulnerabilities at scale because people are trying to put the guardrails inside the probabilistic code instead of strictly above it.
Standardizing on half a million lines of defensive spaghetti is a huge liability.
ramesh31 5 hours ago
throwatdem12311 8 hours ago
I know it seems counter-intuitive but are there any agent harnesses that aren’t written with AI? All these half a million LoC codebases seem insane to me when I run my business on a full-stack web application that’s like 50k lines of code and my MvP was like 10k. These are just TUIs that call a model endpoint with some shell-out commands. These things have only been around in time measured in months, half a million LoC is crazy to me.
rkozik1989 5 hours ago
Who cares about LoC? Its a metric that hasn't mattered since we measured productivity in it in the 1980s. For all we know they made these design choices so they could more easily reuse the code in other codebases. Ideally you'd build the library to do that at the same time, but this is start up time constraints to repay loans and shit.
jimbokun 2 hours ago
Bugs and vulnerabilities are roughly linear to lines of code in a project.
imdoxxingme 4 hours ago
"Who cares how much concrete we used in this bridge?"
nojs 4 hours ago
justin_vin 2 hours ago
The bloat is mostly error handling for a fundamentally unpredictable system. A simple agent loop is 200 lines. But then you need graceful recovery when the model hallucinates a tool call, context window management, permission boundaries so it doesn't rm -rf your repo, state persistence across crashes, rate limiting, and cost tracking. Each one is simple individually. Together they're 500k lines.
raincole 6 hours ago
> just TUIs
For starters, CC's TUI is React-based.
ale 5 hours ago
Somebody somewhere is bragging to someone about using React to render a grid of ASCII characters.
GoatInGrey 4 hours ago
acedTrex 5 hours ago
Opencode actually has a pretty solid codebase quality wise. I have done brief pokes and its been largely fine.
TacticalCoder 6 hours ago
> These are just TUIs that call a model endpoint with some shell-out commands.
Claude Code CLI is actually horrible: it's a full headless browser rendering that's then converted in real-time to text to show in the terminal. And that fact leaks to the user: when the model outputs ASCII, the converter shall happily convert it to Unicode (no latter than yesterday there was a TFA complaining about Unicode characters breaking Unix pipes / parsers expecting ASCII commands).
It's ultra annoying during debugging sessions (that is not when in a full agentic loop where it YOLOs a solution): you can't easily cut/paste from the CLI because the output you get is not what the model did output.
Mega, mega, mega annoying.
What should be something simple becomes a rube-goldberg machinery that, of course, fucks up something fundamental: converting the model's characters to something else is just pathetically bad.
Anyone from Anthropic reading? Get your shit together: if you keep this "headless browser rendering converted to text", at least do not fucking modify the characters.*
user34283 5 hours ago
No it is not. Ink does not use a browser.
Andebugulin 12 hours ago
If it was 2020, it would be hard to imagine that after some hours/days you getting a visual representation of the leak with such detailed stats lol
spzb 9 hours ago
I don't have a lot of experience with them but I would have thought static analysis tools circa 2020 would have managed it just fine.
makapuf 12 hours ago
How was this generated ? I'm quite sure "with ai/claude code" but what are the actual steps ?
rzmmm 11 hours ago
For the animations specifically, it's using Motion (fka Framer Motion) Javascript library. If you describe some animations from the site to an LLM and ask it to use Framer motion, you get very similar results. The creator likely just prompted for a while until they were happy with the outcome.
FartyMcFarter 10 hours ago
ernst_klim 9 hours ago
> 500k lines of code
Isn't it a simple REPL with some tools and integrations, written in a very high level language? How the hell is it so big? Is it because it's vibecoded and LLMs strive for bloat, or is it meaningful complexity?
samusiam 7 hours ago
I just checked competitors' codebases:
- Opencode (anomalyco/opencode) is about 670k LOC
- Codex (openai/codex) is about 720k LOC
- Gemini (google-gemini/gemini-cli) is about 570k LOC
Claude Code's 500k LOC doesn't seem out of the ordinary.
lelanthran 6 hours ago
> Claude Code's 500k LOC doesn't seem out of the ordinary.
Aren't all the other products also vibe-coded? "All vibe-coded products look like this" doesn't really seem to answer the question "Why is it so damn large?"
It's a repl, that calls out to a blackbox/endpoint for data, and does basic parsing and matching of state with specific actions.
I feel the bulk of those lines should be actions that are performed. Either this is correct or this is not:
1. If the bulk of those lines implement specific and simple actions, why is it so large compared to other software that implements single actions (coreutils, etc)
2. If the actions constitute only a small part of the codebase, wtf is the rest of it doing?
samusiam 6 hours ago
johnisgood 7 hours ago
All of them are really, REALLY bad.
surajrmal 6 hours ago
ale 5 hours ago
There’s probably a subconscious incentive to make a tool that’s “complex” because the underlying LLM also is complex.
carterschonwald 9 hours ago
yeah its honestly full of vibe fixes to vibe hacks with no overarching desig. . some great little empirical observations though!i think the only clever bit relative to my own designs is just tracking time since last cache ht to check ttl. idk why i hadnt thought of that, but makes perfect sense
spiderfarmer 9 hours ago
I don't know if you're mindlessly repeating the HN trope that JS/typescript/Electron is bad and that all bloat can easily prevented, but if you're truly interested in answers to your questions: RTFA.
fragmede 9 hours ago
How many LoC should it be, for that kind of program?
forgotpwd16 8 hours ago
Other notable agents' LOC: Codex (Rust) ~519K, Gemini (TS) ~445K, OpenCode (TS) ~254K, Pi (TS) ~113K LOC. Pi's modular structure makes it simple to see where most of code is. Respectively core, unified API, coding agent CLI, TUI have ~3K, ~35K, ~60K, ~15K LOC. Interestingly, the just uploaded claw-code's Rust version is currently at only 28K.
edit: Claude is actually (TS) 395K. So Gemini is more bloat. Codex is arguable since is written in lower-level language.
ernst_klim 8 hours ago
Well FFmpeg is roughly 1500k, but it's C+Asm and it's dozens of codecs and pretty complex features. SBCL is around 500k I guess.
I'm not saying that this is necessarily too much, I'm genuinely asking if this is a bloat or if it's justified.
troupo 9 hours ago
It's a TUI API wrapper with a few commands bolted on.
I doubt it needs to be more than 20-50kloc.
You can create a full 3D game with a custom 3D engine in 500k lines. What the hell is Claude Code doing?
neurostimulant 8 hours ago
hombre_fatal 8 hours ago
spiderfarmer 8 hours ago
criley2 8 hours ago
brauhaus 11 hours ago
Even today, I'm still astounded that there are people capable of building a gorgeous and interesting site like this in less than 2 days...
spondyl 10 hours ago
Well, I assume this is all just generated with Claude Code, right? Whether there is much back and forth with the LLM is a valid question and nothing wrong with generating websites (I do it too for some side projects). Claude loves generating websites with a particular style of serif font. We also saw this with https://tboteproject.com/timeline/ and I've just generally seen it from various designs that coworkers have spit out over months using Claude defaults.
I guess I just find it weird because all the signals are messed up so whenever I see these sorts of layouts, I feel like I'm looking at the average where I don't think "gorgeous and interesting" at all. Instead, I'm forced to think "I should be skeptical of this based on the presentation because it presents as high quality but this may be hiding someone who is not actually aware of what they're presenting in any depth" as the author may have just shoved in a prompt and let it spin.
There's actually a similarly designed website (font weights, font styles etc) here in New Zealand (https://nzoilwatch.com/) where at a glance, it might seem like some overloaded professional-backed thing but instead it's just some guy who may or may not know anything about oil at all, yet people are linking it around the place like some sort of authoritative resource.
I would have way less of an issue if people just put their names by things and disclosed their LLM usage (which again, is fine) rather than giving the potentially false impression to unequipped people that the information presented is actually as accurate and trustworthy as the polish would suggest.
kristopolous 10 hours ago
I really wish I had that clout-chasing gene - it doesn't even occur to me until I see someone else do it.
I'm serious. The hype chasing clearly clearly matters. .
things like this: https://github.com/instructkr/claw-code I mean ok, serious people put in years of effort for 100 of those stars ...
it's continually wild how extremely irrelevant hard effortful careful work is.
I think that's the game. Get up, look at the headlines, figure out how you can exploit them with vibe coding, do some hyphy project and repeat.
Maybe some lobster themed bullshit between openclaw and the claudecode leak.
I'm not being a cynic here, I'm just telling you what I'm going to do tomorrow.
simgt 7 hours ago
kristopolous 44 minutes ago
kristopolous 7 hours ago
user34283 10 hours ago
This website has "Curation assisted by AI." at the bottom.
Personally, I don't think I will be putting any such disclaimers or disclosures on my work, unless I deem it relevant to the functionality.
ricardobeat 10 hours ago
Claude itself can generate this in minutes if you know how to ask.
MikeNotThePope 10 hours ago
I was talking to one of the people who works at a big agentic coding tools. If I recall correctly, he was talking about how they use the tool to build the tool. I was complaining that all of the websites/frontends I make look pretty weak, and I'm amazed they get much slicker looking UIs with the same tool. He showed me that one way they do it is by having an extensive UI library of components/graphics/whatever, and also mentioned that the folks build their UIs know how to prompt/use the tool because it's backed by years of UI development knowledge & superior resources. I realized I didn't have any of that, and it actually made me feel better.
Last week we I was struggling to go from vague prompt to a OMG-it's-so-nice-looking web app, I remembered that example above and then decided to create my own component library, which I did in a couple days: https://www.substrateui.dev/. I was actually super happy that I was able to accomplish that, and then I realized I wanted to better understand the content that I had vibe coded into existence. So now I'm recreating that design system step by step w/ Claude code, filling in gaps in my knowledge & learning a bit about colors, typography, CSS, blah blah blah. It's actually a lot of fun because I'm able to explore all of the concepts and learn enough to build a front end that doesn't suck & is good enough for my use case without getting stuck for days on trying to center a stupid div by hand or play whack-mole-fix-something-and-break-something-else when trying to clean up AI slop.
zem 10 hours ago
that's really awesome. how did you go about building the component library?
MikeNotThePope 10 hours ago
oasisbob 10 hours ago
Is this gorgeous?
Content resizing, needing to juggle a speed knob to read, and the overall presentation makes it feel like Edward Tufte flavored nightmare fuel.
nurettin 10 hours ago
It is pretty good, shows numbers clearly on desktop and phone. Not sure what the criticism even means.
oasisbob 3 hours ago
raincole 10 hours ago
But somehow, according to HN, LLMs make you less productive, not more :)
supersparrow 10 hours ago
The people who don’t know how to use an LLM to make them more productive, or are scared it’s going to take their job, are louder than the people who are making good use of them to make them more productive.
That just seems to be human nature unfortunately - the complainers are always louder.
drzaiusx11 7 hours ago
techpression 10 hours ago
ggregoire 3 hours ago
That's a bit dishonest, the consensus on HN seems to be that LLMs are very good at oneshotting small projects from scratch. Especially when using super mainstream technologies like html and tailwind, as does the discussed website. And especially when it's a one time operation and the project will never need to be maintained, like the discussed website.
kordlessagain 5 hours ago
More like 2 hours.
piker 11 hours ago
.
comboy 10 hours ago
I mean, tools change, but I'd be happy to hear if any tool can create that by just saying create "Claude Code Unpack" with nice graphics. or some other single prompt. It likely was an iterative process and it would be lovely if more people started sharing that, because the process itself is also very interesting.
I've created some chinese characters learning website and I took me typing 1/3 of LoTR to get there[1]. I would have typed like 1% of that writing code directly. It is a different process, but it still needs some direction.
ipnon 10 hours ago
I think it is accurate. Where are the autonomous AI who beat the creator to the punch? When we write "Hello, World!" in C and compile it with `gcc`, do we give credit to every contributor to GNU? AI is a tool that thus far only humans are capable of using with the unique inspiration. Will this change in the future? Certainly. But is it the case now? I think my questions imply some reasonable objections.
oriettaxx 10 hours ago
“Che cos’è il genio? È fantasia, intuizione, colpo d’occhio e velocità di esecuzione”
apeace 4 hours ago
Pardon me, but I think it's rather obvious that it worked this way?
The real value of Anthropic is in the models that they spent hundreds of millions training. Anyone can build a frontend that does a loop, using the model to call tools and accomplish a task. People do it every day.
Sure, they've worked hard to perfect this particular frontend. But it's not like any of this is revolutionary.
hxugufjfjf 3 hours ago
Is this what perfection looks like?
wklm 9 hours ago
Here's a codeberg repo with the leaked source: https://codeberg.org/wklm/claude-code
bsgeraci 8 hours ago
Dang! Glad to see others doing this. I totally made this site yesterday like 11 hours ago :/ but did not get the traction.
I love your implementation.
Here was my first stab:
kordlessagain 5 hours ago
That's where we are now, lots of us doing similar. Don't get hung up on who gets noticed, that "value" is almost zero now.
stingraycharles 13 hours ago
I guess they really do eat their own dogfood and vibe code their way through it without care for technical debt? In a way, it’s a good challenge, but it’s fairly painful to watch the current state of the project (which is about a year old now, so it should be in prime shape).
brabel 12 hours ago
> is about a year old now, so it should be in prime shape
A 1yo project may be in good shape if written by just one dev, maybe a few. But if you have many devs, I can guarantee it will be messy and buggy. If anything, at 1yo it is probably still full of bugs because not enough time has elapsed for people to run into them.
mattmanser 11 hours ago
It's only 510k LoC, at ~100 lines of code a day for a year, this code base would take 23 engineers a year to write. That's for 220 working days in somewhere civilized.
And I'm sure we all know that when working on a greenfield project you can produce a lot more LoC per day than maintaining a legacy one.
Given that vibe code is significantly more verbose, you're probably talking about ~15 engineers worth of code?
I know that's all silly numbers, but this is just attempting to give people some context here, this isn't a massive code base. I've not read a lot of it, so maybe it's better than the verbose code I see Claude put out sometimes.
lelanthran 5 hours ago
cududa 10 hours ago
mikkupikku 9 hours ago
Put yourself in their shoes; either the quality of Claude's coding continues to improve or else their business is probably doomed if it stagnates, so for them it makes sense to punt technical debt to the future when more capable versions of their models will be able to better fix it.
This is why I personally don't take technical debt arguments about how LLM maintained code bases deteriorate with size/age seriously; it presumes that at some point I'll give up with the LLM and be left with a mess to clean up by hand, but that's not going to happen, future maintenance is to be left to LLMs and if that isn't possible for some reason then the project is as good as dead anyway. When you start a project with a LLM the plan should be to see it through with LLMs, planning to have unaided humans take over maintenance at some point is a mistake.
blanched 7 hours ago
Doesn't this contradict the popular wisdom that "what's good for a human engineer is good for an LLM"? e.g. documentation, separation of concerns, organized files, DRY.
I find LLMs very useful and capable, but in my experience they definitely perform worse when things are unorganized. Maintenance isn't just aesthetics, it's a direct input to correctness.
mikkupikku 7 hours ago
openfoliage 8 hours ago
I am more worried that we are moving toward creating black boxes and this might turn software "development" into a field as confused as philosophy and dialectics.
coldtrait 13 hours ago
Boris Cherny, the creator of Claude Code said he uses CC to build CC.
Cthulhu_ 12 hours ago
Which makes for an interesting thought / discussion; code is written to be read by humans first, executed by computers second. What would code look like if it was written to be read by LLMs? The way they work now (or, how they're trained) is on human language and code, but there might be a style that's better for LLMs. Whatever metric of "better" you may use.
Just a thought experiment, I very much doubt I'm the first one to think of it. It's probably in the same line of "why doesn't an LLM just write assembly directly"
syphia 12 hours ago
tempay 12 hours ago
fragmede 10 hours ago
stingraycharles 11 hours ago
Yes but my point was that they seem to explicitly not care about code quality and/or the insane amount of bloat, and seem to just want the LLM to be able to deal with it.
lukaslalinsky 11 hours ago
troupo 11 hours ago
They explicitly boast about using claude code to write code: https://x.com/bcherny/status/2007179836704600237
That's how you get "oh this TUI API wrapper needs 68GB of RAM" https://x.com/jarredsumner/status/2026497606575398987 or "we need 16ms to lay out a few hundred characters on screen that's why it's a small game engine": https://x.com/trq212/status/2014051501786931427
000ooo000 10 hours ago
Just finished looking at Ink here.. frontend world has no shame. Love the gloating about 40x less RAM as if that amount of memory for a text REPL even approaches defensible. "CC built CC" is not the flex people seem to suggest it is.
johnisgood 6 hours ago
anthk 4 hours ago
dheerajmp 13 hours ago
Feel free to add this to Awesome Claude code. https://github.com/rosaboyle/awesome-cc-oss
euphetar 8 hours ago
Appreciate the effort, but this is very basic and nothing you need the source code to understand. I was expecting a deep dive into what specific decisions they made, but not how an loop of tool calls works
ttcbj 6 hours ago
I found it a useful overview. My primary question about the client source was - is there any secret sauce in it? Based on this site, the answer is no, the client is quite simple/dumb, and all the secret sauce resides on the server/in the model.
I particularly valued the tool list. People in these comments are complaining about how bad the code is, but I found the client-side tools that the model actually uses to be pretty clean/general.
My takeaway was more that at a very basic level they know what they are doing - keep the client general, so that you can innovate on the server side without revving the client as much.
simple10 2 hours ago
This tool is useful if you want to see all the internal commands claude agents are making in real-time:
restlessforge 14 hours ago
Okay those "hidden features" are amazing, especially the cross-session referencing. I hope we can look forward to that in the future
Also I definitely want a Claude Code spirit animal
jwilliams 14 hours ago
It's live! If you're on the latest cc you can use /buddy now.
jen729w 13 hours ago
It's a ridiculous folly. I've already lost a well-constructed question because I accidentally tabbed into my pointless 'buddy'.
(Yes, I know I can turn it off. I have.)
binocarlos 12 hours ago
Nevermark 13 hours ago
Ok! First prompt, obviously:
“Complete thyself.”
And I want an octopus. Who orchestrates octopuses.
Scaled 10 hours ago
I need the dragon pet... someone add it to open code / pi, please!
swyx 12 hours ago
> also related: https://www.ccleaks.com
This deployment is temporarily paused
Myzel394 11 hours ago
It's available on the internet archive
https://web.archive.org/web/20260331105051/https://www.cclea...
BTW, that's why you should use your own infrastructure and not depend on Vercel
prameshbajra 11 hours ago
Same!
WaterRun 10 hours ago
Thanks to Claude Code, we got such a beautifully polished and dazzling website that gives a complete introduction to itself the very moment the leak happened :)
jatins 14 hours ago
There's this weird thing about AI generated content where it has the perfect presentation but conveys very little.
For example the whole animation on this website, what does it say beyond that you make a request to backend and get a response that may have some tool call?
roughly 13 hours ago
Also it's just randomly incorrect in places. For instance, it lists "fox" as one of the "Buddy" species, but that's not in the code.
hecanjog 10 hours ago
The classification is pretty weird sometimes, too. For example the `/exit` slash command is filed under advanced and experimental commands...
autocracy101 13 hours ago
That's been corrected, I did another fact checking pass!
dare944 11 hours ago
IsTom 12 hours ago
When you're picking most likely tokens, you get least surprising tokens, ones with least entropy and least information per token.
autocracy101 13 hours ago
That's fair. The site isn't meant to be a deep technical dive, it's more of a visual high-level guide of what I've curated while exploring the codebase while assisted by AI, 500k loc codebase is just too much to sift through in a short amount of time.
siva7 14 hours ago
Really Weird but then it's so easy spot AI text by this pattern
bonoboTP 11 hours ago
I agree with you and I'm generally an AI "defender" when people superficially dismiss AI capabilities, but this is a more subtle point.
If you prompt with little raw material and little actual specification of what you want to see in the end, eg you just say make a detailed breakdown dashboard-like site that analyzes this codebase, the result will have this uncanny character.
I'd describe it as a kind of "fanfic", it (and now I'm not just talking about this website but my overall impression related to this phenomenon) reminds me a bit like how when I was 15 or so, I had an idea about how the world works then things turned out to be less flashy, less movie-like, less clear-cut, less-impressive-to-a-teenage-boy than I had thought.
If you know the concept of "stupid man's idea of a smart man", I'd say AI made stuff (with little iteration) gives this outward appearance of a smart man from the Reddit-midwit-cinematic-universe. It's like how guns in movies sound more like guns than real guns. It's hyperreality.
Again this is less about the capabilities of AI and it's more connected to the people-pleasing nature of it. It's like you prompt it for some epic dinner and it heaps you up some hmmm epic bacon with bacon yeah (referring to the hivemind-meme). Or BigMac on the poster vs the tray, and the poster one is a model made with different components that are more photogenic. It's a simulacrum.
It looks more like your naive currently imagined thing about what you think you need vs what you'd actually need. It's like prompting your ideal girlfriend into AI avatar existence. I'm sure she will fit your ideal thought and imagination much better but your actual life would need the actual thing.
This relates to the Persona thing that Anthropic has been exploring, that each prompt guides the model towards adopting a certain archetypal fiction character as it's persona and there are certain attraction basins that get reinforced with post training. And in the computer world, simulated action can be easily turned into real action with harnesses and tools, so I'm not saying that it doesn't accomplish the task. But it seems that there are more sloppy personas, and it seems that experts can more easily avoid summoning them by giving them context that reflects more mundane reality than a novice or an expert who gives little context. Otherwise the AI persona will be summoned from the Reddit midwit movie.
I'm not fully clear about all this, but I think we have a lot to figure out around how to use and judge the output of AI in a productive workflow. I don't think it will go away ever, but will need some trimming at the edges for sure.
hrmtst93837 9 hours ago
If you need flashy motion graphics to explain 'returns data from API,' you probably can't justify the pixel budget or the user's time.
jamalawd 6 hours ago
I built a site that lets you explore and browse all the Claude Code prompts in a structured way:
sibtain1997 13 hours ago
Kairos and auto-dream are more interesting than anything in the agent loop section. Memory consolidation between sessions is the actual unsolved problem. The rest is just plumbing tbh
giancarlostoro 12 hours ago
Projects like Beads help with memory consolidation by making it somewhat moot, since it stays "offline" and can be recollected at any moment.
RishabhGarg12 an hour ago
This is funny because this looks exactly like my vibe coded Portfolio - colors and all.
brandensilva 9 hours ago
ccleaks.com seems to be "temporarily paused" from Vercel.
Here is another one that goes in depth as well: www.markdown.engineering for anyone going deep on learning.
tallesborges92 4 hours ago
Please share the prompt/skills used to build it
samuelknight 5 hours ago
On the one hand I don't understand why it needs to be half a million lines. However code is becoming machine shaped so the maintenance bloat of titanic amounts of code and state are actually shrinking.
tonymucci 2 hours ago
FYI - This pops at my work as a sec threat via Cisco Umbrella. :D
diyseguy 3 hours ago
I'm just admiring the visualizations this guy built in under a day. Wondering how he did it so fast
jen729w 13 hours ago
Is it just me or do I not find the Claude Code application that fascinating?
I use it all day and love it. Don't get me wrong. But it's a terminal-based app that talks to an LLM and calls local functions. Ooookay…
59nadir 12 hours ago
I think it's good that it's out there, and I wonder why Anthropic have been keeping it closed source; clearly they can't possibly think that the CC source code is a competitive advantage...?
Agents in general are easy to make, and trivial to make for yourself especially, and the result will be much better than what any of the big providers can make for you.
`pi` with whatever commands/extensions you want to make for yourself is better than CC if you really don't want to go through the trouble of making your own thing.
ramraj07 6 hours ago
If you think this is not a competitive advantage then youre missing the point. LLMs arent so good that they work through bad abstractions and pretty much everyone has bad abstractions. CC is what invents some of the best abstractions (not the first). I think theyre they first ones who nailed subagents well. Theres a lot to learn from them and while im learning a lot from their source code my heart bleeds that this happened to them.
Sincerely, someone running a team building similar things for analytics.
ariwilson 12 hours ago
why do you think agents you make yourself will be better for you? integration with tooling that you prefer? your local dev setup built in?
curious as i haven't gotten around to writing my own agent yet
59nadir 7 hours ago
parasti 13 hours ago
I feel the same way. Given it's AI-written, looking at the code isn't even worth it to me. I would rather read a blog post about how they develop it day to day.
dgb23 12 hours ago
That’s what every agent does. They are fundamentally simple.
But you can do a lot of interesting things on top of this. I highly recommend writing an agent and hooking it up to a local model.
j45 13 hours ago
Clever architecture often can still beat clever programming.
deskamess 6 hours ago
I like the Claude desktop interface. The color scheme, presentation, fonts, etc. Is there a CSS I can find for the desktop version - I assume it's using some kind of web rendering engine and CSS is part of it.
MattCruikshank 5 hours ago
Don't do the "noise" thing this web page does. It hurts my eyes so bad. Why would you purposefully make your page look like a low-quality JPG?
anonyfox 2 hours ago
You guys all get it’s an April joke?
jbdamask 7 hours ago
Nice job - I'm a fan. Makes it easy to get the big picture so I know where to dive in.
0zwan 6 hours ago
I don't know why people obsess and spend so much time on this codebase. It isn't (and never was)alien technology. It's just mediocre typescript generated by an LLM
ramon156 5 hours ago
Has anyone tried USER_TYPE "ant"? I might be crazy, but I have not hit my limit yet after 3 questions.
vivzkestrel 13 hours ago
would be nice if the transformers code for one of these frontier LLM models got leaked, HN will have a field day with a reveal like that
loveparade 13 hours ago
I doubt there is anything special about the transformer code the frontier labs use. The only thing proprietary in it are probably the infrastructure-specific optimizations for very large scale distributed training and some GPU kernel tricks. The real moat is the training data, especially the RLHF/finetuning data and verifiable reward environments, and the GPU clusters of course.
The open source models are quite close, and they'd probably be just as good with the equivalent amount of compute/data the frontier labs have access to.
dgb23 12 hours ago
That’s what I‘m thinking as well.
However, I assume that usage data could be increasingly valuable as well. That will likely help the big commercial cloud models to maintain a head start for general use.
jedisct1 8 hours ago
I'm developing an agent focused on A2A, support for small models, and privacy (https://swival.dev).
I looked at the leaked code expecting some "secret sauce", but honestly didn't found anything interesting.
I don't get the hype around Claude Code. There's nothing new or unique. The real strength are the models.
_pdp_ 7 hours ago
Btw, the 500K is just the source - it does not include tests. I would imagine there are at least 2-4x tests.
shuntaka9576 7 hours ago
A year ago I wouldn't have guessed a TUI could be a competitive advantage. But "harness engineering" became a thing, and it turns out the agent wrapper — tool orchestration, context management, permission flows — is where real product value lives. Not as much as the models themselves, but more than most people expected. This leak is a painful reminder of that.
AJRF 10 hours ago
This is AI slop.
First command I looked at:
/stickers:
Displays earned achievement stickers for milestones like first commit, 100 tool calls, or marathon sessions. Stickers are stored in the user profile and rendered as ASCII art in the terminal.
That is not what it does at all - it takes you to a stickermule website.What is the motivation for someone to put out junk like this?
thepasch 10 hours ago
> What is the motivation for someone to put out junk like this?
Getting something with a link to their GitHub onto the frontpage of HN. Because form matters much more in this world than substance.
ricardobeat 10 hours ago
Clout and reaching the top of HN apparently.
The animated explanation at the top is also way too fast at 1x, almost impossible to follow; that immediately hinted at the author not fully reading/experiencing the result before publishing this.
user34283 9 hours ago
Why is it that some people feel entitled to take this kind of tone as soon as AI is used?
It's inappropriate to label a free side project 'junk' or 'slop' even if it contains major errors.
Particularly when there's a disclaimer about possible inaccuracies on the page.
AJRF 5 hours ago
> Why is it that some people feel entitled to take this kind of tone as soon as AI is used?
BECAUSE ITS WRONG! THE DATA IS WRONG!
euphetar 8 hours ago
People don't like having their time wasted
sscaryterry 6 hours ago
No point in reading this, they are continuing to lobotomize it daily...
rhofield 13 hours ago
Really nice visualisation of this, makes understanding the flow at a high levle pretty clear. Also the tool system and command catalog, particularly the gated ones are super interesting.
delphic-frog 7 hours ago
Looks like ccleaks is down eek - not long before ccunpacked has same fate.
sourcecodeplz 9 hours ago
Nice presentation. The reality is there is nothing really special about the claude code harness?
simonreiff 13 hours ago
Nice site. I might suggest moving SendMessage to the Hidden Features as they don't appear to have implemented a ReadMessage or ListMessages tools.
m132 13 hours ago
I mean, I get it: vibe-coded software deserves vibe-coded coverage. But I would at least appreciate it if the main part of it, the animation, went at a speed that at least makes it possible to follow along and didn't glitch out with elements randomly disappearing in Firefox...
How is this on the front page?
brabel 12 hours ago
It's on the front page because it looks really cool. You can complain about it being vibe coded, but it still looks good. If you ask Claude to allow the user to slow down the animation, it can do that quite easily, that's just not a problem caused by vibe coding. And I'm on FF and didn't notice anything glitching out.
lanbin 11 hours ago
However, excellent development practices involve modularizing code based on functional domains or responsibilities.
The utils directory should only contain truly generic, business-agnostic utilities (such as date retrieval, simple string manipulation, etc.).
We can see that the code produced by Vibe is not what a professional engineer would write. This may be due to the engineers using the Vibe tool.
afferi300rina 11 hours ago
That's the hallmark of "vibe coding": optimizing for immediate output while treating the utils folder as a generic junk drawer.
TeMPOraL 10 hours ago
Another "hallmark" that happens to describe pretty much every codebase people wrote even before LLMs were a thing.
lll-o-lll 10 hours ago
lastdong 13 hours ago
I hope /Buddy is ported across to OpenCode.
bilalbayram 6 hours ago
Same guide for opencode would be nice too
p2detar 12 hours ago
So it does use ripgrep and not unix grep. [0] I knew it from some other commenters here on HN, but it's nice to see it in the source as well.
0 - https://github.com/zackautocracy/claude-code/blob/main/src/u...
kristopolous 11 hours ago
I just stumbled on a fascinating replacement candidate while clicking around on embed models on hugging face: https://github.com/lightonai/next-plaid/tree/main/colgrep
it looks really interesting.
nitnelave 11 hours ago
Ah, good well-architected code, finally... With most of the code in utils/other :D
cjlm 11 hours ago
I prefer this mapping from Nikita @ CosmoGraph: https://run.cosmograph.app/public/dfb673fc-bdb9-4713-a6d6-20...
rubenflamshep 5 hours ago
This loads some bars and then just breaks for me :(
fersarr 10 hours ago
why do people care so much? it's just an agentic loop
__alexs 9 hours ago
Many people seem to believe the Claude Code has some sort of secret sauce in the agent itself for some reason.
I have no idea why because in my experience Claude Code and the same models inside of Cursor behave almost identically. I think all the secret sauce is in the RLHF.
a3w 8 hours ago
No mention of undercover mode?
techpression 10 hours ago
519K lines of code for something that is using the baseline *nix tools for pretty much everything important, how do they even manage to bloat it this much? I mean I know how technically, but it's still depressing. Can't they ask CC to make it good, instead of asking it to make it bigger?
Hannah_Adam 9 hours ago
Is that safe to use?
blueTiger33 8 hours ago
its April fools joke. this has really gone wide
ramon156 13 hours ago
I expect dozens more "research articles" that
- find nothing - still manage to fill entire lages - somehow have a similar structure - are boring as fuck
At least this one is 3/4, the previous one had BINGO.
chrz 9 hours ago
nice example: Find all TODO spin the AI machine
i do shift ctrl F
mdavid626 14 hours ago
How the hell is it 500k lines?
twsted 14 hours ago
It is vibe coded.
dankobgd 8 hours ago
it's just bunch of useless junk
cubefox 9 hours ago
I think this is unethical, and "everyone else is also doing it" is not a valid excuse.
fartfeatures 13 hours ago
Ccleaks is down?
inside_story 14 hours ago
cool Archaeologization Collection Output
fsniper 11 hours ago
Source leak or free code review? I can say that there is no bad publicity.
steveharing1 5 hours ago
Anthropic is now more open than OpenAI Itself lmao!
spirelab 11 hours ago
I got a goose
War flashbacks to genshin
dominotw 9 hours ago
what is so fascinating about claude code. we have codex that is open source already. is there something special to learn from claude code?
kinnth 8 hours ago
this claude code leak is such a fuck up...
The fact that now every agent designer knows what was already built is a huge shot of steroids to their codebase!
phplovesong 4 hours ago
Holy fukking hell thats some bad code. Full blown AI slop.
jruohonen 14 hours ago
Thanks, I'll use this for teaching next week (on what not to do). BashTool.ts :D But, in general, I guess it just shows yet again that the emperor has no clothes.
dgb23 11 hours ago
Are you not feeling the vibes?
In all seriousness. I think you‘re supposed to run these in some kind of sandbox.
petesergeant 12 hours ago
> it just shows yet again that the emperor has no clothes
Which emperor, specifically?
Vektorceraptor 10 hours ago
Hey, nice job! Next time tell calude to add some explosions, car crashes and stuntment into the design! Who cares about content anyway ... https://speculumx.at/blogpost/getting-sick-of-ai-slop
sscaryterry 6 hours ago
Enshitification galore
ramraj07 6 hours ago
What exactly is shitty here? A program i use for hours every day to do the job previously done by many N human beings, without many bugs, seems to have code thats seemingly messy but still clearly works.
sscaryterry 5 hours ago
Maybe if it was working the way it was 2 months ago, life would be good?