Skip to main content
Skills are core components that define the specific capabilities your agents can perform on the workers they are deployed to. These capabilities range from basic system operations like file access, shell commands, or Docker container management, to more advanced integrations that the agents can leverage during execution. Kubiya Platform Overview Skills act as the interface for system-level interactions, giving agents the permission to perform actions on the local system or in a restricted sandbox environment. They are customizable and designed to cater to different agent roles and security requirements.

When to use Skills

  • Enhance agent functionality: If you need agents to interact with the local system, use Skills that define commands such as shell access, file system operations, or Docker container management.
  • Limit permissions: For security-sensitive operations, use restricted skills like “Read-Only” access to ensure safe interactions with the environment.
  • Add specific integrations: For complex workflows, you can configure skills that allow agents to interact with APIs, external services, or perform tasks like data visualization.

What Skills configure

  • System-level capabilities: They provide core functionalities such as file operations, shell access, Docker management, and Python execution.
  • Security boundaries: Skills like “Read-Only” access or “Sandboxed” environments ensure that agents only interact with resources in a safe and limited way.
  • Access permissions: Different Skills can grant agents access to specific system resources, e.g., allowing agents to read or write to certain directories, run shell commands, or control Docker containers.

How Skills Work in Kubiya

  1. Skills Creation: Create Skills either from scratch or using pre-configured templates in the Skills Dashboard.
  2. Skills Assignment: Once a Skills is created, it can be assigned to agents, teams, or environments depending on the use case.
  3. Skills Usage: When tasks are executed, the agent can use these Skills based on the capabilities assigned to it. For example, an agent with “Shell – Full Access” can execute any command on the local system, while an agent with “File System – Read Only” can only interact with files without altering them.
  4. Skills Permissions: Skills are customizable. Administrators can define what actions are available (e.g., reading, writing, listing files) and configure the Skills to be enabled immediately upon creation or to be used only under certain conditions.
  5. Security Control: Skills also help define security boundaries—agents can be restricted to safe commands or sandboxed environments where they have limited access to the system.

Creating and Managing Skills (UI)

Go to: Skills > New Skill Skills Creation

General Information

  • Skills Name: Choose a unique name to describe the Skills (e.g., “Production File System”, “Shell – Safe Commands”).
  • Skills Type: Select the appropriate type (e.g., File System, Shell, Docker).
  • Description: Briefly describe what the Skill does and how/when to use it.

Configuration

  • Permissions: Customize the Skill’s capabilities (e.g., which shell commands are allowed, which files can be accessed).
  • Base Directories: For file system-related Skills, define the directories that will be accessible (e.g., /path/to/base).
  • Enable Immediately: Toggle this to make the Skills available for agents right away.

Template Option

You can create Skills using pre-configured templates like “File System – Read Only” or “Shell – Safe Commands”. These templates are designed to get you up and running quickly with common use cases.

Security and Access Control

  • Read/Write Permissions: For example, the File System – Full Access Skills allows read, write, and modify file operations, while the File System – Read Only Skill restricts interactions to just reading, listing, and searching files.
  • Sandboxed Environments: Skills like File System – Sandboxed give agents access to isolated directories, providing an extra layer of security.

Connecting Skills

  • Connected Entities: Skills are connected to agents, teams, and environments. You can view these connections in the Connected Entities section to see where the Skill is active.
  • Configuration Export: Once configured, you can export the JSON representation of the Skill’s configuration for use in other environments or projects.

Editing or Evolving Skills

Once a Skill is created, you can edit or delete it at any time. To edit:
  1. Go to the Skills dashboard.
  2. Open the Skill card you wish to modify.
  3. Click on Edit Skill and make necessary changes.
  4. Update the Skill to apply changes.
Tip: Always ensure that Skills match the principle of least privilege. Only grant the minimum required permissions to agents.

Best Practices

  • Modular Skills: Start with safe and minimal Skills and expand only as needed.
  • Pre-configured Templates: Use built-in templates to speed up the creation of common Skills.
  • Security First: When working in production environments, prefer restricted access Skills (e.g., Read-Only or Sandboxed) to ensure maximum security.
  • Limit Skill Access: Only assign Skills to agents or teams that absolutely require them. Avoid over-permissioning.

Troubleshooting

  • Task Execution Issues: If an agent cannot execute a task that requires a Skill, ensure the Skill is properly assigned and has the correct permissions.
  • Permission Errors: Review the Skill’s configuration to verify that the agent has the required access.
  • Skill Not Available: Confirm the Skill is enabled and has been assigned to the correct agent, team, or environment.