App Skill Object


An app skill is a job an installed app teaches AI agents to do: what the job is, when it applies, the Markdown guidelines to follow, and which of the app's App Tools it may call. Apps declare skills in the app dashboard through the App Skills extension. A site sees the skills of the app version installed on it, and only activated skills are returned.

Properties
appIdstringRead-onlyformat GUID

ID of the app that declares the skill.


appNamestringRead-onlyminLength 0maxLength 100

Name of the app that declares the skill.


descriptionstringRead-onlyminLength 1maxLength 1024

What the skill does and when to use it.


displayNamestringRead-onlyminLength 2maxLength 200

Display name of the skill, for users browsing a site's skills.

Returned only when the app declares one.


examplesArray <string>Read-onlymaxItems 5minLength 1maxLength 200

Example user requests this skill handles, for agents that match a request to a skill.


guidelinesstringRead-onlymaxLength 20000

Instructions an agent follows once it has chosen the skill, in Markdown.

Returned only by Get App Skill.


idstringRead-onlyformat GUID

App skill ID. Derived from appId and slug, so a skill keeps the same ID on every site and across app versions.


inputModesArray <string>Read-onlymaxItems 10minLength 3maxLength 100

MIME media types the skill accepts as input, as in the A2A AgentSkill.inputModes field. For example, text/plain. Empty when the skill accepts any input the agent accepts.


outputModesArray <string>Read-onlymaxItems 10minLength 3maxLength 100

MIME media types the skill produces, as in the A2A AgentSkill.outputModes field. For example, application/json. Empty when the skill produces whatever the agent produces.


slugstringRead-onlyminLength 1maxLength 64

Identifier of the skill, unique within its app, as declared in the App Skills extension. For example, package-tracking.


tagsArray <string>Read-onlymaxItems 10minLength 1maxLength 30

Keywords describing what the skill does, for agents that pick skills by topic.


toolMethodNamesArray <string>Read-onlymaxItems 50minLength 1maxLength 30

methodName values of the tools declared in the app's App Tools extension that this skill may call. Call them with Invoke Tool in the App Tools API. A skill references only its own app's tools.

Did this help?