Sno Station
Sno Station is your agents' workstation: open-source software that turns the AI agents you already run into one squad on your own machine. Two heads are better than one, and they get better with every
Meet Roody: a speaking companion for learning, coding, and planning. Try a sample workspace or connect your guest demo code.
PluginsJavaScript · HTMLGitHub @F1VISABYARUNOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
A speaking companion that helps you understand your work, learn, and plan—right inside a floating orb.
Built with OpenAI Codex. A hackathon companion for learning, coding, and planning.
Current version: Chrome hackathon demo 3.2.0.
Download the Chrome extension ZIP
· Windows installation steps
· Vercel demo setup
Roody is a Chrome extension for developers, founders, and people learning to
navigate unfamiliar pages. Open its orb on a work page to ask questions, talk
through a problem, or understand visible code without copying everything into
a separate chatbot.Read the full README ↗A speaking companion that helps you understand your work, learn, and plan—right inside a floating orb.
Built with OpenAI Codex. A hackathon companion for learning, coding, and planning.
Website: roodyaicompanion.vercel.app
Current version: Chrome hackathon demo 3.2.0.
Download the Chrome extension ZIP · Windows installation steps · Vercel demo setup
Roody is a Chrome extension for developers, founders, and people learning to navigate unfamiliar pages. Open its orb on a work page to ask questions, talk through a problem, or understand visible code without copying everything into a separate chatbot.
The voice engine runs in a protected offscreen extension document. Closing the panel or changing browser pages can leave voice running. Pause voice stops microphone access, browser following, and screen sharing. Screen sharing from a particular page stops when that page navigates or closes; select the screen again from the new page's orb.
| Persona | How Roody helps |
|---|---|
| Developer | Reasons through visible code, debugging, and architecture; explains the next step. |
| Founder | Acts as a CEO/CTO-style adviser: weighs tradeoffs and turns goals into a practical plan. |
| Grandparent | Uses patient, simple explanations and helps understand unfamiliar pages one step at a time. |
| Mode | What it does |
|---|---|
| Teach me | Explains the reasoning and asks useful learning questions. |
| Do with me | Works through a problem with you. |
| Do for me | Prepares code drafts, plans, or analysis for you to review. |
These modes guide conversation. Roody does not click controls, edit files, send messages, book appointments, or make payments.
No npm command or terminal is needed for the Chrome extension.
chrome://extensions and turn on Developer mode.manifest.json.Open orb Settings → Use my own OpenAI key instead, paste your key, and click Save key. Clear any demo server address and save demo access to switch back to your own key. OpenAI voice requires API billing and Realtime access; ChatGPT subscriptions do not include API credits. Never put an owner key in a shared ZIP or paste it into chat.
The extension also supports optional own-key Anthropic, Gemini, and Grok models for text/vision requests. Model discovery chooses available models without requiring users to type model IDs. Live voice uses OpenAI Realtime.
An owner can host the guest gateway on Vercel and keep the OpenAI key in server environment variables. Guests enter the server address and their invite code in orb Settings, then click Save demo access.
App credits are separate from OpenAI dollar charges. A server background task schedules voice shutdown, with a client timer as well; hosting or network failure can interrupt shutdown, so this is not an unconditional billing cap. See Vercel setup and limits before distributing codes.
Deployment address: https://roodyaicompanion.vercel.app/.
The homepage contains three clearly labeled fictional scenarios:
await.Show a sample reply displays a scripted preview with no API request or credit use. Connecting a guest code enables actual text replies through the OpenAI Responses API. Live voice and screen sharing use the Chrome extension.
Deploy the repository’s default branch with Vercel Framework Other,
repository root, and output directory public. The repository’s
vercel.json configures the API. The homepage is available at the website
link above. Live provider-backed replies require the environment variables
in the setup guide.
| Component | Technology implemented |
|---|---|
| Development assistance | OpenAI Codex |
| Chrome orb | JavaScript, HTML/CSS, Chrome Manifest V3, content scripts, service worker |
| Voice | OpenAI Realtime API (gpt-realtime), WebRTC, microphone permission, transcription |
| Persistent voice host | Chrome offscreen document with extension runtime messages |
| Page and code context | DOM extraction, editor text extraction, tab screenshots, explicit screen sharing |
| Guest demo text | OpenAI Responses API (gpt-4.1-mini), Node.js Vercel function |
| Demo access and accounting | Invite codes, Upstash Redis REST, atomic credit reservations |
| Voice shutdown | OpenAI call hangup endpoint and Vercel waitUntil background task |
| Optional model providers | OpenAI, Anthropic, Google Gemini, xAI Grok |
| Separate Windows prototype | Electron, selected-window screenshots, local goals/tasks, voice |
| Separate editor prototype | VS Code-compatible extension, Gemini transcription, optional ElevenLabs voice |
MCP status: this build has no Model Context Protocol server/client or MCP app integrations. Personas and assistance modes are prompt-driven. Direct API calls and browser context reading should not be described as MCP integrations.
flowchart LR
Page[Work page or shared screen] --> Orb[Chrome orb]
Orb --> Worker[Extension worker]
Worker --> Own[Selected provider using own key]
Worker --> Demo[Vercel demo gateway]
Demo --> OpenAI[OpenAI APIs]
Demo --> Redis[Redis credit balance]
Orb --> Voice[Offscreen WebRTC voice engine]
Voice --> Realtime[OpenAI Realtime]
Read PRIVACY.md for details.
| Path | Purpose |
|---|---|
manifest.json | Chrome extension manifest |
src/content.js / content.css | Orb, chat, goals/tasks, page and editor reading |
src/background.js | Provider routing, screenshots, protected voice controls |
src/companion.js | Structured companion memory and preferences |
src/live-engine.html / voice.js | Persistent audio engine |
src/orb-voice.html / orb-voice.js / orb-voice.css | Voice controls inside the orb |
src/options.html / options.js | Keys, invite code, server address, preferences |
src/study.html / study.js / pdf.js | PDF study page |
public/ | Vercel homepage, samples, guest text demo, owner code page |
api/demo.js / server/demo.js | Vercel guest gateway |
server/VERCEL-DEMO.md | Deployment variables and setup instructions |
server/index.js | Legacy Hostinger invite-code proxy |
desktop/ | Separate Electron Windows prototype |
editor/ | Separate VS Code-compatible editor prototype |
backend/ / backend-php/ | Alternative legacy backends |
site/ | Earlier website and portal |
eval/ | Regression and behavior checks |
Use Node.js 20+ for the root project:
npm ci
npm run eval
node --test eval/*.test.js
The desktop prototype has its own instructions and dependencies: desktop/README.md. The editor prototype is documented in editor/README.md.