Native Shell
Native Shell은 모든 플랫폼의 앱 안에서 만들어지는 AI UI입니다
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기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