Bring those animated characters from late-90s Windows back to life — right in your web browser.
Before "Agent" had anything to do with AI… there were Genie, Merlin, and Clippy.
📖 New here, or just curious? Browse the documentation — start with the plain-English "What is this?".
There's no hosted click-to-try demo yet — but you can run the playground on your own machine in about a minute — see Try it in 60 seconds below. It's a little sandbox where you load a character, click its animations, and type to make it talk.
Genie, loaded from a .acs file and speaking in his authentic voice — running entirely in your browser.
Back in the late 1990s, Microsoft made a thing called Microsoft Agent: little animated cartoon helpers that lived on your Windows desktop. They walked around your screen, waved, talked out loud in a synthesized voice, and showed a speech bubble with their words. The cast included Genie (a blue genie), Merlin (a wizard), Peedy (a parrot), Robby (a robot), and the infamous Clippy (the paperclip from Microsoft Office).
Microsoft retired the technology in Windows 7, and it quietly disappeared.
vivify brings it back — faithfully — and runs it in a web browser. It reads the original character files, draws and animates the characters exactly as they were, shows their classic speech balloon, and can even speak in their original voice. No old version of Windows required. Nothing to install on your computer to just look at it.
💾 Remember when… software came on a stack of floppy disks, "downloading" meant going to make a sandwich, and a tiny cartoon would pop up to "help" you write a letter? Yeah. This brings that back.
👉 Want the full story? Read What is this? — Microsoft Agent explained from scratch, zero knowledge assumed.
.acsfile — the single file that holds one character: all its pictures, animations, and sounds. (Microsoft's format. You supply your own — more on that below.) See the glossary for every term in plain English.- Lip-sync — the character's mouth moving in time with the words it speaks.
The original four — Genie, Merlin, Peedy, Robby — plus Office favorites like Clippy and Rover,
and any other character anyone ever made. If it's a .acs file, vivify aims to run it.
The gallery grows as characters are captured — here's Genie. Load any .acs to meet the rest.
The quickest way to see a character on your screen today. You'll need two free tools and one character file.
1. Install Docker Desktop. It's a free app that runs the playground for you, so you don't have to set anything else up. (Saw a scary-looking technical message during install? Totally normal — just follow Docker's own prompts.)
2. Get this project and start the playground. In a terminal, from this project's folder:
docker compose up mashThen open http://localhost:8090 in your browser. That's the playground. (The mash part means "just
the visual playground, no voice setup needed" — the authentic voice is a separate, optional upgrade you can
add later.)
3. Load a character. The playground ships with no characters (those belong to their owners — see
What you supply). Grab a free classic one from the community archive linked in
docs/legal-and-assets.md, then drag the .acs file onto the playground.
That's it — it's alive! Click any animation in the list to play it. Type a sentence and the character shows its speech balloon. 🎉
Want to hear the character's real voice, not just see the balloon? That's the optional upgrade in Want the real voice? below.
Running the playground above is the fast path. When you're ready to set things up properly on your own computer — including the authentic voice — there's a friendly, step-by-step guide for each operating system:
- 🪟 Windows →
docs/install/windows.md - 🍎 macOS →
docs/install/mac.md - 🐧 Linux →
docs/install/linux.md
New to all of this? Start with the gentle overview: docs/getting-started.md.
Seeing the character is one thing. Hearing it speak in its original synthesized voice, with its mouth moving to match, is the magic.
That voice came from old Windows speech software that can't run in a browser directly, so vivify runs it in a small background helper. It's a more involved, opt-in setup — completely separate from the quick playground above — and there's a dedicated, hand-held walkthrough for it:
➡️ The authentic voice — what it is and how to set it up
Don't need the original voice? The playground still talks using your browser's built-in voice, so you never hit a dead end.
vivify isn't just a demo — it's a framework-agnostic engine you can drop into your own site or app
(React, Vue, Svelte, or plain JavaScript). The API mirrors the classic Agent control: show, play,
speak, moveTo, gestureAt, stop, with an action queue.
import { createAgent } from "@vivify/core";
// Load a character from a raw .acs file's bytes (or pass a prebuilt bundle: { manifestUrl }).
const acs = await fetch("/agents/genie.acs").then((r) => r.arrayBuffer());
const genie = await createAgent(acs);
await genie.show();
await genie.play("Greet");
await genie.speak("You rubbed the lamp?"); // browser voice by default; authentic voice is opt-inBy default, speech uses the browser's built-in voice — so this works with nothing else installed. The authentic voice is a clearly-labeled upgrade.
The packages (this is a pnpm monorepo):
@vivify/core— the engine: load / show / play / speak / moveTo / gestureAt / stop. No framework dependency.@vivify/acs— the.acsparser +acs2bundleCLI. Runs in Node and the browser.@vivify/voice-truvoice— the authentic-voice provider (talks to the voice server).services/voice-server— the Dockerized voice helper.apps/mash— the playground demo you ran above.
Full developer docs are here: the overview (the openness pitch +
architecture), a copy-paste quickstart (a talking character in about
ten lines), the API reference, TTS providers,
and character bundles. The architecture is also written up in
docs/architecture.md, and the full build history in
docs/roadmap.md.
vivify is free and open-source, and it ships no Microsoft files and no characters. To keep things clean and legal, you bring two things yourself:
- Character files (
.acs). These are Microsoft's (and the community's) creations. You download the ones you want from the community archive — vivify never redistributes them. - The speech software — only if you want the authentic voice. It's old, free Microsoft/L&H speech software that you install into the voice helper.
It's all explained, with exactly where to get each piece, in
docs/legal-and-assets.md (with a friendlier consumer guide in
docs/voice/sourcing-components.md).
In short: the engine is ours and open. The characters and voices are their owners', and you supply your own copies.
- ❓ FAQ — "Is this legal?", "Why is there no sound?", "Which characters work?" →
docs/faq.md - 🛠️ Troubleshooting — common hiccups, per platform →
docs/troubleshooting.md - 📖 Glossary — every technical term, in plain English →
docs/glossary.md
vivify stands on a lot of shoulders, gratefully: the original Microsoft Agent team who made these
characters; DoubleAgent (Cinnamon Software) and Lebeau's MSAgent Decompiler as references for the
.acs format; clippy.js for proving the characters could live again in a browser; TETYYS/SAPI4 for
charting the path to the authentic voice; and TMAFE for keeping the character archive alive all these
years. See the full credits page.
MIT © Kris Bennett.
vivify is not affiliated with or endorsed by Microsoft. The Microsoft Agent characters, the SAPI4/TruVoice speech engine, and related assets are the property of their respective owners and are not distributed by this project.

