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

> ## Agent Instructions
> To act on Atlan objects, use the Atlan MCP server at https://api.atlan.com/mcp or the atlanai CLI; `atlanai --map json` prints its command map. Run a read-only identity check before any write.
> The docs MCP server at /mcp searches these docs only. It cannot read or change Atlan objects.
> SDK packages: Python `atlanai` (PyPI) and TypeScript `@atlanai/sdk` (npm). Show Python first, then TypeScript.

# Publish skills with the CLI

> Validate a local skill, publish it safely, or publish a repository-managed collection.

Use the CLI when you want to validate a local skill before a one-off publish or
when a repository manifest controls a collection of skills.

## Publish one local skill

Run validation first, then inspect the publishing plan before the write:

```bash theme={null}
atlanai skill validate ./skills/example
atlanai skill push ./skills/example --dry-run
atlanai skill push ./skills/example --workspace workspace_123
```

`push` creates a new skill or appends a version. Unchanged content is not
uploaded again. Do not use `--force` until you have resolved the remote change
that caused the drift.

## Publish repository-managed skills

Use `skill publish` when `.atlan/package.json` declares the skill roots and
destinations:

```bash theme={null}
atlanai skill publish
atlanai skill publish --changed-since HEAD~1
```

`skill publish` is manifest-driven and does not need a separate CI mode. For
GitHub publishing, configure the allowed branch in `on.push.branches` and protect
that same branch in GitHub. Do not add branch policy to the manifest.

## Verify the result

Use the returned skill ID to inspect the result and its versions:

```bash theme={null}
atlanai skill get skill_123
atlanai skill versions skill_123
atlanai skill runs skill_123
```

For every flag, confirmation behavior, and output field, see the full
[`atlanai skill` reference](/tools/cli/references/commands/skill). To publish the same
repository on every change to its publish branch, follow [Sync skills from
GitHub](/registry/skills/how-tos/sync-from-github).
