GPT-5.3 Codex Mid-Turn Steering: The Game-Changer for Sales Ops Automation [2026]
Released February 5, 2026. This changes everything.
OpenAI's GPT-5.3-Codex isn't just 25% faster than its predecessor. It introduces a capability that fundamentally changes how we think about AI automation: mid-turn steering.
For the first time, you can redirect an AI agent while it's working—without starting over, without losing context, without waiting for it to finish a wrong approach.
For sales ops teams, this means AI that adapts in real-time to changing requirements. Let me show you why this matters.

What Is Mid-Turn Steering?
Traditional AI workflows look like this:
Prompt → AI Works → Output → Human Reviews → New Prompt → AI Works Again
Every time you want to adjust direction, you restart the process. For complex tasks—like building a report, analyzing a pipeline, or generating personalized outreach—this creates a painful loop of:
- Wait for AI to finish
- Realize it went the wrong direction
- Craft a new prompt
- Wait again
- Repeat
Mid-turn steering breaks this pattern:
Prompt → AI Works → Human Steers → AI Adapts → Human Steers → Final Output
↑ ↑
"Focus more on enterprise" "Skip the APAC region"
You're co-piloting instead of backseat driving.
Why This Matters for Sales Ops
Sales operations is full of tasks that require judgment calls mid-stream:
Pipeline Analysis
Without mid-turn steering:
"Analyze our pipeline and identify at-risk deals"
[AI analyzes for 3 minutes]
Output: Lists 47 deals, mostly based on stage duration
You: "No, I meant deals where the champion went dark"
[Start over]
With mid-turn steering:
"Analyze our pipeline and identify at-risk deals"
[AI starts analyzing]
You (mid-turn): "Weight communication gaps heavily"
[AI adjusts, continues]
You (mid-turn): "Actually, focus on deals over $50K only"
[AI filters, continues]
Output: Exactly what you needed, first try
Lead List Building
Without mid-turn steering:
"Build a list of 50 target accounts in fintech"
[AI builds list]
Output: Includes crypto companies, payment processors, neobanks
You: "I meant traditional banks adopting fintech, not fintech startups"
[Start over with clearer prompt]
With mid-turn steering:
"Build a list of 50 target accounts in fintech"
[AI starts building]
You (mid-turn): "Traditional banks only, not startups"
[AI adjusts filters]
You (mid-turn): "Prioritize ones with recent digital transformation announcements"
[AI adds signal filter]
Output: Perfectly targeted list, one pass
Competitive Intelligence
Without mid-turn steering:
"Research what Competitor X announced this quarter"
[AI researches]
Output: Product updates, funding news, executive hires
You: "I need their pricing changes and new integrations specifically"
[Start over]
With mid-turn steering:
"Research what Competitor X announced this quarter"
[AI starts researching]
You (mid-turn): "Focus on pricing and integrations only"
[AI narrows scope]
You (mid-turn): "Compare their new HubSpot integration to ours"
[AI adds competitive angle]
Output: Actionable competitive intel

