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

# Manage projects and Skill Sets

> Pin skill revisions into reusable sets and preview project changes before applying them.

A Skill Set is a named, reusable selection of immutable skill revisions. Use it
to reproduce an agent setup across projects without mutating the global skill
registries.

## Ask your agent

```text theme={null}
Create a SelfTune Skill Set for this project from the skills we already use.
Show me the pinned revisions and preview every project change. Do not apply the
set or replace a conflicting skill until I approve the plan.
```

## Manual workflow

Create a set from local skills:

```bash theme={null}
selftune sets create \
  --name "Research project" \
  --harness codex \
  --skill-path ~/.agents/skills/research \
  --skill-path ~/.agents/skills/citations
```

Preview before applying:

```bash theme={null}
selftune sets plan --set research-project --project /path/to/project
selftune sets apply --set research-project --project /path/to/project
```

`plan` is read-only. `apply` should stop on a conflicting destination rather
than silently replace it. Keep the returned receipt so the owned paths can be
rolled back safely.

## Success criteria

* Every entry is pinned to a content revision, not a mutable source directory.
* The preview identifies creates, unchanged destinations, and conflicts.
* Apply changes only paths inside the selected project.
* A receipt records what SelfTune owns and can safely roll back.

Inspect available harnesses and project boundaries first. Run `sets plan`
before `sets apply` and present conflicts to the user. Never use forceful file
replacement to bypass a conflict. Preserve the receipt and verify that linked
or copied skills resolve inside the selected project.
