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

# Building a Skill

> Step-by-step guide to creating a Theo skill with defineSkill().

## 1. Scaffold

```bash theme={null}
mkdir my-skill && cd my-skill
theo skill init
```

This creates `theo-skill.json` and `README.md`.

## 2. Define the Manifest

Edit `theo-skill.json` or use `defineSkill()` in TypeScript:

```typescript theme={null}
import { defineSkill } from "@hitheo/sdk";

export default defineSkill({
  name: "Inventory Check",
  slug: "inventory-check",
  version: "1.0.0",
  description: "Real-time inventory lookup and reorder alerts",
  category: "automation",
  author: { name: "Acme Corp" },
  systemPromptExtension: `
    You are an inventory management specialist. When the user asks about
    stock levels, use the check_stock tool. Flag items below reorder threshold.
  `,
  tools: [
    {
      name: "check_stock",
      description: "Look up current stock levels for a SKU",
      inputSchema: {
        type: "object",
        properties: {
          sku: { type: "string", description: "Product SKU" },
        },
        required: ["sku"],
      },
    },
  ],
  permissions: ["read:artifacts", "execute:tools"],
  trigger: { type: "keyword", config: { keywords: ["stock", "inventory", "reorder"] } },
});
```

## 3. Validate

```bash theme={null}
theo skill validate
```

## 4. Publish

```bash theme={null}
theo skill publish
```

See [Publishing](/skills/publishing) and [Review Pipeline](/skills/review-pipeline) for details.
