Sitemap

Stop Thinking About Chatbot Systems. Start Thinking About Super-Agent Systems.

10 min read4 days ago

--

The next evolution of AI isn’t just about building agents that answer questions. It’s about building systems that continuously understand, manage, and execute work.

Press enter or click to view image in full size

Imagine this scenario…

It’s Monday morning. You open your laptop and find three things happening in your engineering environment.

  • Your production API is experiencing unusual latency.
  • Yesterday’s deployment failed, and nobody has investigated the root cause.
  • Your manager has requested a report combining data from multiple Excel files.

You ask your AI assistant:

“Investigate the production latency, find out why yesterday’s deployment failed, and prepare the report.”

What happens next?

A traditional chatbot might pick one task, start reasoning, call a few tools, and eventually return a response.

You might have to initiate another conversation for the next task.

Now imagine a different experience.

Your AI understands that these are three independent tasks.

It creates three separate execution sessions:

  • Worker 1: Investigates production latency using monitoring tools.
  • Worker 2: Analyses deployment logs and identifies the failure.
  • Worker 3: Processes Excel files and generates the report.

All three work independently in the background.

Meanwhile, you can continue interacting with your AI.

You can ask:

“What’s the status of the production investigation?”

Or:

“Prioritise the deployment issue. Production stability is more important right now.”

The AI understands the ongoing tasks, updates priorities, coordinates execution, and brings you the results when they are ready.

You are no longer managing individual prompts. You are managing outcomes.

This is the mindset shift I want to explore.

From AI that responds to conversations to AI systems that manage ongoing work.

1. The problem with how we currently build AI systems

Most AI applications today follow a familiar architecture:

User
|
v
LLM
|
v
Reasoning
|
v
Tool Calling
|
v
Response

Over the last few years, we have significantly improved this architecture with:

  • RAG for knowledge retrieval.
  • Function calling for external actions.
  • MCP for connecting tools.
  • Multi-agent systems for specialised tasks.
  • Memory layers for retaining context.
  • Agent frameworks for orchestrating workflows.

These are important developments.

However, many implementations still revolve around one fundamental interaction:

The user asks something, and the AI tries to complete it.

But what happens when tasks take 30 minutes?

What happens when new events arrive while an agent is working?

What happens when a user wants to manage five independent tasks simultaneously?

What happens when an agent gets stuck?

What happens when the user returns after two days and wants to continue an unfinished investigation?

We need to think beyond the traditional chatbot interaction model.

Instead of building an intelligent chatbot, perhaps we should start building an intelligent operating system for tasks.

2. Introducing the Super-Agent architecture

While exploring DeepSeek’s Super Agent design, I came across an interesting architectural approach.

Instead of building one agent responsible for everything, separate the system into two important layers:

Router + Workers

The Router: The brain responsible for coordination

Think of the Router as a technical project manager.

It doesn’t need to perform every task itself.

Its responsibilities include:

  • Understanding incoming requests.
  • Identifying whether a task is new or related to existing work.
  • Creating and assigning Workers.
  • Tracking ongoing tasks.
  • Managing context and memory.
  • Collecting results from Workers.
  • Communicating with the user.

The Router primarily coordinates execution rather than performing lengthy tasks.

Workers: The execution layer

Workers are independent execution sessions responsible for completing specific tasks.

Each Worker has:

  • Its own execution context.
  • Access to relevant tools.
  • A specific objective.
  • Its own execution lifecycle.
  • The ability to report progress and results.

For complex tasks, a Worker can also create specialised subagents.

Let’s visualise this.

The Router remains available while the Workers execute independently.

This is a significant distinction from traditional multi-agent orchestration.

Traditional multi-agent systems often coordinate multiple agents to complete one workflow.

A Super-Agent system can coordinate multiple independent tasks, each with its own execution environment and potentially its own agent team.

3. Stop thinking only in terms of prompts. Start thinking in terms of events.

This is probably one of the most interesting architectural ideas.

Most chatbot systems are prompt-driven.

A user sends a message, and the system starts executing.

But real-world enterprise environments generate events continuously.

Consider these examples:

  • A GitHub PR receives a new review comment.
  • Jenkins reports a failed deployment.
  • Datadog detects an unusual latency spike.
  • A customer sends an important email.
  • A new support ticket is created.
  • A scheduled data pipeline fails.

