Skip to content

kingpranav21/Stealth-Github

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stealth GitHub — GitHub repos in VS Code without git clone

Open VSX version Open VSX downloads License: MIT VS Code

Stealth GitHub is a VS Code extension that lets you open, browse, edit, and save GitHub repositories without a full local clone. It builds a shallow remote index, hydrates only the files you open, and enforces a disk budget under ~/.stealth/ — built for limited SSD space, many repos, and fast “open and fix” workflows.

Works in VS Code, VSCodium, and other editors that use the Open VSX marketplace.

Stealth extension demo: open a GitHub repo, browse remote files, edit, and push with Cmd+S

Table of contents

Why Stealth

You want to… Stealth git clone GitHub Codespace
Open a repo quickly ✅ Shallow index ❌ Full download ✅ Cloud VM
Edit a few files & push ✅ Cmd+S → GitHub API
Cap disk usage ✅ Per-workspace + global cache ❌ Full repo size ✅ Cloud
Run tests / terminal in repo

Use Stealth when you need lightweight GitHub editing on your machine. Use a clone or Codespace when you need a full dev environment.

Install

Open VSX (recommended for VSCodium and VS Code–compatible editors)

  1. Open Extensions (Cmd+Shift+X / Ctrl+Shift+X)
  2. Search Stealth GitHub
  3. Install kingpranav21.stealth-github

Or install from the registry page:
https://open-vsx.org/extension/kingpranav21/stealth-github

Build from source

git clone https://github.com/kingpranav21/stealth.git
cd stealth
npm install
npm run package

In the editor: Cmd+Shift+PExtensions: Install from VSIX… → select packages/extension/stealth-github-*.vsixReload Window.

How to use (after install)

1. Reload

Cmd+Shift+PDeveloper: Reload Window after installing.

Use only one Stealth GitHub install (Open VSX or a local VSIX/dev build — not both).

2. Sign in

Cmd+Shift+PStealth GitHub: Sign in to GitHub

3. Open a repo

Cmd+Shift+PStealth GitHub: Open GitHub Repository…

Enter owner/repo (e.g. kingpranav21/stealth). You need push access to save.

4. Browse and open files

  • Sidebar → Remote Repository
  • Or Stealth GitHub: Find File… (Cmd+Alt+F)

Files load from GitHub on first open (hydration). Stubs in Explorer are replaced when you open them.

5. Edit and push

Edit → Cmd+S / Ctrl+S → wait for “Pushed to GitHub”.

6. Dashboard

Click Stealth GitHub in the status bar (bottom-right) or run Stealth GitHub: Dashboard.

Command cheat sheet

Action Command palette
Open repo Stealth GitHub: Open GitHub Repository…
Find file Stealth GitHub: Find File…
Reload file from GitHub Stealth GitHub: Hydrate Active File from GitHub
All commands Stealth GitHub: Menu…
Disk / cache Stealth GitHub: Cache Actions… or Dashboard
Upgrade / license Stealth GitHub: Upgrade to Pro… / Activate License Key

Full walkthrough (same as Open VSX listing): packages/extension/README.md

Older listing: The extension was renamed on Open VSX to kingpranav21.stealth-github. The previous kingpranav21.stealth listing is deprecated — install Stealth GitHub for updates, trial, and Pro.

Pro & 14-day trial

Stealth GitHub includes a 14-day free trial (full features). After that, you need Pro via Lemon Squeezy.

Phase What you can do
Trial (14 days) Open repos, edit, push, hydrate — everything
After trial (no license) Sign in, dashboard, Upgrade, Activate License Key only — no open repo, save, hydrate, or sync
Pro (paid) Full access again with your license key

After purchase

  1. Lemon Squeezy emails a license key.
  2. Cmd+Shift+PStealth GitHub: Activate License Key → paste the key.

Subscriptions: If you sell a subscription on Lemon, license validation follows the subscription — cancelled subs stop validating on the next check (about every 24 hours).

Setup for publishers: docs/lemonsqueezy-setup.md

Terminal (Stealth CLI)

Push to GitHub from the shell — same workspaces as the editor (~/.stealth/workspaces/).

