Saanora for Windows One AI for everything. On your desktop.
The full Mark experience, one Alt+Space away from anything you're doing: answers, research with cited sources, writing and code.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Always. Give me the symptom and the table size and we’ll work backwards from there.
Timeline widgets almost always sort by created_at inside one tenant, which is exactly where this tends to go wrong.
Find the bottleneck
Run EXPLAIN (ANALYZE, BUFFERS)first. It’s almost always one of three shapes:
- Seq Scan on orders — no usable index, so all 40M rows get read.
- Rows Removed by Filter in the thousands — the index is too broad.
- Sort with
diskin the method — you outgrewwork_mem.
The fix that usually holds
A composite index in selectivity order, built without blocking writes:
CREATE INDEX CONCURRENTLY idx_orders_tenant_created ON orders (tenant_id, created_at DESC) INCLUDE (status, total_cents);
That turns the Seq Scan into an Index Only Scan. Run ANALYZE orders after.
Mark can make mistakes. Verify important info.
Mark, over anything.
No window to find, no tab to hunt for. Press Alt+Space over your editor, a spreadsheet, a PDF or a game, and Mark is on top, ready. Press it again and it's gone. If Mark finishes while you're away, a notification says so.
Press the keys to try it yourself
$4.45 keeps your margin, with a little room to spare.
- The rise adds $0.06 a cup, so a latte now costs $1.26 to make.
- Holding your 71% margin needs $4.41.
- $4.45 rounds that to a price that reads well on the board.
Want the same sums for the 16 oz and the flat white?
Mark can make mistakes. Verify important info.
- Alt+SpaceSaanora comes to the front
- AskAsk over whatever's open
- Alt+SpaceAnd you're back to your work
- NotificationA note when Mark is done
- Alt+SpaceSummon Mark
- Ctrl+KSearch chats
- Ctrl+NNew chat
- ?Shortcuts sheet
- Ctrl+RReload
Not just a chat window. A place to think.
Answers with receipts
Switch on Research and Mark searches the live web before it answers, then lists every source behind every claim, so you can check the work instead of taking it on faith.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Then anchor it on generation share rather than installed capacity — capacity flatters solar, and your LPs will know it.
The short answer
Solar supplied about 6.9% of global electricity in 2024 — 2,131 TWh, up from 5.5% — and was the largest source of new generation for the third year running.
How fast it’s moving
- Output grew 29% year on year — about 474 TWh of new generation.
- China installed 277 GW, over half of everything added worldwide.
- Wind and solar together crossed 15% of world electricity.
- Installed PV capacity passed 2 TW — the second terawatt took two years.
The IEA expects solar PV to deliver ~80% of renewable capacity growth to 2030.
Mark can make mistakes. Verify important info.
Bring the document along
Drag a contract, a spreadsheet or a screenshot onto the window and ask about it. Mark reads it with you and keeps it in mind for the follow-ups.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Three clauses are worth a fight. Your redlines already fix the payment terms, so leave §6 alone.
- Auto-renewal, §11.2. It rolls over for 24 months unless you cancel 90 days out. Ask for 12 months and 30 days.
- Liability cap, §14.1. Capped at three months of fees. Your redline asks for twelve: hold that line.
- Your data, §9.4. No deadline to delete it after you leave. Ask for 30 days, confirmed in writing.
Want me to turn these into a short email to their counsel?
Mark can make mistakes. Verify important info.
Off the record, when you need it
Flip on a temporary chat and a ghost keeps you company. The conversation is never saved and never synced. Close it and it's gone.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Temporary chat
Off the record. This conversation won’t appear in your history,
won’t sync, and disappears when you leave.
Saanora can make mistakes. Check important info.
Start at your desk. Finish on the bus.
Sign in with the same account and your chats, settings and thinking mode stay in step across the web, Windows and Android. Temporary chats are the one exception: they never leave the device.
Cancellations, delays and denied boarding each have their own rules. Which one was it?
Cancelled under 14 days out, you’re owed three things:
- A refund or a rerouting. Your choice, not theirs.
- Meals, calls and a hotel while you wait.
- €250–€600 in cash, unless it was weather or strikes.
Claim the cash in writing after you fly. It’s a separate process.
Mark can make mistakes. Verify important info.
Cancelled under 14 days out, you’re owed three things:
Cancellations, delays and denied boarding each have their own rules. Which one was it?
Cancelled under 14 days out, you’re owed three things:
- A refund or a rerouting. Your choice, not theirs.
- Meals, calls and a hotel while you wait.
- €250–€600 in cash, unless it was weather or strikes.
Claim the cash in writing after you fly. It’s a separate process.
Mark can make mistakes. Verify important info.
Cancelled under 14 days out, you’re owed three things:
Cancellations, delays and denied boarding each have their own rules. Which one was it?
Cancelled under 14 days out, you’re owed three things:
- A refund or a rerouting. Your choice, not theirs.
- Meals, calls and a hotel while you wait.
- €250–€600 in cash, unless it was weather or strikes.
Claim the cash in writing after you fly. It’s a separate process.
Mark can make mistakes. Verify important info.
Cancelled under 14 days out, you’re owed three things:
Cancellations, delays and denied boarding each have their own rules. Which one was it?
Cancelled under 14 days out, you’re owed three things:
- A refund or a rerouting. Your choice, not theirs.
- Meals, calls and a hotel while you wait.
- €250–€600 in cash, unless it was weather or strikes.
Claim the cash in writing after you fly. It’s a separate process.
Mark can make mistakes. Verify important info.
Cancelled under 14 days out, you’re owed three things:
Cancellations, delays and denied boarding each have their own rules. Which one was it?
Cancelled under 14 days out, you’re owed three things:
- A refund or a rerouting. Your choice, not theirs.
- Meals, calls and a hotel while you wait.
- €250–€600 in cash, unless it was weather or strikes.
Claim the cash in writing after you fly. It’s a separate process.
Mark can make mistakes. Verify important info.
Cancelled under 14 days out, you’re owed three things:
Everything Mark does, closer to your keyboard.
Tray + Alt+Space
Saanora lives quietly in your system tray. Press Alt+Space and Mark appears over whatever you're doing, no window hunting.
Reply notifications
Ask something long-running, go do other work. A native notification with a soft chime tells you the moment Mark replies.
Cross-device sync
Chats and settings stay in step across web, desktop and mobile. Start a thought at your desk, pick it up anywhere.
Four ways to think
Auto picks for you. Quick answers fast, Think reasons step by step, and Research searches the web deeply. Pick from the composer.
Interactive answers
3D scenes, charts, diagrams, quizzes, flashcards and live simulations, plus generated PDF, Word, Excel and PowerPoint files that save straight to Downloads.
Auto-updates
The app keeps itself current in the background. Install once from the Store and new features arrive on their own.
Set up in three steps.
Install from the Store
Open the Microsoft Store listing, hit Install, and Windows takes it from there: signed, verified, and kept up to date automatically.
Sign in
Choose Continue with Google: your browser opens, you approve, and the app signs itself in. Email and password work too.
Ask anything
Press Alt+Space and Mark appears from anywhere: over your editor, your browser, your slides. That's it.
Before you install.
Is Saanora's model open source?
Part of it is, and we would rather be precise than flattering. We trained and published Mark 1x-9B — a nine-billion-parameter open-weights model built on Qwen3.5-9B. The weights, the benchmark protocol and every raw output are public on Hugging Face and ModelScope, and it is small enough to run on a laptop. The assistant in this app, Mark 1x, runs on capable third-party models; Mark 1x-9B is a separate model we released for anyone to use.
Is it really free?
Yes. The desktop app is free and there is no trial timer. Quick, Auto and Think, with web lookups, are on the free tier, and Research is on Lite and Spark. Lite gives much more usage, and Spark our highest.
Will Windows warn me when I install it?
No. It ships through the Microsoft Store, so the build is Microsoft-signed and verified — you won't see a SmartScreen prompt or an unknown-publisher warning.
Does it work offline?
The app opens offline, but answers need a connection — Mark runs in the cloud, not on your machine. Your chat history is cached locally so you can still read past conversations.
Do my chats sync with the web and phone?
Yes, automatically. Sign in with the same account and your chats, settings and thinking mode stay in step. Temporary chats are the deliberate exception — they never leave the device.
Is macOS coming?
It's in progress. The app is built on the same codebase as the Windows version, so the wait is about packaging and notarisation rather than rewriting the product.
Always one Alt+Space away.
Free to install, signed by Microsoft, and it keeps itself up to date.