
网罗开发 (小红书、快手、视频号同名)
大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等方向。在移动端开发、鸿蒙开发、物联网、嵌入式、云原生、开源等领域有深厚造诣。
图书作者:《ESP32-C3 物联网工程开发实战》
图书作者:《SwiftUI 入门,进阶与实战》
超级个体:COC上海社区主理人
特约讲师:大学讲师,谷歌亚马逊分享嘉宾
科技博主:华为HDE/HDG
我的博客内容涵盖广泛,主要分享技术教程、Bug解决方案、开发工具使用、前沿科技资讯、产品评测与使用体验 。我特别关注云服务产品评测、AI 产品对比、开发板性能测试以及技术报告,同时也会提供产品优缺点分析、横向对比,并分享技术沙龙与行业大会的参会体验。我的目标是为读者提供有深度、有实用价值的技术洞察与分析。
展菲:您的前沿技术领航员
👋 大家好,我是展菲!
📱 全网搜索"展菲",即可纵览我在各大平台的知识足迹。
📣 公众号"Swift社区",每周定时推送干货满满的技术长文,从新兴框架的剖析到运维实战的复盘,助您技术进阶之路畅通无阻。
💬 微信端添加好友"fzhanfei",与我直接交流,不管是项目瓶颈的求助,还是行业趋势的探讨,随时畅所欲言。
📅 最新动态:2025 年 3 月 17 日
快来加入技术社区,一起挖掘技术的无限潜能,携手迈向数字化新征程!
文章目录
-
- 引言
- [一、AI Agent 到底多了什么?](#一、AI Agent 到底多了什么?)
- [二、从"页面调用 API"到"AI 调用 API"](#二、从“页面调用 API”到“AI 调用 API”)
- [三、一个完整 Agent 示例(订机票)](#三、一个完整 Agent 示例(订机票))
- [四、App 如何"进化"为 Agent 可用服务?](#四、App 如何“进化”为 Agent 可用服务?)
-
- [1、抽离 Service 层(关键)](#1、抽离 Service 层(关键))
- [2、对 Agent 暴露能力](#2、对 Agent 暴露能力)
- 3、统一调用入口
- [五、哪些 App 最容易被"Agent 化"?](#五、哪些 App 最容易被“Agent 化”?)
- [六、为什么有些 App 不会被替代?](#六、为什么有些 App 不会被替代?)
- [七、未来架构:Agent + App](#七、未来架构:Agent + App)
- 八、开发者该怎么做?
-
- [1、把 UI 逻辑抽离](#1、把 UI 逻辑抽离)
- 2、所有核心能力"服务化"
- [3、为 AI 设计接口(关键)](#3、为 AI 设计接口(关键))
- 4、保证接口"可自动执行"
- 总结
引言
过去十几年,应用的基本形态几乎没有变过:
用户打开 App
↓
找到功能入口
↓
点击操作
↓
完成任务
本质是:
人去适应 UI
但 AI Agent 出现之后,路径变成:
用户表达意图
↓
AI 理解需求
↓
调用服务
↓
完成任务
问题就变得很直接:
AI Agent 会不会取代传统 App?
一、AI Agent 到底多了什么?
传统 App 的核心代码结构:
ts
// 典型 UI 驱动逻辑
button.onClick(() => {
fetchOrderList().then(renderUI)
})
AI Agent 的核心结构则是:
ts
// Agent 执行流程
async function agent(input: string) {
const intent = await parseIntent(input)
const plan = await planTask(intent)
const result = await execute(plan)
return result
}
本质差异:
App:事件驱动
Agent:任务驱动
二、从"页面调用 API"到"AI 调用 API"
传统 App:
ts
// 页面直接调用接口
async function loadFlights() {
const res = await fetch('/api/flights')
return res.json()
}
AI Agent 模式:
ts
// 工具定义(给 AI 用)
const tools = [
{
name: "searchFlights",
description: "查询航班",
parameters: {
from: "string",
to: "string",
date: "string"
}
}
]
AI 调用:
ts
async function executeTool(toolName, params) {
if (toolName === "searchFlights") {
return await searchFlights(params)
}
}
关键变化:
API 不再服务 UI,而是服务 AI
三、一个完整 Agent 示例(订机票)
用户输入:
帮我订明天去上海的机票,1000以内
1、意图解析
ts
function parseIntent(input: string) {
return {
type: "book_flight",
from: "当前城市",
to: "上海",
date: "明天",
budget: 1000
}
}
2、任务拆解
ts
function planTask(intent) {
return [
{ action: "searchFlights", params: intent },
{ action: "filterFlights", params: { budget: intent.budget } },
{ action: "bookFlight" }
]
}
3、执行流程
ts
async function execute(plan) {
let context = {}
for (const step of plan) {
if (step.action === "searchFlights") {
context.flights = await searchFlights(step.params)
}
if (step.action === "filterFlights") {
context.flights = context.flights.filter(
f => f.price <= step.params.budget
)
}
if (step.action === "bookFlight") {
return await bookFlight(context.flights[0])
}
}
}
对比传统 App:
过去:用户一步步点
现在:AI 一次性做完
四、App 如何"进化"为 Agent 可用服务?
如果你是开发者,重点不是"做 Agent",而是:
让你的 App 能被 Agent 调用
1、抽离 Service 层(关键)
类似你在鸿蒙架构中做的:
ts
// services/OrderService.ets
export class OrderService {
async createOrder(data) {
return await request('/api/order', data)
}
async pay(orderId) {
return await request('/api/pay', { orderId })
}
}
2、对 Agent 暴露能力
ts
export const tools = [
{
name: "createOrder",
description: "创建订单",
handler: async (params) => {
const service = new OrderService()
return await service.createOrder(params)
}
}
]
3、统一调用入口
ts
async function agentExecutor(toolName, params) {
const tool = tools.find(t => t.name === toolName)
if (!tool) throw new Error("tool not found")
return await tool.handler(params)
}
这就是:
"App → API → Agent 工具"的演进路径
五、哪些 App 最容易被"Agent 化"?
你可以用一个简单标准判断:
1、是否是"纯函数型服务"
ts
input → process → output
例如:
ts
function translate(text: string): string
function calc(expression: string): number
这种最容易被替代。
2、是否流程固定
ts
search → filter → submit
例如:
ts
async function orderFood() {
const list = await getRestaurants()
const food = pick(list)
return await createOrder(food)
}
Agent 可以完全接管。
六、为什么有些 App 不会被替代?
因为它们不是"函数",而是"体验"。
例如游戏(如 Claw):
ts
// 游戏主循环
function gameLoop() {
update()
render()
}
特点:
- 强实时交互
- 强沉浸体验
AI 可以参与,但不会替代。
七、未来架构:Agent + App
未来典型架构会变成:
ts
// Agent 层
class Agent {
async run(input) {
const intent = await this.parse(input)
const tool = this.selectTool(intent)
return await tool.execute(intent)
}
}
// App 服务层
class AppService {
async handleRequest(req) {
// 提供能力,不直接面对用户
}
}
关系:
用户 → Agent → App Service
八、开发者该怎么做?
给你一个非常实用的落地 checklist:
1、把 UI 逻辑抽离
ts
// 不推荐
Page → 直接写业务
// 推荐
Page → Service → API
2、所有核心能力"服务化"
ts
export class PaymentService {
async pay() {}
}
3、为 AI 设计接口(关键)
ts
{
name: "payOrder",
description: "支付订单",
parameters: { orderId: "string" }
}
4、保证接口"可自动执行"
避免:
- 强依赖 UI
- 多步骤人工确认
总结
AI Agent 不会简单"杀死 App",但会重构整个技术形态。
从代码角度可以总结为三点:
1、入口变化
ts
UI → Agent
2、调用方式变化
ts
人点接口 → AI 调接口
3、架构变化
ts
App(前台)
↓
App Service(后台能力)
↓
Agent(统一入口)
最后用一句更"工程化"的话总结:
未来不是没有 App,而是"没有 UI 的 App 会越来越多"。
而真正的入口,会逐渐变成:
AI Agent