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
A free Chrome extension that exports X (Twitter) posts, threads, and articles to Markdown, PDF, HTML, JSON, CSV, or Obsidian — with images, video, and GIFs saved as local files. One at a time, or in b
PluginsTypeScript · HTMLGitHub @zendeganiOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
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
The high-fidelity X / Twitter web clipper — save posts, threads & articles to Markdown, PDF, HTML, JSON, CSV & Obsidian, with images & video saved as local files, one at a time or in batch. Featured on the Chrome Web Store and 10,000+ users.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
The high-fidelity X / Twitter web clipper — save posts, threads & articles to Markdown, PDF, HTML, JSON, CSV & Obsidian, with images & video saved as local files, one at a time or in batch.Read the full README ↗XClipper is a source-available Chrome extension that exports x.com content as Markdown, PDF, HTML, JSON, TXT, CSV, or Obsidian notes — one post at a time, or in batch from your bookmarks, a profile, your likes, your home timeline, or a hand-picked selection. Images, videos, and GIFs come down as real files next to the Markdown — or packed into a single .zip. It runs entirely in your browser: no X API key, no server. Free for noncommercial use (commercial license required to sell or build a paid product on it).
Most "tweet to markdown" tools run a post through a generic HTML→Markdown converter and stop there. XClipper is built differently, and it shows up in five places:
t.co links are resolved to real URLs, emoji and @mentions stay intact, truncated posts are expanded, and engagement bars, follow prompts, and trackers are stripped..mp4 — quoted posts included — with a ▶ Video link in the Markdown pointing at the file, so your notes survive link rot and deleted posts.x-compilation-<date> file), or Both. Runs in the background (one job at a time) with live progress and stop; Scroll adds a determinate progress bar plus pause / resume (Auto Full and Auto Fast collect open-endedly, so they show a live count instead). Close and reopen the popup mid-job. A dedup ledger skips already-exported items, and you can keep adding newly-scrolled posts to a running job.text column for the post body.t.co links, inlined emoji, and tidy @mentions.obsidian:// URI scheme with optional vault targeting, plus an Obsidian-friendly frontmatter schema ([[@handle]] wikilinks, synthesized title, published/created dates, prose description, and a customizable tags list with -autocomplete).{date}, {datetime}, {handle}, {author}, {id}, {slug}, {type}) with a live preview in Settings.Plus: copy-to-clipboard or download · optional inline engagement-stats row (💬 284 · 🔁 1.5K · ❤️ 8K · 🔖 253 · 👁 100K) · 6-language UI (extraction works in any language) · light & dark mode.
The download icon sits next to share on every tweet. One click opens the permalink in a new tab and exports it automatically. Toggle it to copy instead, and optionally close the tab once done.
Right-click anywhere on a tweet — body, image, or timestamp — and pick Save tweet as Markdown, Copy tweet as Markdown, or Add tweet to Obsidian. XClipper figures out which tweet you meant.
⚡ A Scroll | Auto Full | Auto Fast switch picks the batch engine. This is separate from export mode (Single / Batch), source (Bookmarks / Profile / Likes / Timeline / Selection), and fetch mode (Recent / Resume / Date range for Auto Full/Auto Fast). See the glossary for the shared terms.
Scroll renders each post in a worker tab — reliable, no extra permissions, and the default. Auto Full and Auto Fast are optional engines for Bookmarks, Profile, and Likes that instead replay X's own internal API using your existing logged-in session, turning a multi-minute job into a few seconds (~10×). They map the same data into the same Content AST, so every format and setting behaves identically. (Timeline and Selection stay on Scroll.)
What to know before switching off Scroll:
webRequest) used to read your session's auth header. There's no API key and no password — and nothing leaves your browser.Recent | Resume | Date range switch) control what each run pulls. Recent grabs your newest items from the top. Resume continues a large backfill from where it last stopped, so thousands of bookmarks export across several sessions without re-scanning what's done. Date range pulls only posts tweeted within a chosen window, crawling deeper each run on its own cursor (so it doesn't disturb a Resume backfill). A shared dedup history skips already-exported posts across all three; Reset history clears it.The popup keeps per-export toggles (Save images locally, Show engagement stats inline, Include metadata) front and centre. The gear icon opens Settings, where set-once knobs live in four collapsible sections — Downloads, Obsidian, Frontmatter fields, and Inline button & context menu — persisted across sessions via chrome.storage.
Install XClipper from the Chrome Web Store.
git clone https://github.com/zendegani/xclipper.git
cd xclipper
npm install
npm run build
Then open chrome://extensions/ → enable Developer mode → Load unpacked → select dist/.
Pick whichever entry point you prefer — they all run the same extractor and respect the same toggles:
Per-export toggles live in the main popup; set-once options live under the gear icon. See Settings above.
Add to Obsidian tip: the note is handed to Obsidian through your clipboard, so Add to Obsidian replaces whatever you had copied. Images stay as remote URLs; to archive them permanently, use Download .md with Save images locally and drag the resulting folder into your vault.
Filenames default to @handle-tweetId.md (tweets/threads) or @handle-article-slug.md (articles), and are fully configurable via the filename template.
Read the developer documentation in CONTRIBUTING.md.
XClipper is source-available under the PolyForm Noncommercial License 1.0.0 — not an OSI "open source" license.
Copyright © 2026 Ali Zendegani.
{.mp4 beside the Markdown (quoted posts included), linked as ▶ Video. Works for a single post and for batch (Auto Full/Auto Fast engines), with Markdown format and One per post files. On Images, embedded pictures come down the same way..zip export — With Zip files on, a single post lands as one archive holding the Markdown and its media instead of a file plus a sibling folder — one thing to drop into a note, an archive, or an AI chat.