> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kubiya.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Skills CLI Reference

> Complete command-line reference for creating, managing, and assigning Skills programmatically with the Kubiya CLI.

Use the CLI to create, inspect, assign, update, and delete Skills programmatically. This matches the standard Kubiya CLI documentation style.

<Note>
  All commands require proper authentication. See the [CLI Authentication](/cli/authentication) guide if needed.
</Note>

## **1. List Skill Definitions**

Shows available Skill types and their configuration schema.

**Commands**

```bash theme={null}
kubiya skill definitions
```

```bash theme={null}
kubiya skill definitions -o json
```

***

## **2. Create Skills**

Create a new Skill with metadata and configuration.

**Commands**

```bash theme={null}
kubiya skill create --name "Git Tools" --type git --enabled
```

```bash theme={null}
kubiya skill create --name "Slack Bot" --type slack --config config.json
```

```bash theme={null}
kubiya skill create --name "AWS CLI" --type aws --config-json '{"region":"us-east-1"}'
```

**Flags**

| Flag            | Description                |
| --------------- | -------------------------- |
| `--name`        | Skill name (required)      |
| `--type`        | Skill type (required)      |
| `--description` | Description string         |
| `--enabled`     | Enable immediately         |
| `--config`      | Load config JSON from file |
| `--config-json` | Inline JSON configuration  |
| `--variant`     | Optional type variant      |
| `-o, --output`  | Output format (json, yaml) |

<Tip>
  Use the `--variant` flag to create Skills with pre-configured templates. See [Skill Variants](/core-concepts/skills/variants) for available options.
</Tip>

***

## **3. List Skills**

View all Skills in the control plane.

**Commands**

```bash theme={null}
kubiya skill list
```

```bash theme={null}
kubiya skill list -o json
```

***

## **4. Get Skill Details**

Fetch configuration, permissions, and associations.

**Commands**

```bash theme={null}
kubiya skill get <skill-id>
```

```bash theme={null}
kubiya skill get <skill-id> -o json
```

***

## **5. Associate Skills**

Attach a Skill to an agent, team, or environment.

**Commands**

```bash theme={null}
# Agent
kubiya skill associate agent <agent-id> <skill-id>
```

```bash theme={null}
# Team
kubiya skill associate team <team-id> <skill-id>
```

```bash theme={null}
# Environment
kubiya skill associate environment <env-id> <skill-id>
```

<Info>
  Skills can be associated with multiple entities. The same Skill instance can be shared across agents, teams, and environments.
</Info>

***

## **6. List Skill Associations**

See all Skills attached to a specific entity.

**Commands**

```bash theme={null}
kubiya skill list-associations agent <agent-id>
```

```bash theme={null}
kubiya skill list-associations team <team-id>
```

```bash theme={null}
kubiya skill list-associations environment <env-id>
```

***

## **7. Update Skills**

Modify Skill metadata or configuration.

**Commands**

```bash theme={null}
kubiya skill update <skill-id> --name "New Name"
```

```bash theme={null}
kubiya skill update <skill-id> --enabled=false
```

```bash theme={null}
kubiya skill update <skill-id> --config-json '{"commands":["ls","cat"]}'
```

<Warning>
  Updating a Skill's configuration affects all agents, teams, and environments where it's assigned. Test changes carefully in non-production environments first.
</Warning>

***

## **8. Delete Skills**

Remove Skills that are no longer required.

**Commands**

```bash theme={null}
kubiya skill delete <skill-id>
```

<Warning>
  Deleting a Skill removes it from all associated agents, teams, and environments. This action cannot be undone.
</Warning>

***

## **Common Workflows**

### Creating a Skill with Variant

```bash theme={null}
# Create a read-only file system skill
kubiya skill create \
  --name "Production Logs Reader" \
  --type file_system \
  --variant read_only \
  --description "Read-only access to production logs" \
  --enabled
```

### Creating and Assigning in One Flow

```bash theme={null}
# 1. Create the skill
SKILL_ID=$(kubiya skill create \
  --name "Dev Shell" \
  --type shell \
  --variant safe_commands \
  -o json | jq -r '.id')

# 2. Associate with an agent
kubiya skill associate agent <agent-id> $SKILL_ID
```

### Updating Configuration

```bash theme={null}
# Get current configuration
kubiya skill get <skill-id> -o json > current-config.json

# Edit the config file
# ... make changes ...

# Update the skill
kubiya skill update <skill-id> --config current-config.json
```

***

## **Related Pages**

<CardGroup cols={2}>
  <Card title="Built-in Skills" icon="layer-group" href="/core-concepts/skills/built-in-skills">
    See all available Skill types to create
  </Card>

  <Card title="Skill Variants" icon="code-branch" href="/core-concepts/skills/variants">
    Learn about variants for the --variant flag
  </Card>

  <Card title="Examples" icon="lightbulb" href="/core-concepts/skills/examples">
    Real-world CLI usage examples
  </Card>

  <Card title="Custom Skills" icon="wrench" href="/core-concepts/skills/custom-skills">
    Create custom Skill types
  </Card>
</CardGroup>
