Merge remote-tracking branch 'upstream/main'
Some checks failed
Publish container images / Quality checks (push) Has been cancelled
Publish container images / Resolve build version (push) Has been cancelled
Publish container images / Build open-ai-canvas-backend (amd64) (push) Has been cancelled
Publish container images / Build open-ai-canvas-backend (arm64) (push) Has been cancelled
Publish container images / Build open-ai-canvas-web (multi) (push) Has been cancelled
Publish container images / Build open-ai-canvas-yingce-agent (multi) (push) Has been cancelled
Publish container images / Publish open-ai-canvas-backend manifest (push) Has been cancelled
Publish container images / Publish open-ai-canvas-web manifest (push) Has been cancelled
Publish container images / Publish open-ai-canvas-yingce-agent manifest (push) Has been cancelled
Publish container images / Publish release assets (push) Has been cancelled
Some checks failed
Publish container images / Quality checks (push) Has been cancelled
Publish container images / Resolve build version (push) Has been cancelled
Publish container images / Build open-ai-canvas-backend (amd64) (push) Has been cancelled
Publish container images / Build open-ai-canvas-backend (arm64) (push) Has been cancelled
Publish container images / Build open-ai-canvas-web (multi) (push) Has been cancelled
Publish container images / Build open-ai-canvas-yingce-agent (multi) (push) Has been cancelled
Publish container images / Publish open-ai-canvas-backend manifest (push) Has been cancelled
Publish container images / Publish open-ai-canvas-web manifest (push) Has been cancelled
Publish container images / Publish open-ai-canvas-yingce-agent manifest (push) Has been cancelled
Publish container images / Publish release assets (push) Has been cancelled
This commit is contained in:
28
AGENTS.md
28
AGENTS.md
@@ -18,6 +18,32 @@
|
||||
|
||||
## 2. 开始工作前
|
||||
|
||||
### Agent 本地开发
|
||||
|
||||
详细说明请参考 [docs/AGENT_LOCAL_DEVELOPMENT.md](docs/AGENT_LOCAL_DEVELOPMENT.md)。
|
||||
|
||||
**快速启动**:
|
||||
|
||||
```bash
|
||||
# 1. 安装 Agent runtime 依赖
|
||||
cd backend/agent-runtime/pi && npm install && cd ../../..
|
||||
|
||||
# 2. 启动后端(自动使用嵌入模式)
|
||||
cd backend
|
||||
CANVAS_BACKEND_DATA_DIR=../.local/project-workbench-debug go run ./cmd/server
|
||||
|
||||
# 3. 启动前端
|
||||
cd web && bun run dev
|
||||
```
|
||||
|
||||
本地开发不设置 `YINGCE_AGENT_URL` 时,后端在本进程内启动 Node,无需单独启动 yingce-agent。
|
||||
|
||||
生产 Compose 设置 `YINGCE_AGENT_URL` 后只调用 yingce-agent 容器。远程服务失败时不要回退到内嵌进程,否则同一步可能执行两次。不要删除 `yingce-agent/` 或把它从发布流程里撤掉。
|
||||
|
||||
---
|
||||
|
||||
### 其他本地开发说明
|
||||
|
||||
1. 先读取任务涉及的入口、调用方、配置、锁文件和相邻测试;先理解现状,再决定是否抽象或重构。
|
||||
2. 使用 `rg` / `rg --files` 搜索,优先并行读取相关文件。不要为了“统一风格”改动无关模块、依赖、格式或用户已有修改。
|
||||
3. 先形成目标边界:页面负责什么、service 负责什么、handler/service/repository 如何分层、数据和错误如何流动。新增 helper 必须消除真实重复或隔离明确协议,不能只透传参数。
|
||||
@@ -41,7 +67,7 @@
|
||||
|
||||
- `backend/internal/handler/`:HTTP 入参、鉴权上下文、调用 service、返回统一响应;不放业务判断和数据库查询。
|
||||
- `backend/internal/service/`:稳定导入面。只再导出 `internal/app` 的类型、常量和包级函数(`aliases_*.go`)。handler/cmd 继续 import 本包。
|
||||
- `backend/internal/app/`:HTTP 组合根和尚未拆出的业务实现。校验、权限、跨域编排从这里进入。画布生成调度仍主要在 `provider.go`;文本 / 图片 / 视频遗留 / 音频 / HTTP / 声明式协议分别在 `provider_text.go`、`provider_image.go`、`provider_video.go`、`provider_audio.go`、`provider_http_client.go`、`provider_protocol.go`。技能库在 `internal/skills`,提示词与风格在 `internal/prompts`,登录注册在 `internal/auth`,画布分享在 `internal/canvas`,资源引用解析在 `internal/assets`,运行时策略/限流/worker 在 `internal/platform`,错误码与通用工具在 `internal/kernel`,出站 SSRF 在 `internal/outbound`。域包不得 import `internal/service` 或 `internal/app`。
|
||||
- `backend/internal/app/`:HTTP 组合根和尚未拆出的业务实现。校验、权限、跨域编排从这里进入。画布生成调度仍主要在 `provider.go`;文本 / 图片 / 视频遗留 / 音频 / HTTP / 声明式协议分别在 `provider_text.go`、`provider_image.go`、`provider_video.go`、`provider_audio.go`、`provider_http_client.go`、`provider_protocol.go`。技能库在 `internal/skills`,提示词与风格在 `internal/prompts`,登录注册在 `internal/auth`,画布分享在 `internal/canvas`,资源引用解析在 `internal/assets`,运行时策略/限流/worker 在 `internal/platform`,错误码与通用工具在 `internal/kernel`,出站 SSRF 在 `internal/outbound`,Agent 上下文检查点契约在 `internal/agentcontext`。域包不得 import `internal/service` 或 `internal/app`。
|
||||
- `backend/internal/repository/`:GORM 查询和持久化;不承载业务策略。
|
||||
- `backend/internal/model/`:结构、枚举和简单模型方法;不调用外部服务。
|
||||
- `backend/internal/provider/`:模型供应商能力和协议实现。
|
||||
|
||||
Reference in New Issue
Block a user