跳至主要內容

.getSkill()

依名稱從 Agent 已設定的 Skill 中取得特定 Skill(包含 Agent 層級與 Workspace Skill)。

使用範例
「使用範例」的直接連結

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

const skill = await agent.getSkill('code-review')

if (skill) {
console.log(skill.name) // "code-review"
console.log(skill.description) // "Use when reviewing code changes."
console.log(skill.instructions) // Full markdown instructions
}

參數
「參數」的直接連結

skillName:

string
要取得的 Skill 名稱。

options?:

object
Skill 解析選項。
object

requestContext?:

RequestContext
傳給動態 Skill resolver 的 request context。

回傳值
「回傳值」的直接連結

回傳 Promise<Skill | null>

若找到則回傳 Skill 物件;若不存在該名稱的 Skill,則回傳 null

interface Skill {
name: string
description: string
instructions: 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 時,.getSkill() 會搜尋合併後的集合。若名稱衝突,Agent 層級 Skill 優先。