Made-with: Cursor
OL Rescue
Outlook Office Web Add-in that recreates the old “OL Helper” workflow for New Outlook (and Outlook on the web): you define a Tracking ID and an Inbox subfolder name, then the add-in uses Microsoft Graph to create the folder (if needed) and move messages that contain TrackingID#… in the subject or preview.
Classic COM/VSTO add-ins do not run in New Outlook. The supported path is Office.js + Graph, which this project uses.
What you need
- Node.js 20+ and npm (for local HTTPS dev and builds).
- Microsoft 365 / Outlook with add-ins allowed by your org.
- An Azure AD app registration (see below) with Graph delegated permissions: Mail.ReadWrite, User.Read.
Azure AD app (summary)
- In Azure Portal → Microsoft Entra ID → App registrations → New registration.
- Name it (e.g. “OL Rescue”), supported account types per your tenant, Redirect URI: platform Single-page application (SPA), URI
https://localhost:3000(and later your production URL). - API permissions → Microsoft Graph → Delegated: add Mail.ReadWrite, User.Read → Grant admin consent if required.
- Overview → copy Application (client) ID.
Run locally
cd "/path/to/OL Rescue!"
cp .env.example .env
# Set VITE_AZURE_CLIENT_ID to your client ID
npm install
npm run dev
Vite serves HTTPS on port 3000 (self-signed cert; your browser will warn once).
Sideload the manifest in Outlook (Windows New Outlook)
- Ensure
manifest.xmlstill points tohttps://localhost:3000/index.html(default for dev). - In Outlook: File → Manage Add-ins / Get Add-ins → My add-ins → Add a custom add-in → Add from file… → choose
manifest.xml.
If your org blocks custom add-ins, an admin may need to deploy via Centralized Deployment or allow sideloading.
Use the add-in
- Open a ticket email and open the OL Rescue task pane.
- Sign in with Microsoft (Graph consent).
- Fill from open message to parse
TrackingID#…and suggest a folder name, or type Tracking ID and Inbox folder name manually. - Save case, then Create folder & move mail on that case to create
Inbox\<folder name>and move matching messages.
Saved cases are stored in browser localStorage for this add-in origin.
Production
- Host the
dist/folder (or your static host) over HTTPS. - Update Application ID URI / redirect URIs in Azure for your real origin.
- Edit manifest.xml
SourceLocation,IconUrl, andSupportUrlto your HTTPS URLs, then rebuild (npm run build) and redeploy.
Limits vs old OL Helper
- Not automatic on every new message unless you add something else (e.g. Outlook rules calling a service, or Power Automate). This tool is on-demand from the task pane.
- Graph search uses
$filteron subject/body preview; very unusual formats might need a small follow-up change. - Shared mailboxes need extra Graph permissions and possibly UX changes; this MVP targets your primary mailbox (
/me/…).
License
Use and modify for your work as needed.
Description
Languages
TypeScript
83%
CSS
15.3%
HTML
1.7%