第 1 卷(人物主线):第 1–3 集 + 人物表

主角线:Guspu Frillyknots / Ral Fastenhatchets / Alath Blottedmine
由线索挖掘器自动选定,按因果链切集,经 5 维度自评闸门(≥12 分)后入库。
This commit is contained in:
Chen Yi
2026-10-05 19:28:49 +08:00
parent 594cf48a1a
commit e0073e90bd
24 changed files with 2070 additions and 79 deletions
+36
View File
@@ -0,0 +1,36 @@
#!/usr/bin/env bash
# 管道启动器:把命令交给一个真正装了依赖的解释器。
#
# 背景(实测踩过的坑):会话里 PATH 上的 python3 可能不是系统解释器,
# 而是编辑器工具链自建的 venv(例如 ~/.pi-lens/pip-tools)。
# 那种 venv 里没有 defusedxml,而且关闭了 user site,于是
# `python3 -m dfannals.cli` 会突然报 ModuleNotFoundError。
# 这里主动挑一个能 import defusedxml 的解释器,避免依赖 PATH 的偶然性。
#
# scripts/dfannals status|plan|threads|episodes|cast|index|next|run ...
# DFANNALS_PYTHON=/path/to/python3 scripts/dfannals status # 也可显式指定
set -euo pipefail
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
pick_python() {
local cand
for cand in "${DFANNALS_PYTHON:-}" /usr/bin/python3 python3; do
[ -n "$cand" ] || continue
command -v "$cand" >/dev/null 2>&1 || continue
if "$cand" -c "import defusedxml" >/dev/null 2>&1; then
printf '%s' "$cand"
return 0
fi
done
return 1
}
PY="$(pick_python)" || {
echo "找不到可用解释器:需要一个能 import defusedxml 的 python3。" >&2
echo "装依赖:sudo apt install -y python3-defusedxml" >&2
exit 1
}
cd "$HERE"
exec "$PY" -m dfannals.cli "$@"