> For the complete documentation index, see [llms.txt](https://docs.karini.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.karini.ai/skills-library/custom-skill/managing-skills.md).

# Managing Skills

Once skills are added to your library, you can view, edit, organize, and maintain them through a comprehensive management interface. The Skills Library provides tools for browsing your skill catalog, editing content and structure, managing files and folders, and tracking changes over time. All management operations work on the skill's draft version, preserving published versions as immutable snapshots while allowing continuous improvement of your working copy.

The following sections cover the complete skill management workflow, starting with how to view and navigate your skill library.

#### Viewing Skills

The Skills Library table displays:

* **Name**: Skill identifier.
* **Source**: "custom" (your organization) or "native" (platform-provided).
* **Latest Version**: Most recent published version label (V1, V2, etc.).
* **Last Updated**: Last update timestamp.
* **Updated By**: User who last edited the skill.
* **Created by**: User who created the skill.
* **Created on**: Initial creation timestamp.

**Filtering**: Use the search bar and column filters to find specific skills. The table shows only custom skills with at least one published version by default.

#### Editing Skills

1. Click a skill row to open the detail view.
2. Use the left sidebar **file tree** to navigate the skill structure.
3. Click any file to open it in the editor pane.
4. Make your changes:
   * **Text files**: Edit directly in the textarea.
   * **Markdown files**: Toggle "Preview" to see rendered output.
   * **Binary files** (images): Cannot be edited; upload replacements using the file tree.
5. Save changes:
   * **Individual files**: Click "Save file" in the file header (recommended).
   * **Skill-level save**: Use the top "Save" button (saves currently open file).

#### Managing Files

Skills are composed of multiple files organized in a hierarchical structure. The file tree interface provides complete control over adding, renaming, deleting, and organizing these files to build comprehensive skill packages.

Start by adding new files to expand your skill's capabilities.

**Adding Files:**

1. Right-click a folder in the tree or use the tree's "Add" button.
2. Choose "Add File" or "Add Folder".
3. Provide a name.
4. Click to open and add content.
5. Save the file to persist it to the skill.

**Renaming Files:**

1. Open the file you want to rename.
2. Click the file name in the header.
3. Edit the name inline.
4. Changes are saved immediately (file must already exist on the server).

**Deleting Files:**

1. Open the file to delete.
2. Click the trash icon in the file header.
3. Confirm the deletion.
4. The file is removed immediately from both draft and any future versions.

**Copying Content:**

* Click the copy icon in the file header to copy the entire file content to clipboard.

#### File Tree Features

* **Collapsible folders**: Click folder icons to expand/collapse.
* **Active file highlighting**: Currently open file is highlighted.
* **Visual icons**: Different colors for file types (`.md`, `.js`, `.json`, etc.).
* **Resizable sidebar**: Drag the vertical divider to adjust file tree width.

### Publishing and Versioning

Version control is fundamental to maintaining skill quality and stability across your organization. The publishing system creates immutable snapshots of your skills, allowing you to track changes, roll back to previous versions, and ensure consistent behavior in production environments. Every edit you make works on a draft version, and only through publishing do these changes become permanent, versioned artifacts. This separation between draft and published states provides safety and flexibility in skill development.

#### Publishing a Version

Publishing transforms your draft into a permanent, immutable version that can be safely used across prompts and recipes. Follow these steps to create a new version:

Publishing creates an immutable snapshot of the current draft:

1. Ensure all files are saved (unsaved files block publishing).
2. Click **Publish** in the top action bar.
3. In the dialog:
   * **Version**: Automatically assigned (V1, V2, V3...)
   * **Tags**: Add searchable keywords (may be required by organization policy).
4. Click **Publish** to confirm.

**What Happens:**

* The current draft is captured as a new immutable version.
* The version becomes the "current version" (used when the skill is invoked).
* The draft remains editable for future changes.
* All files in the skill at publish time are included in the version.

#### Version History

View all published versions in the **Versions** tab (accessible via the dropdown next to the version label):

**Versions Table Columns:**

* **Version**: Label (V1, V2, V3...).
* **Version Number**: Sequential integer.
* **Created**: Publish timestamp.
* **Creator**: User who published.

**Version Actions:**

**Load Version**: Switch the current working version to a different published snapshot.

To switch to an older published version:

1. Open the **Versions** dropdown or tab
2. Find the desired version
3. Click the row or "Load" action
4. Confirm the operation

**Result:**

* The selected version becomes the current version.
* The file tree updates to reflect that version's structure.
* The draft is preserved (not overwritten).
* Opening files shows content from the loaded version.
*

```
<figure><img src="/files/j1FFKFMe8dJGB0HMU5YU" alt=""><figcaption></figcaption></figure>
```

**Compare**: View side-by-side diffs between versions (see below).

To see changes between versions:

1. Open the **Compare** modal from the versions dropdown.
2. Select two versions to compare.
3. Click **Compare.**

**Diff View:**

* **Left pane**: Current/older version (red highlights for removed lines).
* **Right pane**: Selected/newer version (green highlights for added lines).
* **Line numbers**: Preserved for context.
* **Side-by-side layout**: Aligned by line for easy comparison.

<figure><img src="https://415930246-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7ZrVuiAUMyuYVvrK5KaB%2Fuploads%2F7OMwUA2o7GkIxkPqi4Px%2Fimage.png?alt=media&amp;token=739c6d0c-f2fa-4fe0-84e6-68422f3bfd36" alt=""><figcaption></figcaption></figure>