Should an AI system wait for a user to ask about these events?

Not necessarily.

A Super-Agent system can become event-driven.

Instead of waiting for prompts, it can observe relevant events and decide whether action is required.

Press enter or click to view image in full size

However, there is an important consideration.

Not every event needs an LLM.

For example, when a Jenkins event arrives:

  1. Deterministic code checks whether the application is relevant.
  2. It checks whether the event has already been processed.
  3. Relevant events are passed for semantic understanding.
  4. The LLM determines whether an investigation is necessary.
  5. The Router assigns a Worker.

This approach combines deterministic engineering with LLM reasoning.

We don’t need to spend tokens asking an LLM questions that ordinary code can answer.

Use code for predictable decisions and LLMs for decisions requiring contextual understanding.

4. Workers should own tasks, not just execute tool calls

Imagine a Worker investigating a GitHub PR.

Initially:

GitHub PR Event
|
v
Router
|
v
Worker 1

Now, the PR receives three additional review comments.

A traditional architecture might send every new event back through the Router.

But what if the Worker could subscribe to that particular PR thread?

Then subsequent events could be delivered directly to the Worker responsible for that investigation.

GitHub PR
|
v
Event System
|
v
Thread Subscription Registry
|
v
Worker 1

The Router doesn’t need to rediscover the task assignment every time.

This introduces an interesting concept: Thread Subscription.

A Worker can subscribe to multiple threads, and multiple Workers can subscribe to the same thread when necessary.

The system maintains these relationships through a subscription registry.

This becomes particularly useful in enterprise environments where events are continuously generated from different systems.

5. Memory is not just about storing conversations

We often discuss agent memory in terms of:

  • Short-term memory.
  • Long-term memory.
  • Episodic memory.
  • Semantic memory.

But a Super-Agent architecture introduces another interesting perspective.

Get Surya Sethuramasamy’s stories in your inbox

Join Medium for free to get updates from this writer.

Instead of injecting the entire conversation history into every Worker, we can maintain relationships between:

  • Triggers.
  • Threads.
  • Worker sessions.
  • Tasks.
  • Previous execution results.

Consider this request:

“Continue the investigation we discussed last week.”

The Router should not need to retrieve every conversation from last week.

It can identify the relevant thread, locate the associated Worker session, retrieve its progress, and recover the required context.

Three useful context-management ideas are:

Inline

Put immediately relevant information directly into the Worker context.

Example: Current GitHub PR ID, latest comment, previous discussion and task objective.

Spill

Keep large or less relevant information outside the context window and retrieve it when needed.

Instead of injecting an entire conversation, retain references and summaries.

Chain of Recall

Follow references between related tasks, threads and sessions to recover the required context.

For example:

Press enter or click to view image in full size

This is particularly interesting because it moves us beyond relying exclusively on vector similarity for memory retrieval.

We can combine structured relationships with semantic search.

For example:

  • PostgreSQL can maintain task and thread relationships.
  • Redis can provide fast access to active state.
  • pgvector can support semantic retrieval.

The objective is simple:

Give each Worker the context it needs, not everything the system knows.

6. Asynchronous execution: The conversation and task should have independent lifecycles

Think about a task that takes 20 minutes to complete.

Should the user’s conversation remain blocked until the task finishes?

No.

A better architecture supports asynchronous execution.

Consider this conceptual implementation:

task_id = await start_task(
worker="production_investigator",
objective="Investigate API latency"
)
# Returns immediately.# Worker continues in the background.# User can ask other questions.# Worker publishes its result when complete.

This enables:

  • Background execution.
  • Concurrent tasks.
  • Task cancellation.
  • Progress updates.
  • Independent task lifecycles.

The user interacts with one logical AI assistant, while the infrastructure manages multiple execution sessions.

This is an important architectural requirement for long-running autonomous systems.

7. What happens when a Worker gets stuck?

This is where another interesting concept comes into play: the Watchdog.

A Worker can be technically alive but not making meaningful progress.

For example:

  • Repeatedly calling the same tool.
  • Getting stuck in a reasoning loop.
  • Consuming tokens without producing results.
  • Losing track of its original objective.
  • Failing repeatedly because of an external dependency.

A normal health check might report that the Worker is running.

