Show HN: Earth Game – 一个将人生目标转化为任务的离线命令行工具
Show HN: Earth Game – An offline CLI for turning life goals into quests

原始链接: https://github.com/skorotkiewicz/earth-game

Earth Game 是一款私密的离线个人管理工具,旨在帮助你规划任务、追踪行动并保持专注。该工具完全使用 Python 标准库和 SQLite 构建,无需任何外部依赖,无需注册账号,且不会发起任何网络请求,从而确保了绝对的数据隐私。 该工具通过简单的命令行界面(CLI)或可选的本地网页界面运行。用户可以管理核心价值观、定义并追踪任务、关闭“开放回路”(未决事项),以及进行定期回顾以维持目标导向。主要指令包括用于设置的 `init`、用于任务管理的 `quest`、用于记录待办事项的 `loop`,以及用于个人反思的 `review`。 所有数据均本地存储于单个 SQLite 数据库中,可轻松进行备份或导出为 JSON 格式。Earth Game 专为类 Unix 系统设计,轻量透明,且不包含任何 AI 生成的建议或评分系统。它旨在成为一款稳健、私密的辅助工具,适合那些希望减少盲目状态并坚持个人目标的人士使用。

Hacker News 最新 | 过往 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 Show HN: Earth Game – 一个将人生目标转化为任务的离线命令行工具 (github.com/skorotkiewicz) 10 分,由 modinfo 发布于 2 小时前 | 隐藏 | 过往 | 收藏 | 1 条评论 help Jeff_Brown 31 分钟前 这让我想起有一次,一位朋友看到有人对他发布的内容点了赞,他想对那个“赞”点赞。但界面上没有这个功能,所以他只能“被迫”在现实中去点赞了。 回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文

Earth Game: a connected planet with a glowing quest path

Python 3.8+ Dependencies: standard library Storage: local SQLite Network: no external requests

A private, offline companion for choosing quests, taking the next action, closing open loops, and reviewing your direction before drift sets in.

Earth Game uses Python's standard library and SQLite. It has no third-party dependencies, accounts, outbound requests, scoring, or AI-generated advice.

  • Python 3.8 or newer
  • A Unix-like terminal

Earth Game is available from the AUR:

After installation, run earth or earth-game from anywhere.

./earth init
./earth character edit
./earth quest add
./earth quest list
./earth quest start 1
./earth today

Prefer a browser? Start the same app as a local-only web UI:

It opens a private session URL on http://127.0.0.1:8765/ and uses the same database as the CLI. Stop it with Ctrl-C. It never binds to your LAN or makes external requests.

Commands prompt for missing text. Options also support non-interactive use:

./earth quest add \
  --title "Reconnect with an old friend" \
  --next "Send Sam a message" \
  --pillar connection \
  --driver purpose

./earth quest start 1
./earth today

Run ./earth --help or ./earth COMMAND --help for the complete interface. See USAGE.md for complete real-world walkthroughs.

  • earth init creates local storage without overwriting an existing database.
  • earth character show|edit manages values, strengths, frictions, purpose, and anti-vision.
  • earth quest add|list|start|done|drop manages quests. Only one quest can be current.
  • earth loop add|list|close captures and closes unresolved tasks or concerns.
  • earth today shows the current quest, next action, open-loop count, and review status.
  • earth review records five short reflections. Pass --update-quest to use the --next answer as the current quest's next action.
  • earth export [PATH] exports all data as readable JSON. Existing files are never overwritten.
  • earth web starts the local browser UI. Use --no-open or choose a port with --port PORT.
./earth loop add --text "Book the dentist"
./earth today
./earth quest done 1
./earth review
./earth export earth-export.json

The default database is:

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

Set EARTH_GAME_DB to use another path:

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

The database and JSON exports are created with private permissions on Unix. Earth Game makes no external network requests; the web command listens only on the local loopback address and requires the private session URL printed at startup.

To back up or restore, copy the SQLite database while no Earth Game command is running. ./earth --help prints the exact active data path.

python3 -m unittest -v
python3 -m py_compile earth earth_core.py earth_web.py
  • earth contains CLI parsing and terminal interaction.
  • earth_core.py contains SQLite and shared domain operations.
  • earth_web.py contains the local HTTP server and HTML interface.

See ROADMAP.md for the product decisions and future-change rules.

联系我们 contact @ memedata.com