This commit is contained in:
2026-07-12 21:26:08 +08:00
commit 9dd41afd48
502 changed files with 129901 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
#!/bin/bash
# SessionStart hook: 会话开始时注入 wiki 上下文(只触发一次)
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
# shellcheck disable=SC1091
source "$SCRIPT_DIR/shared-config.sh"
WIKI_PATH=""
if [ -f "$HOME/.llm-wiki-path" ]; then
WIKI_PATH="$(cat "$HOME/.llm-wiki-path")"
fi
if [ -z "$WIKI_PATH" ] && [ -f .wiki-schema.md ]; then
WIKI_PATH="$(pwd)"
fi
if [ -z "$WIKI_PATH" ] || [ ! -f "$WIKI_PATH/.wiki-schema.md" ]; then
printf '{}\n'
exit 0
fi
require_python_cmd
"$PYTHON_CMD" - "$WIKI_PATH" <<'PY'
import json
import os
import sys
# 防御性:即使上游 shared-config.sh 未设置 PYTHONIOENCODING
# 此处也强制 stdout 为 UTF-8,避免 Agent 接到 gbk 字节
if hasattr(sys.stdout, "reconfigure"):
sys.stdout.reconfigure(encoding="utf-8")
wiki_path = os.path.realpath(sys.argv[1])
message = f"[llm-wiki] 检测到知识库: {wiki_path}/index.md,回答问题时优先查阅 wiki 内容获取上下文"
print(json.dumps({
"hookSpecificOutput": {
"hookEventName": "SessionStart",
"additionalContext": message,
}
}, ensure_ascii=False))
PY