Show HN: Earth Game – ライフの目標をクエストに変えるオフライン用 CLI

2026/07/12 1:37

Show HN: Earth Game – ライフの目標をクエストに変えるオフライン用 CLI

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Earth Game は、個人的なクエスト、アクションおよび省察を管理するためのプライベートでオフラインのコンパニオンツールです。Python の標準ライブラリと SQLite を用いて構築され、サードパーティ製依存関係なしであるため、すべてのデータをマシンのローカルに保持します。クエストの選択、アクションの計画、ループの閉鎖、方向性のレビューをサポートし、集中維持を支援します。本アプリケーションは、非対話タスク用のコマンドラインインターフェース(CLI)と、http://127.0.0.1:8765/ の localhost 専用ウェブユーザーインターフェースの両方で動作し、どちらも同一の SQLite データベースを利用します。データプライバシーは、Unix システム上でプライベートパーミッションを持つファイルにデータを格納すること、および Web サーバーを localhost にのみバインドすることで外部への露出を防ぐことで確保されます。要件は Python 3.8 以上と Unix ライクなターミナルであり、Arch Linux ユーザーは AUR を介してインストールでき、他者は互換性のあるターミナル環境が必要です。デフォルトのデータベース場所は ${XDG_DATA_HOME:-$HOME/.local/share}/earth-game/earth.db(EARTH_GAME_DB 環境変数で変更可能)です。Earth Game コマンドが実行されていない間、ユーザーは進捗を JSON にエクスポートしたり、バックアップされた SQLite ファイルからセッションを復元したりできます。結局のところ、Earth Game はデジタルフットプリントについて完全な制御のもとに置かれた構造化されたプライベートジャーナリングシステムを提供します。

Text to translate:

(if needed; otherwise repeat the original):

Summary:

Earth Game is a private, offline companion tool for managing personal quests, actions, and reflections. Built with Python’s standard library and SQLite and zero third-party dependencies, it keeps all data local on your machine. It supports quest selection, action planning, loop closure, and direction review to keep you focused. The application works via a command-line interface (CLI) for non-interactive tasks and a dedicated localhost-only web user interface at http://127.0.0.1:8765/, both using the same SQLite database. Data privacy is ensured by storing files with private permissions on Unix systems and binding the web server to localhost only, preventing external exposure. Requirements are Python 3.8+ and a Unix-like terminal; Arch Linux users can install it via the AUR, while others need a compatible terminal environment. The default database location is ${XDG_DATA_HOME:-$HOME/.local/share}/earth-game/earth.db (modifiable via the EARTH_GAME_DB environment variable). Users can export progress to JSON or restore sessions from backed-up SQLite files when no Earth Game command is running. Ultimately, Earth Game provides a structured, private journaling system with full control over your digital footprint.

本文

Earth Game: プライバシー重視のオフライン RPG 伴侶

Earth Game は、迷走する前にクエスト選択や行動決定、未解決ループの整理、方向性の見直しをサポートするための、プライベートかつオフラインなソフトウェアです。

本ソフトは Python の標準ライブラリと SQLite を使用しており、以下は一切採用していません:

  • サードパーティ製依存関係
  • アカウントシステム
  • 外部への通信
  • スコアリング機能
  • AI による助言

システム要件

  • Python: 3.8 以降
  • 環境: Unix 系のターミナル環境(Linux, macOS など)

インストールと起動

Arch Linux での入手

Arch Linux においては、AUR(Arch User Repository) からインストール可能です。

コマンドの呼び出し方

インストール後、任意の場所から以下のコマンドを実行します:

earth
# または
earth-game

クイックスタート

基本的な動作を開始するためのコマンド例です:

./earth init                      # ローカルデータベースを初期化
./earth character edit            # キャラクター設定の確認/編集
./earth quest add                 # 新しいクエストの追加
./earth quest list                # キューエリスト一覧
./earth quest start 1             # クエストの開始(ID 1)
./earth today                     # 今日の要覧を表示

ブラウザからのアクセス (Web UI)

ブラウザを好む場合は、ローカル専用 Web UI を起動することも可能です。

./earth web
  • アクセス方法: 起動時に表示される
    http://127.0.0.1:8765/
    にアクセスします。
  • 動作内容: CLI と同一のデータベースを利用し、プライベートなセッションとして動作します。
  • 停止方法: ターミナルで
    Ctrl-C
    を押し停止してください。
  • セキュリティ: LAN へのバインドや外部リクエストは行いません(ローカルループバックアドレスのみ対応)。

クエスト追加の例

./earth quest add \
  --title "古き友人との再会" \
  --next "Sam へメッセージを送信する" \
  --pillar connection \
  --driver purpose

その後、クエストを進化させます:

./earth quest start 1
./earth today

詳細なオプションについては

./earth --help
または個別コマンドの
--help
を参照し、実世界の完全な使用例については
USAGE.md
をご確認ください。

コマンド一覧

