skills
Classes
SkillsClient
SkillsClient(client: OWUIClientBase)
Bases: ResourceBase
Client for the Skills endpoints.
- Code Reference client Classes OpenWebUI Attributes skills
Source code in src/owui_client/client_base.py
Functions
get_skills
get_skills() -> List[SkillUserResponse]
Get all skills the authenticated user can read.
Admins with bypass access control see all skills. Other users see only skills they own or have been granted read access to.
Returns:
| Type | Description |
|---|---|
List[SkillUserResponse]
|
List[SkillUserResponse]: List of skills with owner details. |
Source code in src/owui_client/routers/skills.py
get_skill_list
get_skill_list(
query: Optional[str] = None,
view_option: Optional[str] = None,
page: Optional[int] = 1,
) -> SkillAccessListResponse
Get a paginated, searchable list of skills with access info.
Each result includes a write_access flag indicating whether the
requesting user can modify that skill.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
query
|
Optional[str]
|
Optional search string to filter skills by name/description. |
None
|
view_option
|
Optional[str]
|
Optional view filter (e.g. "mine", "shared"). |
None
|
page
|
Optional[int]
|
Page number (1-indexed). Defaults to 1. |
1
|
Returns:
| Type | Description |
|---|---|
SkillAccessListResponse
|
|
Source code in src/owui_client/routers/skills.py
export_skills
export_skills() -> List[SkillModel]
Export all skills the user has read access to.
Requires the workspace.skills permission for non-admin users.
Returns:
| Type | Description |
|---|---|
List[SkillModel]
|
List[SkillModel]: Full skill models including content. |
Source code in src/owui_client/routers/skills.py
create_new_skill
create_new_skill(
form_data: SkillForm,
) -> Optional[SkillResponse]
Create a new skill.
The id is lowercased and spaces replaced with hyphens automatically.
Requires the workspace.skills permission for non-admin users.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
form_data
|
SkillForm
|
The skill data including id, name, content, and meta. |
required |
Returns:
| Type | Description |
|---|---|
Optional[SkillResponse]
|
Optional[SkillResponse]: The created skill metadata (no content field). |
Source code in src/owui_client/routers/skills.py
get_skill_by_id
get_skill_by_id(id: str) -> Optional[SkillAccessResponse]
Get a single skill by ID with access information.
Returns the skill details along with a write_access flag indicating
whether the requesting user can modify it.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The skill ID. |
required |
Returns:
| Type | Description |
|---|---|
Optional[SkillAccessResponse]
|
Optional[SkillAccessResponse]: The skill with write access indicator. |
Source code in src/owui_client/routers/skills.py
update_skill_by_id
update_skill_by_id(
id: str, form_data: SkillForm
) -> Optional[SkillModel]
Update a skill by ID.
Requires owner, write access, or admin role. Public access grants in the
form data are filtered based on the sharing.public_skills permission.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The skill ID. |
required |
form_data
|
SkillForm
|
The updated skill data. |
required |
Returns:
| Type | Description |
|---|---|
Optional[SkillModel]
|
Optional[SkillModel]: The updated skill. |
Source code in src/owui_client/routers/skills.py
update_skill_access_by_id
update_skill_access_by_id(
id: str, form_data: SkillAccessGrantsForm
) -> Optional[SkillModel]
Update access grants for a skill.
Sets the access grants controlling who can read or write the skill.
Requires owner, write access, or admin role. Public grants are filtered
by the sharing.public_skills permission.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The skill ID. |
required |
form_data
|
SkillAccessGrantsForm
|
The access grants form with list of access grant dicts. |
required |
Returns:
| Type | Description |
|---|---|
Optional[SkillModel]
|
Optional[SkillModel]: The updated skill. |
Source code in src/owui_client/routers/skills.py
toggle_skill_by_id
toggle_skill_by_id(id: str) -> Optional[SkillModel]
Toggle a skill's active state.
Flips the is_active flag. Requires owner, write access, or admin role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The skill ID. |
required |
Returns:
| Type | Description |
|---|---|
Optional[SkillModel]
|
Optional[SkillModel]: The updated skill. |
Source code in src/owui_client/routers/skills.py
delete_skill_by_id
Delete a skill by ID.
Requires owner, write access, or admin role.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The skill ID. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
bool |
bool
|
True if deletion succeeded. |