Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: OldRookieBiner/novelagent

v0.8.11

15 May 18:21
@OldRookieBiner OldRookieBiner

Choose a tag to compare

修复

  • 修复章节正文生成报错 'dict' object has no attribute 'format' - 根因:get_system_prompt 在 DB 无自定义 prompt 时回退到 DEFAULT_PROMPTS,但 chapter_content_generation/review/rewrite 三个键的默认值是 dict 格式 {"system": ..., "user": ...},直接返回 dict 导致下游 .format() 调用报错。修复:回退时检测 dict 格式并提取 user 部分

优化

  • 上下文策略增强 - HybridContentStrategy 支持 chapter_outlines 参数,章节正文生成可参考后续大纲规划
  • 章节大纲生成上下文补充 - 传递人物关系和演变计划到章节大纲生成节点,提升大纲与人物设定的一致性
  • 节点工具函数改进 - format_characters_info 使用 DB 字段名,_format_chapter_outline_str 新增 transition/ending 字段

测试

  • 新增 test_prompt_loader.py 回归测试:dict 格式 prompt 返回字符串验证、全 agent_type 类型检查
Assets 2
Loading

v0.8.9

14 May 12:40
@OldRookieBiner OldRookieBiner

Choose a tag to compare

新功能

  • 章节重写 SSE 端点 - 新增 POST /chapters/{id}/rewrite SSE 流式重写端点

    • 重写时携带已写章节上下文和审核结果,LLM 可参考审核意见改写
    • 重写请求支持 max_tokens 参数,默认按目标字数动态计算
    • 前端 AIAssistantPanel 新增"重写"按钮,一键根据审核意见重写章节
  • SSE 心跳保活 - 新增 format_heartbeat 工具函数,审核 SSE 流使用注释行心跳保持连接

    • 审核 SSE 不再发送 chunk 事件,改用心跳注释行防止代理/网关超时断连

优化

  • 审核 JSON 解析增强 - 3 策略解析:markdown 代码块提取 → 花括号逐层匹配 → 旧格式正则回退

    • 兼容 LLM 输出的多种 JSON 字段名(feedback/改进建议/problems)
    • 修复 LLM 返回多个 JSON 对象或包裹在代码块中时解析失败的问题
  • 审核/重写上下文保留 - 修复重写时丢失 written_chapters 上下文的问题

    • _build_rewrite_messages 现在完整传入已写章节内容,确保重写时与前文风格一致
  • 前端审核状态管理 - 修复 SSE 审核结果被 prop 数据覆盖的问题

    • 新增 sseResultSetRef 追踪 SSE 是否已设置结果,防止异步加载的 prop 数据覆盖实时结果
    • WritingPanel 中 initialReviewResult 使用 useMemo 缓存,避免不必要的重渲染

修复

  • SSE 流清理 - 组件卸载时正确中止进行中的 SSE 流,防止内存泄漏和状态错乱

测试

  • 新增审核 SSE 事件格式测试(test_review.py)
  • 新增重写 SSE 端点测试(test_rewrite.py)
  • 新增 JSON 解析边界测试:feedback 字段、多对象、markdown 代码块
Loading

v0.8.8

14 May 02:27
@OldRookieBiner OldRookieBiner

Choose a tag to compare

优化

审核/重写消息结构优化

审核和重写节点采用与章节正文相同的 system/user 双层消息结构,提升 LLM 对角色定位和写作规则的遵循度

  • _build_review_messages()_build_rewrite_messages() 改为同步函数,返回 {"system": ..., "user": ...} 结构
  • Review/Rewrite prompts 从 DB 加载后自动适配 dict 格式
  • 修复 review SSE 端点使用 _build_review_messages 的一致性问题
  • 修复 rewrite 节点 _build_rewrite_messages 异步调用问题

上下文传递优化

优化审核/重写节点传递前文上下文的方式

  • 新增 context_strategy.py 中的辅助函数用于构建前文上下文
  • 前端灵感面板新增小说长度选项(短篇/中篇/长篇/超长篇)

修复

写作面板修复

修复灵感面板相关 UI 问题

  • 修复 InspirationPanel 组件中的状态管理问题
  • 优化 inspiration.ts 中的数据处理逻辑
Loading

v0.8.4

10 May 13:28
@OldRookieBiner OldRookieBiner

Choose a tag to compare

重构

  • 设置页面全面重构 - 采用全屏布局 + 侧边栏导航,统一设计风格
    • 侧边栏可折叠,显示"智能体"、"模型配置"、"提示词"标签页
    • ModelConfigDialog 支持 fetchModels 获取所有提供商的模型列表
    • ModelConfigItem 显示单类型模型的标签(如 o1、o3-mini)
    • 模型配置响应为空时回退到 model_name 字段
    • ProviderInfo 类型新增 models_api 字段
    • AGENT_TABS 完成所有标签页配置
