跳到主要内容

.listSkills()

返回 Agent 可用的所有 Skill 的元数据,包括 Agent 级 Skill 和 Workspace Skill。

使用示例
使用示例的直接链接

src/routes/skills.ts
import { agent } from '../mastra/agents'

const skills = await agent.listSkills()

for (const skill of skills) {
console.log(`${skill.name}: ${skill.description}`)
}

参数
参数的直接链接

options?:

object
用于解析 Skill 的选项。
object

requestContext?:

RequestContext
传递给动态 Skill 解析器的 request context。

返回值
返回值的直接链接

返回 Promise<SkillMetadata[]>

每个条目都包含所发现 Skill 的元数据:

interface SkillMetadata {
name: string
description: string
path: string
source: { type: string; projectPath: string }
references: string[]
scripts: string[]
assets: string[]
license?: string
compatibility?: string[]
'user-invocable'?: boolean
metadata?: Record<string, unknown>
}

合并行为
合并行为的直接链接

同时配置 Agent 级 Skill 和 Workspace Skill 时,.listSkills() 返回合并后的集合。名称冲突时,Agent 级 Skill 优先。如果两者都定义了名为 code-review 的 Skill,则只返回 Agent 级版本。