Imported from BaSui01/AI-Novel-Agent-Studio (
AGENTS.md). Install upstream withnpx skills add BaSui01/AI-Novel-Agent-Studio. Copyright stays with the author.
Trellis Instructions
These instructions are for AI assistants working in this project.
This project is managed by Trellis. The working knowledge you need lives under .trellis/:
.trellis/workflow.md— development phases, when to create tasks, skill routing.trellis/spec/— package- and layer-scoped coding guidelines (read before writing code in a given layer).trellis/workspace/— per-developer journals and session traces.trellis/tasks/— active and archived tasks (PRDs, research, jsonl context)
If a Trellis command is available on your platform (e.g. /trellis:finish-work, /trellis:continue), prefer it over manual steps. Not every platform exposes every command.
If you're using Codex or another agent-capable tool, additional project-scoped helpers may live in:
.agents/skills/— reusable Trellis skills.codex/agents/— optional custom subagents
Managed by Trellis. Edits outside this block are preserved; edits inside may be overwritten by a future trellis update.
Snow CLI × Trellis(项目侧说明,非托管块)
本段写在
<!-- TRELLIS:END -->之外,不会被trellis update覆盖。 全局人格见~/.snow/ROLE-*.md(system 侧);本文件AGENTS.md是项目工作区规则(contextInject 注入)。
身份分层
| 文件 | 位置 | 层级 | 用途 |
|---|---|---|---|
| ROLE | ~/.snow/ROLE-*.md |
system / 全局 | Snow 人格与硬规则,与 Trellis 无关 |
| AGENTS.md | 项目根 | 项目 / contextInject | 工作区规则;Trellis 只托管 START…END 块 |
.snow/SNOW.md |
项目 .snow/ |
项目文档 | class-1 宿主行为、工具表、会话身份 |
本仓库 Snow 适配清单(现代路径,无 legacy JSON)
- Agents:
.snow/agents/*.md自动发现(trellis-implement/trellis-check/trellis-research) - Skills:
.snow/skills/trellis-*/SKILL.md - Hooks:
.snow/hooks/→onSessionStart/onUserMessage/beforeSubAgentStart(class-1 上下文注入,脚本write-trellis-context.py;onStop已随 0.6.11 移除) - Commands:
.snow/commands/trellis-*.json(/trellis-continue、/trellis-commit、/trellis-finish-work、/trellis-finish…) - 开关:
.snow/settings.json中contextInject.enabled: true - 会话自动提交:
.trellis/config.yaml→session_auto_commit: false(.trellis/ .snow/ .agent/ .agents/ .codex/已整体 gitignore 本地化,脚本不触碰 git;journal / archive 仍写磁盘) - 禁止:不要再使用 / 重建
sub-agents.trellis.json类 legacy merge 文件
主会话派发约定
派发 implement/check/research 时,prompt 第一行写:
Active task: <path from task.py current>
implement/check 子 agent 禁止 git commit / push / merge。
提交分层(Snow)
- 产品代码:主会话在质量门通过后自动按逻辑分批提交(
product_auto_commit: true,不 push);仅提交明确属于当前任务的文件,归属不明时停止确认 - 任务归档 / journal:产品提交成功后自动执行
/trellis-finish-work(task_auto_archive: true);session_auto_commit: false下脚本仅写磁盘归档与 journal,不执行 git stage/commit - 噪音路径(log / pycache / workspace 临时文件)已 gitignore,勿 stage
调试注入:SNOW_DEBUG_HOOKS=1,查看 .snow/log/hooks-inject.txt 与 .snow/log/trellis-context.txt。
Context7 文档查询规则
- 涉及第三方库或 API 的文档、代码生成、安装、升级、配置与兼容性问题时,优先使用全局
ctx7CLI 获取最新且版本匹配的官方资料,不依赖模型记忆猜测接口。 - 先运行
ctx7 library <name> "<具体问题>"解析 Context7 library ID;再运行ctx7 docs <libraryId> "<具体问题>"查询文档。已知准确 library ID 时可直接执行第二步。 - 查询中应包含项目实际使用的版本、运行环境和目标行为;实现前以返回的签名、示例和迁移说明为准,并与仓库锁文件及现有代码交叉验证。
ctx7未登录、限流、无匹配库或执行失败时,明确说明失败原因,随后回退到该库的官方文档或仓库源码;不得静默改用非官方教程作为权威依据。- 不自动运行
ctx7 setup、ctx7 login,也不写入或回显 Context7 API Key,除非用户明确授权。
AI Novel Agent Studio — 项目开发规则 (Workspace Rules)
本文件适用于当前工作区的所有 Agent 开发任务。
1. 核心数据模型与排序规范 (Data Models & Sorting)
- 双精度插队排序: 凡使用
(order_before + order_after) / 2.0进行无损插队排序的字段 (sort_order),Rust 结构体中必须声明为f64,SQLite DDL 中必须声明为REAL NOT NULL。严禁在插队排序场景中误用i32/INTEGER。 - Serde 结构体映射: 所有 Rust 核心数据结构与枚举必须 derive
Debug, Clone, Serialize, Deserialize,并配置#[serde(rename_all = "camelCase")]与#[serde(default)]。
2. Agent 提示词设计规范 (Agent Prompting Standards)
- 标准 Markdown 结构化输出: 所有 Agent 提示词模板 (
prompts/*.md) 必须使用标准 Markdown 结构化约束(标题、列表中标注具体属性),既保障 LLM 输出控制的高成功率,又保障 UI 端呈现对创作者直观可读。 - 动态加载与内存降级: Agent Prompt 文件采用磁盘动态加载(支持热更新)+ Rust
include_str!编译期嵌入双轨机制。当磁盘文件不存在时,必须静默降级使用默认嵌入模板。
3. 前后端 IPC 通信与异常追踪 (IPC & Tracing)
- TraceID 自动注入: 前端
invokeCmd必须使用原生crypto.randomUUID()自动分配/继承外部 IPC 字段traceId;Rust/DB 内部可保留trace_id,捕获 IPC 异常时须进行安全类型检查。 - CommandError 全局契约: 所有抛向 UI 层的错误必须统一包装为包含
code,message,category(fatal/error/warning/info),details,traceId的CommandError结构体。
4. 语言与沟通约束 (Language & Communication Constraints)
- 必须使用中文沟通: AI Agent 与用户的所有交流、回复及日常沟通必须使用中文(简体中文),除非用户明确要求使用其他语言。
5. 项目文档体系引用入口 (Documentation Index)
AI Agent 在处理需求、设计、开发、测试任务时,必须先查阅对应文档,避免凭空推测。
5.1 需求与产品文档(PRD + 路线图 + 市场)
| 文档 | 路径 | 用途 |
|---|---|---|
| PRD | docs/PRD.md |
v2.0 产品需求:功能矩阵、User Story & AC、NFR、KPI |
| ROADMAP | docs/ROADMAP.md |
v0.5 → v2.0 里程碑、交付物清单、Quality Gates、风险矩阵 |
| 市场分析与竞品对标 | docs/市场分析与竞品对标.md |
市场规模、竞品矩阵、SWOT、定价、GTM、v2.0 OKR |
| 用户需求与故事地图 | docs/用户需求深度分析与用户故事地图.md |
用户画像、User Story Map、MoSCoW 优先级、情绪曲线 |
5.2 架构与设计文档(系统 + Agent + 数据 + 各子系统)
| 文档 | 路径 | 用途 |
|---|---|---|
| 系统架构设计 | docs/architecture/系统架构设计.md |
总体架构、分层依赖、三层存储、技术选型、ADR |
| 数据模型设计 | docs/architecture/数据模型设计.md |
Rust struct / TS interface / SQLite Schema / FTS5 |
| Agent 系统设计 | docs/architecture/Agent系统设计.md |
Agent Trait 契约、7-Agent 流水线、StyleGuard |
| Agentic 调用链与闸门 | docs/architecture/Agentic调用链与闸门时序.md |
主对话/审批/协作时序、G0–G8 闸门代码锚点 |
| Agentic 侧边栏 UI | docs/architecture/Agentic侧边栏UI架构设计.md |
会话树模型、子代理挂起/观察、流式折叠(设计稿) |
| Agent 自主等级方案 | docs/architecture/Agent自主等级开关方案.md |
strict/balanced/autonomous 产品与技术方案(待实现) |
| Gateway 网关设计 | docs/architecture/Gateway网关与多模型路由设计.md |
多模型接入、熔断器、故障转移、SSE 流 |
| RAG 检索引擎设计 | docs/architecture/RAG检索引擎设计.md |
LanceDB 向量 + FTS5 混合检索、Chunking、RRF |
| 全链路异常处理 | docs/architecture/全链路异常处理与容错架构设计.md |
thiserror 异常树、CommandError IPC、防白屏 |
| 全链路错误追踪 | docs/architecture/全链路错误追踪与代码复用设计.md |
TraceID 全链、From 转换、ClientAdapter Trait |
| i18n 架构 | docs/architecture/国际化与多语言(i18n)架构设计.md |
react-i18next、错误转译、语言 Prompt |
| 约束文档 | docs/architecture/约束文档.md |
技术栈/架构/数据/API/安全/性能/编码约束 |
5.3 v2.0 架构文档(规划中,代码待实现)
| 文档 | 路径 | 用途 |
|---|---|---|
| AI 安全与合规架构 | docs/architecture/AI安全管理与内容合规架构设计.md |
四层安全防护、NSFW 检测、Prompt 注入防御、API Key 加密 |
| 插件与扩展系统架构 | docs/architecture/插件与扩展系统架构设计.md |
Agent/Tool/Prompt/Exporter 插件接口、沙箱、Marketplace |
| 性能优化与可观测性 | docs/architecture/性能优化与可观测性架构设计.md |
SLO、Metrics/Tracing/Logging、并行流水线、缓存策略 |
5.4 UI/UX 设计文档
| 文档 | 路径 | 用途 |
|---|---|---|
| UI 设计系统 | docs/UI设计系统与品牌风格指南.md |
品牌色板、排版、组件规范、图标系统 |
| 信息架构与页面流程 | docs/用户界面信息架构与页面流程设计.md |
站点地图、任务流、页面设计、路由 |
| 交互设计与体验规范 | docs/交互设计与用户体验规范.md |
交互原则、微交互、审稿标注、Onboarding、日报 |
5.5 接口与通信契约
| 文档 | 路径 | 用途 |
|---|---|---|
| Tauri IPC 契约 | docs/api/Tauri-IPC接口契约.md |
220+ Commands、Payload、流式 Event |
| OpenAPI 规范 | docs/api/OpenAPI规范.md |
Gateway REST API、SSE 规范 |
5.6 工程与质量文档
| 文档 | 路径 | 用途 |
|---|---|---|
| 开发者指南 | docs/DEVELOPMENT.md |
环境搭建、Git 规范、类型同步、CI/CD、发布清单 |
| 测试策略与质量保障 | docs/quality/测试策略与质量保障.md |
测试金字塔、E2E、Prompt 评估、性能基准 |
| 安全与隐私白皮书 | docs/quality/安全与隐私保护白皮书.md |
本地数据主权、Key 加密、脱敏 |
| 发布检查清单 | docs/RELEASE_CHECKLIST.md |
逐项发布检查:代码/类型/冒烟/安全/性能/文档 |
| 用户操作手册 | docs/USER_GUIDE.md |
写手极速上手 + v2.0 新功能操作指南 |
5.7 Agent 开发时的文档查阅顺序
需求分析 → 设计编码 → 测试验证 → 发布上线
│ │ │ │
▼ ▼ ▼ ▼
PRD.md 系统架构 测试策略 DEVELOPMENT.md
ROADMAP.md 数据模型 E2E 场景 RELEASE_CHECKLIST
用户故事 Agent系统 性能基准
市场分析 Gateway
RAG引擎
安全合规 (v2.0)