Skip to content

Harbor operator skills

Skills (in the Anthropic claude-code sense) for building agents with Harbor. Each one is a focused playbook: read it, follow the numbered steps, get a working surface.

These are operator skills — playbooks for humans (and AI coding agents) building Harbor agents. They are NOT the runtime skill subsystem the planner consults during reasoning (those live in internal/skills/). The glossary entry in docs/glossary.md pins the distinction.

The first-five-minutes adoption chain

A fresh contributor follows this exact chain to get from git clone to "I'm chatting with a working agent" in under five minutes:

  1. scaffold-a-harbor-agentharbor init + harbor scaffold + the tiered yaml.
  2. run-the-dev-loopharbor dev + harbor console + the token handshake.
  3. drive-the-playground — chat against the agent, upload files, steer mid-run.

That's the load-bearing path. Everything else is built around it.

Skills by phase

Start a project

Build the agent

Drive it interactively

Observe + debug

Ship

Build a custom frontend

Drift discipline

Per CLAUDE.md §18, any PR that changes a documented surface (a CLI verb, a Protocol method, a Console route, a harbor.yaml field) MUST update the matching skill in the same PR. Use this grep to find which skill is affected by a surface change:

bash
grep -lE "surface: <changed-surface>" docs/skills/*/SKILL.md

The frontmatter audit (scripts/skills/check-frontmatter.sh, run as part of make drift-audit) catches shape drift. Content drift is human-reviewed; reviewers look for it.

Convention

Each skill is docs/skills/<slug>/SKILL.md with Dockyard-style frontmatter:

yaml
---
name: <slug-kebab-case>
description: "Use when <framing>"
license: Apache-2.0
metadata:
  framework: harbor
  surface: cli | agent-yaml | tools | mcp | llm | memory | playground | console | tasks | protocol
  verbs: "<harbor cli verbs>"
---

Sibling project Dockyard ships the same convention for MCP-server projects.

Apache-2.0 licensed — see LICENSE.