[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-93464":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":9,"totalLinesOfCode":9,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":9,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":17,"compositeScore":18,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":19,"hasPages":19,"topics":9,"createdAt":9,"pushedAt":9,"updatedAt":21,"readmeContent":22,"aiSummary":9,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":23,"discoverSource":24},93464,"genshijin","InterfaceX-co-jp\u002Fgenshijin","InterfaceX-co-jp","genshijin 原始人 🗿| Claude Code \u002F Codex等AIエージェント 向け超圧縮コミュニケーションスキル。caveman の日本語版をベースに、日本語特有の冗長表現に最適化。",null,"https:\u002F\u002Fgithub.com\u002FInterfaceX-co-jp\u002Fgenshijin","JavaScript",258,9,1,4,0,2,41.2,false,"main","2026-07-22 04:02:09","# genshijin 原始人 🗿\n\n> なぜ多くトークン使う？少なくて済む🗿\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fstargazers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FInterfaceX-co-jp\u002Fgenshijin?style=flat&color=yellow\" alt=\"Stars\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fcommits\u002Fmain\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002FInterfaceX-co-jp\u002Fgenshijin?style=flat\" alt=\"Last Commit\">\u003C\u002Fa>\n  \u003Ca href=\"LICENSE\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002FInterfaceX-co-jp\u002Fgenshijin?style=flat\" alt=\"License\">\u003C\u002Fa>\n\u003C\u002Fp>\n\nClaude Code 公式プラグインディレクトリに公開済み。`\u002Fplugin install genshijin` でワンライナーインストール。\n\nClaude Code \u002F Codex 向けの超圧縮コミュニケーションスキル。[caveman](https:\u002F\u002Fgithub.com\u002FJuliusBrussee\u002Fcaveman) の日本語版をベースに、日本語特有の冗長表現に最適化。\n\nトークン使用量を **約75%削減** しつつ、技術的正確性は100%維持。\nコミット生成・PRレビュー・メモリ圧縮の用途別サブスキルも同梱。\n\n## 日本語への最適化ポイント\n\n英語版 caveman は冠詞(a\u002Fan\u002Fthe)やフィラーの削除が中心だが、日本語版は以下に対応:\n\n| 英語版の削減対象 | 日本語版の削減対象 |\n|-----------------|-------------------|\n| 冠詞 (a\u002Fan\u002Fthe) | 敬語・丁寧語 (です\u002Fます\u002Fございます) |\n| フィラー (just\u002Freally\u002Fbasically) | クッション言葉 (えーと\u002Fまあ\u002F基本的に\u002F一応) |\n| 前置き (Sure! I'd be happy to...) | 前置き表現 (ご質問ありがとうございます...) |\n| ぼかし (might\u002Fperhaps\u002Flikely) | ぼかし (〜かもしれません\u002Fおそらく\u002F〜と思われます) |\n| 冗長表現 | 冗長な助詞連続・敬語の二重化 |\n\n## インストール\n\n### 方法1: Claude Code 公式プラグインディレクトリ（推奨）\n\nClaude Code 内で以下を実行:\n\n```\n\u002Fplugin install genshijin\n```\n\nAnthropic 公式 [プラグインディレクトリ](https:\u002F\u002Fclaude.ai\u002Fsettings\u002Fplugins) に公開済み。marketplace add 不要。\n\n### 方法1b: GitHub 直接インストール（開発版）\n\n```\nclaude plugin marketplace add InterfaceX-co-jp\u002Fgenshijin\n\u002Fplugin install genshijin@InterfaceX-co-jp\u002Fgenshijin\n```\n\nmain ブランチ最新を取得したい場合。\n\n### 方法2: npx skills（サードパーティ）\n\n```bash\nnpx skills add InterfaceX-co-jp\u002Fgenshijin\n```\n\n### 方法3: 手動インストール\n\n**プロジェクト単位**（このリポジトリだけに適用）:\n\n```bash\n# リポジトリのルートで実行\nmkdir -p .claude\u002Fskills\u002Fgenshijin\ncurl -o .claude\u002Fskills\u002Fgenshijin\u002FSKILL.md \\\n  https:\u002F\u002Fraw.githubusercontent.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fmain\u002Fskills\u002Fgenshijin\u002FSKILL.md\n```\n\n**グローバル**（すべてのプロジェクトに適用）:\n\n```bash\nmkdir -p ~\u002F.claude\u002Fskills\u002Fgenshijin\ncurl -o ~\u002F.claude\u002Fskills\u002Fgenshijin\u002FSKILL.md \\\n  https:\u002F\u002Fraw.githubusercontent.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fmain\u002Fskills\u002Fgenshijin\u002FSKILL.md\n```\n\n### 方法4: 一時的に使う\n\n```bash\nclaude --plugin-dir .\u002Fpath\u002Fto\u002Fgenshijin\n```\n\n## 使い方\n\n```\n\u002Fgenshijin          # 通常モード（デフォルト）で起動\n\u002Fgenshijin 丁寧     # ビジネス向け簡潔体\n\u002Fgenshijin 極限     # 最大圧縮\n```\n\n会話中に `原始人やめて` または `通常モード` で解除。\n\n## 3段階の強度\n\n### 丁寧モード\nクッション言葉・ぼかし表現を削除。敬語は維持。ビジネスメール向き。\n\n**Before:**\n> ご質問ありがとうございます。お調べしたところ、こちらの問題につきましては、認証ミドルウェアにおけるトークンの有効期限チェックの部分に原因がある可能性が考えられます。\n\n**After:**\n> コンポーネントが再レンダリングされるのは、レンダリングごとに新しいオブジェクト参照が生成されるためです。`useMemo`で解決できます。\n\n### 通常モード（デフォルト）\n敬語を落とし体言止め。助詞も最小限。原始人の基本形。\n\n**Before:**\n> こちらの問題は、レンダリングが行われるたびに新しいオブジェクトの参照が生成されてしまうことが原因となっております。\n\n**After:**\n> レンダリング毎に新オブジェクト参照が生成。インラインオブジェクトprop = 新しい参照 = 再レンダリング。`useMemo`で包む。\n\n### 極限モード\n略語・矢印記法・一語回答。電報のような圧縮。\n\n**Before:**\n> データベースのコネクションプーリングというのは、リクエストが来るたびに新しい接続を確立するのではなく、あらかじめ作成しておいた接続を再利用する仕組みのことです。\n\n**After:**\n> プール = DB接続再利用。ハンドシェイク省略 → 高負荷時に高速。\n\n## サブスキル\n\n本体 `\u002Fgenshijin` に加え、用途別サブスキル6個同梱。\n\n| スキル | トリガー | 内容 |\n|--------|---------|------|\n| **genshijin-commit** | `\u002Fgenshijin-commit` | Conventional Commits 形式の簡潔コミットメッセージ。件名≤50文字、「なぜ」重視 |\n| **genshijin-review** | `\u002Fgenshijin-review` | 1行PRコメント `L42: 🔴 バグ: user null。ガード追加。` |\n| **genshijin-compress** | `\u002Fgenshijin-compress \u003Cfile>` | `CLAUDE.md` 等のメモリファイルを原始人モード化し入力トークン永続削減 |\n| **genshijin-stats** (v1.4.0〜) | `\u002Fgenshijin-stats [--share \u002F --all \u002F --since 7d]` | 現セッションのリアルトークン使用量＋推定削減量＋USD換算をフックが即時表示 |\n| **genshijin-crew** (v1.4.0〜) | (auto) | 3 subagent preset (`investigator`\u002F`builder`\u002F`reviewer`)。tool-result 原始人圧縮で主コンテキスト約60%減 |\n| **genshijin-help** | `\u002Fgenshijin-help` | 全モード・サブスキル・設定方法のリファレンスカード |\n\n### genshijin-compress について\n\n`CLAUDE.md` はセッション開始毎に読込 → 圧縮で **毎回** の入力トークン削減。\n\n#### 使い始め（3ステップ）\n\n**1. 前提準備**\n\nPython 3.10+ に加え、以下いずれか:\n\n```bash\n# オプションA: API key 直接利用\npip install anthropic\nexport ANTHROPIC_API_KEY=sk-ant-...\n\n# オプションB: claude CLI ログイン済みなら 追加設定不要（CLI fallback）\nclaude --version\n```\n\n**2. 対象ファイル選定**\n\n典型的な圧縮対象:\n- `~\u002F.claude\u002FCLAUDE.md` — ユーザー全体メモリ（全セッションで毎回読込）\n- `.\u002FCLAUDE.md` — プロジェクト単位メモリ\n- `~\u002F.claude\u002Fprojects\u002F\u003Cproject>\u002Fmemory\u002FMEMORY.md` — auto memory インデックス\n\n**3. 圧縮実行**\n\n```\n\u002Fgenshijin-compress ~\u002F.claude\u002FCLAUDE.md\n```\n\n結果:\n- 圧縮版が原ファイルを上書き\n- 人間可読版は `CLAUDE.original.md` にバックアップ（復元可能）\n- 失敗時は原ファイル無変更\n\n#### 保持・拒否ルール\n\n- **完全保持**: コードブロック \u002F URL \u002F ファイルパス \u002F 数値 \u002F 見出し \u002F 技術用語\n- **自動拒否**: `.env` \u002F `credentials.*` \u002F `id_rsa` \u002F `.ssh\u002F` 配下 等\n\n誤検知時はファイル名変更で回避可能。\n\n## 自動化機能（v1.2.0〜）\n\nプラグイン導入後、Claude Code のフック機構で以下が自動で動く。\n\n### SessionStart フック — 原始人ルール注入\nセッション開始毎に `SKILL.md` を読み、現アクティブレベルの該当行のみフィルタして hidden context に注入。多ターン経過後の敬語回帰・フィラー漂流を防ぐ anchor。\n\n### UserPromptSubmit フック — モード追跡 + 毎ターン補強\n- `\u002Fgenshijin 丁寧|通常|極限` や自然言語（「原始人モード」「原始人やめて」等）でモード切替を検出\n- アクティブ中は毎ユーザー発話で短い補強リマインダを注入 → 他プラグインが競合するスタイル指示を毎ターン注入する環境でもドリフト防止\n\n### Statusline バッジ\n現モードを `[原始人]` \u002F `[原始人:丁寧]` \u002F `[原始人:極限]` \u002F `[原始人:コミット]` 等で可視化。初回セッションで未設定を検知したら Claude がセットアップを提案する。\n\n### 既定モードの設定（任意）\n\n優先度: 環境変数 > 設定ファイル > `normal`（デフォルト）。\n\n```bash\n# 環境変数（最優先）\nexport GENSHIJIN_DEFAULT_MODE=extreme   # polite | normal | extreme | off\n\n# 設定ファイル\nmkdir -p ~\u002F.config\u002Fgenshijin\ncat > ~\u002F.config\u002Fgenshijin\u002Fconfig.json \u003C\u003C'JSON'\n{ \"defaultMode\": \"extreme\" }\nJSON\n```\n\n`off` を指定するとフックがルール注入をスキップしフラグも削除 — プラグインインストール済みのまま一時停止できる。\n\n### セキュリティ\n\nフラグファイル `~\u002F.claude\u002F.genshijin-active` は symlink 拒否・64バイト上限・モードホワイトリスト検証で保護。`~\u002F.ssh\u002Fid_rsa` 等への symlink 差替えで secret バイトが statusline やモデルコンテキストに流れ込む攻撃を塞ぐ。\n\n## スラッシュコマンド（v1.3.0〜）\n\nプラグイン導入後、以下のコマンドが利用可能。\n\n- `\u002Fgenshijin 丁寧|通常|極限` — 強度レベル切替\n- `\u002Fgenshijin-commit` — 現在のステージング変更から簡潔なコミットメッセージ生成（Conventional Commits）\n- `\u002Fgenshijin-review` — 現在のコード変更を1行1指摘でレビュー（`L42: 🔴 バグ: ...`）\n- `\u002Fgenshijin-stats` (v1.4.0〜) — 現セッションのリアルトークン使用量＋推定削減量＋USD換算をフックが即時表示。`--share` ツイート用1行サマリ、`--all` \u002F `--since 7d` ライフタイム集計対応\n\n定義は [commands\u002F](.\u002Fcommands\u002F) 配下。\n\n## v1.4.0 拡張機能\n\ncaveman 本家 v1.3.0以降の差分（stats receipts \u002F smart installer \u002F cavecrew相当 \u002F cavepack相当 \u002F MCP-shrink）を全項目移植。\n\n### Smart multi-agent installer — root `install.sh` \u002F `install.ps1`\n\nClaude Code\u002FCursor\u002FWindsurf\u002FCline\u002FCopilot を自動検出し、各 agent に native install。\n\n```bash\n# macOS \u002F Linux\ncurl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fmain\u002Finstall.sh | bash\n\n# Windows PowerShell\niwr -useb https:\u002F\u002Fraw.githubusercontent.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fmain\u002Finstall.ps1 | iex\n```\n\n`--dry-run` \u002F `--force` \u002F `--only \u003Cagent>` \u002F `--all` \u002F `--minimal` \u002F `--list` 対応。再実行安全。\n\n### genshijin-init — per-repo rule 一発投下\n\n1コマンドで対象 repo に常時有効化 rule を全 IDE agent 用に投下。idempotent。\n\n```bash\nnpx -y https:\u002F\u002Fraw.githubusercontent.com\u002FInterfaceX-co-jp\u002Fgenshijin\u002Fmain\u002Ftools\u002Fgenshijin-init.js\n```\n\nCursor \u002F Windsurf \u002F Cline \u002F Copilot \u002F AGENTS.md 用 rule file 生成。`--dry-run` \u002F `--force` \u002F `--only` 対応。\n\n### genshijin-shrink — MCP middleware\n\n任意の MCP server を wrap → `tools\u002Flist` の `description` field を圧縮。コード\u002FURL\u002Fパス\u002F識別子は byte-for-byte 保護。\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"fs-shrunk\": {\n      \"command\": \"npx\",\n      \"args\": [\"genshijin-shrink\", \"npx\", \"@modelcontextprotocol\u002Fserver-filesystem\", \"\u002Fpath\"]\n    }\n  }\n}\n```\n\n詳細は [mcp-servers\u002Fgenshijin-shrink\u002FREADME.md](.\u002Fmcp-servers\u002Fgenshijin-shrink\u002FREADME.md)。\n\n### genshijin-crew — 3 subagent preset\n\n長セッションでコンテキストを温存するための subagent 3種。\n\n| Subagent | 用途 |\n|----------|------|\n| `genshijin-investigator` | read-only locator (haiku model)、`file:line` 表で返却 |\n| `genshijin-builder` | 1-2ファイル surgical edit。3+ファイルは `too-big.` で拒否 |\n| `genshijin-reviewer` | severity-tagged finding (🔴bug \u002F 🟡risk \u002F 🔵nit \u002F ❓question) |\n\n委譲判断ガイドは [skills\u002Fgenshijin-crew\u002FSKILL.md](.\u002Fskills\u002Fgenshijin-crew\u002FSKILL.md)。\n\n## マルチエージェント対応（v1.3.0〜）\n\nClaude Code 以外の AI コーディングエージェントでも原始人モード利用可能:\n\n| エージェント | ファイル |\n|-------------|---------|\n| Cursor | [.cursor\u002Frules\u002Fgenshijin.mdc](.\u002F.cursor\u002Frules\u002Fgenshijin.mdc) |\n| Windsurf | [.windsurf\u002Frules\u002Fgenshijin.md](.\u002F.windsurf\u002Frules\u002Fgenshijin.md) |\n| Cline | [.clinerules\u002Fgenshijin.md](.\u002F.clinerules\u002Fgenshijin.md) |\n| GitHub Copilot | [.github\u002Fcopilot-instructions.md](.\u002F.github\u002Fcopilot-instructions.md) |\n| Codex \u002F Gemini CLI 等 | [AGENTS.md](.\u002FAGENTS.md) |\n| フック無し共通 | [rules\u002Fgenshijin-activate.md](.\u002Frules\u002Fgenshijin-activate.md) |\n\n## Standalone インストーラ（v1.3.0〜）\n\nプラグイン未使用でも `~\u002F.claude` 配下に直接フックを導入可能。\n\n```bash\n# インストール\nbash hooks\u002Finstall.sh\n\n# 再インストール\nbash hooks\u002Finstall.sh --force\n\n# アンインストール\nbash hooks\u002Funinstall.sh\n```\n\nWindows は `hooks\u002Finstall.ps1` \u002F `hooks\u002Funinstall.ps1`。`settings.json` への安全マージ（既存 statusline を尊重）。\n\n## アップデート\n\n### プラグイン版（推奨）\n\n```bash\n# マーケットプレイス側を最新取得\nclaude plugin marketplace update genshijin\n\n# プラグイン本体を更新（再起動で適用）\nclaude plugin update genshijin@genshijin\n```\n\nClaude Code 内の `\u002Fplugin update genshijin` が使える環境ではそれでも可。インストール済バージョン確認は `claude plugin list`。\n\n### Standalone 版\n\n```bash\ncd \u002Fpath\u002Fto\u002Fgenshijin\ngit pull\nbash hooks\u002Finstall.sh --force   # Windows: hooks\u002Finstall.ps1 -Force\n```\n\n### npx skills 版\n\n```bash\nnpx skills add InterfaceX-co-jp\u002Fgenshijin   # 上書き再取得\n```\n\n## ベンチマーク\n\n\u003C!-- BENCHMARK_START -->\n| タスク | 通常 | 簡潔 | caveman | genshijin | genshijin削減 | gs vs 簡潔 | gs vs caveman |\n|--------|------|------|---------|-----------|---------------|-----------|---------------|\n| なぜReactコンポーネントが毎回再レンダリングされるのか説 | 1143 | 509 | 366 | 189 | 83% | 63% | 48% |\n| 認証ミドルウェアのトークン有効期限チェックにバグがある。修正 | 2535 | 736 | 322 | 92 | 96% | 88% | 71% |\n| Node.jsでPostgreSQLのコネクションプーリング | 2035 | 1016 | 520 | 371 | 82% | 63% | 29% |\n| git rebaseとmergeの違いを説明して | 784 | 435 | 296 | 276 | 65% | 37% | 7% |\n| コールバック地獄をasync\u002Fawaitにリファクタリングし | 1805 | 711 | 434 | 377 | 79% | 47% | 13% |\n| マイクロサービスとモノリスの比較を説明して | 1121 | 563 | 316 | 261 | 77% | 54% | 17% |\n| ExpressルートのPRをセキュリティ観点でレビューして | 1009 | 760 | 114 | 110 | 89% | 86% | 4% |\n| Dockerのマルチステージビルドを設定して | 1653 | 616 | 429 | 276 | 83% | 55% | 36% |\n| PostgreSQLのレースコンディションをデバッグして | 1775 | 638 | 518 | 338 | 81% | 47% | 35% |\n| ReactのError Boundaryを実装して | 2457 | 1491 | 565 | 253 | 90% | 83% | 55% |\n| CORSエラーが出る。原因と解決策を教えて | 1104 | 491 | 379 | 305 | 72% | 38% | 20% |\n| Nginxのリバースプロキシ設定を教えて | 1869 | 595 | 437 | 329 | 82% | 45% | 25% |\n| Redisを使ったキャッシュ戦略を教えて | 2201 | 942 | 556 | 342 | 84% | 64% | 38% |\n| TypeScriptのジェネリクスを初心者向けに説明して | 1180 | 753 | 588 | 336 | 72% | 55% | 43% |\n| REST APIとGraphQLの違いを説明して | 872 | 464 | 410 | 215 | 75% | 54% | 48% |\n| Node.jsアプリのメモリリークを調査する方法を教えて | 1853 | 1226 | 659 | 396 | 79% | 68% | 40% |\n| GitHub Actionsで基本的なCI\u002FCDパイプライン | 2172 | 1054 | 926 | 384 | 82% | 64% | 59% |\n| N+1クエリ問題とは何か、どう解決するか教えて | 1199 | 492 | 412 | 294 | 75% | 40% | 29% |\n| WebSocketとServer-Sent Eventsの使 | 1293 | 492 | 422 | 216 | 83% | 56% | 49% |\n| Reactの状態管理ライブラリの選び方を教えて | 1118 | 451 | 496 | 288 | 74% | 36% | 42% |\n| Kubernetesの基本概念を説明して | 733 | 499 | 389 | 202 | 72% | 60% | 48% |\n| OAuth2の認証フローを説明して | 1297 | 509 | 444 | 314 | 76% | 38% | 29% |\n| CSS FlexboxとGridの使い分けを教えて | 1023 | 493 | 333 | 348 | 66% | 29% | -5% |\n| Pythonのデコレータの仕組みを説明して | 1405 | 551 | 495 | 345 | 75% | 37% | 30% |\n| データベースインデックスの仕組みと使いどころを教えて | 1391 | 515 | 413 | 292 | 79% | 43% | 29% |\n| JWTとセッションベース認証の比較を教えて | 967 | 457 | 354 | 275 | 72% | 40% | 22% |\n| Promise.allとPromise.raceの違いと使い | 1226 | 546 | 447 | 275 | 78% | 50% | 38% |\n| TerraformでAWSインフラを管理する基本を教えて | 1600 | 817 | 560 | 401 | 75% | 51% | 28% |\n| Node.jsのイベントループの仕組みを説明して | 1289 | 511 | 662 | 310 | 76% | 39% | 53% |\n| APIのレート制限を実装する方法を教えて | 1943 | 1118 | 1033 | 451 | 77% | 60% | 56% |\n| **平均** | **1468** | **681** | **476** | **295** | **80%** | **57%** | **38%** |\n\u003C!-- BENCHMARK_END -->\n\n### English Benchmark (参考値)\n\ngenshijin は日本語最適化スキルだが、英語プロンプトでも圧縮効果を発揮するか検証。caveman（英語ネイティブ）との比較。\n\n\u003C!-- BENCHMARK_EN_START -->\n| Task | Normal | Terse | caveman | genshijin | gs saved | gs vs terse | gs vs caveman |\n|------|--------|-------|---------|-----------|----------|-------------|---------------|\n| Why does my React component re | 914 | 692 | 228 | 120 | 87% | 83% | 47% |\n| There's a bug in the auth midd | 728 | 593 | 86 | 151 | 79% | 75% | -76% |\n| How do I set up PostgreSQL con | 2344 | 1374 | 338 | 327 | 86% | 76% | 3% |\n| Explain the difference between | 688 | 399 | 298 | 206 | 70% | 48% | 31% |\n| Refactor callback hell to asyn | 2026 | 1822 | 394 | 272 | 87% | 85% | 31% |\n| Compare microservices vs monol | 785 | 517 | 322 | 387 | 51% | 25% | -20% |\n| Review this Express route PR f | 193 | 165 | 83 | 76 | 61% | 54% | 8% |\n| Set up Docker multi-stage buil | 2396 | 1658 | 238 | 343 | 86% | 79% | -44% |\n| Debug a race condition in Post | 2097 | 1924 | 354 | 295 | 86% | 85% | 17% |\n| Implement a React Error Bounda | 3363 | 2672 | 478 | 374 | 89% | 86% | 22% |\n| I'm getting CORS errors. What' | 1463 | 495 | 257 | 227 | 84% | 54% | 12% |\n| Show me how to configure Nginx | 2802 | 2240 | 438 | 286 | 90% | 87% | 35% |\n| What's a good Redis caching st | 1552 | 702 | 304 | 263 | 83% | 63% | 13% |\n| Explain TypeScript generics fo | 1387 | 1140 | 388 | 419 | 70% | 63% | -8% |\n| Explain the difference between | 601 | 415 | 240 | 233 | 61% | 44% | 3% |\n| How do I investigate memory le | 2153 | 1704 | 359 | 356 | 83% | 79% | 1% |\n| Build a basic CI\u002FCD pipeline w | 3023 | 2501 | 619 | 749 | 75% | 70% | -21% |\n| What is the N+1 query problem  | 1377 | 770 | 324 | 275 | 80% | 64% | 15% |\n| When should I use WebSocket vs | 746 | 399 | 276 | 253 | 66% | 37% | 8% |\n| How do I choose a React state  | 1275 | 617 | 242 | 190 | 85% | 69% | 21% |\n| Explain the basic concepts of  | 837 | 442 | 306 | 282 | 66% | 36% | 8% |\n| Explain the OAuth2 authenticat | 1449 | 545 | 304 | 305 | 79% | 44% | 0% |\n| When should I use CSS Flexbox  | 601 | 410 | 224 | 193 | 68% | 53% | 14% |\n| Explain how Python decorators  | 1489 | 742 | 395 | 359 | 76% | 52% | 9% |\n| Explain how database indexes w | 1629 | 1262 | 378 | 371 | 77% | 71% | 2% |\n| Compare JWT vs session-based a | 1463 | 543 | 237 | 319 | 78% | 41% | -35% |\n| Explain the difference between | 686 | 533 | 216 | 248 | 64% | 53% | -15% |\n| How do I manage AWS infrastruc | 2479 | 1854 | 628 | 397 | 84% | 79% | 37% |\n| Explain how the Node.js event  | 1458 | 838 | 311 | 411 | 72% | 51% | -32% |\n| How do I implement API rate li | 2814 | 1855 | 561 | 403 | 86% | 78% | 28% |\n| **Average** | **1560** | **1060** | **327** | **303** | **81%** | **71%** | **7%** |\n\u003C!-- BENCHMARK_EN_END -->\n\n> ベンチマークは英語版 [caveman](https:\u002F\u002Fgithub.com\u002FJuliusBrussee\u002Fcaveman) の結果を参考値として掲載。\n> 自分で計測するには:\n\n```bash\ncd benchmarks\npip install -r requirements.txt\nexport ANTHROPIC_API_KEY=sk-ant-...\npython run.py --trials 3 --update-readme              # 日本語\npython run.py --lang en --trials 3 --update-readme     # 英語\n```\n\n## 安全機能\n\nセキュリティ警告や破壊的操作の確認時は自動的に通常の丁寧な日本語に切り替わる。誤解が致命的になる場面では正確性を優先。\n\n## プロジェクト構成\n\n```\ngenshijin\u002F\n├── skills\u002F\n│   ├── genshijin\u002FSKILL.md            # 本体スキル\n│   ├── genshijin-commit\u002FSKILL.md     # コミット生成サブスキル\n│   ├── genshijin-review\u002FSKILL.md     # PRレビューサブスキル\n│   ├── genshijin-help\u002FSKILL.md       # ヘルプサブスキル\n│   └── genshijin-compress\u002F\n│       ├── SKILL.md                  # メモリ圧縮サブスキル\n│       └── scripts\u002F                  # Python CLI 実装\n├── hooks\u002F                            # v1.2.0〜\n│   ├── genshijin-activate.js         # SessionStart: ルール注入\n│   ├── genshijin-mode-tracker.js     # UserPromptSubmit: モード追跡 + 毎ターン補強\n│   ├── genshijin-config.js           # 設定解決（env var + config file）\n│   ├── genshijin-statusline.sh       # statusline バッジ（Unix）\n│   ├── genshijin-statusline.ps1      # statusline バッジ（Windows）\n│   ├── install.sh \u002F uninstall.sh     # standalone インストーラ（v1.3.0〜）\n│   └── install.ps1 \u002F uninstall.ps1   # standalone インストーラ Windows\n├── commands\u002F                         # v1.3.0〜スラッシュコマンド定義\n│   ├── genshijin.toml                # \u002Fgenshijin 強度切替\n│   ├── genshijin-commit.toml         # \u002Fgenshijin-commit\n│   └── genshijin-review.toml         # \u002Fgenshijin-review\n├── rules\u002F                            # v1.3.0〜\n│   └── genshijin-activate.md         # フック無しプラットフォーム向け共通ルール\n├── .cursor\u002Frules\u002F                    # Cursor 用（v1.3.0〜）\n├── .windsurf\u002Frules\u002F                  # Windsurf 用（v1.3.0〜）\n├── .clinerules\u002F                      # Cline 用（v1.3.0〜）\n├── .github\u002Fcopilot-instructions.md   # GitHub Copilot 用（v1.3.0〜）\n├── AGENTS.md                         # マルチエージェント参照インデックス（v1.3.0〜）\n├── .claude-plugin\u002F\n│   ├── plugin.json                   # Claude Code プラグインマニフェスト（hooks 登録）\n│   └── marketplace.json              # マーケットプレイス定義\n├── benchmarks\u002F\n│   ├── run.py                        # ベンチマークスクリプト\n│   ├── prompts.json                  # テスト用プロンプト\n│   └── requirements.txt              # Python依存パッケージ\n├── docs\u002F\n│   ├── index.html                    # GitHub Pages\n│   └── caveman-diff-analysis.md      # caveman差分分析 + 進捗管理\n├── README.md\n├── LICENSE\n└── .gitignore\n```\n\n## 元プロジェクト\n\n[JuliusBrussee\u002Fcaveman](https:\u002F\u002Fgithub.com\u002FJuliusBrussee\u002Fcaveman) — 英語版オリジナル\n\n## Star History\n\n\u003Ca href=\"https:\u002F\u002Fwww.star-history.com\u002F?repos=InterfaceX-co-jp%2Fgenshijin&type=date&legend=top-left\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=InterfaceX-co-jp\u002Fgenshijin&type=date&theme=dark&legend=top-left&cb=v1.4.0\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=InterfaceX-co-jp\u002Fgenshijin&type=date&legend=top-left&cb=v1.4.0\" \u002F>\n   \u003Cimg alt=\"Star History Chart\" src=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=InterfaceX-co-jp\u002Fgenshijin&type=date&legend=top-left&cb=v1.4.0\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n## ライセンス\n\nMIT\n","2026-07-19 02:30:06","trending"]