DEV Community

Dhamodaran V K
Dhamodaran V K

Posted on

I stopped fighting AI context windows and changed the architecture instead.

πŸš€ If you've used AI to build a real software project, you've probably experienced this.

You start with a clean conversation.

The AI understands your architecture, remembers your requirements, and writes surprisingly good code.

A few hours later, everything changes.

The conversation becomes enormous. The model starts forgetting earlier decisions. It rewrites code you already fixed, contradicts previous implementations, and suddenly needs reminders about parts of the project it understood perfectly an hour ago.

Eventually, the only solution is to open a brand-new chat and spend another 15 minutes explaining your project from scratch.

After repeating this cycle enough times, I stopped asking myself:

"How can I make AI remember more?"

Instead, I asked a completely different question.

"Why am I trying to make one AI conversation build an entire software project?"

That question completely changed how I think about AI-assisted development.


πŸ’‘ The Problem Isn't the AI

Most discussions around AI coding focus on:

  • Larger context windows
  • More tokens
  • Better models
  • Longer conversations

But I don't think that's the real solution.

Large software projects naturally generate thousands of implementation decisions.

Even if models continue increasing their context windows, keeping an entire project inside one continuously growing conversation doesn't feel like a scalable architecture.

The longer the conversation becomes, the more:

  • πŸ’° Expensive
  • 🐒 Slower
  • 😡 Harder to manage

Instead of building better prompts, I wondered if I should redesign the workflow itself.


🧠 What If Every Task Had Its Own Brain?

Rather than asking one AI conversation to complete an entire project, I split the project into independent tasks.

For example:

  • Implement authentication
  • Add logging
  • Create API endpoints
  • Write unit tests
  • Update documentation

Each task becomes a completely isolated AI session.

When one task finishes, that session disappears forever.

The next task starts with a brand-new AI session that focuses only on the work it needs to perform.

That means:

  • βœ… No growing conversation
  • βœ… No accumulated context
  • βœ… No forgotten implementation details from three hours ago

Every task starts with a clean slate.


βš™οΈ That Idea Became an AI Task Orchestrator

I built an open-source AI Task Orchestrator around this concept.

Instead of continuously chatting with AI, the orchestrator works through a tasks.md file one item at a time.

For every task it:

  • πŸš€ Starts a fresh AI session
  • πŸ“„ Sends only the relevant instructions
  • ⏳ Waits for implementation to complete
  • πŸ” Verifies that source code actually changed
  • πŸ› οΈ Runs restore, build, and tests
  • βœ… Marks the task as complete

Then it moves to the next task.

Only one AI session is ever active.

There is no parallel execution.

There is no giant conversation that keeps growing forever.


βœ… Trust, But Verify

One thing always bothered me about AI coding assistants.

They often say:

"Done."

But...

Are they really?

I wanted the orchestrator to verify every implementation instead of trusting the AI's response.

A task is considered complete only if:

  • βœ… Real source files changed
  • βœ… The changes are meaningful
  • βœ… The project builds successfully
  • βœ… Tests pass
  • βœ… Completion markers are present

If any verification step fails, the task isn't marked as completed.

Instead, the AI receives the failure details and tries again with better context.

That simple change made the workflow feel far more reliable.


πŸ”„ What Happens When AI Hits Its Limits?

Anyone who works with AI long enough eventually encounters:

  • Rate limits
  • Token limits
  • Network failures
  • Crashes
  • Interrupted sessions

Normally, that means starting over.

I wanted something different.

The orchestrator:

  • πŸ’Ύ Checkpoints its progress
  • ⏸️ Pauses execution when necessary
  • ▢️ Resumes exactly where it stopped

Which means:

  • ❌ No duplicated work
  • ❌ No restarting the entire project because one session failed

🎯 Why I Built This

I wasn't trying to build another AI wrapper.

I wanted an execution engine.

Something that could take a backlog of software tasks and keep working through them without constant supervision.

Instead of thinking about conversations, I started thinking about orchestration.

Instead of asking:

"How do I make one AI remember everything?"

I asked:

"How do I make AI forget everything except the task it's working on?"

Ironically...

That produced much better results.


πŸ’¬ I'd Love Your Feedback

I'm sure this architecture can be improved, and that's exactly why I've open-sourced it.

If you've been building software with AI, I'm curious:

  • πŸ€” Would you trust AI more if every task ran in a completely isolated session?
  • ⚑ How would you improve this workflow?
  • πŸš€ What features would make this genuinely useful for your projects?

I'd genuinely love to hear your thoughts.

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.