コマンド機能説明
earth init
既存データを破棄せず、ローカルストレージを作成・初期化します。
earth character show|edit
価値観強み摩擦点目的アンチビジョンなどを管理します。
earth quest add|list|start|done|drop
クエストの追加、一覧、開始、完了、ドロップを行います。
注意点: 同時に進行中のクエストは一つだけです。
earth loop add|list|close
未解決のタスクや懸念事項(オープンループ)をキャプチャし、完了へと追い込みます。
earth today
現在のクエスト、次の行動、オープンループの数、レビュー状態を表示します。
earth review
5 つの短い省察事項を記録します。
--update-quest
オプションをつけると、「次の行動」の回答を現在進行中のクエストに適用できます。
earth export [PATH]
全データを改行ありの JSON 形式でエクスポートします(既存ファイルは上書きされません)。
earth web
ローカル Web UI を起動します。
--no-open
でブラウザ自動起動を停止、
--port PORT
でポートを変更できます。

典型なワークフロー例

./earth loop add --text "歯科医の予約を取る"
./earth today
./earth quest done 1               # クエスト完了処理
./earth review                     # リフレクションと更新
./earth export earth-export.json   # データのエクスポート

データとプライバシー

データベースパス

デフォルトの保存先は以下の通りです:

  • Linux/macOS:
    ${XDG_DATA_HOME:-$HOME/.local/share}/earth-game/earth.db

異なるパスを使用したい場合は、

EARTH_GAME_DB
環境変数を設定します:

EARTH_GAME_DB=/path/to/earth.db ./earth init

セキュリティについて

  • 権限: データベースおよびエクスポートファイルは、Unix 系でプライバシー保護の観点から適切な権限で作成されます。
  • 通信: Earth Game は外部ネットワークへのリクエストを行いません。
  • Web UI: Web コマンドもローカルループバックアドレス (
    127.0.0.1
    ) のみリスニングし、起動時に表示される URL にアクセスする必要があります。

バックアップと復元

Earth Game を実行していない状態で、SQLite データベースファイルをコピーすることでバックアップできます。正確なパスは

./earth --help
を参照してください。

テストの実行

開発環境でのテストコマンドです:

python3 -m unittest -v
python3 -m py_compile earth earth_core.py earth_web.py

プロジェクト構造

  • earth
    : CLI パースとターミナルとの対話処理を担当します。
  • earth_core.py
    : SQLite 操作と共有領域(Shared Area)の機能を実装しています。
  • earth_web.py
    : ローカル HTTP サーバーと HTML インタフェースを実装しています。

今後の変更について

製品に関する意思決定および今後の変更ルールについては、ROADMAP.md をご参照ください。

同じ日のほかのニュース

一覧に戻る →

2026/07/12 7:38

イロウによる分散AI計算のためのメッシュ LLM

## Japanese Translation: ## 概要: Mesh LLM は、既存の GPU およびメモリを何台ものマシンから集約し、中央サーバーを必要としない軽量なインフラストラクチャとして統合することで、チームが人工知能を利用する方法を根本的に変革します。これは、OpenAI 互換 API(デフォルトアドレス:`localhost:9337/v1`)としてこの統合されたコンピューティングリソースを公開し、組織が高価でブラックボックス化しているクラウドプロバイダーへの依存を排除しながら、モデルの更新、データルーティング、および下位のハードウェアに対する完全な制御を維持できるようにします。これによりコストを増加させることはありません。 アーキテクチャは、MCP、HTTP、インференスストリーム、およびメッシュイベントを通じて暴露されるマニフェストベースのプラグインシステムにより拡張可能であり、ノートパソコンサイズから 235B パラメータの巨人までをカバーする 40 以上のモデルをサポートします。235B パラメータなど的大規模な mixture-of-experts モデルについては、Mesh LLM は内部名称「Skippy」を持つ「Split mode」を採用しており、モデルレイヤーを順次ステージに分割し、ピアツーピアルーティングを用いて活性化を適度なマシンのパイプラインを通って流します。 ネットワーク管理は、iroh エンドポイントメッシュによって行われ、ここで各ノード(サーバーまたはクライアント)は公開鍵を使用して独自のアイデンティティとして機能し、中央コーディネーターの必要性はありません。接続は認証されており、iroh リレーによる NAT 通過可能な QUIC セッションが支援され、地域をまたいでヒールパンチ/リレーフォールバック機構が備わっています。プロトコルには、ゴシップ、ルーティング、HTTP 用の`mesh-llm/1`、所有者コントロールプレーンのための`mesh-llm-control/1`、低遅延に敏感な活性化輸送のための`skippy-stage/2`という 3 つの特別な QUIC ALPN が使用されます。メイン接続内では、すべてのトラフィックは先頭のバイトでデマルックスされた双方向の QUIC ストリームとなり、特定のタイプ(`GOSSIP`、`TUNNEL_HTTP`、`ROUTE_REQUEST`、`PEER_DOWN`、`PLUGIN_CHANNEL` など)に分類されます。 ソフトウェアは非常に軽量であり、インストールには約 18 MB を必要とします。公開メッシュへの参加やベンダーロックインのないプライベートデプロイメントの完全な構成が可能です。将来の計画には、iroh の Swift SDK で構築された専用モバイルアプリが含まれており、これは台頭しつつあるエージェント通信プロトコル(ACP)をサポートし、他のクライアントがメッシュにシームレスに接続できるようにします。セキュリティ、バージョン互換性、および信頼に関する判断は、カスタムゴシップレイヤーを介して内部で管理され、スケーリングやネットワーク構成に関わらず自律性を確保しています。

