boardx / boardx/workspacex

debt(agent): agent 缺 URL 导入 + 三个互不相通的 agent 模型(执行/后台目录/chat 选择器)

Open
#787 2 comments 0 reactions 0 assignees View on GitHub
backlog
Dominant language
TypeScript
Stars
0
Forks
0
Avg merge
1h 7m
Merged PRs (30d)
969

Description

## 背景(仅登记,本 issue 不实现)

调查后台 agent/skill 导入能力时发现:

1. **agent 没有 URL 导入等价物**。skill 有 `importSkillFromUrl`(`apps/api/src/interface/controllers/skill-url-import.controller.ts`),agent 只有 starter-pack 导入(`agent-starter-import.controller.ts`),没有对应的链接导入路径。

2. **agent 存在三个互不相通的模型**(issue #595/#614 评论里前人已实测记录,本次复核仍成立):

| 模型 | 表 | 写入点 | 谁读 |
|---|---|---|---|
| 执行 | `agents`/`agent_versions` | 仅 starter-pack 导入(文件源)+ 测试直接建库 | `resolvePublished`(chat 执行链路) |
| 后台目录 | `capability_listings(kind='agent')` | `POST /capabilities/mutate`(admin UI "+"按钮) | `/admin/agent` 页面目录列表 |
| chat 选择器 | `org_agents` + `chat_thread_agents` | 全仓零生产写入点 | `getAgentPanel`(chat 面板下拉) |

三者 id 空间不对齐:从 admin UI "+" 创建的 agent 只进 `capability_listings`,`agents`/`agent_versions` 里没有 —— 能在目录页看见,但发消息会 `AgentNotPublishedError`。starter-pack 导入的 agent 反过来能执行,但在 chat 选择器下拉框里看不到。

3. `agent_versions` 也**没有文件树模型**(`instructions` 是单个 text blob,无 `agent_version_files` 表),若要给 agent 做"包导入 + 目录浏览编辑",需要先决定是否新建版本-文件表 —— 这是架构决策,不是实现细节。

对应的 skill 侧同类问题是 #598(模型 A/B 分裂),agent 这边形状类似但更宽(三个模型不是两个)。

## 为什么不在本轮实现

- 工作量超出"补齐链接导入入口"的量级,涉及至少三处写路径的协调
- 需要人类先裁决:agent 到底该收敛到哪个模型、是否要建 `agent_version_files`
- 按 AGENTS.md 契约签核纪律,新增/改动 agent 相关契约需要先过对应契约束的 design-signoff

## 建议下一步

由人类或 main coordinator 裁决收敛方向后,参照 #598 的处理方式单独立项。

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading apps/api/src/interface/controllers/skill-url-import.controller.ts and agent-starter-import.controller.ts, then trace resolvePublished, getAgentPanel, and POST /capabilities/mutate. Review the referenced issues and AGENTS.md design-signoff requirements; done means a human-approved convergence direction and a separate implementation issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, backend, database
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.