This guide is for users running a manual setup.
If you are an AI agent, use INSTALL.md as the primary playbook.
Default:
DOTFILES_DIR="${DOTFILES_DIR:-$HOME/.config/dotfiles}"git clone https://github.com/shihyuho/dotfiles.git "$DOTFILES_DIR"
cd "$DOTFILES_DIR"Recommended (full setup):
make setupOr step by step:
make install # Create symlinks
make brew # Install Homebrew packagescp "$DOTFILES_DIR/secrets.example" ~/.secrets
chmod 600 ~/.secretsThen edit ~/.secrets and set required values:
GEMINI_API_KEYMCP_GITHUB_PERSONAL_ACCESS_TOKEN
exec zsh# nvm is installed via Homebrew and initializes on demand (lazy loading)
nvm install --lts
nvm use --lts# pyenv is installed via Homebrew
pyenv install 3.12
pyenv global 3.12curl -s "https://get.sdkman.io" | bash
# Use after restarting your shell
sdk list java
sdk install javamake test
kubectl version --client
gh --versionExpected verification result:
- Syntax check passes
- Startup speed passes with every run
< 0.5s - Managed symlinks are correct
ls -la ~/.zshrc
# Expected: .zshrc -> /path/to/dotfiles/zsh/rc.zshIf it is not a symlink, run:
make installecho "$PATH"
which brew
brew doctormake measure-startup- AI install playbook:
INSTALL.md - Tool list:
TOOLS.md - Project rules:
../AGENTS.md - GitHub: https://github.com/shihyuho/dotfiles