2026/07/12 6:58

ゼロから設計されたオープンソースの携帯型ゲーム機「RISCBoy」

## Japanese Translation: RISCBoy は、RISC-V 互換 CPU とラスタグラフィックスパイプラインを从头設計されたオープンソースの携帯用ゲームコンソールです。その主要な成果は、合成可能な Verilog 2005 で記述され、完全に検証されたプロセッサ設計であり、Lattice iCE40-HX8k(7680 ロジック要素を使用、LUT4 ベース)などの特定 FPGA ハードウェアをターゲットとしています。プロジェクトは RV32IMC インスピーションセットに厳密に従い、M モード制御レジスタ、例外処理、ベクトored 外部割り込み向けの準拠拡張機能といった本質的な機能を実装することで、アーキテクチャ準拠の他、riscv-formal サイスイツを使用して厳格な形式的検証も実施しています。完全なソースコードは `git clone --recursive https://github.com/Wren6991/RISCBoy.git` で入手可能で、サブモジュールが必要な場合は手動での更新が必要です。開発には RV32IMC ツールチェーン(`./configure --with-arch=rv32imc` で構築)と Xilinx ISIM 14.x(Linux 専用)によるシミュレーション、そして `scripts/` フォルダ内の makefile を使用します。合成にはオープンソースのツールチェーンが使用され、Yosys が合成、nextpnr が配置・配線、Project Icestorm がビットストリーム生成を担当し、Lattice HX8k 評価ボード(`HX8k-EVN.mk`)や実験的な ECP5 サポート(`ECP5-EVN.mk`)などのターゲットをサポートしています。`hdl` ディレクトリにはバスファブ、グラフィックスユニット、hazard5 プロセッサコアの Verilog ソースが含まれており、`test` ディレクトリには Verilog テストベンチとソフトウェアケースを含む回帰テストが格納されています。現在、量産は iTead の 4 レイヤープロトタイピングサービスを活用し、10 ユニットを $65 で提供する Rev A PCB から開始されており、これらツールの合成と配線に使用されています。新たな Rev B PCB がゲートウェアの成熟に合わせて待機しています。この進化は、高レベルのソフトウェア開発と低レベルのハードウェアアーキテクチャを橋渡しする完全にカスタマイズ可能なプラットフォームを求める愛好家やエンジニアにとって意義のあるステップであり、現代のオープンソースコンピューティングエコシステムへの具体的な一瞥を提供しています。

2026/07/12 8:54

オデッセイ Linux

## Japanese Translation: 提供されたテキストには、本物のニュース記事、議論、または物語は含まれておらず、そのため、そのプレースホルダー的な性質を超えて主要メッセージを抽出することは不可能です。概して、コンテンツは「$ code」などの一般的なラベルを含む構造的テンプレートとして機能しだけであり、これは具体的な技術詳細のない抽象的なプログラミング概念を表しています。「$ constitution」や「$ governance」といった用語も、ここでは定義された法的・政治的文脈を欠いています。実際の出来事、意見、または事実主张を記述する文がないため、資料は歴史的背景、具体的な日付、または製品名を確立できていません。したがって、将来の動向に関する前向きな声明、予測、またはタイムラインも含まれていません。特定のユーザー、企業、産業を特定していないため、このコンテンツによって誰が影響を受ける可能性があるかを判断することはできません。記述言語が欠如していることは、いまだに核心的情報が表明されていないことを示しています。一言で言えば、文書は静的であり、読者が全体概要または潜在的な影響を理解しようとするとアクション可能な知見、データ、あるいは意味ある主題事項を全く含んでいません。 ## Text to translate The original summary is concise, accurate, and logically consistent with the provided key points. It clearly communicates that the document is a structural template devoid of substantive information. No improvements are necessary. ## Summary The provided text offers no substantive news story, argument, or narrative, making it impossible to derive a main message beyond its placeholder nature. Essentially, the content functions only as a structural template containing generic labels like "$ code," which represents abstract programming concepts without specific technical details, and terms such as "$ constitution" or "$ governance" that lack defined legal or political contexts here. Because there are no sentences describing actual events, opinions, or factual claims, the material fails to establish any historical background, specific dates, or product names. Consequently, the text contains no forward-looking statements, predictions, or timelines regarding future developments. Without identifying specific users, companies, or industries, it is impossible to determine who might be impacted by this content. The absence of descriptive language confirms that no core information has been articulated yet. In short, the document remains static and devoid of actionable intelligence, data, or any meaningful subject matter for a reader seeking to grasp an overall gist or potential consequences.

Show HN: Earth Game – ライフの目標をクエストに変えるオフライン用 CLI | そっか~ニュース