Jung, Freud, and how they show up in how I design agents.
I spent my quiet university years reading Carl Jung's archetypes and Sigmund Freud's structural model. I didn't know I'd use them. Twelve years later, the orchestrator I designed for GOGOGO's multi-agent runtime has the shape of Freud's ego, and the agent specialist roles map almost cleanly onto Jung's archetypes.

Atakan Özalan
Co-founder & engineering lead, GOGOGO LLC

Between roughly nineteen and twenty-four I barely spoke. I read instead. The two stacks I kept coming back to were Carl Jung — The Archetypes and the Collective Unconscious, Man and His Symbols, the Red Book — and Sigmund Freud — The Interpretation of Dreams, The Ego and the Id. They sat on the same shelf as the I-Ching, which I wrote about separately.
I didn't plan to use any of it. I read it because the engineering-school day-shift didn't satisfy whatever was happening internally that decade. Twelve years later, sitting at GOGOGO LLC's runtime in 2026, I can see those readings showing up in how I structure agent systems. This is the honest map.
Freud's structural model → the orchestrator
Freud's ego/id/superego split is a clumsy summary of his work, but it's serviceable. The id is raw impulse — wants the thing now, no friction. The superego is the internalized rule-set — refuses what's wrong by category. The ego is the negotiator, the part that does the work of reconciling them with reality.
Our multi-agent orchestrator has the same shape. The generator agents are the id — they produce, fast, eagerly, with no native sense of constraint. The validator agents are the superego — they refuse outputs that violate policy, schema, or safety class without negotiation. The orchestrator itself is the ego — the part that knows the user's request, knows which generator to call, knows which validator must approve, and threads the system through reality.
The system works because all three roles are present. A generator-only system hallucinates with no brakes. A validator-only system refuses everything. An orchestrator without either is paperwork. Freud's claim was that humans without one of those three roles aren't functional. The same is true of multi-agent systems.
Jung's archetypes → specialist agents
Jung's archetypes are the recurring roles the unconscious organizes itself around — the Hero, the Shadow, the Old Man, the Anima, the Trickster, the Self. I don't think Jung was making engineering claims. But the roles map onto specialist agents with almost no translation.
- The Hero — the executor agent. The one that takes action, ships side effects, sends the email, swaps the screen, commits the database write. The narrative center of every successful run.
- The Shadow — the critic / adversary agent. The one that says "what if this is wrong, what if the user's actual intent was opposite of what they said." Every multi-agent system needs a shadow. Without it the system flatters itself.
- The Old Man / Senex — the retrieval agent. The wise one. The one that brings back the relevant past — last quarter's invoice, the seventh paragraph of a 40-page policy, the customer's prior preference. Memory as wisdom.
- The Anima / Animus — the translation agent. The interpreter between user-language and system-language. Translates "can I just change the price tag" into a structured API call and back. The bridge between the conscious and the system.
- The Trickster — the exploratory agent. The one that tries the weird path on purpose, to see what new options open. Critical for evals; deadly without a leash. We give the trickster a small budget per run.
- The Self — the orchestrator, the integrated whole. Not a single agent but the system as it appears from outside. What the customer interacts with.
What this gives us in practice
When we design a new agent role at GOGOGO, I check three things implicitly:
- Is the new agent a Freudian role we don't yet have? If we've never had a validator and we're adding one, that's not a duplication — it's a missing organ. Add it.
- Or is it a new Jungian specialist? If we have generator + validator + orchestrator + retriever and we're adding a trickster, that's also a missing organ. Add it.
- Or is it just a duplication of something that already exists? If we're adding a third generator agent that does the same shape of work as the existing two, that's not architecture — that's overload. Combine or drop.
Every time we've kept all three checks honest, the runtime has stayed small and legible. The two times we've fudged them, the system grew specialists that didn't earn their keep and we paid for it three months later in pager wake-ups.
Why I think these frameworks work for engineering
Engineering frameworks come and go. Jung and Freud have been criticized continuously for a century, sometimes fairly. But the categorical claims — that there are recurring functional roles, that systems need a negotiator and a refuser and a generator, that exploration without restraint becomes pathology — are robust. They're robust because they correspond to what any goal-directed system has to do to stay coherent. The frameworks describe properties of cognition, and any system that simulates cognition will reinvent those properties from scratch if you don't bake them in.
Multi-agent AI is the field where this stops being metaphor. The agents are real, the roles are real, the failures are real. Reading Jung and Freud in 2013 turned out to be the cheapest way to spend that decade preparing for the work I'm doing in 2026.
“The library of old psychology you read in your twenties isn't a substitute for engineering. It's the prior. The engineering builds on top of it. Without the prior, you reinvent the same roles badly and call them by worse names.”
The shadow remains the hardest one
I'll close with one specific note. The Shadow — the adversarial critic — is the hardest role to build well, and the one most often skipped. Engineers don't want a critic agent in their system because it makes the system look like it's failing more often. Of course it does. The failures were already there; the critic surfaces them. A multi-agent system without a shadow is a multi-agent system that lies to its operators.
Jung wrote that the work of integration is making the shadow conscious. We try to do the same for our runtime. The critic agent is loud, it dissents, and the orchestrator listens. That's the difference between a system that ships and a system that fakes shipping.
If you want to argue with any of this — or you've found different role-maps that work better — I'd like to hear it. atakanozalan.com or ezagor for the handle.