Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,19 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to [Semantic Versioning](https://semver.org/).

## [0.63.0] - 2026-06-12

LLM 性能監査(#121)P2 の最終弾(#113)。残る挙動ガード hook を整理した。

### Removed
- **console-log-guard を廃止(#113)**: JS/TS 編集ごとの console.log 警告と SessionEnd 全体監査を撤去。exit 0 の stderr 警告はモデルの行動を変えられず、CLI ツール等の正当な console.log にも無差別警告していた。rules/coding-style.md の「stray debug output」ルールと linter(ESLint no-console / biome)への委譲で代替
- **git-push-review を廃止(#113)**: git push 前の定型リマインダー(情報量ゼロの stderr 1 行)を撤去。実効的なガードは permissions.json の force-push deny 側が担っている。lib/deploy.sh の `__EDITOR_CMD__` 置換特例(デッドコード)と `editor_command()`(呼び出し元ゼロ)も削除。エディタ選択ステップは設定記録用として存続(文言を修正)
- 両 feature とも `_RETIRED_HOOK_FEATURES` に追加 — 既存インストールの settings.json エントリと hook スクリプトは update 時に自動掃除。`ENABLE_CONSOLE_LOG_GUARD` / `ENABLE_GIT_PUSH_REVIEW` はレガシーキー化

### Changed
- **doc-size-guard を警告専用に再設計(#113)**: (1) 誤検知がほぼ 100% だったパス参照チェック(バッククォート内の `/` や `.` を含む全文字列を実在パスとして検証)を削除、(2) ERROR / exit 1 を廃止して常に非ブロックの WARNING のみに、(3) 閾値を現行モデルの指示追従力に合わせて緩和(CLAUDE.md warn 150→250 行、AGENTS.md warn 60→150 行)、(4) feature.json の `standard: true` と profiles/standard.conf の `false` の矛盾を解消(standard は false が実態)
- **no-flicker を opt-in 化(#113)**: standard / full の既定を false に変更。CLAUDE_CODE_NO_FLICKER はもはや experimental ではなく現行 CLI には第一級の `tui: "fullscreen"` 設定が存在する。また現行 Claude Code は tmux 等の環境で fullscreen レンダラーを意図的に自動無効化しており、無条件 env 注入はその安全側判定をオーバーライドするため既定配布をやめる。description から「experimental」を削除。`tui` キーへの移行は対応最小バージョン確認後に別途実施

## [0.62.0] - 2026-06-12

LLM 性能監査(#121)P2 の第 2 弾(#112)。doc-blocker を allowlist 全拒否から slop パターン拒否方式に反転した。
Expand Down
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ Rules to remember: verify fresh install, `setup.sh --update`/`/update-kit`, and
5. In `wizard/steps.sh`: add confirmation display in `_step_confirm()` and the non-interactive default in `_fill_noninteractive_defaults()`
6. If the feature is a hook, add to `HOOK_KEYS` / `HOOK_TOKENS` in `wizard/registry.sh`, add `STR_HOOKS_*` strings in both i18n files, and add the hook label to `HOOK_LABELS`
7. Features are auto-collected by `build_settings_file()` in `lib/deploy.sh` via `_FEATURE_ORDER` / `_FEATURE_FLAGS` registry — no manual merge code needed
8. If external scripts needed: add `[name]=true` to `_FEATURE_HAS_SCRIPTS` in `lib/features.sh` — fresh deploy (`deploy_hook_scripts()`), update deploy (`_update_hook_scripts()`), and manifest/snapshot tracking (`collect_managed_target_files()`) all iterate `_FEATURE_SCRIPT_ORDER` × `_FEATURE_HAS_SCRIPTS`. A feature excluded from `_FEATURE_ORDER` (settings fragment special-cased, like `git-push-review`) must be appended to `_FEATURE_SCRIPT_ORDER` so its scripts still flow through all three paths
8. If external scripts needed: add `[name]=true` to `_FEATURE_HAS_SCRIPTS` in `lib/features.sh` — fresh deploy (`deploy_hook_scripts()`), update deploy (`_update_hook_scripts()`), and manifest/snapshot tracking (`collect_managed_target_files()`) all iterate `_FEATURE_SCRIPT_ORDER` × `_FEATURE_HAS_SCRIPTS`. A feature ever excluded from `_FEATURE_ORDER` (settings fragment special-cased) must be appended to `_FEATURE_SCRIPT_ORDER` so its scripts still flow through all three paths (no such feature exists currently — the two lists are identical)
9. If the feature creates files outside the standard manifest-tracked directories, add explicit cleanup to `uninstall.sh`
10. Verify update-path adoption. A new key must be checked in all of these paths:
- fresh install
Expand Down
12 changes: 5 additions & 7 deletions README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Claude Code Starter Kit bootstraps a consistent, high-quality Claude Code enviro
- **10 rules**: coding-style, git-workflow, hooks, patterns, performance, security, testing, agents, anti-patterns, permissions-guide
- **21 slash commands**: /plan, /tdd, /build-fix, /e2e, /verify, /research, /web-article, /oss-analyze, /web-source-review, /handover, /update-kit, and more
- **12 skill modules**: backend-patterns, frontend-patterns, security-review, tdd-workflow, prompt-patterns, and more
- **13 optional hooks/settings**: safety net (cc-safety-net), auto update, web content update, tmux reminder, git push review, doc blocker, Prettier or Biome formatting, console.log guard, PR creation log, pre-compact snapshot (opt-in), statusline, doc size guard, feature recommendation
- **11 optional hooks/settings**: safety net (cc-safety-net), auto update, web content update, tmux reminder, doc blocker, Prettier or Biome formatting, PR creation log, pre-compact snapshot (opt-in), statusline, doc size guard, feature recommendation
- **14 plugins** from multiple marketplaces: security-guidance, commit-commands, pr-review-toolkit, feature-dev, code-review, claude-md-management, superpowers, code-simplifier, document-skills, example-skills, typescript-lsp, gopls-lsp, pyright-lsp, rust-analyzer-lsp
- **i18n**: English & Japanese
- **Codex Plugin** sub-agent integration (optional, supports ChatGPT sign-in or OpenAI API key auth)
Expand Down Expand Up @@ -146,15 +146,15 @@ Language → Profile → Codex Plugin → New /init → Editor → Ghostty → F

Each step shows numbered options with descriptions. Recommended choices are marked.

> **About the Editor step**: The wizard asks which code editor you use. This decides whether the git push review hook is enabled (it prints a review reminder before `git push`; it does not launch an editor or show a diff). Choosing "None" skips the hook entirely. **If you don't have an editor installed or aren't sure, choose "None"** — Claude Code works entirely in the terminal and does not require an editor.
> **About the Editor step**: The wizard asks which code editor you use, purely to record your environment in the saved config. **If you don't have an editor installed or aren't sure, choose "None"** — Claude Code works entirely in the terminal and does not require an editor.

> **Want to know where each choice is applied?** See [Wizard Config Mapping](docs/wizard-config-mapping.en.md). It explains which values are written to `settings.json`, which are used only during setup, and which act as presets.
>
> **About the new /init mode**: Minimal, Standard, and Full enable Claude Code's new interactive `/init` mode by default. Custom asks whether you want to enable it.

### Editor Setup (Optional)

A code editor is a dedicated application for writing and editing code. While Claude Code runs in the terminal and doesn't require one, having an editor enables the git push review hook feature.
A code editor is a dedicated application for writing and editing code. Claude Code runs in the terminal and doesn't require one.

**Recommended: [VS Code](https://code.visualstudio.com/)** (free, by Microsoft)
- **macOS**: Download from [code.visualstudio.com](https://code.visualstudio.com/), then run `Cmd + Shift + P` → "Shell Command: Install 'code' command in PATH"
Expand Down Expand Up @@ -191,14 +191,12 @@ Hooks are automated safety checks that run automatically when Claude Code execut
| **Safety Net** | Blocks destructive git/filesystem commands (`git reset --hard`, `rm -rf`, `git push --force`, etc.) before execution |
| **Auto Update** | Checks for starter kit updates on session start and applies them in the background |
| Tmux Reminder | Suggests run_in_background for foreground dev servers (non-blocking) |
| Git Push Review | Pauses before git push for code review |
| Doc Blocker | Asks for confirmation only on ad-hoc SUMMARY/REPORT style docs (general docs pass) |
| Prettier Auto-format | Formats JS/TS files after edits |
| Biome Auto-format | Formats and lints JS/TS files after edits (Full uses Biome instead of Prettier) |
| Console.log Guard | Warns about console.log statements left in code |
| PR Creation Log | Logs PR URL after creation |
| Pre-compact Snapshot | Stashes tracked changes before context compaction (opt-in) |
| Doc Size Guard | Warns when CLAUDE.md/AGENTS.md exceeds recommended line count (Full only) |
| Doc Size Guard | Warns when CLAUDE.md/AGENTS.md exceeds size-hygiene targets (non-blocking; Full only) |
| Web Content Update | Auto-updates the web-content-extraction skill's deps on session start (opt-in; default in Full only) |
| Feature Recommendation | Notifies about newly available features for the selected profile |

Expand Down Expand Up @@ -329,7 +327,7 @@ NONINTERACTIVE=1 bash -c "$(curl -fsSL https://raw.githubusercontent.com/cloudna
--new-init=true \
--codex-plugin=false \
--commit-attribution=false \
--hooks=safety-net,auto-update,tmux,git-push,prettier,console,pr-log,pre-commit \
--hooks=safety-net,auto-update,tmux,prettier,pr-log,pre-commit \
--plugins=security-guidance,commit-commands,pr-review-toolkit,document-skills@anthropic-agent-skills

# Reuse a saved config
Expand Down
10 changes: 4 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ irm https://raw.githubusercontent.com/cloudnative-co/claude-code-starter-kit/mai
メモ帳(テキストエディット)のプログラミング向け高機能版と考えてください。コードの色分け表示、入力補完、エラー検出など、コーディングを助ける機能が備わっています。

> **Claude Code 自体はターミナルで動くため、エディタがなくても使えます。**
> ただし、このキットの一部機能(git push 前のコードレビュー)でエディタと連携できるため、ウィザードでエディタの質問が表示されます
> ウィザードのエディタの質問は、使用環境の記録(設定の保存・将来の連携機能)のためのものです
> **エディタを持っていない場合や、よくわからない場合は「なし」を選べば問題ありません。**

#### おすすめエディタ:VS Code
Expand Down Expand Up @@ -365,7 +365,7 @@ cd claude-code-starter-kit
> 何を選べばいいかわからない場合は、**Standard プロファイル** を選べば間違いありません。

> **エディタの質問について**: ステップ 5 で「どのエディタを使っていますか?」と聞かれます。
> これは git push レビューフック(push 実行前にレビューを促すリマインダーを表示する機能)を有効にするかどうかの設定です
> これは使用しているエディタを記録するための設定です(現在この選択で挙動が変わる機能はありません)
> エディタの起動や差分表示は行いません。「なし」を選ぶとこのフックは追加されません。
> **エディタをインストールしていない場合や、わからない場合は「5) なし」を選んでください。** Claude Code の動作には影響しません。
> エディタの詳細は「[エディタ(コードエディタ)とは?](#エディタコードエディタとは)」をご覧ください。
Expand Down Expand Up @@ -471,14 +471,12 @@ URL・公式ドキュメント・ブログ・ニュース・OSS ページを読
| **Safety Net** | **破壊的な git/ファイルシステムコマンド(`git reset --hard`、`rm -rf` 等)を実行前にブロック** |
| **自動アップデート** | **セッション開始時にスターターキットの最新版を自動で適用** |
| Tmux リマインダー | foreground の dev サーバーに run_in_background を提案(非ブロック) |
| Git Push レビュー | コードを共有する前に確認を促す |
| Doc ブロッカー | SUMMARY/REPORT 等のアドホック文書のみ確認に降格(一般文書は素通し) |
| Prettier 自動フォーマット | JS/TS ファイルを自動で見た目を整える |
| Biome 自動フォーマット | JS/TS ファイルを整形・lint(Full は Prettier の代わりに Biome) |
| Console.log ガード | デバッグ用コードの消し忘れを警告 |
| PR 作成ログ | Pull Request の URL を記録 |
| コンパクト前スナップショット | compact 直前に tracked 変更を git stash に退避(opt-in) |
| ドキュメントサイズガード | CLAUDE.md/AGENTS.md の肥大化を警告(Full のみ) |
| ドキュメントサイズガード | CLAUDE.md/AGENTS.md の肥大化を警告(非ブロック・Full のみ) |
| Web 取得スキル更新 | web-content-extraction スキルの依存を起動時に自動更新(opt-in・Full のみ既定有効) |
| 機能レコメンド | 選択プロファイルで利用可能になった新機能を通知 |

Expand Down Expand Up @@ -855,7 +853,7 @@ NONINTERACTIVE=1 bash -c "$(curl -fsSL https://raw.githubusercontent.com/cloudna
--codex-plugin=false \
--commit-attribution=false \
--ghostty=true \
--hooks=safety-net,auto-update,tmux,git-push,prettier,console,pr-log,pre-commit \
--hooks=safety-net,auto-update,tmux,prettier,pr-log,pre-commit \
--plugins=security-guidance,commit-commands,pr-review-toolkit,document-skills@anthropic-agent-skills
```

Expand Down
2 changes: 1 addition & 1 deletion docs/GUIDES/hooks-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
|---|---|
| `SessionStart` | auto-update, web-content-update, feature-recommendation |
| `SessionEnd` | auto-update |
| `PreToolUse` | safety-net, tmux-hooks, doc-blocker, console-log-guard, git-push-review |
| `PreToolUse` | safety-net, tmux-hooks, doc-blocker |
| `PostToolUse` | prettier-hooks, biome-hooks, doc-size-guard, pr-creation-log |
| `PreCompact` | pre-compact-commit |

Expand Down
8 changes: 4 additions & 4 deletions docs/wizard-config-mapping.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Not every saved value is supposed to appear in `settings.json`. In particular, `
| Profile | `PROFILE` / `--profile` | Preset bundle for other defaults | wizard initialization, manifest | No |
| Codex Plugin | `ENABLE_CODEX_PLUGIN` / `--codex-plugin` | Whether to install Codex Plugin and run CLI auth | Codex Plugin setup in `setup.sh` | No |
| New `/init` | `ENABLE_NEW_INIT` / `--new-init` | Enable Claude Code's interactive `/init` flow | `settings.json` `env.CLAUDE_CODE_NEW_INIT` | Yes |
| Editor | `EDITOR_CHOICE` / `--editor` | Whether the git push review hook is enabled (`none` skips the hook fragment entirely) | Hook fragment inclusion, manifest | Indirectly |
| Editor | `EDITOR_CHOICE` / `--editor` | Records your editor (no feature currently changes behavior based on it) | Saved config, manifest | No |
| Ghostty | `ENABLE_GHOSTTY_SETUP` / `--ghostty` | Extra Ghostty setup | Ghostty setup flow | No |
| Hooks | `ENABLE_*` / `--hooks` | Which hooks are enabled | Hook fragments merged into `settings.json` | Yes |
| Plugins | `SELECTED_PLUGINS` / `--plugins` | Recommended Claude Code plugins to install | Plugin install flow, manifest | No |
Expand All @@ -32,7 +32,7 @@ Not every saved value is supposed to appear in `settings.json`. In particular, `
| `LANGUAGE` | UI and generated file language | `settings.json`, `CLAUDE.md`, i18n | Currently written as `English` or `日本語` |
| `PROFILE` | Minimal / Standard / Full / Custom preset | Wizard defaults, manifest | Expanded into lower-level flags during setup |
| `ENABLE_NEW_INIT` | Claude Code's new interactive `/init` mode | `settings.json` `env.CLAUDE_CODE_NEW_INIT` | Defaults to `true` for Minimal, Standard, and Full; Custom asks explicitly |
| `EDITOR_CHOICE` | Gates the git push review hook | Inclusion of `features/git-push-review/hooks.json` | `none` skips the hook fragment entirely. The hook only prints a review reminder to stderr before `git push`; it does not launch an editor or show a diff |
| `EDITOR_CHOICE` | Recorded for reference only | Saved config and manifest | With git-push-review retired, no feature changes behavior based on this value |
| `COMMIT_ATTRIBUTION` | Claude Code attribution on or off | `settings.json` `attribution.commit`, `attribution.pr` | `false` clears both commit and PR attribution |
| `ENABLE_CODEX_PLUGIN` | Run Codex Plugin setup or skip it | Codex CLI auth and plugin install | A setup action, not a JSON setting |
| `ENABLE_GHOSTTY_SETUP` | Optional Ghostty setup | Ghostty install/config flow | Disabled automatically outside macOS |
Expand All @@ -59,11 +59,11 @@ These flags are used to merge the corresponding `features/*/hooks.json` fragment
| `ENABLE_AUTO_UPDATE` | Auto Update | Check for starter kit updates on session start | Yes |
| `ENABLE_WEB_CONTENT_UPDATE` | Web Content Update | Check web extraction skill dependency updates | Yes |
| `ENABLE_TMUX_HOOKS` | Tmux Reminder | Suggest run_in_background for foreground dev servers (non-blocking) | Yes |
| `ENABLE_GIT_PUSH_REVIEW` | Git Push Review | Pause before push and open a diff | Yes |
| `ENABLE_GIT_PUSH_REVIEW` | (retired) effective guard lives in permissions | None | Read as a legacy key and ignored |
| `ENABLE_DOC_BLOCKER` | Doc Blocker | Ask-only guard for slop doc patterns (general docs allowed) | Yes |
| `ENABLE_PRETTIER_HOOKS` | Prettier Auto-format | Format JS / TS edits | Yes |
| `ENABLE_BIOME_HOOKS` | Biome Auto-format | Format and lint JS / TS edits | Yes |
| `ENABLE_CONSOLE_LOG_GUARD` | Console Log Guard | Warn on leftover `console.log` | Yes |
| `ENABLE_CONSOLE_LOG_GUARD` | (retired) delegated to rules/linters | None | Read as a legacy key and ignored |
| `ENABLE_MEMORY_PERSISTENCE` | (retired) superseded by native auto-memory | None | Read as a legacy key and ignored |
| `ENABLE_STRATEGIC_COMPACT` | (retired) hook removed; skill remains on-demand | None | Read as a legacy key and ignored |
| `ENABLE_PR_CREATION_LOG` | PR Creation Log | PR creation logging support | Yes |
Expand Down
Loading
Loading