But that doesn’t mean the task is progressing.

An independent Watchdog can monitor task execution and identify these situations.

Depending on the failure, it can:

  • Trigger a retry.
  • Request a new execution strategy.
  • Restart a Worker.
  • Escalate the issue.
  • Ask for human intervention.

The interesting part is that the Watchdog is an independent supervisory component.

Reliability should not depend entirely on the same agent responsible for execution.

8. Think of agents as infrastructure, not just application components

Another important architectural separation is:

Compute, State and Environment.

These three responsibilities should not be tightly coupled.

Compute - Where agent reasoning and execution happen

State - Where task progress, sessions and context are maintained

Environment - Where tools, files, repositories and execution resources are available

Why is this important?

Imagine a developer starts an investigation using a local development environment.

The developer’s laptop goes offline.

If task state and execution are tightly coupled to that laptop, the entire workflow might stop.

But if agent compute and state are managed independently, the system can preserve task progress and continue other work.

When the required environment becomes available again, the relevant task can resume.

This separation makes the architecture more suitable for distributed and long-running workloads.

9. How could we build this using existing technologies?

The interesting thing is that we don’t necessarily need an entirely new framework to experiment with this architecture.

We can combine existing technologies.

Here is one possible implementation:

Press enter or click to view image in full size

For example:

NATS can distribute events, while PostgreSQL maintains task ownership and thread relationships.

FastMCP can provide tools to Workers.

Redis can maintain frequently accessed execution state.

An independent Watchdog can monitor task progress.

The exact technology choices are less important than maintaining clear boundaries between coordination, execution, state and event delivery.

10. The architectural mindset shift

I think the biggest takeaway from exploring Super-Agent architecture is not the introduction of another agent framework.

It is a change in how we think about building AI applications.

We need to move beyond designing systems that simply respond to conversations and start designing systems that continuously manage and execute work.

Here are five important mindset shifts.

From conversations to tasks

Traditional chatbot systems are conversation-oriented. They focus on understanding a user’s message and generating a response.

Super-Agent systems are task-oriented. They focus on understanding objectives, managing ongoing tasks and delivering outcomes.

From prompts to events

Traditional systems wait for user prompts to initiate execution.

Super-Agent systems can also respond to external events such as GitHub updates, deployment failures, monitoring alerts and incoming emails.

The environment itself becomes a source of work.

From one execution loop to multiple independent Workers

Traditional agent implementations often rely on a single execution loop or a predefined workflow.

Super-Agent systems can manage multiple independent Workers, each responsible for a specific objective.

This enables parallel execution without blocking the user’s interaction.

From conversation history to context relationships

Traditional systems often rely on conversation history or retrieved memories to understand previous interactions.

Super-Agent systems can maintain relationships between tasks, threads, Worker sessions and execution history.

This helps them recover relevant context and continue unfinished work.

From workflow orchestration to continuous coordination

Traditional orchestration focuses on executing predefined workflows.

Super-Agent architecture introduces continuous coordination, where the Router manages task ownership, Workers execute independently, and supervisory components monitor progress and recovery.

The system is no longer just executing a workflow. It is managing ongoing work.

We have already made significant progress in building agents that can reason, retrieve information, call tools and collaborate.

The next challenge is building systems that can operate reliably over time.

Systems that can receive events, manage multiple objectives, maintain context, recover from failures and continue working while users focus on other things.

Maybe the next evolution of AI isn’t a better chatbot. Maybe it’s a better operating system for autonomous work.

Final thoughts

I don’t think every AI application needs a Super-Agent architecture.

For a simple customer-support chatbot or a document Q&A application, traditional architectures may be perfectly sufficient.

But when we start dealing with enterprise workflows, long-running investigations, multiple independent objectives, continuous events and autonomous execution, we need to rethink our architecture.

Instead of asking:

“How do I build an agent that answers this request?”

We should start asking:

“How do I build a system that can continuously understand, manage and execute work?”

That is the mindset shift I find most interesting.

Stop thinking about chatbot systems. Start thinking about Super-Agent systems.

Further reading: Exploring DeepSeek Super Agent Design by Offloop.

This article reflects my architectural interpretation and ideas inspired by the design discussed in the article, rather than a claim that every component described here is a production implementation of DeepSeek’s system.

--

--