Skip to content

Commit d23beab

Browse files
authored
Merge pull request #4 from pose/pose/chores/github-actions-are-failing-on-3
2 parents 793f8f3 + 1dbf029 commit d23beab

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

CLAUDE.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# CLAUDE.md
2+
3+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4+
5+
## Overview
6+
7+
A [homeshick](https://github.com/andsens/homeshick)-managed dotfiles repo. Homeshick symlinks files from `home/` into `$HOME`.
8+
9+
## Architecture
10+
11+
- `home/` — mirrors the home directory layout 1:1 (e.g., `home/.zshrc``~/.zshrc`, `home/.config/nvim/init.vim``~/.config/nvim/init.vim`)
12+
- `home/bin/` — user scripts on `$PATH` (bootstrap-macos.sh, setup helpers)
13+
- `home/.config/nvim/` — Neovim config: `init.vim` (vim-plug plugins) + `lua/pose.lua` (LSP/completion setup via Mason)
14+
- `test/` — Docker/Finch-based integration test
15+
16+
## Testing
17+
18+
Run the integration test (requires Docker on Linux, Finch on macOS):
19+
20+
```sh
21+
cd test && ./run-test.sh
22+
```
23+
24+
The test spins up an Ubuntu container, clones the dotfiles via homeshick from GitHub, installs Neovim plugins, and asserts all expected plugins and LSPs are installed. It requires changes to be committed and pushed first.
25+
26+
In CI, the same test runs with `IN_GUEST=1` (already inside the runner):
27+
28+
```sh
29+
cd test && IN_GUEST=1 ./run-test.sh
30+
```
31+
32+
## Key Details
33+
34+
- Plugin management: vim-plug (versions pinned in `home/.vim-plug-lock.vim`)
35+
- LSP management: Mason + mason-lspconfig (configured in `home/.config/nvim/lua/pose.lua`)
36+
- Shell: zsh with oh-my-zsh (custom theme at `home/.oh-my-zsh/themes/pose.zsh-theme`)
37+
- When adding/removing Neovim plugins, update both the Neovim config and the grep assertions in `test/run-test.sh`

0 commit comments

Comments
 (0)