メインコンテンツへ移動

.getSkill()

Agent に設定された 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 リゾルバーへ渡されるリクエストコンテキスト。

戻り値
戻り値への直接リンク

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 が優先されます。