Private Alpha
Real Users

Ember: AI-Powered Authentic Voice at Scale

A multi-agent system for busy professionals who refuse AI slop

The Problem

Networking is critical to career growth. But for executives, thought leaders, researchers, and consultants, it's a time-vacuum. Meanwhile, LinkedIn and social platforms are flooded with obvious AI-generated hallucinations, bias, and confidently incorrect slop.

If AI is going to help you maintain your network, it needs to sound exactly like you. And it needs to be right.

The Innovation: OWA Architecture

Ember runs on OWA (Orchestrator, Worker, Antagonist), a multi-agent architecture I designed to enforce guardrails and measure quality. The role contracts, the model selection, the failure handling and the decision record are specified on the OWA reference page. What follows is what Ember does with it.

Orchestrator Agent

Coordinates all agents and only delivers the final output to you once the Antagonist approves.

Worker Agent

Attempts to complete the task (research, writing, formatting, etc.)

Antagonist Agent

Evaluates the Worker's output against strict quality guidelines. It either APPROVES (output moves forward) or REJECTS (Worker tries again).

One cycle

The Orchestrator breaks the goal into requirements and is the only agent allowed to talk to you. The Worker executes. The Antagonist reviews and is instructed never to be positive, so it cannot flatter the output through. A rejection carries its reason into Lessons-Learned, the Orchestrator rebuilds the task with that lesson injected, and the loop runs until the work is right or the maximum loop count is hit.

One cycle of the OWA architectureA sequence diagram with four columns: you, the Orchestrator, the Worker and the Antagonist. You state a goal to the Orchestrator. The Orchestrator splits it onto a Task-List and assigns the work to the Worker. The Worker executes. The Antagonist reviews the output against the constraints. A rejection returns to the Orchestrator with its reason logged to Lessons-Learned, and the Orchestrator rebuilds the task with that lesson injected and requeues it to the Worker. The loop exits on an approval or at the maximum loop count, and only then does the Orchestrator answer you. No arrow reaches your column from any agent other than the Orchestrator.human boundaryYouOrchestratorWorkerAntagonistthe only agent that talks to youYou state the goal.1. Task assignment. Requirements split onto the Task-List.2. Execution. The Worker completes the assigned work.3. Review. The Antagonist evaluates it against the constraints.4. Rejected. The reason is logged to Lessons-Learned.5. Iteration. The task is rebuilt with the lesson injected.6. Loop exit. Approved, or the maximum loop count is hit.Only then does the Orchestrator answer you.Task-List tracks every sub-task. Lessons-Learned holds the reason for eachrejection, so the Worker does not repeat it.

A rendered trace of one real cycle is on the OWA page: worker output, the Antagonist's objection with the criterion it applied, and the Orchestrator's final call. It is this architecture run over a code-review decision in this repository, not Ember product output, and it is on /owa rather than here for that reason.

Read the trace on /owa

Why This Matters

This differs from traditional prompt-engineering mechanisms. Every task spawns an OWA team. Each agent uses a different model (Claude, GPT, Gemini, etc.) to prevent its bias from self-reinforcing.

The result: Authentic user voice, using effective guardrails to prevent hallucination, bias, and slop.

What Ember Does

Five capabilities designed to amplify your voice while preserving authenticity.

Voice Profile Training

Upload 5-10 of your best articles or connect your data sources (Notion, Google Drive, OneDrive). Ember's multi-agent teams analyze your tone, vocabulary, structure, and perspective to build a voice profile. From then on, every piece of content generated maintains the user's authentic voice, instead of a bot's approximation of it.

Multi-Source Research

Ember connects to 30+ external services: Tavily, Google Search, ArXiV, financial data APIs, and more. Research teams pull from academic, web, and specialized sources. Fact-checking teams validate claims. Scoring teams ensure content is recent, relevant, and grounded in truth. Reduced hallucinations, and a diversion from confidently wrong statements.

Intelligent Quality Control

An Antagonist agent evaluates every piece of output. If it doesn't sound authentically like you OR lacks substance, it's rejected. Worker teams iterate until the Antagonist approves. Only then does it reach you. This intentional friction produces output so good you might forget you didn't write it yourself.

Multi-Modal Content Generation

Generate posts, articles, research briefs, or visual content. Ember uses strategic model selection: Claude for reasoning and research synthesis, GPT for creative framing, Gemini for specific analytical tasks. Image generation models create visuals that match your content style.

Coming Soon

Multi-Platform Publishing

One voice, everywhere. Publish directly to LinkedIn, blogs, newsletters, or export for custom platforms.

Proof of Concept

~10 hours saved per week

My estimate
Not measured. I have not instrumented this.

On research, writing, and networking tasks. The real validation is this: I stake my professional and academic reputation on every piece of content generated by Ember. I don't post something unless I've read it and understand it.

I haven't made any drastic edits to generated content within the past month. I review everything before posting, and validate research and sourcing, because my reputation matters to me. This is a mechanism to improve quality and reduce the friction of information synthesis.

Who Is This For?

  • Executives
  • Thought leaders
  • Researchers
  • Consultants
  • Knowledge workers

People like me: executives, academics, thought leaders, researchers, and consultants who refuse to compromise their voice or reputation for speed.

Technical Architecture

For Technical Audiences
Multi-model orchestration (Claude, GPT, Gemini, specialized embedding and image models)
MCP (Model Context Protocol) integrations with 30+ external services
Structured outputs and intentional model configuration based on model strengths/weaknesses
RLS (Row-Level Security) and database security patterns
Test-driven development and modular architecture
CI/CD monitoring via Sentry, LaunchDarkly, PostHog
Developed in Windsurf with MCP Worktree support for rapid agent development

The Research Angle

Ember explores a fundamental question at the intersection of my thesis research and product thinking: How can AI systems maintain human authenticity while operating at scale?

This is about designing AI that respects user intent, prevents bias, and earns trust through meaningful execution with quality guardrails. The OWA model is a framework for any task where authenticity, correctness, and quality matter.

Current Status

I'm currently testing Ember with a limited group of product executives, designers, and technical architects that I trust to think critically and aren't afraid to voice honest feedback about what works, as well as what doesn't.

Private Alpha

Roadmap

1
Private Alpha & Refinement
In Progress
2
Beta Rollout
3
Public Launch

Interested in Early Access?

I'm currently testing Ember with a small group of critical thinkers. If you're interested in early access, reach out.

Common questions

What is OWA?

OWA (Orchestrator-Worker-Antagonist) is the multi-agent architecture Tristan J. Nolan designed for Ember. A worker agent completes the task, an antagonist agent adversarially evaluates the output for authenticity and accuracy and sends it back until it passes, and an orchestrator makes the final call and delivers the result. Each role can run on a different model (Claude, GPT, Gemini) depending on what the task needs.