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

# Builtin Skills

> A productivity/research/dev skills pack embedded in the binary and seeded on startup — present for every install (go install, brew, release).

ChatCLI now **embeds a set of essential skills inside the binary** and seeds them into `~/.chatcli/skills/` on startup. Previously skills only existed in the project's `.agent/skills/` (visible only inside the repo checkout) or via [skills.sh](/features/skill-registry) (opt-in remote install) — a user installing via `go install`/brew had **no skills at all**. Now they ship by default.

<Info>
  Inspired by hermes-agent's skill spectrum, but each skill is **rewritten for ChatCLI's own tools** (`@coder`/Bash, `@webfetch`/`@websearch`, `@send`, `@scheduler`, `@read`/`@search`) — no third-party closed infra. Keyless-first and **OS-agnostic** (branches for macOS, Linux and Windows).
</Info>

***

## How seeding works

On startup, `pkg/persona/builtin` materializes each embedded `SKILL.md` into `~/.chatcli/skills/<name>/`. It is **idempotent and edit-safe** via a content-hash manifest (`.builtin-manifest.json`):

| Situation                        | Action                       |
| -------------------------------- | ---------------------------- |
| Skill missing                    | install                      |
| Unedited but stale (new release) | refresh                      |
| **User-edited**                  | **preserve** (never clobber) |
| Already current                  | nothing                      |

It works for **every install method** (go install, Homebrew, downloaded release), not just repo checkouts. Skills stay visible and editable on disk.

***

## Included skills

**Productivity & system**
`send-message` · `email` · `calendar` · `reminders` · `notes` · `imessage`

**Research & knowledge**
`web-research` · `arxiv` · `obsidian` · `huggingface`

**Documents & media**
`pdf-tools` · `ocr` · `youtube` · `presentations` · `paper-writing` · `mermaid-diagrams` · `ascii-art`

**Location & home**
`maps` (OpenStreetMap/OSRM, keyless) · `hue-lights` (local bridge, keyless)

**Dev & data**
`github` (gh CLI) · `jupyter` · `webhooks`

**Services (user's own token)**
`notion` · `linear` · `airtable`

**Meta**
`skill-authoring` — teaches the agent to [author and evolve its own skills](/features/skill-authoring)

***

## Auto-activation

Each skill declares `triggers:` in frontmatter; when a user phrase matches a trigger, the skill is injected into context automatically (`FindAutoActivatedSkills`). You can also invoke one manually via `/<skill-name>`.

<Tip>
  Skills prefer the **OS-agnostic** tools (`@send`, `@scheduler`) and detect the available native CLI (himalaya/gcalcli/osascript/PowerShell), degrading with an install hint instead of guessing.
</Tip>

***

## Related

* [Skill Authoring (@skill)](/features/skill-authoring) — create, evolve, stats and packs
* [Skill Registry (skills.sh)](/features/skill-registry) — install community skills
* [Customizable Agents](/features/customizable-agents)
