novel-doomsday-resurgence/start_inkos_with_quality.sh

109 lines
3.3 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
echo "=== 启动 inkos 质量增强版 ==="
echo "开始时间: $(date)"
echo ""
# 1. 检查环境
INKOS_PATH="/usr/bin/inkos"
CONFIG_FILE="/root/.openclaw/workspace/tomato-novel/inkos_quality_config.json"
BOOK_DIR="/root/.openclaw/workspace/tomato-novel/books/末日重生-开局囤货十亿物资"
if [ ! -f "$INKOS_PATH" ]; then
echo "错误inkos 未安装"
exit 1
fi
if [ ! -f "$CONFIG_FILE" ]; then
echo "错误:配置文件不存在"
exit 1
fi
if [ ! -d "$BOOK_DIR" ]; then
echo "错误:书籍目录不存在"
exit 1
fi
# 2. 备份原始配置
echo "备份原始配置..."
if [ -f "$BOOK_DIR/inkos_config.json" ]; then
cp "$BOOK_DIR/inkos_config.json" "$BOOK_DIR/inkos_config_backup_$(date +%Y%m%d_%H%M%S).json"
fi
# 3. 应用新配置
echo "应用质量配置..."
cp "$CONFIG_FILE" "$BOOK_DIR/inkos_config.json"
# 4. 启动质量监控
echo "启动质量监控..."
python3 /root/.openclaw/workspace/tomato-novel/scripts/simple_quality_check.py "$BOOK_DIR/chapters/0001_冰点记忆.md" > /tmp/chapter1_quality_check.txt 2>&1 &
# 5. 启动 inkos
echo "启动 inkos..."
cd "$BOOK_DIR" && "$INKOS_PATH" up --config "inkos_config.json" > /tmp/inkos_startup.log 2>&1 &
# 6. 检查启动状态
sleep 5
echo "检查 inkos 进程..."
ps aux | grep "inkos up" | grep -v grep
if [ $? -eq 0 ]; then
echo "✅ inkos 启动成功"
echo ""
echo "=== 质量配置已启用 ==="
echo "1. 段落结构最小35字短段比例<30%"
echo "2. 爽点密度每章至少3个爽点"
echo "3. 对话比例至少30%对话内容"
echo "4. 情绪弧线每章至少2次情绪变化"
echo "5. 自动修复:启用段落合并、爽点增强"
echo ""
echo "监控日志:/tmp/inkos_startup.log"
echo "质量检查:/tmp/chapter1_quality_check.txt"
else
echo "❌ inkos 启动失败"
echo "查看日志:/tmp/inkos_startup.log"
exit 1
fi
# 7. 创建监控脚本
cat > /root/.openclaw/workspace/inkos_quality_monitor.sh << 'MONITOR_EOF'
#!/bin/bash
echo "=== inkos 质量监控 ==="
echo "时间: $(date)"
echo ""
# 检查进程
if ps aux | grep "inkos up" | grep -v grep > /dev/null; then
echo "✅ inkos 运行中"
else
echo "❌ inkos 未运行"
exit 1
fi
# 检查最新章节
LATEST_CHAPTER=$(ls -t /root/.openclaw/workspace/tomato-novel/books/末日重生-开局囤货十亿物资/chapters/*.md | head -1)
if [ -f "$LATEST_CHAPTER" ]; then
CHAPTER_NUM=$(basename "$LATEST_CHAPTER" | cut -d_ -f1)
CHAPTER_TITLE=$(basename "$LATEST_CHAPTER" .md | cut -d_ -f2-)
echo "最新章节:第${CHAPTER_NUM}章《${CHAPTER_TITLE}》"
# 运行质量检查
python3 /root/.openclaw/workspace/tomato-novel/scripts/simple_quality_check.py "$LATEST_CHAPTER" | tail -20
else
echo "未找到章节文件"
fi
MONITOR_EOF
chmod +x /root/.openclaw/workspace/inkos_quality_monitor.sh
echo ""
echo "=== 启动完成 ==="
echo "结束时间: $(date)"
echo ""
echo "📋 使用说明:"
echo "1. 监控状态bash /root/.openclaw/workspace/inkos_quality_monitor.sh"
echo "2. 停止 inkospkill -f 'inkos up'"
echo "3. 查看日志tail -f /tmp/inkos_startup.log"
echo "4. 质量报告python3 /root/.openclaw/workspace/tomato-novel/scripts/simple_quality_check.py <章节文件>"
echo ""
echo "⚠️ 注意:新配置将强制质量要求,不合格内容将被拒绝或自动修复"