Loading

v0.8.0 - 全新工作台 & LangGraph 工作流全面升级

03 May 16:54
@OldRookieBiner OldRookieBiner

Choose a tag to compare

新功能

  • 全新工作台页面 - 统一的写作工作台,替代旧的分散页面
    • Tab 布局:灵感采集、大纲、人物设定、人物关系、章节大纲、写作、审核
    • 可折叠面板,最大化编辑空间
    • 全局 Header 导航,返回按钮和项目列表入口
    • 面板状态自动保存,Tab 切换不丢失数据
  • 人物设定模块 - 从大纲自动生成人物,支持手动创建和编辑
  • 人物关系模块 - AI 自动生成人物关系图谱,支持手动创建和编辑关系
  • LangGraph 工作流全面升级
    • 自动化大纲→人物→关系生成流程(无需逐步确认)
    • 大纲生成集成 SSE 进度对话框
    • LangGraph v1 检查点 API 迁移
  • TipTap 富文本编辑器 - 写作面板从纯文本升级为富文本编辑
  • 灵感采集界面重构 - 左右分栏布局,实时 Prompt 模板预览,快速模板,步骤引导
  • 首页重新设计 - 全局 Header、自适应网格、项目卡片新样式、创建项目对话框
  • 章节大纲面板升级 - 进度条、一键确认全部、状态图标、统计卡片
  • 写作面板优化 - 章节状态图标、键盘快捷键、骨架屏加载

优化

  • 代码质量大幅提升
    • 前端组件拆分:Settings、Writing、CharacterSetting 拆分为独立组件
    • 后端共享工具函数:提取节点通用逻辑,减少重复代码
    • 类型安全增强:窄化类型、移除不安全断言
    • React 性能优化:React.memo 和 useCallback 减少不必要渲染
  • UI 交互优化
    • 统一 Loading 状态组件
    • 统一 Toast 错误提示
    • 大纲面板分组卡片布局,手动 AI 分析触发
    • 审核面板简化,移除写作辅助标签
  • 大纲解析增强 - 支持多种 AI 输出格式,自动清理星号标记,解析失败时保留已有数据
  • SSE 流式处理增强 - 统一 chunk 格式、错误解析修复、重试前清理、空面板安全检查
  • 工作流稳定性 - 空大纲自动终止、随机 thread_id、清理端点、plot_points 有效性校验
  • API 重构 - 确认端点使用 PUT 语义,移除废弃的 info_collection_chat 端点

修复

  • 修复 SSE 事件对象解析错误(node_start/node_done/waiting)
  • 修复 LangGraph v1 检查点兼容性问题(async aget_tuple/aput)
  • 修复大纲进度对话框节点名称匹配问题
  • 修复关系生成后 SSE 继续推送的问题
  • 修复人物/关系节点缺少 waiting_for_confirmation 状态
  • 修复工作流恢复功能
  • 修复字数统计 HTML 标签计数问题(DOMPurify 净化)
  • 修复 InspirationPanel 模板初始化、闭包过期、草稿清理问题
  • 修复 TipTap 编辑器 key prop 缺失
  • 修复主题色进度条适配、响应式网格列数

测试

  • 新增页面集成测试:Login、Home、Settings
  • 新增组件测试:CharacterList、ChapterNav、ChapterEditor
  • 新增 Hook 测试:useCharacters、useSettings、useWriting
  • 新增后端单元测试:依赖注入工具、节点工具函数
  • 新增工作流测试:大纲失败中止、SSE 错误事件格式、plot_points 有效性、Prompt 加载回退
Loading

v0.2.0 - Web Application

09 Apr 08:01
@OldRookieBiner OldRookieBiner

Choose a tag to compare

NovelAgent v0.2.0 - Web Application

主要功能

  • 🎨 React 前端 - 使用 shadcn/ui 组件库
  • FastAPI 后端 - PostgreSQL 数据库
  • 🔐 用户认证 - Session Cookie 方式
  • 📁 项目管理 - 创建、查看、删除项目
  • 🤖 AI 大纲生成 - 使用 LangGraph 框架
  • 📝 章节工作流 - 章节大纲确认流程
  • AI 内容生成 - SSE 流式生成章节正文
  • 📄 富文本编辑 - TipTap 编辑器
  • 🔑 API Key 管理 - 加密存储
  • 📐 分屏布局 - 预览/编辑双模式

技术改进

  • DOMPurify XSS 防护
  • SSE 换行符 JSON 编码
  • TipTap 纯文本转 HTML

部署方式

docker compose up -d

访问 http://localhost:5173

Loading

AltStyle によって変換されたページ (->オリジナル) /