- 将默认LLM模型从gemini-2.0-flash升级为gemini-3-flash-preview - 将博主人设从"性感福利主播"更改为"二次元coser" - 优化LLM生成SD提示词的指南,新增中国审美人物描述规则 - 为各SD模型添加颜值核心词、示范prompt和禁止使用的关键词 - 新增三维人物描述法(眼睛/肤色/气质)和专属光线词指导 📦 build(openspec): 归档旧规范并创建新规范 - 将improve-maintainability规范归档至2026-02-25目录 - 新增2026-02-26-improve-ui-layout规范,包含UI布局优化设计 - 新增2026-02-26-optimize-image-generation规范,包含图片生成优化设计 - 在根目录openspec/specs下新增图片质量、后处理、中国审美和LLM提示词规范 ♻️ refactor(sd_service): 优化SD模型配置和图片后处理 - 为各SD模型添加中国审美特征词和欧美面孔排除词 - 新增高画质预设档,SDXL模型启用Hires Fix参数 - 将后处理拆分为beauty_enhance和anti_detect_postprocess两个独立函数 - 新增美化增强功能,支持通过enhance_level参数控制强度 ♻️ refactor(services): 更新内容生成服务以支持美化增强 - 在generate_images函数中新增enhance_level参数 - 将美化强度参数传递至SDService.txt2img调用 ♻️ refactor(ui): 优化UI布局和添加美化强度控件 - 注入自定义CSS主题层,优化字体、按钮和卡片样式 - 将全局设置迁移至独立的"⚙️ 配置"Tab,优化Tab顺序 - 在内容创作Tab的高级设置中添加美化强度滑块控件 - 优化自动运营Tab布局,改为2列卡片网格展示
39 lines
2.7 KiB
Markdown
39 lines
2.7 KiB
Markdown
## Why
|
||
|
||
`main.py` 目前共 4359 行,将连接管理、内容生成、自动化运营、调度、队列、UI 等 10+ 个业务域全部混入单一文件,导致阅读困难、修改风险高、模块间依赖不清晰。随着功能继续增长,维护成本将持续上升。现在是在文件进一步膨胀前完成结构化拆分的最佳时机。
|
||
|
||
## What Changes
|
||
|
||
- 按业务域将 `main.py` 中的函数提取为独立的 `services/` 模块
|
||
- 将剩余 UI Tab 提取为独立的 `ui/tab_*.py` 模块(`tab_create.py` 已完成,需继续完成其余 Tab)
|
||
- `main.py` 保留为**入口层**:仅负责组装 Gradio UI、注册事件、启动应用
|
||
- 所有模块保持向后兼容,不改变对外行为
|
||
|
||
## Capabilities
|
||
|
||
### New Capabilities
|
||
|
||
- `services-connection`: LLM / SD / MCP 连接管理(`connect_llm`、`connect_sd`、`check_mcp_status`、登录相关)
|
||
- `services-content`: 内容生成(`generate_copy`、`generate_images`、`publish_to_xhs`、`one_click_export`、face image 上传)
|
||
- `services-hotspot`: 热点探测(`search_hotspots`、`analyze_and_suggest`、`generate_from_hotspot`)
|
||
- `services-engagement`: 互动自动化(`auto_comment_once`、`auto_like_once`、`auto_favorite_once`、`auto_reply_once` 及对应 `_with_log` 包装)
|
||
- `services-rate-limiter`: 频率控制与每日限额(`_reset_daily_stats_if_needed`、`_check_daily_limit`、`_is_in_cooldown` 等)
|
||
- `services-profile`: 用户主页解析(`fetch_my_profile`、`_parse_profile_json`、`_parse_count`)
|
||
- `services-persona`: 人设管理(`_match_persona_pools`、`get_persona_topics`、`get_persona_keywords`、`on_persona_changed`)
|
||
- `services-scheduler`: 自动调度器(`_scheduler_loop`、`start_scheduler`、`stop_scheduler`、`get_scheduler_status`)
|
||
- `services-queue`: 内容排期队列(`generate_to_queue`、`queue_*` 系列函数、`_queue_publish_callback`)
|
||
- `services-autostart`: 开机自启管理(`enable_autostart`、`disable_autostart`、`toggle_autostart` 等)
|
||
- `ui-tabs-split`: 将其余 Gradio Tab(热点、互动、我的主页、自动运营、队列、数据分析、设置)提取为 `ui/tab_*.py`
|
||
|
||
### Modified Capabilities
|
||
|
||
(无需求层面变更,仅为实现重构)
|
||
|
||
## Impact
|
||
|
||
- **主要受影响文件**:`main.py`(从 4359 行缩减至 ~300 行入口层)
|
||
- **新增目录**:`services/`(10 个模块)、`ui/`(8 个 Tab 模块,`tab_create.py` 已存在)
|
||
- **依赖关系**:`services/` 模块之间通过函数参数传递依赖,避免循环导入;`main.py` 统一导入并组装
|
||
- **无 API 变更**:所有函数签名保持不变,Gradio 回调绑定不受影响
|
||
- **运行时影响**:零,重构不改变业务逻辑
|