muse-agent-example/AGENTS.md

108 lines
11 KiB
Markdown
Raw 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.

# AGENTS.md —— agent-example 项目工作入口
> 适用范围:本文件只约束 `agent-example/`。用户及上级提供的通用工程规则继续生效;本仓所需的批次、验证与交付约定见[计划与提交](.agent/rules/计划与提交.md),不依赖检出目录外的规则文件。
> **技能发现入口(必读)**:读完本文件后必须读 [`.agent/skills/目录.md`](.agent/skills/目录.md)(技能目录);需要某项能力时,按目录的“相对地址”读取对应 `SKILL.md`。发现只靠 AGENTS.md → 技能目录 → SKILL.md 的渐进披露,不依赖任何宿主的技能自动发现。
> **作者创作入口(按需)**:作者用自然中文提出定故事、排故事、塑人物、续写、修改或诊断请求时,先读 [`.agent/作者/指令.md`](.agent/作者/指令.md),再只打开命中的一个场景文件;作者层负责路由,不替代正式技能、角色合同或用户确认。
---
## 1. 项目定位与物理事实
`agent-example` 的目标定位是物理位于 `oh-my-muse` 内、拥有独立 `.git/` 的单用户缩小版 Muse,以 PostgreSQL 为正式内容权威。
- **正式内容权威**:PostgreSQL(连接目标由当前运行配置明确选择,见[运行手册](docs/运行手册.md))是系统正式内容的唯一权威。作品、章、正文、实体、方法、用户决策及运行回执在库里。raw暂存文件受租约管理,归档后以PG归档及回执为准;私人探索文件不作为正式内容。判断“系统里有没有这个东西”,以库里能不能查到为准;严禁把库外临时文件或快照当作正式内容。
- **运行态账本**:任务、步骤、调用、预算、事件与回执由 PostgreSQL 维护;旧 SQLite 账本只属于历史实现。对象归属见[存储与对象关系](docs/系统架构/新版设计/数据模型/存储与对象关系.md)。
- **代码与配置权威**:Git 维护代码、技能、角色提示词、内置结构种子、文档和 DDL。`src/muse/元数据/内置结构/` 的 YAML 是发布输入;运行结构以 PostgreSQL 已发布版本为准。Git 不承担创作数据备份。
- **能力边界**:由主会话派发角色智能体、技能和确定性工具协作完成创作与治理;不实现管理员、多用户、租户、市场、计费或资产交易。
---
## 2. 目录导航
```text
agent-example/
├── .git/ # 独立 Git 仓元数据
├── src/muse/ # 模块化单体(装配、共享基础与全部业务域)
├── tests/ # 自动化测试(单元/契约/集成/架构/迁移/端到端 + 夹具)
├── 工具/ # 工程生成与检查入口(资源打包、接口生成、索引检查)
├── 配置/ # 无凭据配置模板
├── web/ # 前端:React/TS 用户工作台
├── 数据库/ # 数据库迁移脚本
├── 部署/ # 部署模板与进程配置
├── upstream/ # 固定版本的上游协议资料
├── .github/ # CI 工作流
├── data/ # 运行文件(不跟踪,不作为源码)
├── .agent/ # 智能体能力中枢(作者入口、角色提示词、角色合同、方法技能、规则、约束与规范)
├── docs/ # 设计 SSOT、系统架构、运行手册与历史执行记录
├── .venv/ # 仓内解释器(uv 管理)
├── pyproject.toml # 应用包、命令、依赖与检查配置
├── Makefile # 安装、生成、检查、测试与构建入口
├── CLAUDE.md # Claude Code 兼容入口,只引用 AGENTS.md
└── README.md # 安装、启动与日常使用入口
```
---
## 3. SoT 与事实源导航
SoT 按主题分域,不做跨主题的全局排序。可执行脚本与书面合同不一致时视为缺陷,不得自行拼接两套口径。
| 类别 | 载体 / 路径 | 权威职责 |
|---|---|---|
| 总体设计 | [总体架构](docs/系统架构/新版设计/总体架构.md) | 本仓模块、对象归属、依赖和运行边界;外部历史设计不充当当前实现。 |
| 新版重写目标 | [docs/系统架构/新版设计/目录.md](docs/系统架构/新版设计/目录.md) | 新版主体完整目标设计、元数据、文件职责及研究依据;不据此宣称现有实现已完成。 |
| 领域 SoT | [阅读指南](docs/系统架构/新版设计/阅读指南.md) | 按主题定位现行业务领域、数据权威与协作合同。 |
| 边界合同 | [总体架构](docs/系统架构/新版设计/总体架构.md) | 组件职责边界、跨域公开接口与约束归属。 |
| 角色合同 | [`.agent/角色/角色合同.md`](.agent/角色/角色合同.md) | 5 个角色(写手/规划/抽取/检测/裁判)的稳定输入边界、模型策略、工具权限与派发合同。 |
| 结构契约 | [内置结构](src/muse/元数据/内置结构/) | 24 型的内置种子与发布输入;公共字段不是独立类型。运行实例遵守库内已发布结构版本。 |
| 创作导读 | [关键旅程](docs/系统架构/新版设计/调用链路/关键旅程.md) | 创作流转、门禁、人机边界及正式内容的确认路径。 |
| 技能目录 | [技能目录](.agent/skills/目录.md) | 方法和操作入口;以各组实际 SKILL.md 及目录发现,不维护另一份虚构清单。 |
| 创作链条 | [流程登记](src/muse/编排/流程登记.py)、[流程版本](src/muse/编排/流程版本.py)、[槽位约束](src/muse/编排/槽位约束.py) | 当前流程模板、冻结版本和角色槽位约束;旧 muse/lifecycle/flow/chains 已退出。 |
| 红线约束 | [作者主权](.agent/约束/作者主权.md)、[约束目录](.agent/约束/目录.md) | 数据权威、作者确认、读取范围与外部调用边界。 |
| 执行流程 | [模块依赖](.agent/rules/模块依赖.md)、[计划与提交](.agent/rules/计划与提交.md) | 模块边界、任务依赖、分层验证和批次收尾。 |
| 子代理交付 | [`.agent/rules/子代理交付.md`](.agent/rules/子代理交付.md) | 派发子代理的交付物形状:三要素交付、证据指针、仅阻断级汇报、最小必读。 |
| 审查标准 | [审查标准](.agent/规范/审查标准.md) | 由专项检查附录确认的提示词四问、技能七问和严重度;不冒称恢复缺失的旧 D8 原文。 |
| 工程规范 | [规范目录](.agent/规范/目录.md)、[审校与修订](.agent/rules/审校与修订.md) | 命名、术语、中文正文及受控修订的现行规范。 |
| 任务与沉淀 | [`docs/`](docs) | 单次任务探索、计划、评测资料与历史执行证据;稳定结论回填 SoT。 |
---
## 4. 工作协议(硬约束)
1. **读后动手与渐进发现**:复杂任务先读对应 SoT;涉及角色时读角色合同。技能发现遵守本文件开头的唯一入口,按当前任务展开,不预载无关资料。
2. **机械验证优先与完成=验证**:工程统一使用仓内解释器 `.venv`(uv 管理);日常快速循环使用 `make 快检 范围=<受影响路径>`(秒级,开发期);离线全套 `make 测试`(~70秒,鼓励常态化运行防回归);仅改动存储/迁移/触发器时跑对应模块的局部库测试。Plan 整体收尾前通过 `make 验收数据库` 执行全量闭环验收;浏览器层走 `make 浏览器测试`。无机械验证证据严禁声称“完成/修复/通过”。
3. **数据权威与先审后入**:数据库为唯一正式权威,严禁裸连操作;正文、规划与知识抽取默认生成 Shadow 候选,经用户明确确认后方可写入 Canonical 正典事实。
4. **模型治理与受控探索**:模型调用遵守[预算管理](src/muse/任务运行/预算管理.py)的固定日界窗口(默认 Asia/Shanghai,每日00/05/10/15/20开始,末窗20至24为4小时)与受控治理链;角色允许模型与策略版本以[角色策略](配置/角色策略.yaml)为准,并遵守[角色合同](.agent/角色/角色合同.md)(写手/规划固定顶级推理模型,裁判使用独立精确白名单);确定性逻辑、门禁与报告组装由脚本完成,严禁调用模型;智能体探索仅限圈定只读工具并留痕。
5. **会话交互与汇报纪律**:全程使用简体中文白话,坚决去除 AI 味(直陈事实、动作与后果,禁止清嗓子套话与空转缓冲词);需要用户决策时,必须交代清楚前因后果及各选项对下游的影响。
6. **本地沙盒自治与关键授权**:在特性开发分支上,鼓励小步快跑(commit early and often),允许频繁在本地执行 `git commit` 保存进度检查点;仅在向远程仓库 `git push`、向 `main` 主干分支发起合并/PR 或执行破坏性操作前才需向用户明确申请授权。按[计划与提交](.agent/rules/计划与提交.md)推进,Plan 内部敏捷小增量交付,Plan 最终执行全量验收;代码审查基于已提交的 Git Commit 进行;框架与创作内容分开审查、分开提交。
7. **计划边界与敏捷节奏**:以可独立验收的能力拆分任务,明确边界、依赖与验证方式;Plan 内部敏捷小增量交付,前置满足且有收益的独立任务分工并发,依赖任务按已验证能力衔接;Plan 终验执行全量闭环验收。具体编排、隔离和批次收尾以[计划与提交](.agent/rules/计划与提交.md)为准。
---
## 5. 交付与经验沉淀
- 创作方法和规则沿[审校修订](docs/系统架构/新版设计/模块设计/B06-审校修订.md)、[作者经验](docs/系统架构/新版设计/模块设计/B07-作者经验.md)的候选、评测与批准链承接,不自动写入正式内容或沿用旧豁免。
- 工程交付按[计划与提交](.agent/rules/计划与提交.md)同步所属权威合同,按[文档与资源生成](.agent/rules/文档与资源生成.md)维护受影响索引并验证,清理被替代实现、重复路径、旧配置与无用途测试;有兼容、迁移、回滚或追溯用途的内容保留并注明用途。
---
<!-- my-skills-cli:begin -->
## 项目 harness
先读本表,再打开对应目录的 `目录.md`,按其中清单读取具体文件。
不要按宿主框架另建一套规则,也不依赖宿主的 skill 自动发现。
| 类别 | 读 | 说明 |
|------|-----|------|
| 项目设计与实施 | `docs/目录.md` | 架构、方案、实施计划/Runbook、模块概要与回顾(人机共读) |
| 团队规则与技能 | `.agent/目录.md` | 团队长期生效的硬规则、约束、代码规范与专属 Skill(<名>/SKILL.md 格式) |
| 个人配置 | `.agents.local/AGENTS.md` | 存在则先读:个人指令集、skill、草稿、便签(默认不提交) |
### 维护纪律
代码变更以现行架构、领域模型、ADR、规范与测试为准,保持可读、简单、局部,不凭空叠加抽象;清理和沉淀按本文件§5执行。
纳入版本控制:`AGENTS.md`、`docs/`、`.agent/`;实际暂存和提交仍须明确授权。
不提交:`.agents.local/`、`.claude/`、`.codex/`、`.pi/`、`.opencode/`、`.cursor/`。
<!-- my-skills-cli:end -->