Skip to main content
PUT
Update a skill

Authorizations

Authorization
string
header
required

Your Reason API key from Settings › API keys. New keys use reason_; legacy ara_ keys remain accepted. Keys are capability-scoped: run, mcp:read, mcp:write, secrets:read, secrets:write, sessions:read, sessions:debug, knowledge:read, memory:read, memory:write, skills:read, skills:write, repos:read, repos:write, reviews:read, reviews:write, deployment:read, analytics:read, org:read, org:write, attachments:read, attachments:write, guardrails:read, guardrails:write, network:read, network:write, automations:read, automations:write, agent_auth:read. network:read and network:write are opt-in, excluded from default keys. network:read reads the saved workspace network policy; network:write replaces custom allowed hosts and requires a current organization owner/admin. Legacy project PATCH requests containing network_allowed_hosts also require network:write plus their existing run scope and project management permission; saved project hosts do not affect current session egress. Only owners/admins can mint or manage keys with network:write; keys cannot grant themselves more authority. See /docs/network-policies for replacement semantics and runtime applicability. mcp:write manages MCP server configuration only; it does not authorize remote MCP-tool execution. sessions:read reads sessions, including the assistant, reasoning and tool activity in their events. sessions:debug is privileged: only for organization owners/admins, it expands session events to the full diagnostic projection (diagnostic event kinds, status text and raw event metadata).

Path Parameters

orgId
string
required

Organization id or slug. Resolve it with GET /v3/self.

skillId
string
required

The skill id, returned as skill_id by listSkills and createSkill.

Body

application/json

All fields optional. Only supplied fields are changed.

name
string

New display name; a name another skill already uses returns 409. Omit it to keep the current name.

description
string

New text saying what the skill does and when an agent should use it; Reason matches it against the task to pick skills. Omit it to keep the current text.

instructions
string

New skill document, replacing the old one whole, that an agent follows once the skill is picked. Omit it to keep the current document.

activation_keywords
string[]

Replacement list of search aliases, kept for compatibility: they help explicit search but never activate the skill. Omit it to keep the current list.

is_enabled
boolean

Send false to stop agents from using the skill, or true to offer it again; omit it to keep the current state.

Response

Updated.

skill_id
string

Skill id; pass it as skillId to read, update or delete the skill.

name
string

Display name of the skill.

description
string

What the skill does and when an agent should use it. Reason uses this description for semantic selection.

instructions
string

The skill document an agent follows when it uses the skill.

activation_keywords
string[]

Optional search aliases retained for compatibility. They do not activate the skill automatically.

is_enabled
boolean

Whether agents may use the skill.

installation_scope
enum<string>

Whether only its creator sees the skill, or the whole workspace.

Available options:
personal,
organization
author
string

Who wrote the skill: user for one authored in the workspace, otherwise its publisher.

provenance
enum<string>

Where the skill came from, which decides what can be edited or deleted.

Available options:
authored,
skills_sh,
git,
agent_plugin,
curated_integration,
builtin
created_by
string | null

User id of the member who added it; null when no member added it.

created_at
string<date-time>

When the skill was added.

updated_at
string<date-time>

When the skill last changed.