{"id":49461491,"url":"https://github.com/ianchenx/session-stash","last_synced_at":"2026-05-23T08:03:09.719Z","repository":{"id":352177180,"uuid":"1213381492","full_name":"ianchenx/session-stash","owner":"ianchenx","description":"Manage and switch multiple account sessions per site. Encrypted cookie and localStorage sync via Cloudflare KV.","archived":false,"fork":false,"pushed_at":"2026-04-27T03:25:25.000Z","size":1671,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-30T10:40:06.481Z","etag":null,"topics":["chrome-extension","cloudflare-kv","cookie-manager","multi-account","session-manager"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ianchenx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-17T10:15:41.000Z","updated_at":"2026-04-27T03:25:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ianchenx/session-stash","commit_stats":null,"previous_names":["ianchenx/session-stash"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/ianchenx/session-stash","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianchenx%2Fsession-stash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianchenx%2Fsession-stash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianchenx%2Fsession-stash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianchenx%2Fsession-stash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ianchenx","download_url":"https://codeload.github.com/ianchenx/session-stash/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianchenx%2Fsession-stash/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33387657,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T04:15:53.637Z","status":"ssl_error","status_checked_at":"2026-05-23T04:15:53.242Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chrome-extension","cloudflare-kv","cookie-manager","multi-account","session-manager"],"created_at":"2026-04-30T10:39:59.350Z","updated_at":"2026-05-23T08:03:09.712Z","avatar_url":"https://github.com/ianchenx.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"assets/icon.png\" width=\"96\" alt=\"Session Stash\"\u003e\n\n# Session Stash\n\n![Chrome MV3](https://img.shields.io/badge/Chrome-MV3-4285F4?style=flat-square\u0026logo=googlechrome\u0026logoColor=white)\n![License](https://img.shields.io/badge/License-MIT-blue?style=flat-square)\n\nEnglish | [中文](README_CN.md)\n\nSession Stash is a Chrome extension for managing multiple account sessions on the same website. Save your cookies and localStorage as encrypted snapshots to your own Cloudflare KV — switch identities without changing browser profiles.\n\n\u003c/div\u003e\n\n### Install\n\nChrome: [Session Stash](https://chromewebstore.google.com/detail/session-stash/kfbdilhallcofbmjjlhlchehkcbnailc)\n\n### Features\n\n- Save and switch between multiple account sessions per website\n- End-to-end encrypted — AES-GCM-256, key derived via PBKDF2-SHA256 (600k iterations)\n- Synced to your own Cloudflare KV namespace — you control the data\n- Popup for quick switching, side panel for full management\n- Auto-lock vault after configurable idle timeout\n- Conflict detection when sessions are updated from another device\n- Clear cookies and localStorage for the current site in one click\n- Toolbar badge shows the active account\n\n### How It Works\n\n```\n┌─────────────┐    snapshot    ┌──────────────┐   encrypt    ┌──────────────────┐\n│  Browser Tab │ ──────────▶  │  Background   │ ──────────▶ │  Cloudflare KV   │\n│  (cookies +  │              │  Service Worker│              │  (your namespace)│\n│  localStorage│ ◀────────── │               │ ◀────────── │                  │\n└─────────────┘    inject     └──────────────┘   decrypt    └──────────────────┘\n```\n\n1. **Save** — Snapshots cookies and localStorage for the active tab's domain, encrypts them, and writes to KV.\n2. **Switch** — Pushes the current session back to KV (if healthy), clears the tab, injects the target session, and reloads.\n3. **Push** — Overwrites the cloud version of the active account with the current live session.\n\n\u003e [!NOTE]\n\u003e Session Stash operates per-domain — `github.com` and `mail.google.com` maintain separate account lists.\n\n### Screenshots\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/store/01-hero.jpg\" alt=\"Popup — switch accounts in one click\"\u003e\u003cbr\u003e\n  \u003cimg src=\"assets/store/03-sidepanel.jpg\" alt=\"Side panel — all your accounts in one sidebar\"\u003e\u003cbr\u003e\n  \u003cimg src=\"assets/store/04-cloudflare.jpg\" alt=\"Settings — your keys, your Cloudflare KV\"\u003e\n\u003c/p\u003e\n\n### Usage\n\n1. Install the extension and click the Session Stash icon → **Settings**\n2. Enter your Cloudflare **Account ID**, **Namespace ID**, and **API Token**\n3. Set a master password — this encrypts all session data before it leaves the browser\n4. Navigate to any HTTPS site, click the icon, and **Save current** to capture your session\n5. Log into a different account on the same site and save it with a different label\n6. Switch between accounts with one click — the tab reloads with the new identity\n\n\u003e [!TIP]\n\u003e Create your Cloudflare KV namespace at **Workers \u0026 Pages → KV** in the [Cloudflare dashboard](https://dash.cloudflare.com/). You'll need an API token with `Account.Workers KV Storage` read/write permission.\n\n### Privacy\n\n- Your master password never leaves the browser\n- All session data is encrypted locally before being sent to Cloudflare KV\n- No telemetry, no analytics, no third-party services\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fianchenx%2Fsession-stash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fianchenx%2Fsession-stash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fianchenx%2Fsession-stash/lists"}