cc-proficiency 0.2.7 → 0.2.8

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.
Files changed (116) hide show
  1. package/README.es.md +395 -0
  2. package/README.fr.md +395 -0
  3. package/README.ja.md +395 -0
  4. package/README.ko.md +395 -0
  5. package/README.md +27 -6
  6. package/README.zh-CN.md +27 -6
  7. package/dist/cli/commands/achievements.d.ts.map +1 -1
  8. package/dist/cli/commands/achievements.js +6 -4
  9. package/dist/cli/commands/achievements.js.map +1 -1
  10. package/dist/cli/commands/analyze.d.ts.map +1 -1
  11. package/dist/cli/commands/analyze.js +3 -2
  12. package/dist/cli/commands/analyze.js.map +1 -1
  13. package/dist/cli/commands/badge.d.ts.map +1 -1
  14. package/dist/cli/commands/badge.js +6 -7
  15. package/dist/cli/commands/badge.js.map +1 -1
  16. package/dist/cli/commands/config.d.ts.map +1 -1
  17. package/dist/cli/commands/config.js +8 -3
  18. package/dist/cli/commands/config.js.map +1 -1
  19. package/dist/cli/commands/explain.d.ts.map +1 -1
  20. package/dist/cli/commands/explain.js +21 -21
  21. package/dist/cli/commands/explain.js.map +1 -1
  22. package/dist/cli/commands/init.d.ts.map +1 -1
  23. package/dist/cli/commands/init.js +19 -21
  24. package/dist/cli/commands/init.js.map +1 -1
  25. package/dist/cli/commands/leaderboard.d.ts.map +1 -1
  26. package/dist/cli/commands/leaderboard.js +12 -10
  27. package/dist/cli/commands/leaderboard.js.map +1 -1
  28. package/dist/cli/commands/process.js +5 -5
  29. package/dist/cli/commands/process.js.map +1 -1
  30. package/dist/cli/commands/refresh.d.ts.map +1 -1
  31. package/dist/cli/commands/refresh.js +2 -4
  32. package/dist/cli/commands/refresh.js.map +1 -1
  33. package/dist/cli/commands/share.d.ts.map +1 -1
  34. package/dist/cli/commands/share.js +30 -28
  35. package/dist/cli/commands/share.js.map +1 -1
  36. package/dist/cli/commands/status.d.ts.map +1 -1
  37. package/dist/cli/commands/status.js +17 -15
  38. package/dist/cli/commands/status.js.map +1 -1
  39. package/dist/cli/commands/uninstall.d.ts.map +1 -1
  40. package/dist/cli/commands/uninstall.js +6 -4
  41. package/dist/cli/commands/uninstall.js.map +1 -1
  42. package/dist/cli/commands/update.d.ts.map +1 -1
  43. package/dist/cli/commands/update.js +14 -12
  44. package/dist/cli/commands/update.js.map +1 -1
  45. package/dist/cli/index.js +22 -19
  46. package/dist/cli/index.js.map +1 -1
  47. package/dist/cli/services/hooks.d.ts.map +1 -1
  48. package/dist/cli/services/hooks.js +5 -4
  49. package/dist/cli/services/hooks.js.map +1 -1
  50. package/dist/cli/services/publishing.d.ts.map +1 -1
  51. package/dist/cli/services/publishing.js +15 -16
  52. package/dist/cli/services/publishing.js.map +1 -1
  53. package/dist/cli/utils/formatting.d.ts.map +1 -1
  54. package/dist/cli/utils/formatting.js +17 -11
  55. package/dist/cli/utils/formatting.js.map +1 -1
  56. package/dist/cli/utils/locale.d.ts +1 -1
  57. package/dist/cli/utils/locale.d.ts.map +1 -1
  58. package/dist/cli/utils/locale.js +4 -6
  59. package/dist/cli/utils/locale.js.map +1 -1
  60. package/dist/cli/utils/update-check.d.ts.map +1 -1
  61. package/dist/cli/utils/update-check.js +3 -2
  62. package/dist/cli/utils/update-check.js.map +1 -1
  63. package/dist/gist/registry.d.ts.map +1 -1
  64. package/dist/gist/registry.js +5 -15
  65. package/dist/gist/registry.js.map +1 -1
  66. package/dist/i18n/index.d.ts +17 -0
  67. package/dist/i18n/index.d.ts.map +1 -0
  68. package/dist/i18n/index.js +71 -0
  69. package/dist/i18n/index.js.map +1 -0
  70. package/dist/i18n/locales/en.d.ts +3 -0
  71. package/dist/i18n/locales/en.d.ts.map +1 -0
  72. package/dist/i18n/locales/en.js +276 -0
  73. package/dist/i18n/locales/en.js.map +1 -0
  74. package/dist/i18n/locales/es.d.ts +3 -0
  75. package/dist/i18n/locales/es.d.ts.map +1 -0
  76. package/dist/i18n/locales/es.js +276 -0
  77. package/dist/i18n/locales/es.js.map +1 -0
  78. package/dist/i18n/locales/fr.d.ts +3 -0
  79. package/dist/i18n/locales/fr.d.ts.map +1 -0
  80. package/dist/i18n/locales/fr.js +276 -0
  81. package/dist/i18n/locales/fr.js.map +1 -0
  82. package/dist/i18n/locales/ja.d.ts +3 -0
  83. package/dist/i18n/locales/ja.d.ts.map +1 -0
  84. package/dist/i18n/locales/ja.js +276 -0
  85. package/dist/i18n/locales/ja.js.map +1 -0
  86. package/dist/i18n/locales/ko.d.ts +3 -0
  87. package/dist/i18n/locales/ko.d.ts.map +1 -0
  88. package/dist/i18n/locales/ko.js +276 -0
  89. package/dist/i18n/locales/ko.js.map +1 -0
  90. package/dist/i18n/locales/zh-CN.d.ts +3 -0
  91. package/dist/i18n/locales/zh-CN.d.ts.map +1 -0
  92. package/dist/i18n/locales/zh-CN.js +276 -0
  93. package/dist/i18n/locales/zh-CN.js.map +1 -0
  94. package/dist/i18n/types.d.ts +245 -0
  95. package/dist/i18n/types.d.ts.map +1 -0
  96. package/dist/i18n/types.js +5 -0
  97. package/dist/i18n/types.js.map +1 -0
  98. package/dist/renderer/animated-svg.d.ts +2 -3
  99. package/dist/renderer/animated-svg.d.ts.map +1 -1
  100. package/dist/renderer/animated-svg.js +47 -20
  101. package/dist/renderer/animated-svg.js.map +1 -1
  102. package/dist/renderer/svg.d.ts +11 -6
  103. package/dist/renderer/svg.d.ts.map +1 -1
  104. package/dist/renderer/svg.js +99 -69
  105. package/dist/renderer/svg.js.map +1 -1
  106. package/dist/store/achievements.d.ts +2 -1
  107. package/dist/store/achievements.d.ts.map +1 -1
  108. package/dist/store/achievements.js +2 -31
  109. package/dist/store/achievements.js.map +1 -1
  110. package/dist/types.d.ts +0 -2
  111. package/dist/types.d.ts.map +1 -1
  112. package/dist/utils/display-width.d.ts +10 -0
  113. package/dist/utils/display-width.d.ts.map +1 -0
  114. package/dist/utils/display-width.js +58 -0
  115. package/dist/utils/display-width.js.map +1 -0
  116. package/package.json +1 -1