Auth (once per machine):

export GITHUB_TOKEN=$(gh auth token)   # or set GITHUB_TOKEN / STEALTH_GITHUB_TOKEN
npm run build
npm run stealth -- auth

From a Stealth workspace folder (open the repo in the editor first, or cd into its workspace):

cd ~/.stealth/workspaces/<workspace-id>

# Pipe content → create/update on GitHub
echo '# Deploy notes' | npm run stealth -- write docs/deploy.md -m "Add deploy notes"

# Push files already on disk
npm run stealth -- push src/config.ts package.json

# Create empty file on GitHub
npm run stealth -- touch scripts/run.sh -m "Add run script"

# Read remote file
npm run stealth -- cat README.md

# List workspaces
npm run stealth -- workspaces

Install globally after build: npm link (optional), then run stealth directly.

CLI command Saves to GitHub? Saves locally under ~/.stealth?
stealth write <path> Yes Yes
stealth push <file…> Yes Uses existing file
stealth touch <path> Yes (empty file) Yes
stealth cat <path> No (read only) No

Features

  • No local .git — remote workspace backed by GitHub APIs
  • Shallow / lazy index — fast open; deep index optional
  • On-demand hydration — only opened files use cache disk
  • Stub Guard — warns if the editor shows stub placeholders instead of real code (helps AI-assisted editing)
  • Disk Governor — optional Mac-wide cap across all ~/.stealth workspaces
  • Stealth Dashboard — disk usage, API quota, workspace actions
  • Find file, branch switch, compare/pull from remote, open PR in browser, Codespace link

Settings

Setting Default Description
stealth.cacheMaxMb 500 Max hydrated bytes per workspace
stealth.globalCacheMaxMb 0 Mac-wide cap under ~/.stealth (0 = off)
stealth.indexMode shallow shallow or full tree when opening a repo
stealth.stubGuard true Warn when stub content is in the editor
stealth.bloatBlocklist on Block hydrating huge paths (node_modules, etc.)
stealth.checkRemoteBeforeSave true Warn if the file changed on GitHub before save
stealth.licensing.enabled true Trial + Pro gate (set false to disable paywall)
stealth.trialDays 14 Free trial length per machine
stealth.checkoutUrl Lemon checkout Upgrade to Pro button
stealth.licensing.provider lemonsqueezy Validate keys with Lemon Squeezy (no custom server)

Local data: ~/.stealth/indexes/ and ~/.stealth/workspaces/.

Stealth vs git clone

Stealth is a GitHub remote workspace extension: browse and edit like a normal project, but without cloning the full history and tree to disk.

Choose Stealth for quick edits, small SSDs, or juggling many repositories.
Choose git clone for local builds, tests, and git CLI workflows.
Choose Codespaces for a full cloud dev box.

Terminal commands

Run from the repo root after git clone and npm install:

Command What it does
npm test Unit tests + extension build (CI-safe, ~30s)
npm run test:unit Unit tests only (shared logic + manifest)
npm run build Compile shared + extension + CLI
npm run stealth -- <cmd> Stealth CLI (push, write, touch, cat)
npm run smoke Full pipeline: build, package VSIX, manifest checks
npm run package Build and create packages/extension/stealth-github-*.vsix
npm run demo-gif Regenerate docs/stealth-demo.gif (needs Playwright)

Example — clone, test, package:

git clone https://github.com/kingpranav21/stealth.git
cd stealth
npm install
npm test
npm run package

##new edit

Requires Node.js 18+ (20+ recommended). Tests use the built-in node:test runner — no extra test framework

Development

npm install
npm test

Press F5Run Stealth Extension (Extension Development Host) for manual testing in the editor.

Optional: STEALTH_SMOKE=1 npm test then npm run smoke for a release VSIX check.

Contributing

Bug reports and PRs are welcome: github.com/kingpranav21/stealth/issues

##new edit

License

MIT © contributors

About

Open a GitHub repo in Cursor without git clone. Stealth keeps a small index on disk; only files you open (hydrate) count toward a cache cap you control.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors