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
Anonymize a Java or Kotlin snippet, a stack trace, or a database execution plan, before you paste it into an AI chat. An IntelliJ IDEA plugin.
PluginsKotlinGitHub @snippetveilOnlineOwner 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
Anonymize a Java or Kotlin snippet, a stack trace, or a database execution plan, before you paste it into an AI chat. IntelliJ IDEA plugin.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Anonymize a Java or Kotlin snippet, a stack trace, or a database execution plan, before you paste it into an AI chat.
Every name your project owns — classes, methods, fields, packages, string literals — is
replaced with a placeholder before the snippet leaves the editor. The structure, the
control flow, and the libraries you call go as-is.Read the full README ↗Anonymize a Java or Kotlin snippet, a stack trace, or a database execution plan, before you paste it into an AI chat.
Every name your project owns — classes, methods, fields, packages, string literals — is replaced with a placeholder before the snippet leaves the editor. The structure, the control flow, and the libraries you call go as-is.
.java or .kt file, a comment
whose text is code, such as // this.customer.setOrder(order);, comes out as
// this.field2.method3(param4);: every name in it takes the placeholder that name gets in the
code around it. A comment that is prose, such as a TODO or an explanation, is stripped.14 renamed · 3 unknown · 22 preserved · 2 comments stripped. It is the only
place you can anonymize less — keep comments for this snippet, or preserve a name and send it
exactly as written. Names SnippetVeil could not resolve can be preserved directly; every other
name becomes preservable once you unlock the column, which warns you first and is locked again
the next time you open the preview.Type1 becomes FilterType1. The stem is yours, the number
always stays, and your real name never leaves the machine. Only names this snippet introduced can
be renamed — one an earlier snippet already used keeps the name that snippet's replies are written
in."SELECT state FROM billing.customers" comes out as "SELECT col1 FROM schema2.table3", and a
JPQL query's entity and field names take the placeholders the class and its fields get
everywhere else. A query SnippetVeil cannot read in full is replaced whole, as one "str1": SQL
holding a parameter, a string or a comment, JPQL with a name that does not resolve, and every
query in a Kotlin file. Which queries the IDE recognises depends on the plugins it has.java.base/,
is removed. Every exception message and the thread name become str placeholders, and a name the
IDE cannot find becomes Unknown. Copy the trace, then right-click → SnippetVeil →
Anonymize Stack Trace…; it always opens the preview first. A clipboard holding anything
besides the trace is refused, and your clipboard is left as it was.SnippetVeil makes no network calls. No networking code — enforced on every pull request, scanned in every release build, and public from the first commit.
"str1" → retype
the value that matters into your prompt.Not a secret scanner. Anonymizing code is unavailable outside supported source files; an execution plan or a stack trace is read from the clipboard, wherever you are. The reversal actions are not gated by language.
Apache-2.0. Source and issue tracker: https://github.com/snippetveil/snippetveil ·
Threat model, including the limits of the no-network checks:
https://github.com/snippetveil/snippetveil/blob/main/THREAT-MODEL.md
An IntelliJ IDEA plugin, for IDEA Community, IDEA Ultimate and Android Studio.
Status: published. SnippetVeil on the JetBrains Marketplace — Settings → Plugins → Marketplace, and search for SnippetVeil. Every release is signed, and the distribution zip is attached to the matching GitHub Release for anyone who would rather install it from disk and check the bytes first.
This repository is public from its first commit, deliberately — a continuous commit history is the evidence behind the no-network claim, and it can only be accumulated by starting early.
Work in progress is tracked in this repository's issues.
Every fixture in this repository is synthetic. The anonymiser is exercised against real codebases by a local instrument that is never run in CI and writes its findings outside the repository tree — and a bug it finds earns a synthetic fixture reproducing the shape, never the real code that revealed it. Running the anonymiser over a real codebase and committing the output would be exactly circular: if it leaked, the leak would be in a public repository, permanently. See CONTRIBUTING.md.
The demo/ directory is the sample project the Marketplace screenshots are shot from. It is not
part of the build and is not in the distribution — see demo/README.md.
SnippetVeil is free and Apache-2.0, and anonymizing your code is not something you will be asked to pay for.
If it saves you time and you want to fund the maintenance, there is a Sponsor button at the top of this repository, and the same link on the Marketplace listing. It is optional and it unlocks nothing — no features, no priority, no private builds. The plugin itself never asks: it makes no network calls, so it has no idea whether you sponsored it.
Two things help more than money. A bug report carrying the shape of the code that broke — synthetic, never your real source (CONTRIBUTING.md). And a rating on the Marketplace, which is one of the few signals this project gets, because it collects no telemetry.