@k2works/claude-code-booster 0.20.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ *.nix text eol=lf
2
+ *.sh text eol=lf
3
+ Dockerfile text eol=lf
4
+ .vimrc text eol=lf
@@ -1,105 +1,113 @@
1
- # ベースイメージとして Ubuntu 22.04 を使用
2
- FROM ubuntu:22.04 AS base
3
-
4
- # 環境変数の設定
5
- ARG NODE_MAJOR=22
6
- ENV DEBIAN_FRONTEND=noninteractive \
7
- LANG=ja_JP.UTF-8 \
8
- LC_ALL=ja_JP.UTF-8 \
9
- LC_CTYPE=ja_JP.UTF-8 \
10
- NODE_VER=$NODE_MAJOR
11
-
12
- # ユーザーの設定
13
- ARG USERNAME=developer
14
- ARG USER_UID=1000
15
- ARG USER_GID=$USER_UID
16
-
17
- RUN groupadd --gid $USER_GID $USERNAME \
18
- && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
19
- && apt-get update \
20
- && apt-get install -y sudo \
21
- && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
22
- && chmod 0440 /etc/sudoers.d/$USERNAME
23
-
24
- # ロケールのセットアップ
25
- RUN apt-get update && apt-get install -y \
26
- language-pack-ja-base \
27
- language-pack-ja \
28
- && update-locale LANG=ja_JP.UTF-8 LANGUAGE=ja_JP:ja \
29
- && rm -rf /var/lib/apt/lists/*
30
-
31
- # 基本的なパッケージのインストール
32
- RUN apt-get update && \
33
- apt-get install -y \
34
- build-essential \
35
- zip \
36
- unzip \
37
- git \
38
- curl \
39
- wget \
40
- vim \
41
- tmux \
42
- xz-utils \
43
- && apt-get clean \
44
- && rm -rf /var/lib/apt/lists/*
45
-
46
- # Nixのインストール
47
- ENV NIX_INSTALL_DIR=/nix
48
- RUN mkdir -m 0755 $NIX_INSTALL_DIR && chown $USERNAME $NIX_INSTALL_DIR
49
- USER $USERNAME
50
- ENV USER=$USERNAME
51
- ENV HOME=/home/$USERNAME
52
- RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
53
- && echo '. /home/'$USERNAME'/.nix-profile/etc/profile.d/nix.sh' >> /home/$USERNAME/.bashrc \
54
- && mkdir -p /home/$USERNAME/.config/nix \
55
- && echo "experimental-features = nix-command flakes" >> /home/$USERNAME/.config/nix/nix.conf
56
-
57
- # Nix環境変数の設定
58
- ENV PATH="/home/$USERNAME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:${PATH}" \
59
- NIX_PATH="/home/$USERNAME/.nix-profile/etc/profile.d/nix.sh:/nix/var/nix/profiles/default/etc/profile.d/nix.sh" \
60
- NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
61
-
62
- USER root
63
-
64
- # Node.jsのインストール
65
- RUN curl -fsSL https://deb.nodesource.com/setup_$NODE_VER.x | bash - \
66
- && apt-get install -y nodejs \
67
- && npm install -g yarn \
68
- && mkdir -p /home/$USERNAME/.nvm \
69
- && chown -R $USERNAME:$USERNAME /home/$USERNAME/.nvm \
70
- && echo '#!/bin/bash\n\
71
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash\n\
72
- . /home/'$USERNAME'/.nvm/nvm.sh\n\
73
- nvm install "'$NODE_VER'"\n\
74
- nvm use "'$NODE_VER'"' > /tmp/nvm_install.sh \
75
- && chmod +x /tmp/nvm_install.sh \
76
- && su - $USERNAME -c /tmp/nvm_install.sh \
77
- && rm /tmp/nvm_install.sh
78
-
79
- # Gemini CLIのインストール
80
- RUN npm install -g @google/gemini-cli
81
-
82
- # Claude Codeのインストール
83
- RUN npm install -g @anthropic-ai/claude-code
84
-
85
- # Copilot CLIのインストール
86
- RUN npm install -g @github/copilot
87
-
88
- # Codex CLIのインストール
89
- RUN npm install -g @openai/codex
90
-
91
- # すべてのインストールが完了した後、ユーザーのホームディレクトリの所有権を確保
92
- RUN chown -R $USERNAME:$USERNAME /home/$USERNAME
93
-
94
- # Git safe.directory 設定(マウントされたボリューム対応)
95
- RUN git config --global --add safe.directory /srv \
96
- && git config --global --add safe.directory '*'
97
-
98
- # 作業ディレクトリの設定
99
- WORKDIR /srv
100
-
101
- # ユーザーを設定したユーザーに切り替える
102
- USER $USERNAME
103
-
104
- # デフォルトのシェルを bash に設定
1
+ # ベースイメージとして Ubuntu 24.04 を使用
2
+ FROM ubuntu:24.04 AS base
3
+
4
+ # 環境変数の設定
5
+ ARG NODE_MAJOR=22
6
+ ENV DEBIAN_FRONTEND=noninteractive \
7
+ LANG=ja_JP.UTF-8 \
8
+ LC_ALL=ja_JP.UTF-8 \
9
+ LC_CTYPE=ja_JP.UTF-8 \
10
+ NODE_VER=$NODE_MAJOR
11
+
12
+ # ユーザーの設定
13
+ ARG USERNAME=ubuntu
14
+ ARG USER_UID=1000
15
+ ARG USER_GID=$USER_UID
16
+
17
+ # Ubuntu 24.04 では UID 1000 の ubuntu ユーザーが既に存在するため、必要に応じて $USERNAME にリネームして使用する
18
+ RUN if [ "$USERNAME" != "ubuntu" ]; then \
19
+ usermod -l $USERNAME -m -d /home/$USERNAME ubuntu && \
20
+ groupmod -n $USERNAME ubuntu; \
21
+ fi \
22
+ && apt-get update \
23
+ && apt-get install -y sudo \
24
+ && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
25
+ && chmod 0440 /etc/sudoers.d/$USERNAME
26
+
27
+ # ロケールのセットアップ
28
+ RUN apt-get update && apt-get install -y \
29
+ language-pack-ja-base \
30
+ language-pack-ja \
31
+ && update-locale LANG=ja_JP.UTF-8 LANGUAGE=ja_JP:ja \
32
+ && rm -rf /var/lib/apt/lists/*
33
+
34
+ # 基本的なパッケージのインストール
35
+ RUN apt-get update && \
36
+ apt-get install -y \
37
+ build-essential \
38
+ zip \
39
+ unzip \
40
+ git \
41
+ curl \
42
+ wget \
43
+ vim-nox \
44
+ python3 \
45
+ python3-pip \
46
+ tmux \
47
+ xz-utils \
48
+ && apt-get clean \
49
+ && rm -rf /var/lib/apt/lists/*
50
+
51
+ # Nixのインストール
52
+ ENV NIX_INSTALL_DIR=/nix
53
+ RUN mkdir -m 0755 $NIX_INSTALL_DIR && chown $USERNAME:$USERNAME $NIX_INSTALL_DIR
54
+ USER $USERNAME
55
+ ENV USER=$USERNAME
56
+ ENV HOME=/home/$USERNAME
57
+ RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
58
+ && echo '. /home/'$USERNAME'/.nix-profile/etc/profile.d/nix.sh' >> /home/$USERNAME/.bashrc \
59
+ && mkdir -p /home/$USERNAME/.config/nix \
60
+ && echo "experimental-features = nix-command flakes" >> /home/$USERNAME/.config/nix/nix.conf
61
+
62
+ # Nix環境変数の設定
63
+ ENV PATH="/home/$USERNAME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:${PATH}" \
64
+ NIX_PATH="/home/$USERNAME/.nix-profile/etc/profile.d/nix.sh:/nix/var/nix/profiles/default/etc/profile.d/nix.sh" \
65
+ NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
66
+
67
+ USER root
68
+
69
+ # Node.jsのインストール
70
+ RUN apt-get update && apt-get install -y ca-certificates curl gnupg \
71
+ && mkdir -p /etc/apt/keyrings \
72
+ && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \
73
+ && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VER.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
74
+ && apt-get update && apt-get install -y nodejs \
75
+ && npm install -g yarn \
76
+ && mkdir -p /home/$USERNAME/.nvm \
77
+ && chown -R $USERNAME:$USERNAME /home/$USERNAME/.nvm \
78
+ && echo '#!/bin/bash\n\
79
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash\n\
80
+ . /home/'$USERNAME'/.nvm/nvm.sh\n\
81
+ nvm install "'$NODE_VER'"\n\
82
+ nvm use "'$NODE_VER'"' > /tmp/nvm_install.sh \
83
+ && chmod +x /tmp/nvm_install.sh \
84
+ && su - $USERNAME -c /tmp/nvm_install.sh \
85
+ && rm /tmp/nvm_install.sh
86
+
87
+ # Gemini CLIのインストール
88
+ RUN npm install -g @google/gemini-cli
89
+
90
+ # Claude Codeのインストール
91
+ RUN npm install -g @anthropic-ai/claude-code
92
+
93
+ # Copilot CLIのインストール
94
+ RUN npm install -g @github/copilot
95
+
96
+ # Codex CLIのインストール
97
+ RUN npm install -g @openai/codex
98
+
99
+ # すべてのインストールが完了した後、ユーザーのホームディレクトリの所有権を確保
100
+ RUN chown -R $USERNAME:$USERNAME /home/$USERNAME
101
+
102
+ # Git safe.directory 設定(マウントされたボリューム対応)
103
+ RUN git config --global --add safe.directory /srv \
104
+ && git config --global --add safe.directory '*'
105
+
106
+ # 作業ディレクトリの設定
107
+ WORKDIR /srv
108
+
109
+ # ユーザーを設定したユーザーに切り替える
110
+ USER $USERNAME
111
+
112
+ # デフォルトのシェルを bash に設定
105
113
  SHELL ["/bin/bash", "-c"]
@@ -0,0 +1,140 @@
1
+ # Vim操作マニュアル
2
+
3
+ このドキュメントは、本プロジェクトで設定されている `.vimrc` に基づく操作ガイドです。
4
+
5
+ ## 基本設定
6
+ - **文字コード**: UTF-8 (自動判別: UTF-8, EUC-JP, CP932)
7
+ - **改行コード**: UNIX (LF) 優先
8
+ - **インデント**: スペース2個 (タブをスペースに展開)
9
+ - **検索**: インクリメンタルサーチ、大文字小文字スマート区別、ハイライト表示
10
+ - **行番号**: 表示
11
+ - **マウス**: 有効
12
+
13
+ ## 基本キーマップ
14
+ | キー | 動作 | モード |
15
+ |---|---|---|
16
+ | `,` | リーダーキー (mapleader) | - |
17
+ | `\` | `,` (リーダー) として機能 | - |
18
+ | `<C-s>` | ファイル保存 | ノーマル / 挿入 |
19
+ | `ESC` `ESC` | 検索ハイライトをオフに切り替え | ノーマル |
20
+ | `j` / `k` | 表示行単位で移動 (折り返し対応) | ノーマル |
21
+ | `[b` / `]b` | 前 / 次のバッファへ移動 | ノーマル |
22
+ | `[B` / `]B` | 最初 / 最後のバッファへ移動 | ノーマル |
23
+ | `<C-p>` | 上に移動 | 挿入 |
24
+ | `<C-n>` | 下に移動 | 挿入 |
25
+ | `<C-b>` | 左に移動 | 挿入 |
26
+ | `<C-f>` | 右に移動 | 挿入 |
27
+
28
+ ## 開発機能 (Plugins)
29
+
30
+ ### [coc.nvim](https://github.com/neoclide/coc.nvim) (入力補完・LSP)
31
+ | キー | 動作 |
32
+ |---|---|
33
+ | `TAB` | 補完候補の選択 / 次へ |
34
+ | `S-TAB` | 補完候補の逆選択 |
35
+ | `ENTER` | 補完の確定 |
36
+ | `K` | カーソル下のドキュメント表示 |
37
+ | `gd` | 定義へジャンプ |
38
+ | `gy` | 型定義へジャンプ |
39
+ | `gi` | 実装へジャンプ |
40
+ | `gr` | 参照元を表示 |
41
+ | `[g` / `]g` | 前 / 次の診断メッセージへ移動 |
42
+ | `<leader>rn` | シンボルのリネーム |
43
+ | `<leader>f` | 選択範囲をフォーマット |
44
+ | `<leader>qf` | クイックフィックス実行 |
45
+ | `<leader>ac` | カーソル位置でコードアクション実行 |
46
+ | `<space>a` | 診断一覧を表示 |
47
+ | `<space>o` | アウトライン表示 |
48
+ | `<space>c` | コマンド一覧を表示 |
49
+
50
+ ### [vim-fugitive](https://github.com/tpope/vim-fugitive) (Git)
51
+ | キー | 動作 |
52
+ |---|---|
53
+ | `<leader>gs` | `git status` 表示 |
54
+ | `<leader>ga` | `git add %` (現在のファイルをアッド) |
55
+ | `<leader>gc` | `git commit` |
56
+ | `<leader>gp` | `git push` |
57
+ | `<leader>gd` | `git diff` |
58
+ | `<leader>gb` | `git blame` |
59
+
60
+ ### [vimspector](https://github.com/puremourning/vimspector) (デバッグ)
61
+ | キー | 動作 |
62
+ |---|---|
63
+ | `<leader>dd` | デバッグ開始 |
64
+ | `<leader>de` | デバッグ終了 (Reset) |
65
+ | `<leader>dc` | 続行 (Continue) |
66
+ | `<leader>dt` | ブレークポイント切り替え |
67
+ | `<leader>dT` | 全ブレークポイント解除 |
68
+ | `<leader>dj` | ステップオーバー |
69
+ | `<leader>dl` | ステップイン |
70
+ | `<leader>dh` | ステップアウト |
71
+ | `<leader>dk` | 再起動 |
72
+
73
+ ### [vim-test](https://github.com/vim-test/vim-test) (テスト実行)
74
+ | キー | 動作 |
75
+ |---|---|
76
+ | `<leader>t` | 最も近いテストを実行 |
77
+ | `<leader>T` | 現在のファイルのテストを実行 |
78
+ | `<leader>a` | 全テストを実行 (TestSuite) |
79
+ | `<leader>l` | 最後に実行したテストを再実行 |
80
+ | `<leader>g` | 最後に実行したテストファイルを開く |
81
+
82
+ ### [vim-go](https://github.com/fatih/vim-go) (Go開発)
83
+ | キー | 動作 |
84
+ |---|---|
85
+ | `<leader>b` | ビルド (テストファイルならテスト実行) |
86
+ | `<leader>r` | 実行 (go run) |
87
+ | `<leader>t` | テスト実行 |
88
+ | `<leader>c` | カバレッジ表示切り替え |
89
+ | `<C-n>` / `<C-m>` | クイックフィックスの次/前へ移動 |
90
+
91
+ ### [rust.vim](https://github.com/rust-lang/rust.vim) (Rust開発)
92
+ - **自動フォーマット**: 保存時に `rustfmt` が自動実行されます。
93
+
94
+ ### [.NET 開発](https://github.com/OmniSharp/omnisharp-vim)
95
+ - **OmniSharp**: .NET (C#) 用の開発支援プラグインが導入されています。
96
+ - **シンタックスハイライト**: `OrangeT/vim-csharp` により C# 構文がサポートされます。
97
+ - **LSP連携**: `nix develop .#dotnet` 環境下で、`coc.nvim` と組み合わせて利用可能です。
98
+
99
+ ### [Ruby 開発](https://github.com/vim-ruby/vim-ruby)
100
+ - **基本設定**: インデントがスペース2個に自動設定されます。
101
+ - **LSP連携**: `nix develop .#ruby` 環境下で、`solargraph` を使用した補完が利用可能です。
102
+
103
+ ### [PHP 開発](https://github.com/stanangeloff/php.vim)
104
+ - **シンタックスハイライト**: `php.vim` により最新の PHP 構文がサポートされます。
105
+ - **リファクタリング**: `phpactor` により、クラスの移動やインターフェースの実装などのリファクタリング支援が受けられます。
106
+ - **基本設定**: インデントがスペース4個に自動設定されます。
107
+
108
+ ### [Haskell 開発](https://github.com/neovimhaskell/haskell-vim)
109
+ - **シンタックスハイライト**: `neovimhaskell/haskell-vim` により Haskell 構文が高度にサポートされます。
110
+ - **LSP連携**: `nix develop .#haskell` 環境下で、`haskell-language-server` が利用可能です。`coc-haskell` 等の導入を推奨します。
111
+
112
+ ### [Java 開発](https://github.com/uiiaoo/java-syntax.vim)
113
+ - **シンタックスハイライト**: `uiiaoo/java-syntax.vim` により Java 構文のハイライトが強化されています。
114
+ - **LSP連携**: `nix develop .#java` 環境下で、`coc-java` などの CoC 拡張機能を導入することで高度な開発が可能です。
115
+
116
+ ### [Clojure 開発](https://github.com/Olical/conjure)
117
+ - **Conjure**: Clojure (および Lisp 系言語) 用の高度な対話型開発環境です。バッファ内のコードを即座に REPL で評価できます。
118
+ - **Fireplace**: REPL と連携した開発支援を提供します。
119
+ - **シンタックスハイライト**: `clojure.vim` により Clojure 構文がサポートされます。
120
+
121
+ ### [Elixir 開発](https://github.com/elixir-editors/vim-elixir)
122
+ - **シンタックスハイライト**: `vim-elixir` により Elixir 構文と `mix` フォーマッタとの連携がサポートされます。
123
+ - **LSP連携**: `nix develop .#elixir` 環境下で、`elixir-ls` を使用した高度な開発が可能です。
124
+
125
+ ### [Scala 開発](https://github.com/derekwyatt/vim-scala)
126
+ - **シンタックスハイライト**: `vim-scala` により Scala 構文がサポートされます。
127
+ - **LSP連携**: `nix develop .#scala` 環境下で、`Metals` を使用した高度な開発が可能です。
128
+
129
+ ### [CtrlP](https://github.com/ctrlpvim/ctrlp.vim) (ファイル検索・セレクタ)
130
+ | キー | 動作 |
131
+ |---|---|
132
+ | `<C-p>` | ファイル検索 (プロジェクト内) |
133
+ | `:CtrlPFunky` | 関数一覧から検索 |
134
+ | `:CtrlPCommandLine` | コマンド履歴から検索 |
135
+
136
+ ### その他
137
+ - **GitHub Copilot**: `github/copilot.vim` が有効化されています。
138
+ - **vim-airline**: ステータスライン、タブラインが表示されます。
139
+ - **indentLine**: インデントが可視化されます。
140
+ - **vim-trailing-whitespace**: 末尾の余分な空白をハイライトします。