package/README.ja.md ADDED
@@ -0,0 +1,395 @@
1
+ <p align="center">
2
+ <img src="https://img.shields.io/badge/Claude_Code-%E7%86%9F%E7%B7%B4%E5%BA%A6%E3%83%90%E3%83%83%E3%82%B8-7c3aed?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMiAyTDIgN2wxMCA1IDEwLTV6Ii8+PHBhdGggZD0iTTIgMTdsMTAgNSAxMC01Ii8+PHBhdGggZD0iTTIgMTJsMTAgNSAxMC01Ii8+PC9zdmc+" alt="cc-proficiency" />
3
+ </p>
4
+
5
+ <p align="center">
6
+ <strong>Claude Code の使用状況から熟練度バッジを生成します。Claude Certified Architect 試験の 5 つのドメインに対応。</strong>
7
+ </p>
8
+
9
+ <p align="center">
10
+ <a href="https://www.npmjs.com/package/cc-proficiency"><img src="https://img.shields.io/npm/v/cc-proficiency?style=flat-square&color=cb3837&logo=npm" alt="npm バージョン" /></a>
11
+ <a href="https://www.npmjs.com/package/cc-proficiency"><img src="https://img.shields.io/npm/dm/cc-proficiency?style=flat-square&color=cb3837&logo=npm" alt="npm ダウンロード数" /></a>
12
+ <a href="https://github.com/Z-M-Huang/cc-proficiency"><img src="https://img.shields.io/github/stars/Z-M-Huang/cc-proficiency?style=flat-square&logo=github" alt="GitHub stars" /></a>
13
+ <a href="https://github.com/Z-M-Huang/cc-proficiency/issues"><img src="https://img.shields.io/github/issues/Z-M-Huang/cc-proficiency?style=flat-square&logo=github" alt="GitHub issues" /></a>
14
+ <a href="https://github.com/Z-M-Huang/cc-proficiency/blob/main/LICENSE"><img src="https://img.shields.io/github/license/Z-M-Huang/cc-proficiency?style=flat-square" alt="ライセンス" /></a>
15
+ </p>
16
+
17
+ <p align="center">
18
+ <img src="https://img.shields.io/badge/node-%3E%3D18.0.0-339933?style=flat-square&logo=node.js&logoColor=white" alt="Node.js" />
19
+ <img src="https://img.shields.io/badge/TypeScript-5.7+-3178c6?style=flat-square&logo=typescript&logoColor=white" alt="TypeScript" />
20
+ <img src="https://img.shields.io/badge/zero-runtime_deps-22c55e?style=flat-square" alt="ランタイム依存なし" />
21
+ <img src="https://img.shields.io/badge/coverage-96%25-brightgreen?style=flat-square" alt="テストカバレッジ" />
22
+ <img src="https://visitor-badge.laobi.icu/badge?page_id=Z-M-Huang.cc-proficiency&style=flat-square" alt="訪問者" />
23
+ </p>
24
+
25
+ <p align="center">
26
+ <a href="#インストール">インストール</a> &nbsp;&middot;&nbsp;
27
+ <a href="#使い方">使い方</a> &nbsp;&middot;&nbsp;
28
+ <a href="#readme-に埋め込む">埋め込み</a> &nbsp;&middot;&nbsp;
29
+ <a href="#スコアリングの仕組み">スコアリング</a> &nbsp;&middot;&nbsp;
30
+ <a href="#プライバシー">プライバシー</a> &nbsp;&middot;&nbsp;
31
+ <a href="#ローカライゼーション">ローカライゼーション</a> &nbsp;&middot;&nbsp;
32
+ <a href="./README.md">English</a> &middot; <a href="./README.zh-CN.md">中文</a> &middot; <a href="./README.es.md">Espa&ntilde;ol</a> &middot; <a href="./README.fr.md">Fran&ccedil;ais</a> &middot; <strong>日本語</strong> &middot; <a href="./README.ko.md">한국어</a>
33
+ </p>
34
+
35
+ ---
36
+
37
+ ## 機能概要
38
+
39
+ Claude Code のセッション記録を**ローカル**でルールベースのエンジンにより分析し、5 つのドメインにわたる使用パターンを評価します:
40
+
41
+ | ドメイン | ウェイト | 測定内容 |
42
+ |----------|----------|----------|
43
+ | **CC Mastery** | 20% | CLAUDE.md、フック、プラグイン、プランモード、スキル、ルール |
44
+ | **Tool & MCP** | 20% | 調査チェーン、MCP サーバー、LSP、選択的編集 |
45
+ | **Agentic** | 20% | サブエージェント、並列実行、ワークツリー、タスク管理 |
46
+ | **Prompt Craft** | 20% | 構造化プロンプト、コードブロック、エラートレース、改善 |
47
+ | **Context Mgmt** | 20% | セッション間メモリ、CLAUDE.md 更新、継続プロジェクト |
48
+
49
+ また、**8 つの機能ミニバー**(Hooks, Plugins, Skills, MCP, Agents, Plan, Memory, Rules)をヒートマップ行として表示します。
50
+
51
+ <p align="center">
52
+ <a href="https://github.com/Z-M-Huang/cc-proficiency">
53
+ <img src="https://gist.githubusercontent.com/Z-M-Huang/2717fa94690c459d5093650c87f49868/raw/cc-proficiency.svg" alt="CC Proficiency バッジ — 静的" />
54
+ </a>
55
+ <br />
56
+ <a href="https://gist.githubusercontent.com/Z-M-Huang/2717fa94690c459d5093650c87f49868/raw/cc-proficiency-animated.svg">アニメーション版はこちら</a>
57
+ </p>
58
+
59
+ > **免責事項:** これは非公式の使用推定であり、Anthropic の公式認定スコアではありません。Anthropic とは無関係です。
60
+
61
+ ## インストール
62
+
63
+ ```bash
64
+ npm install -g cc-proficiency
65
+ cc-proficiency init
66
+ ```
67
+
68
+ `init` は以下を行います:
69
+ 1. GitHub ユーザー名を検出(`gh` CLI 経由)
70
+ 2. `~/.claude/settings.json` に Stop フックを注入
71
+ 3. バッジ用のプライベート GitHub Gist を作成(`gh` が認証済みの場合)
72
+
73
+ `gh` がインストールされていないか認証されていない場合、バッジはローカルの `~/.cc-proficiency/cc-proficiency.svg` に保存されます。
74
+
75
+ ## 使い方
76
+
77
+ ### 初回セットアップ
78
+
79
+ ```bash
80
+ $ cc-proficiency init
81
+
82
+ Initializing cc-proficiency...
83
+
84
+ GitHub user: @yourname
85
+ Creating private Gist...
86
+ Gist created: a1b2c3d4e5f6
87
+
88
+ Add to your README:
89
+ ![CC Proficiency](https://gist.githubusercontent.com/yourname/a1b2c3d4e5f6/raw/cc-proficiency.svg)
90
+
91
+ ✓ Configuration saved to /home/you/.cc-proficiency
92
+ ✓ Hook injected into ~/.claude/settings.json
93
+
94
+ Run 'cc-proficiency analyze' to compute your first scores.
95
+ ```
96
+
97
+ ### 熟練度を分析する
98
+
99
+ ```bash
100
+ $ cc-proficiency analyze --full
101
+
102
+ Running full analysis...
103
+ Claude Code Proficiency — @yourname
104
+ ────────────────────────────────────────
105
+ CC Mastery ███████████████░░░░░ 77 ●
106
+ Tool & MCP ███████████████████░ 96 ◐
107
+ Agentic ██████████████░░░░░░ 69 ◐
108
+ Prompt Craft ████████████████░░░░ 81 ◐
109
+ Context Mgmt ████████████████████ 100 ●
110
+ ────────────────────────────────────────
111
+ Hooks Edit (1411x), Bash (928x), Write (542x) +5
112
+ Skills dev-buddy-once (5x), chatroom (2x) +5
113
+ Tools Read 2046 · Bash 1045 · Write 379 · Edit 367 (+12 more)
114
+ ────────────────────────────────────────
115
+ 139 sessions · 4 projects
116
+ ```
117
+
118
+ ### 改善のヒントを取得
119
+
120
+ ```bash
121
+ $ cc-proficiency explain
122
+
123
+ Claude Code Proficiency — @yourname
124
+
125
+ Strengths:
126
+ Context Mgmt 100/100
127
+ Tool & MCP 96/100
128
+ Prompt Craft 81/100
129
+ CC Mastery 77/100
130
+ Agentic 69/100
131
+
132
+ Areas to Improve:
133
+ Agentic (69/100)
134
+ → Try more CC features: subagents, MCP servers, skills,
135
+ plan mode, worktrees
136
+ CC Mastery (77/100)
137
+ → Enhance CLAUDE.md with imports, add hooks with matchers,
138
+ create rules files
139
+
140
+ Feature Usage:
141
+ Hooks: Edit (1411x), Bash (928x), Write (542x) +5
142
+ Skills: dev-buddy-once (5x), chatroom (2x) +5
143
+ Tools: Read (2046), Bash (1045), Write (379) +12 more
144
+ Flags: ✓ Plan ✓ Memory ✗ Rules
145
+
146
+ 139 sessions · 4 projects
147
+ ```
148
+
149
+ ### バッジの生成とプッシュ
150
+
151
+ ```bash
152
+ # バッジをローカルに保存
153
+ $ cc-proficiency badge --output my-badge.svg
154
+ Badge written to my-badge.svg
155
+
156
+ # または Gist に直接プッシュ
157
+ $ cc-proficiency push
158
+ ✓ Badge pushed to Gist
159
+ https://gist.githubusercontent.com/yourname/a1b2c3d4e5f6/raw/cc-proficiency.svg
160
+ ```
161
+
162
+ ### 自動更新(手間ゼロ)
163
+
164
+ `init` 後、Claude Code のセッション終了時に Stop フックが自動実行されます:
165
+
166
+ ```
167
+ 通常通り Claude Code を使用
168
+ → セッション終了
169
+ → フックがセッションをキューに追加(<1秒、ユーザーには見えません)
170
+ → バックグラウンドプロセスが分析 + バッジを更新
171
+ → README のバッジに最新スコアが反映
172
+ ```
173
+
174
+ セットアップ後の手動操作は不要です。
175
+
176
+ ### GitHub CLI なしで使う
177
+
178
+ `gh` がインストールされていない、またはローカルのみのモードを好む場合:
179
+
180
+ ```bash
181
+ $ cc-proficiency init
182
+
183
+ ⚠ GitHub CLI not authenticated.
184
+ Badge will be saved locally to: ~/.cc-proficiency/cc-proficiency.svg
185
+ To enable auto-upload: gh auth login && cc-proficiency init
186
+
187
+ $ cc-proficiency analyze --full
188
+ $ cc-proficiency badge --output badge.svg
189
+ ```
190
+
191
+ ## README に埋め込む
192
+
193
+ `cc-proficiency init` を実行した後、README に以下を追加します:
194
+
195
+ ```markdown
196
+ <!-- 静的バッジ -->
197
+ ![Claude Code Proficiency](https://gist.githubusercontent.com/<username>/<gist-id>/raw/cc-proficiency.svg)
198
+
199
+ <!-- アニメーションバッジ(クリックで表示) -->
200
+ [アニメーション版はこちら](https://gist.githubusercontent.com/<username>/<gist-id>/raw/cc-proficiency-animated.svg)
201
+ ```
202
+
203
+ 両方のバッジは Claude Code のセッションごとに自動更新されます(Stop フック経由)。
204
+
205
+ ## プログレッシブバッジ
206
+
207
+ 利用可能なデータ量に応じてバッジが適応します:
208
+
209
+ | フェーズ | セッション数 | 表示内容 |
210
+ |----------|--------------|----------|
211
+ | **キャリブレーション** | 0–2 | セットアップチェックリスト + 初回スコアリングへの進捗 |
212
+ | **初期結果** | 3–9 | 5 つのドメインバー + 8 つの機能ミニバー(低信頼度インジケーター ○) |
213
+ | **フルバッジ** | 10+ | 完全なドメインバー、機能ヒートマップ、信頼度ドット(● ◐ ○) |
214
+
215
+ ## スコアを改善する
216
+
217
+ **[ゲーミフィケーションガイド](https://github.com/Z-M-Huang/cc-proficiency/wiki/Gamification-Guide)** では以下をカバーしています:
218
+
219
+ - 初日からエキスパートレベルまでの進行パス
220
+ - 5 つのドメインそれぞれのヒント
221
+ - 15 個の実績すべてをアンロックする方法
222
+ - 各機能ミニバーを 0 から 100 にする要因
223
+ - ストリークシステムとリーダーボード
224
+
225
+ > **[Gamification Guide](https://github.com/Z-M-Huang/cc-proficiency/wiki/Gamification-Guide)** | **[游戏化攻略(中文)](https://github.com/Z-M-Huang/cc-proficiency/wiki/Gamification-Guide-zh)**
226
+
227
+ ## スコアリングの仕組み
228
+
229
+ ### ルールベースエンジン
230
+
231
+ cc-proficiency はツール呼び出しを数えるのではなく、5 つのドメインにわたる ~55 のルールを持つ**パターンマッチングルールエンジン**を使用します。各ルールは特定の行動パターンを検出し、ティア別にポイントを付与します:
232
+
233
+ | ティア | ポイント | ルール例 |
234
+ |--------|----------|----------|
235
+ | **初級** | 5 pts | グローバル CLAUDE.md がある |
236
+ | **中級** | 10–15 pts | 調査チェーン:Grep → Read → Edit |
237
+ | **上級** | 15–25 pts | 異なるサブエージェントタイプによる並列エージェント |
238
+ | **アンチパターン** | -5 ~ -10 pts | 5+ 並列ツールでエラー率 >50% |
239
+
240
+ ### 5 つのドメインバー
241
+
242
+ | ドメイン | 測定内容 |
243
+ |----------|----------|
244
+ | **CC Mastery** | CLAUDE.md 構造、マッチャー付きフック、プラグイン、プランモード、スキル、ルールファイル |
245
+ | **Tool & MCP** | 調査チェーン、Read-before-Edit、ツールの多様性、MCP サーバー使用、LSP、選択的編集 |
246
+ | **Agentic** | サブエージェントタイプの多様性、並列エージェント、バックグラウンド実行、ワークツリー、タスク管理 |
247
+ | **Prompt Craft** | 構造化リクエスト、コードブロック、エラートレース、ファイル参照、反復的改善 |
248
+ | **Context Mgmt** | アクティブメモリファイル、CLAUDE.md 更新、継続プロジェクト、セッション深度 |
249
+
250
+ ### 8 つの機能ミニバー
251
+
252
+ ドメインバーの下に、機能ごとの深度を示すヒートマップ行があります:
253
+
254
+ `Hooks · Plugins · Skills · MCP · Agents · Plan · Memory · Rules`
255
+
256
+ 各ミニバーは**深度ベースのスコアリング**を使用し、機能を一度試しただけでなく実際の使用状況を反映する対数曲線を採用しています。フックを設定すると ~30 ポイント獲得できます。数百のセッションでフックを発火させると 100 に近づきます。詳細は[ゲーミフィケーションガイド](https://github.com/Z-M-Huang/cc-proficiency/wiki/Gamification-Guide)をご覧ください。
257
+
258
+ ### バケット集約とキャップ
259
+
260
+ スコアは単純な合計ではありません。各ドメインにはキャップ付きバケットがあります:
261
+
262
+ | バケット | 最大ポイント | ソース |
263
+ |----------|-------------|--------|
264
+ | **Config** | 25 pts | 設定ベースのルール(CLAUDE.md、フック、プラグイン、即座に利用可能) |
265
+ | **Behavior** | 75 pts | 行動ベースのルール(トランスクリプトパターン、時間とともに成長) |
266
+ | **Penalty** | -15 pts 最大 | アンチパターンの減点 |
267
+
268
+ これは以下を意味します:
269
+ - **新規インストール**はドメインごとに最大 ~25 の設定ポイントを獲得可能(キャリブレーション中は 2.0x スケーリングにより ~50 に増加)
270
+ - **キャリブレーション後**(10+ セッション)設定だけではドメインごとに ~25 が上限。トランスクリプトの証拠が残りを推進
271
+ - **アンチパターンにはキャップ**があるため、数回の悪いセッションでスコアが壊滅することはありません
272
+
273
+ ### フェーズ対応の重み付け
274
+
275
+ 設定の証拠はキャリブレーション中により重く、トランスクリプトが蓄積されるにつれて軽く重み付けされます:
276
+
277
+ | フェーズ | セッション数 | 設定スケール | 行動スケール |
278
+ |----------|--------------|-------------|-------------|
279
+ | キャリブレーション | 0–2 | 2.0× | 0.8× |
280
+ | 初期 | 3–9 | 1.5× | 1.0× |
281
+ | フル | 10+ | 1.0× | 1.15× |
282
+
283
+ ### 不正防止
284
+
285
+ - ルールは**セッションごとにキャップ付き**で発動します。同じツールを 100 回繰り返しても効果はありません
286
+ - **アンチパターンルール**は悪い習慣に対してポイントを減点します(散発的な並列呼び出し、構造化されていないテキストの壁)
287
+ - 各ルールには `maxPerSession` があります。調査チェーンはセッションごとに 3 回が上限
288
+ - 設定スコアは **25 がキャップ**なので、プラグインをインストールするだけではドメインを最大化できません
289
+
290
+ ## プライバシー
291
+
292
+ | 項目 | 対応方法 |
293
+ |------|----------|
294
+ | **データの場所** | すべての分析は**ローカルマシン**上で行われます |
295
+ | **保存内容** | 集計カウント、比率、ブールフラグのみ(ファイルパス、コード、プロンプトなし) |
296
+ | **Gist の可視性** | **デフォルトでプライベート**(秘密 URL、プロフィールには非表示) |
297
+ | **オフラインモード** | `gh` CLI なしで完全にオフラインで動作(ローカルのみモード) |
298
+ | **CI/CD** | 非対話型セッションは自動的に検出・除外されます |
299
+
300
+ ## ローカライゼーション
301
+
302
+ cc-proficiency は 6 つの言語をサポートしています:English、中文、Español、Français、日本語、한국어。
303
+
304
+ `init` 時にシステム環境からロケールが自動検出されます。変更するには:
305
+
306
+ ```bash
307
+ cc-proficiency config locale zh-CN # 中国語
308
+ cc-proficiency config locale es # スペイン語
309
+ cc-proficiency config locale fr # フランス語
310
+ cc-proficiency config locale ja # 日本語
311
+ cc-proficiency config locale ko # 韓国語
312
+ cc-proficiency config locale en # 英語(デフォルト)
313
+ ```
314
+
315
+ SVG バッジは、SVG `<switch>` 要素と `systemLanguage` 属性を使用して、閲覧者の優先言語で自動的に表示されます。6 つの言語すべてが単一の SVG ファイルに埋め込まれており、ロケールごとに別々のバッジを生成する必要はありません。
316
+
317
+ ### 翻訳への貢献
318
+
319
+ 新しい言語を追加するには、`src/i18n/locales/en.ts` を `src/i18n/locales/<code>.ts` にコピーし、すべての文字列を翻訳して、`src/i18n/index.ts` にロケールを登録してください。
320
+
321
+ ## コマンド
322
+
323
+ | コマンド | 説明 |
324
+ |----------|------|
325
+ | `cc-proficiency init` | フックと Gist のセットアップ |
326
+ | `cc-proficiency analyze [--full]` | セッションを解析してスコアを計算 |
327
+ | `cc-proficiency process` | フックからのキュー済みセッションを処理 |
328
+ | `cc-proficiency badge [--output <ファイル>]` | SVG バッジを生成 |
329
+ | `cc-proficiency push` | バッジを Gist にアップロード |
330
+ | `cc-proficiency explain` | スコアの要因とヒントを表示 |
331
+ | `cc-proficiency achievements` | 実績の進捗を表示 |
332
+ | `cc-proficiency status` | フックの活動、キュー、設定を表示 |
333
+ | `cc-proficiency config [キー] [値]` | 設定の表示/変更 |
334
+ | `cc-proficiency share [--remove]` | コミュニティリーダーボードに参加/退出 |
335
+ | `cc-proficiency leaderboard` | コミュニティランキングを表示 |
336
+ | `cc-proficiency update` | 最新バージョンに更新 |
337
+ | `cc-proficiency uninstall` | フックの削除とクリーンアップ |
338
+
339
+ ### コミュニティリーダーボード
340
+
341
+ コミュニティリーダーボードに参加して、他の Claude Code ユーザーと熟練度を比較しましょう:
342
+
343
+ ```bash
344
+ # リーダーボードに参加(別途公開プロフィールを作成)
345
+ $ cc-proficiency share
346
+
347
+ # ランキングを表示
348
+ $ cc-proficiency leaderboard
349
+
350
+ # リーダーボードから退出
351
+ $ cc-proficiency share --remove
352
+ ```
353
+
354
+ プライベートデータ(セッション詳細、プロジェクト名、ファイルパス)は共有されません。スコア、ストリーク、実績数のみが公開されます。完全なドキュメントは [wiki](https://github.com/Z-M-Huang/cc-proficiency/wiki) をご覧ください。
355
+
356
+ ## アーキテクチャ
357
+
358
+ ```
359
+ Stop フックが発火 (< 1s)
360
+ → セッションパスを ~/.cc-proficiency/queue.jsonl に書き込み
361
+ → `cc-proficiency process` をデタッチされた子プロセスとして起動
362
+
363
+ cc-proficiency process
364
+ → queue.lock を取得(60秒超で古いとみなし → 強制取得)
365
+ → session_id で重複排除
366
+ → トランスクリプトを解析(ストリーミング JSONL、行ごとのエラーハンドリング)
367
+ → シグナル抽出 → スコア計算 → SVG レンダリング
368
+ → Gist にプッシュ(設定済みの場合)またはローカルに保存
369
+ → キューをアトミックにローテーション
370
+ ```
371
+
372
+ ## コントリビューション
373
+
374
+ コントリビューション歓迎です!変更したい内容について、まず issue を開いて議論してください。
375
+
376
+ ```bash
377
+ git clone https://github.com/Z-M-Huang/cc-proficiency.git
378
+ cd cc-proficiency
379
+ npm install
380
+ npm test # 200 tests
381
+ npm run build # dist/ にコンパイル
382
+ npm run typecheck # tsc --noEmit
383
+ npm run lint # eslint
384
+ npm run check # typecheck + lint + test
385
+ ```
386
+
387
+ ## ライセンス
388
+
389
+ [Apache 2.0](LICENSE)
390
+
391
+ ---
392
+
393
+ <p align="center">
394
+ <sub>Claude Code で構築。Anthropic とは無関係です。</sub>
395
+ </p>