レッドストーン回路の自動テストが失敗した際の切り分け・局所修正手順。get_blocks, interact_block, place_blocks を使ったデバッグ方法を定義する。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
半加算器・全加算器・Nビット加算器のレシピ。モジュール分割、キャリー伝播、タイミング、フェーズ構成、サーバー環境固有の注意点を含む。加算器を設計する前に必ず読む。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
このスキルは、レッドストーンによる加算器(半加算器 / 全加算器 / Nビットリップルキャリー加算器)を設計・実装するための典型レシピです。加算器は全加算器の繰り返しで構成できる典型問題であり、モジュール分割と契約ベースの設計に最も適した題材です。
設計前に以下も必ず読むこと:
.agents/skills/tool_pitfalls/SKILL.md(トラップ集).agents/skills/redstone_concept_logic_gates/SKILL.md(XOR/AND/OR).agents/skills/minecraft_block_summary/SKILL.md2つの1ビット入力 A, B を加算し、和 S と桁上げ C を出力する。
| A | B | S | C |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
2つの1ビット入力 A, B と下位からの桁上げ Cin を加算し、和 S と上位への桁上げ Cout を出力する。
| A | B | Cin | S | Cout |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 | 1 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
全加算器は以下の3モジュールに分割して設計するのが最もデバッグしやすい。親がこの分割を「モジュール仕様契約」として定義し、各モジュールを別サブエージェントに作らせることで、Flash級の推論でも確実に構築できる。
HA1(A, B) --> S1, C1
HA2(S1, Cin)--> S, C2
OR(C1, C2) --> Cout
ポイント: HA1の出力 S1 を HA2 の入力に接続する際、信号到達タイミングを合わせるためにリピーターで遅延を明示的に確保すること。
全加算器を N 個直列に接続し、下位の Cout を上位の Cin に繋ぐ。
FA0(A0,B0,Cin=0) --> S0, C0
FA1(A1,B1,Cin=C0) --> S1, C1
FA2(A2,B2,Cin=C1) --> S2, C2
...
FAn(An,Bn,Cin=Cn-1)--> Sn, Cout
XOR は加算器の核心であり、実装方式によって回路サイズとタイミングが大きく変わる。
(A-B)+(B-A) で XNOR を作り、NOT で XOR にする。本サーバー環境では以下の仕様が確認されている。これらを守らないと配線が繋がらない。
repeater / comparator / observer の facing は 主入力が侵入する方向(入力面) を指す。バニラの感覚(出力方向)とは逆になる点に注意。
connects の src/dst で配置し、facing を自動計算させること。connects では src(入力元)→ dst(出力先)の順で指定。信号は src → dst に流れる。アナログ(0-15)信号を扱う場合、入力からロジック端子(コンパレーター等)までの配線距離は 最大5〜8ブロック以内 に収めること。
レッドストーンソースブロック(レバー、RSブロック等)をデバイスと同Tickで配置すると、ブロック更新がスキップされリピーターがOFFのままロックされる(BUD-lock)。
[PlaceRequest, PlaceRequest] を使用し、フェーズ間は自動的に1tick待機が入る。powered、lit、power 等の動的状態を place_blocks で直接書き換えてはいけない。正規のプレイでは不可能な操作であり、ブロック更新ループが壊れて異常動作を引き起こす。
interact_block を使用する。interact_block の同期ズレを回避するため、操作後は wait_ticks(2) 以上の待機を入れてから観測する。全加算器を配置する際の典型フェーズ構成。PlaceRequest のフェーズ配列 [PlaceRequest] を使用する。
minecraft:stone 等で土台を敷き、モジュール間の混線防止用の不透過ブロックも配置。connects を使用して facing を自動計算。self.probe(name, pos) で時系列取得を推奨。土台クリアは
CircuitTest.clear_area = [x1,y1,z1,x2,y2,z2]を使うと、各テスト前に自動でminecraft:airクリアされる(setup内にair fillsを書く手間とミスを防ぐ)。
親が契約を定義し、各モジュールを別サブエージェントに作成させる際の典型フォーマット。以下を各モジュールごとに定義する。
### モジュール: HA1
- 入力ポート:
- A: [x, y, z](二値 0/15 または アナログ 0-15)
- B: [x, y, z]
- 出力ポート:
- S1: [x, y, z](= A XOR B、期待信号強度)
- C1: [x, y, z](= A AND B)
- 電源/接地: (必要に応じて)
- フェーズ構成: フェーズ1(土台)→ フェーズ2(デバイス)→ フェーズ3(ソース)
- タイミング: 入力確定から出力確定までの期待遅延(RSチック数)
- 単体テスト:
- 入力 A=0, B=0 → S1=0, C1=0
- 入力 A=1, B=0 → S1=1, C1=0
- 入力 A=0, B=1 → S1=1, C1=0
- 入力 A=1, B=1 → S1=0, C1=1
各モジュールはこの契約(入力ポートに所定信号 → 出力ポートに所定信号)だけを保証すればよい。統合時に契約違反モジュールが機械的に特定できる。
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
レッドストーン回路の自動テストが失敗した際の切り分け・局所修正手順。get_blocks, interact_block, place_blocks を使ったデバッグ方法を定義する。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
レッドストーン回路の自動テストが失敗した際の切り分け・局所修正手順。CLI版の mc-cli get-blocks, interact-block, place-blocks を使ったデバッグ方法を定義する。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
agent 向けテキスト指示(skill / slash command / task プロンプト / CLAUDE.md 節 / コード生成プロンプト)を、バイアスを排した実行者に動かしてもらい、両面(実行者の自己申告 + 指示側メトリクス)で評価して反復改善する手法。改善が頭打ちになるまで回す。プロンプトや skill を新規作成・大幅改訂した直後、またはエージェントの挙動が期待通りにならない原因を指示側の曖昧さに求めたいときに使う。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Minecraft のレッドストーン回路や構造物を設計するための、JSON データモデルの仕様と設計ガイドラインです。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
CLI版 mc-cli drop-items コマンドの使い方。ホッパーやコンテナに投入するアイテムを世界にドロップする時に読む。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
CLI版 mc-cli fill コマンドの使い方。土台作成や範囲消去(air)を行う前に読む。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.