Practical Applications for GTM Teams
1. Real-Time Report Building
Instead of specifying every detail upfront, collaborate:
// Start the report
const session = await codex.startTask(`
Generate a weekly pipeline report for the executive team.
Include: stage progression, new opportunities, closed deals.
`);
// Steer as it works
await session.steer("Add win/loss reasons for closed deals");
await session.steer("Break down new opps by source");
await session.steer("Highlight any deals that skipped stages");
// Get final output
const report = await session.complete();
2. Dynamic Territory Planning
const session = await codex.startTask(`
Rebalance sales territories based on Q1 performance data.
`);
// Adjust criteria in real-time
await session.steer("Account for the new Austin rep starting Monday");
await session.steer("Keep enterprise accounts with existing reps");
await session.steer("Show me the impact on each rep's quota");
const territories = await session.complete();
3. Personalized Outreach at Scale
const session = await codex.startTask(`
Generate personalized emails for 50 conference attendees.
`);
// Refine the approach
await session.steer("Make them shorter - 3 sentences max");
await session.steer("Reference specific sessions they attended");
await session.steer("Skip anyone who's already a customer");
const emails = await session.complete();
4. Live Deal Analysis
const session = await codex.startTask(`
Analyze the Acme Corp opportunity and recommend next steps.
`);
// Add context as you think of it
await session.steer("They mentioned budget concerns in the last call");
await session.steer("Their competitor just signed with us");
await session.steer("The CFO is the real decision maker, not the VP");
const analysis = await session.complete();
The Technical Advantage
How Mid-Turn Steering Works
GPT-5.3-Codex maintains a live working context that you can modify:
┌─────────────────────────────────────┐
│ WORKING CONTEXT │
├─────────────────────────────────────┤
│ Original prompt │
│ + Steering input 1 │
│ + Steering input 2 │
│ + Current progress state │
│ + Intermediate results │
└─────────────────────────────────────┘
↓
[Continues work with
full accumulated context]
Previous models would lose intermediate work when you interrupted. GPT-5.3 preserves everything and integrates your steering naturally.
Speed Improvements
The 25% speed improvement compounds with steering:
| Task | GPT-5.2 (No Steering) | GPT-5.3 (With Steering) | Total Improvement |
|---|---|---|---|
| Pipeline report | 180s + 120s redo | 140s (steered) | 53% faster |
| Lead list (50) | 90s + 60s redo | 70s (steered) | 46% faster |
| Competitive brief | 120s + 90s redo | 95s (steered) | 55% faster |
| Territory rebalance | 240s + 180s redo | 180s (steered) | 57% faster |
The real win isn't raw speed—it's eliminating the redo cycle.
Implementation Patterns
Pattern 1: Progressive Refinement
Start broad, narrow down:
async function buildTargetList(criteria) {
const session = await codex.startTask(`
Build a target account list matching: ${criteria.initial}
`);
// Watch progress and refine
session.onProgress(async (progress) => {
if (progress.accounts > 100) {
await session.steer("Limit to top 50 by revenue");
}
if (progress.includesCompetitorCustomers) {
await session.steer("Exclude known competitor customers");
}
});
return session.complete();
}
Pattern 2: Exception Handling
Catch issues before they compound:
async function analyzeDeals(pipeline) {
const session = await codex.startTask(`
Analyze pipeline health for Q1 forecast.
`);
// Handle edge cases as they appear
session.onAnomaly(async (anomaly) => {
if (anomaly.type === 'missing_data') {
await session.steer(`Skip ${anomaly.deal} - incomplete record`);
}
if (anomaly.type === 'outlier') {
await session.steer(`Flag ${anomaly.deal} for manual review`);
}
});
return session.complete();
}
Pattern 3: Collaborative Building
Multiple stakeholders contribute:
async function buildForecast() {
const session = await codex.startTask(`
Generate Q2 revenue forecast based on current pipeline.
`);
// Sales leader input
await session.steer("Use 60% close rate for enterprise, not 40%");
// Finance input
await session.steer("Apply 10% churn assumption to renewals");
// CEO input
await session.steer("Add scenario for if the big deal slips");
return session.complete();
}
Pattern 4: Learning Loop
Capture steering patterns for future automation:
async function buildWithLearning(task, userId) {
const session = await codex.startTask(task);
const steerings = [];
session.onSteer((input) => {
steerings.push({
trigger: session.currentState(),
steering: input,
userId: userId
});
});
const result = await session.complete();
// Store patterns for future prompts
await saveSteerings(task.type, steerings);
return result;
}
Getting Started with Codex
Installation
npm install -g @openai/codex
codex auth login
Basic Steering Example
const { Codex } = require('@openai/codex');
const codex = new Codex({ model: 'gpt-5.3-codex' });
async function steerableTask() {
const session = await codex.createSession();
// Start task
await session.send(`
Analyze our CRM data and identify upsell opportunities.
Data source: HubSpot
`);
// Wait for initial processing
await session.waitForProgress(0.3); // 30% complete
// Steer based on early results
const preliminary = await session.getProgress();
if (preliminary.includesSmallAccounts) {
await session.steer("Focus on accounts with ARR > $50K only");
}
// Wait for more progress
await session.waitForProgress(0.7); // 70% complete
// Final refinement
await session.steer("Rank by expansion likelihood, not just ARR");
// Get final output
return session.complete();
}
Common Steering Scenarios
Scenario: Report Is Too Long
Steer: "Summarize to one page, keep only top 5 items per section"
Scenario: Missing Context
Steer: "The deal values are in EUR, convert to USD using 1.08"
Scenario: Wrong Focus
Steer: "This is for the board, focus on strategic metrics not operational"
Scenario: Data Quality Issue
Steer: "Ignore any records from before January 2025, data is unreliable"
Scenario: Stakeholder Request
Steer: "CFO wants to see margin impact, add that column"
The Competitive Edge
Mid-turn steering gives you a compounding advantage:
- Faster iteration - No restart penalty for course corrections
- Better outputs - Human judgment applied at the right moments
- Lower frustration - No more "that's not what I meant" loops
- Captured knowledge - Steering patterns become future automation
Your competitors are still in prompt → wait → redo → wait cycles. You're collaborating with AI in real-time.
That efficiency gap compounds across every task, every day, every deal.
Ready to see AI-powered sales ops in action? Book a demo to see how MarketBetter leverages the latest AI capabilities for GTM teams.
Related reading:

