个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证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.
翻译准备中
取自仓库 README
正在加载完整 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.查看完整 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.