プログラミング
Show HN: Earth Game – 人生の目標をクエストに変えるオフラインCLIツール
Show HN: Earth Game – An offline CLI for turning life goals into quests (github.com)
要約
Earth Gameは、人生の目標をクエストとして管理し、次の行動を決定し、未完了のタスクを整理するためのプライベートでオフラインのCLIツールです。Pythonの標準ライブラリとSQLiteのみを使用し、依存関係や外部通信はありません。CLIだけでなく、ローカル限定のWeb UIとしても利用可能です。
全文翻訳
Earth Gameプライベートでオフラインのコンパニオン。クエストを選択し、次の行動を取り、未完了のループを閉じ、ドリフトが始まる前に方向性を確認します。
Earth GameはPythonの標準ライブラリとSQLiteを使用します。サードパーティの依存関係、アカウント、アウトバウンドリクエスト、スコアリング、AI生成のアドバイスはありません。
要件
Python 3.8以降
Unixライクなターミナル
Arch Linuxにインストール
Earth GameはAURから利用可能です: yay -S earth-game
インストール後、どこからでも earth または earth-game を実行します。
クイックスタート
./earth init
./earth character edit
./earth quest add
./earth quest list
./earth quest start 1
./earth today
ブラウザを好みますか?
同じアプリをローカル専用のWeb UIとして起動します: ./earth web
これは http://127.0.0.1:8765/ 上のプライベートセッションURLを開き、CLIと同じデータベースを使用します。Ctrl-Cで停止します。LANにバインドしたり、外部リクエストを行ったりすることはありません。
コマンドは不足しているテキストをプロンプトで要求します。オプションは非対話型使用もサポートします:
./earth quest add \
--title "古い友人と再会する"
--next "サムにメッセージを送る"
--pillar connection \
--driver purpose
./earth quest start 1
./earth today
完全なインターフェースについては、./earth --help または ./earth COMMAND --help を実行してください。完全な実世界ウォークスルーについては、USAGE.md を参照してください。
コマンド
earth init ローカルストレージを作成しますが、既存のデータベースは上書きしません。
earth character show|edit 値、強み、摩擦、目的、反ビジョンを管理します。
earth quest add|list|start|done|drop クエストを管理します。現在のクエストは1つだけです。
earth loop add|list|close 未解決のタスクや懸念事項をキャプチャして閉じます。
earth today 現在のクエスト、次のアクション、オープンループの数、レビューの状態を表示します。
earth review 5つの短いリフレクションを記録します。 --update-quest を渡すと、--next の回答を現在のクエストの次のアクションとして使用します。
earth export [PATH] すべてのデータを読みやすいJSONとしてエクスポートします。既存のファイルは上書きされません。
earth web ローカルブラウザUIを起動します。 --no-open を使用するか、--port PORT でポートを選択します。
典型的なループ
./earth loop add --text "歯医者を予約する"
./earth today
./earth quest done 1
./earth review
./earth export earth-export.json
データとプライバシー
デフォルトのデータベースは次のとおりです:
${XDG_DATA_HOME:-$HOME/.local/share}/earth-game/earth.db
EARTH_GAME_DB を設定して別のパスを使用します:
EARTH_GAME_DB=/path/to/earth.db
./earth init
データベースとJSONエクスポートは、Unix上でプライベートパーミッションで作成されます。Earth Gameは外部ネットワークリクエストを行いません。webコマンドはローカルループバックアドレスのみをリッスンし、起動時に表示されるプライベートセッション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と共有ドメイン操作を含みます。
earth_web.py ローカルHTTPサーバーとHTMLインターフェースを含みます。
製品の決定と将来の変更ルールについては、ROADMAP.md を参照してください。