Knowledge base of Minecraft Remote Project for learning/working along with LLM (Naohiro2g/mc-remote-knowledge)
Note
🌐 言語方針について / Language Policy 本プロジェクトは、一次情報(SSOT)の鮮度と正確性を保つため、リポジトリ全体を日本語で記述しています。従来の英語優先から方針転換した背景や、Issue/PRにおける多言語参加については 主要言語についての方針転換 / Language Policy(または 00-hub/language-policy_ja.md)をご覧ください。 This repository is maintained in Japanese as its primary Single Source of Truth (SSOT). For the background behind this policy change and our open support for multi-language contributions, please see our Language Policy.
人間とLLMが「学びながら開発し、共創する」ためのナレッジベース型開発システム
マイクラリモコンは、コーディングでマイクラの世界を動かしながら「学び方を学ぶ」ためのオープンソースのツール群です。 Scratch や Python などで書いたプログラムから、マインクラフトのサーバーへブロックを置いたり、プレイヤーを動かしたりできます。 マイクラのアプリは Java 版でも統合版でも接続できます。
- サーバーのプラグイン(McRemote)
- 各言語のクライアント(Scratch、Python、Java など)
- 通信の中身を観察する WireScope
- サーバーの構築・運用パッケージ(mc-remote-stack)
はじめかた、考え方、ロードマップは公式ホームページへ:https://mc-remote.com/
このリポジトリ(mc-remote-knowledge)は、プロジェクト全体の 設計記録、横断決定、現行規約を公開・管理する唯一の真実の源(SSOT: Single Source of Truth) です。実装コードは各開発リポジトリに置き、このリポでは「何を、なぜ、どの境界で決めたか」を記録しています。
また、マイクラリモコンは 「LLM支援ナレッジベース型開発システム」 の実践例でもあります。ソフトウェアを使う学習者だけでなく、「人間とAIがどう協調して大規模なシステムを破綻なく共創・学習していくか」という開発システム自体も学習パス(学びの対象) として位置づけられています。
-
🌐 まずはホームページへ: はじめかたと接続先の案内をまとめています。
-
🐱 Scratchで動かす: ブラウザから即座にブロックプログラミングでマイクラの世界を動かせます。
-
🐍 Pythonで動かす: わずか3行のコードでブロック設置やチャット送信ができます。
-
🎮 作品サンプル・作例を見る: 建築、ドット絵、ミニゲームなどの動くコード集。
-
🏰 サーバーを立てたい: 教室や自宅でサーバーを構築・運用するパッケージ。
「AIに丸投げするのではなく、人間が意思決定の主権を握りながら、LLMの爆発的な推論・実装力を活かす仕組み」を学べます。
-
📖 学習と開発の思想: なぜ言語化より先に「観察」から入るのか?
-
🏗️ ナレッジベース構造: ハブ&スポーク構造、文書三層モデル(拘束・説明・投影)
-
📜 意思決定の記録(SSOT): 結論・理由・却下案を消さずに残す「追記只進」の規律
-
🧭 ドキュメントの書き方: 「文書は説明し、台帳が拘束する
本システムは、教材開発から実開発・検証・運用まで、一貫して以下の原理で運用されています。
- 正典順序:観察 → 痕跡を残す → 言語化 → 比較・検証 → 自己判定 → 共有・再検証 言語化を最初の入場条件にしません。まず動かし、観察し、痕跡を残すことから始めます。
- 委譲と責任:未検証の正しさや設計判断をLLMに代行させない コード生成はAIに委譲しても、判断・検証・統合の責任は人間が握ります。証拠のスコープを超えて確約しません。
- 判断理由を残す:結論・理由・却下案をセットで記録する 方針変更時も過去の判断を上書きで消さず、新しい決定を追記して参照で繋ぎます。
- メタ判断と跳躍:疑う規律と跳ぶ直感の両方を置く 過去の決定が今も最適かを常に問い直す(メタ判断)と同時に、根拠が薄くても直感で踏み出す跳躍を排除しません。
- 不要な禁止ルールを作らない(
2026-09-04-05) 局所最適による禁止ルールの増殖を防ぎ、誤りと判明したルールは判断履歴を残したまま現行拘束から外します。
より深い運用哲学や設計背景は knowledge repository design および CLAUDE.md を参照してください。
00-hub/ 全体原理・索引・横断決定・開発プロトコル
10-protocol/ サーバープラグインとクライアント間の通信仕様(Protocol)
11-plugin/ Paper サーバープラグイン(McRemote)の設計
12-python-client/ Python クライアントライブラリの設計
13-scratch-client/ Scratch エディタ拡張・Bridge の設計
14-evidence/ 実機テスト・検証ログ
15-wirescope/ 通信パケットをリアルタイム可視化する観察UI
16-java-client/ Java クライアントライブラリの設計
17-typescript-client/ TypeScript クライアントライブラリの設計
18-csharp-client/ C# クライアントライブラリの設計
19-unity/ Unity の世界と箱庭の設計
20-教材/ 学習支援・教育設計・チュートリアル設計
30-広告宣伝/ 公開戦略・発信
- INDEX — 全ドキュメントの総合目録
- DECISIONS — プロジェクトの横断決定ログ(SSOT)
- NOTES — 未確定の芽・未解決の課題
- グランドデザイン — プロジェクト全体の長期展望
- README・sample近代化ロードマップ — 各リポの人間向け入口整備方針
- LANGUAGE_POLICY — 主要言語についての方針転換(日英併記)
- CONTRIBUTING — コントリビューションの手引き
- SECURITY — セキュリティ報告窓口
| リポジトリ | 役割 | リンク |
|---|---|---|
minecraft-remote-api |
Python クライアント(PyPI。新プロトコルのベータ版はuv add "minecraft-remote-api==2320.0.0b9"のように版を指定) |
GitHub |
scratch-editor |
Scratch 3.0 ベースのマイクラプログラミング環境 | GitHub |
mc_remote_samples |
多言語対応の作例・サンプルコード集 | GitHub |
McRemote |
Minecraft Paper サーバー用プラグイン | GitHub |
mc-remote-stack |
サーバー環境デプロイ・Dockerパッケージ | GitHub |
minecraft-remote-java |
Java 向けクライアントライブラリ | GitHub |
minecraft-remote-tooling |
共通の開発基盤(プロトコル定義と共有fixture、WireScope、Bridge) | GitHub |
オリジナルの文書・図・教育資料は CC BY-SA 4.0、プロジェクト所有コードは原則 MIT License です。
Scratch Editor や WireScope 等の個別コンポーネント固有のライセンスについては各リポジトリの LICENSE を参照してください。詳細は LICENSE.md を確認してください。