AOFR
The agent that turns a structured Excel file into a ready-to-send tender-response PowerPoint in under a second
Discuss a similar projectRéponse courte
AOFR (PPTX-AO Agent) is an agent developed by Digit-AI that automates the production of tender-response PowerPoints. Sales reps fill in a structured Excel file (services, pricing, schedule); AOFR opens the client template, injects the data, inserts the logo, generates a Gantt aligned to the real calendar, aggregates the pricing and delivers a final editable PPTX — with no human intervention, in about 0.4 seconds in deterministic local mode. The agent is available as a command line, a web interface and a Microsoft Teams bot, and offers a 100% deterministic mode (zero AI calls, zero recurring cost) complemented by two Claude modes for atypical cases.
The challenges of tender responses
Every tender response tied up a sales rep for hours on PowerPoint composition, with no added value and a risk of errors
Responding to a tender meant manually copying an Excel file into slides, formatting it, drawing a Gantt schedule and checking each client's brand guidelines — several hours per file, with no added value and a high risk of error in multi-brand contexts. AOFR removes this composition step entirely.
Manual PPT composition
Copy-pasting from Excel into the slides, formatting, checking: several hours per file.
Multi-client consistency
Each client has its own logo, brand and wording: a high risk of error across multiple brands.
Gantt schedule to draw
Computing positions, displayed months, aligning phases to the real Excel dates: tedious and a source of inconsistencies.
Last-minute changes
A date moves, a service is added, and everything has to be redone by hand in the PPTX.
Functional scope
Reading a structured Excel file (AOF sheet + Gantt sheet), automatic insertion of the client logo on slide 1, aggregated pricing table (services + additional tasks + manual pricing), conditional Simple and Gantt schedules, and three distribution channels: CLI, web interface and Microsoft Teams bot.
Key constraints
Native PPTX output that respects the client brand (no PDF) · Multi-client via a single template, with no duplication · 100% deterministic mode for production (no AI, no recurring cost) · Entra ID security and Teams bot auth · Reproducible Docker deployment with full CI/CD.
What AOFR solves
Three areas of impact for sales teams and management
Radical time savings
The sales rep goes from filling in the Excel file to delivering the PPTX, with no intermediate formatting step.
Absolute consistency
Client brand, logo, legal wording: injected systematically, never forgotten.
Natural adoption
Teams bot: the user drops their Excel file in the chat and gets the PPTX back. No tool change, no training.
What AOFR enables
Six major features delivered in production
Excel → PPTX pipeline
YAML-mapping-driven reading, placeholder substitution, dynamic tables and final validation of the generated document.
Single template, multi-client
One template per brand, with the client distinguished via automatic logo insertion on slide 1 — no file duplication.
Aggregated pricing
Table fed by the selected services, additional tasks and manual pricing, with a TOTAL row computed on the fly.
Calendar-aligned Gantt
Month pentagons sized proportionally to actual days; near and distant milestones never overlap.
Three modes to choose from
Local mode for deterministic production, Claude-execute and Claude-generate for atypical cases, with per-user switching.
Microsoft Teams bot
1:1 conversation, Excel upload via the paperclip, Adaptive Card response with a direct PPTX download button.
Tech stack
Choices geared toward robustness, reproducibility and controlled operating cost
Backend
Frontend
Microsoft Teams bot
Artificial intelligence
Infrastructure
CI/CD & secrets
Distinctive pattern — Deterministic by default, AI optional: the production path is 100% deterministic (local mode, no AI calls), guaranteeing reproducible PPTX files with no recurring cost and no data leakage. Two Claude modes (execute and generate) cover atypical cases, with AST validation of generated scripts and a systematic fallback to local mode: AI augments the tool without ever becoming a point of fragility.
Architecture diagrams
A single aiohttp application exposes both the web portal and the Teams bot endpoint, sharing the mode router and the generation pipeline
User
Sales rep
Fills in a structured Excel (services, pricing, schedule)
Channels (single aiohttp application)
Web interface
/, /login · HMAC cookie
Microsoft Teams bot
/api/messages · Adaptive Card
CLI
command-line pipeline
Routing
Mode Router
local · Claude-execute · Claude-generate
Core
PPTX pipeline
Deterministic generation of the final PowerPoint
Platform
Azure Container Apps
West Europe · single → multi-replica
Entra ID · GHCR · Doppler
Auth, image registry, secrets
Measured impact and gains
Measured on the embedded test cases and on the first real-world uses
| Step | Before AOFR | With AOFR | Gain |
|---|---|---|---|
| Slide composition | Several manual hours per file | ~0.4 s automated | Near-instant |
| Client brand consistency | Occasional errors on logos & legal mentions | 100% automatic | 0 omissions |
| Updating an Excel date | Full manual rework | One-click regeneration | Real time |
| Distribution to sales teams | Files shared manually | Teams bot + web + CLI | 3 channels |
Gains beyond the numbers
Zero visible regression
A programmatic audit tool checks every generated PPTX against 12 reference cases: any deviation breaks the CI.
Natural adoption
Sales reps stay in Teams: no new tool to learn, no training required.
Fast iteration
Editing a single YAML mapping is enough to adapt a client, with no redeployment needed to adjust content.
Templates preserved
The delivered PPTX stays editable like any template: no frozen images, no loss of formatting.
Protected sales mode
Local mode calls no external AI: no data-leak risk, predictable operating cost.
Ready to scale
Multi-replica architecture on Azure Container Apps, Entra ID authentication and centralized secrets.