Skip to main content
The Skills Service gives you programmatic control over the capabilities and tool sets that agents can use on the Kubiya platform. Skills are collections of tools and permissions that define what an agent can do, such as managing cloud resources, running scripts, or integrating with external systems. By managing skills, you can tailor agent abilities to your organization’s needs, enforce best practices, and ensure agents only have access to the tools they require. With this service, you can:
  • List and filter available skills to see what capabilities are available for your agents, including their categories and tool sets.
  • Retrieve detailed skill information to understand what each skill enables, which tools it includes, and any required integrations.
  • Create and update custom skills to define new sets of capabilities or modify existing ones as your requirements evolve.
  • Validate skill configurations before deployment, ensuring your skills are correctly set up and ready for use.
  • Associate skills with agents, teams, or other entities to control who can use which capabilities.
This service is especially valuable for platform administrators and advanced users who want to manage agent permissions, standardize tool usage, and maintain security and compliance. By using the Skills Service, you can confidently control what agents can do, avoid misconfigurations, and streamline the process of updating agent capabilities.
For conceptual information about skills and how they’re used in agents, see Skills Core Concepts.

Overview

The Skills Service provides a set of high-level methods designed to be intuitive and flexible, supporting a wide range of operational and administrative tasks:
  • list(skip, limit): Retrieve all available skills, with support for pagination. This is the primary entry point for discovering which skills are available in your workspace.
  • get(skill_id): Fetch detailed information for a specific skill, including its tools, capabilities, and configuration. Use this to inspect or audit skills before assigning them to agents.
  • create(skill_data): Register a new custom skill. This is typically used to define new sets of capabilities or tool sets for your organization.
  • update(skill_id, skill_data): Modify the configuration of an existing skill, such as updating its description, tools, or required integrations.
  • delete(skill_id): Remove a skill from the registry. This operation is restricted to ensure that no active agents or teams are using the skill at the time of deletion.
  • associate(entity_id, skill_ids): Assign skills to agents, teams, or other entities to control access to capabilities.
  • validate(skill_config): Validate a skill configuration before deployment. This helps catch errors early and ensures your skills are ready for use.
By using these methods, you can build robust, dynamic workflows that adapt to changes in skill requirements, enforce organizational policies, and provide a seamless experience for both developers and end-users. The following sections provide practical guidance, detailed examples, and best practices for leveraging the Skills Service effectively in your own projects.

Quick Start

List Skills

List all available skills with pagination support.

Basic Listing

Paginated Listing

List All Skills

Filter Skills by Category

Get Skill Details

Retrieve detailed information about a specific skill.

By Skill ID

Extract Skill Information

Find Skill by Name

Create Custom Skill

Create a new custom skill with specific tools and capabilities.

Basic Creation

Create with Integrations

Create with Validation

Update Skill

Update an existing skill configuration.

Basic Update

Add Tools to Skill

Enable/Disable Skill

Delete Skill

Delete a custom skill.
Deleting a skill affects any agents or entities using it. Ensure no active agents depend on the skill before deletion.

Delete with Safety Check

Associate Skills with Entities

Associate skills with agents, teams, or other entities.

Associate Skills with Agent

Bulk Association

Replace Skills for Entity

Validate Skill Configuration

Validate a skill configuration before creation or update.

Basic Validation

Validate Before Creation

Practical Examples

The following examples show how to use the Skills Service for common real-world scenarios, such as discovering skills that match specific requirements, auditing your skill inventory, and managing skill configurations. Each example includes a short explanation of when and why you might use it.

1. Skill Discovery System

Use this approach to find skills that match a set of required capabilities or categories. This is helpful when you want to assign the most relevant skills to an agent or team based on their responsibilities.

2. Skill Audit Report

Generate a summary report of all skills in your environment, including how many are enabled, disabled, or missing descriptions. This is useful for platform administrators who need to audit skill inventory or prepare compliance reports.

3. Skill Configuration Manager

Use this helper class to create, validate, and clone skill configurations efficiently. This is valuable for organizations that want to standardize skill creation or quickly replicate existing skills for new use cases.

4. Skill Dependencies Validator

Check that all required integrations for a skill are available before deployment. This helps prevent runtime errors and ensures your skills are ready to use in your environment.

Error Handling

When working with skills, you may encounter errors such as requesting a non-existent skill, creating a skill with missing fields, or failing validation. These examples show how to handle such errors gracefully and provide fallback options to keep your workflows running smoothly.

Best Practices

Follow these best practices to make your use of the Skills Service more robust, efficient, and maintainable. These patterns help you avoid common pitfalls and ensure your code is resilient to changes in skill availability or configuration.

1. Always Validate Before Creating

Always validate your skill configuration before creating or updating a skill. This helps catch errors early and ensures your skills are correctly set up for use by agents and teams.

2. Cache Skill Information

To reduce API calls and improve performance, cache skill and skill details information locally after the first retrieval. This is especially useful in applications that repeatedly access the same skill details.

3. Use Descriptive Names and Categories

Choose clear, descriptive names and categories for your skills. This makes it easier for others to understand what each skill does and helps with auditing and compliance.

4. Document Tool Configurations

Provide clear descriptions for all tools within a skill. This ensures that anyone using or maintaining the skill understands what each tool does and how to use it safely.

API Reference

Methods

Skill Object Structure

Validation Result Object Structure

Next Steps

Policies Service

Manage security and access policies

Agents Service

Create and manage agents

Runtimes Service

Configure agent runtime environments