Native Shell
Native Shell:AI 生成的 UI,在你的应用中原生呈现,覆盖每个平台。iOS、Android、macOS、Windows 与 Linux 上的应用、GPUI 应用与网页在运行时加载已签名、沙箱隔离的 TSX 模块并绘制 th
AI 翻译
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Declutter a project's root directory by taming configuration file sprawl
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Declutter a project's root directory by taming configuration file sprawl.
before after
────── ─────
.claude/ .config/
.cursor/ .github/
.editorconfig src/
.github/
.npmrc
.yarn/
src/
Every tool wants a dotfile at the repository root.
undot moves them into a single tracked .config/ directory.
Gitignored symlinks point back to the root, so every tool keeps working.
A pre-commit hook (or prek) recreates the symlinks on every clone and checkout.
Teammates install nothing and notice nothing.
uv tool install undot
Small static binaries (~450KB, instant startup) for Linux and macOS, also on GitHub releases. The pre-commit hook (below) needs no install at all.
undot migrate # or name entries: undot migrate .claude .cursor
git add -A && git commit
One idempotent command:
.gitignore (existing rules that reached inside a moved directory get matching .config/ patterns)migrate writes this hook config. After clone, checkout, merge, or rebase, it
restores any missing symlink:
default_install_hook_types:
[pre-commit, post-checkout, post-merge, post-rewrite]
repos:
- repo: https://github.com/jmelahman/undot
rev: v0.4.1
hooks:
- id: undot
CI checkouts don't run hooks. Most tools accept an explicit config path, so a file like
.goreleaser.yaml can live in .config/ with no symlink at all:
undot migrate .goreleaser.yaml
echo 'nolink .goreleaser.yaml' >> .config/undot.conf
- run: goreleaser release --clean --config .config/.goreleaser.yaml
.gitignore, .gitattributes, and .gitmodules are never migrated, and other .git*
files only if you name them. .github and .pre-commit-config.yaml require --force,
because a fresh clone must be able to bootstrap the hook..venv, .env, .golangci.yml, ...) are
skipped unless you name them.git rm --cached command you'll want afterwards.Tune the scan in .config/undot.conf or ~/.config/undot/undot.conf, one
name or glob per line:
# never migrate these here
.idea*
# do migrate .env, despite the default skip
!.env
# keep in .config/ without a root symlink
nolink .goreleaser.yaml