前端 x AI:技术深度、协作能力与 Harness 基座生态调研
前端和Harness的生态
前端 x AI:技术深度、协作能力与 Harness 基座生态调研
前端和Harness的生态
聚焦三大命题:
- 前端如何实现技术深度与 AI 协作能力结合
- Claude Code / OpenCode / Hermes 三大基座趋势与走向
- 前端在 Harness 基座中的配合策略
2023: Prompt Engineering → "对 AI 说什么"
2025: Context Engineering → "让 AI 知道什么"
2026: Harness Engineering → "给 AI 什么样的运行环境"
核心转变:
AI 协作深度
▲
│
Ⅱ. Agent 编排者 │ Ⅰ. AI 全栈架构师
- 多 Agent 协调 │ - AI SDK 设计
- Skill/工具开发 │ - 流式 UI 架构
- Prompt 工程 │ - 评估体系搭建
- Harness 配置 │ - Harness 平台建设
─────────────────────────────────────► 技术深度
Ⅲ. AI 使用者 │ Ⅳ. AI 工具链开发者
- 日常 AI 辅助编码 │ - Rust 工具链构建
- Cursor/Copilot │ - MCP Server 开发
- 基础 Prompt │ - 编译/打包基础设施
│
// 前端不再只是渲染静态数据,而是处理 AI 实时生成的内容流
interface StreamingUIState {
status: 'thinking' | 'streaming' | 'tool-calling' | 'done' | 'error'
chunks: string[]
toolCalls: ToolCall[]
artifacts: Artifact[] // 代码块、图表、组件等可交互产物
}
核心挑战:
useOptimistic + AI:在 AI 响应到达前,前端需展示乐观状态不再为人类点击设计界面,而是为 AI Agent 设计可操作的应用层:
// Agent-accessible 应用契约
interface AgentAccessibleApp {
commands: Command[] // Agent 可调用的操作
navigationGraph: RouteMap // Agent 可路由的页面图
stateSchema: ZodSchema // Agent 可理解的应用状态
actionFeedback: FeedbackChannel // Agent 操作后的反馈通道
}
前端工程师搭建介于 UI 与 LLM 之间的服务层:
┌── 前端 UI ──────────────────────────────────┐
│ Chat / Admin / SaaS / Tooling │
└──────────────┬───────────────────────────────┘
▼
┌── AI Service Layer(前端负责)─────────────────┐
│ Scene Router | Prompt Builder | Tool Registry │
│ Response Parser | Retry Logic | Cache │
└──────────────┬───────────────────────────────┘
▼
┌── LLM APIs + Tool System + Eval System ──────┐
└──────────────┬───────────────────────────────┘
▼
┌── Observability + Regression Harness ────────┐
前端的"测试驱动开发"在 AI 语境下升级为评估驱动:
| 传统 TDD | AI Eval-Driven |
|---|---|
| 单元测试 | 场景回归基准 |
| 快照测试 | 视觉/语义相似度评价 |
| E2E 测试 | Agent 任务完成率 |
| 覆盖率报告 | Judge Model 评分 |
前端工程师为 Agent 构建可调用的工具:
// 前端同学构建的 MCP 工具示例规范
interface MCPTool {
name: string
description: string // Agent 理解工具用途的关键
inputSchema: ZodSchema // 稳定、可测试的类型契约
execute(input: unknown): Promise<ToolResult>
// ToolResult 必须结构化,便于 Agent 消费
}
设计原则:工具先行,而非提示词堆叠——用确定性的工具约束模型行为,而非冗长的提示词。
| 维度 | Claude Code (Anthropic) | OpenCode (SST) | Hermes Agent (Nous Research) |
|---|---|---|---|
| 发布时间 | 2025年2月(GA) | 2025年中 | 2026年2月 |
| 开源协议 | 闭源(SDK Apache 2.0) | MIT 开源 | MIT 开源 |
| 核心技术栈 | TypeScript (~512K行) | Go + HTTP API | Python + Rust (hermes-lite) |
| 模型支持 | 仅 Claude(Opus/Sonnet) | 75+ 提供商 + Ollama 本地 | 20+ 提供商 + 本地模型 |
| GitHub Stars | ~80K+ | 95K+ | 100K+ |
| SWE-bench | 80.9%(最高) | 依赖底层模型 | 未独立评测 |
| 定价 | $20-200/月 | 免费工具 + API 费 | 免费开源 |
| ARPU/商业模式 | ~$2.5B ARR | 开源社区驱动 | 开源社区 + 阿里云集成 |
| 终端界面 | 原生 TUI | Go TUI | Python TUI + Rust TUI |
| 子 Agent | ✅ Agent Teams(已发布) | ❌ 单 Agent 循环 | ✅ 并行子 Agent 委派 |
| 记忆系统 | 基于文件的持久记忆 | 会话上下文 | 三层记忆(会话/持久/技能)+ FTS5 |
| 多平台网关 | ❌ | ❌ | ✅(Telegram/Discord/Slack/微信等) |
| 定时任务 | ❌(外部 cron 支持) | ❌ | ✅ 内置 cron + 自然语言配置 |
| 学习/自改进 | Skill 系统 | 无 | ✅ 任务后自动提炼 Skill |
graph TD
A[2025: 单 Agent 对话] --> B[2026 上: Agent Teams / 子 Agent 委派]
B --> C[2026 下: 多 Agent 异步协作 + 共享记忆]
C --> D[2027: Agent Swarms / 专业化分工网络]
| 记忆层级 | Claude Code | Hermes | OpenCode |
|---|---|---|---|
| L1: 会话记忆 | 上下文窗口 | 上下文窗口 | 上下文窗口 |
| L2: 持久记忆 | 文件系统 /memory/ | SQLite + FTS5 | 文件系统 |
| L3: 技能记忆 | Skill 目录 | 自动提炼 + 全文检索 | ❌ |
| L4: 跨会话蒸馏 | 计划中(KAIROS) | 内置 | ❌ |
闭源垂直整合 开源水平扩展
│ │
Claude Code ────────────────────── OpenCode / Hermes
│ │
优势: 优势:
- 推理深度最深 - 模型自由切换
- 开箱即用体验 - 成本可控
- 安全审计 - 隐私/合规
- 企业支持 - 社区创新速度
│ │
劣势: 劣势:
- 供应商锁定 - 推理深度依赖模型
- 成本高 - 成熟度较低
- 模型单一 - 缺少企业支持
三者都在从"终端编码助手"进化为"Agent 操作平台":
Anthropic 宣布 2026年6月15日 计费策略变更:
claude -p 使用独立 credit 桶| 场景 | 推荐基座 | 原因 |
|---|---|---|
| 复杂架构决策 / 多文件重构 | Claude Code | 推理深度最強,SWE-bench 80.9% |
| 海量样板代码 / CI 集成 | OpenCode + Codex CLI | 速度快,开源 |
| 隐私 / 本地 / 合规场景 | Hermes / OpenCode | 本地模型支持 |
| 预算有限团队 | OpenCode + 廉价 Provider | 工具免费,API 按需 |
| 企业安全 / 审计 | Claude Code | 审计完备 |
| 7x24 自动化运维 | Hermes | 内置 cron + 多平台网关 |
| 前端 UI 生成 | Claude Code(+ Figma MCP) | 设计理解能力最强 |
| 多模型对比实验 | OpenCode | 75+ 提供商随意切换 |
┌── L5: 前端应用层 ──────────────────────────────────────┐
│ AI Chat UI / Agent Dashboard / 流式渲染 / Artifact 展示 │
│ (Next.js + React + shadcn/ui + Streaming SSR) │
└──────────────────────┬──────────────────────────────────┘
▼
┌── L4: AI Service Layer ────────────────────────────────┐
│ Scene Router / Prompt Builder / Tool Registry │
│ Response Parser / SSE Handler / Retry & Fallback │
│ (Node.js / Edge Functions / tRPC) │
└──────────────────────┬──────────────────────────────────┘
▼
┌── L3: Agent Harness 层 ────────────────────────────────┐
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Planner │ │ Coder │ │ Reviewer │ │
│ │ (只读) │ │ (全权限) │ │ (只读) │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ ┌──────────────────────────────────────┐ │
│ │ Evaluator (Playwright MCP + 无写权限)│ │
│ └──────────────────────────────────────┘ │
│ Claude Code / OpenCode / Hermes 之一 │
└──────────────────────┬──────────────────────────────────┘
▼
┌── L2: Tool & Skill System ─────────────────────────────┐
│ MCP Servers (Figma / Playwright / Git / DB) │
│ Custom Skills (frontend-design / component-lib / a11y) │
│ Hooks (PreToolUse / Stop / Notification) │
└──────────────────────┬──────────────────────────────────┘
▼
┌── L1: Observability & Eval ────────────────────────────┐
│ Trace: traceId + scene + model + toolCalls + tokens │
│ Eval: regression tests + judge model scoring │
│ Alert: token 异常 / 延迟飙升 / 成功率下降 │
└────────────────────────────────────────────────────────┘
目录结构最佳实践:
.claude/
├── settings.json # Hooks + 权限 + MCP 配置
├── agents/
│ ├── planner.md # 读权限:产出 spec + 验收标准
│ ├── coder.md # 全权限:写代码 + 单元测试
│ ├── reviewer.md # 读权限:对照计划 Review
│ └── evaluator.md # 无 Write/Edit,通过 Playwright 验证 UI
├── skills/
│ ├── frontend-design/ # Anthropic 前端设计 Skill
│ ├── shadcn-ui/ # 组件库 Skill
│ └── a11y-check/ # 无障碍检查 Skill
├── hooks/
│ ├── pre-tool-use.md # Default-FAIL 合约检查
│ ├── stop-checkpoint.md # Agent 停止时自动 commit
│ └── verify-gate.md # 阻止未验证的 "passing" 声明
└── memory/
├── project-context.md # 项目背景、技术栈、当前阶段
├── decisions.md # 架构决策记录
└── component-inventory.md # 已有组件清单(避免 Agent 重复造轮子)
关键 Hook 配置示例:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Write|Edit",
"hooks": [{
"type": "command",
"command": "node .claude/hooks/verify-not-duplicating-component.js"
}]
}
],
"Stop": [
{
"hooks": [{
"type": "command",
"command": "node .claude/hooks/auto-commit-checkpoint.sh"
}]
}
]
}
}
OpenCode 的优势在于 Client/Server 架构 + Go HTTP API,适合前端团队做深度集成:
// 前端直接通过 HTTP API 驱动 OpenCode 会话
interface OpenCodeSession {
// 创建远程编码会话
createSession(workspace: string): Promise<Session>
// 发送任务指令
sendTask(sessionId: string, task: string): AsyncIterable<StreamEvent>
// 获取 Agent 状态
getStatus(sessionId: string): Promise<AgentStatus>
}
// 流式事件类型
type StreamEvent =
| { type: 'thinking'; content: string }
| { type: 'tool_call'; tool: string; input: unknown }
| { type: 'tool_result'; output: unknown }
| { type: 'code_chunk'; file: string; diff: string }
| { type: 'done'; summary: string }
适用场景:
Hermes 的独特性在于 多平台网关 + 定时自动化 + 自学习:
# Hermes 前端协作工作流
triggers:
- name: "每日前端构建检查"
cron: "0 9 * * 1-5"
task: "检查前端项目的 CI 状态,汇总失败的构建并分析原因"
- name: "PR Review 助手"
gateway: "github"
task: "新 PR 自动运行前端 review checklist,生成 review 意见"
- name: "组件文档同步"
trigger: "on_push_to_main"
task: "检测组件变更,自动更新 Storybook 文档和组件清单"
前端团队使用 Hermes 的最佳场景:
┌──────────────────────────────┐
│ Cursor / VS Code Copilot │ ← 日常编码(行级补全)
└──────────────┬───────────────┘
▼
┌──────────────────────────────┐
│ v0.dev / bolt.new / Lovable│ ← 快速原型(设计→代码)
└──────────────┬───────────────┘
▼
┌──────────────────────────────┐
│ Claude Code / OpenCode / │ ← 复杂任务(多文件重构)
│ Hermes │
└──────────────┬───────────────┘
▼
┌──────────────────────────────┐
│ 自定义 Harness 层 │ ← 团队规范(审查/评估/门禁)
│ (Hooks + MCP + Eval) │
└──────────────────────────────┘
| 阶段 | 目标 | 关键动作 | 周期 |
|---|---|---|---|
| Phase 1: 工具适配 | 让 AI 在前端项目里跑起来 | 配置 Claude Code/OpenCode/Hermes,写好 .claude/ 基础配置 | 1-2 周 |
| Phase 2: 质量门禁 | AI 产出物达到团队标准 | 加 Hooks(Default-FAIL 合约)、Eval 基准、Component 清单 | 2-4 周 |
| Phase 3: 多 Agent 编排 | 复杂任务自动拆解执行 | Planner → Coder → Reviewer → Evaluator 链路自动化 | 1-2 月 |
| Phase 4: Harness 平台化 | 团队级 AI 工程基础设施 | 自建 AI Service Layer、Observability、回归体系 | 持续演进 |
深度推理任务 ──→ Claude Code
│
海量编码 / CI ──→ OpenCode + Codex CLI
│
自动化运维 ────→ Hermes
│
前端 UI 层 ────→ 自建 AI Service Layer(串联三者)
核心原则:不依赖单一 Harness,根据任务特征路由到最优基座,前端团队在 L4(AI Service Layer)和 L1(Observability & Eval)构建自己的护城河。
Sources: Anthropic Engineering Blog, Builder.io, Nous Research GitHub, MSR 2026, 掘金, dev.to, CSDN, Morphllm
您的鼓励是我前进的动力---
使用微信扫描二维码完成支付