Skip to content

Agent Skills ​

The CLI bundles Anvia knowledge for a developer's coding agent. Each skill has a SKILL.md entrypoint, supporting references/, and verification or example scripts/. Installing a skill copies these files; it does not execute the scripts or start an Anvia agent.

Bundled skills ​

CLI 1.5.0 includes these ten skills:

SkillUse it for
anvia-agentAgents, tools, approvals, memory, streaming, teams, and providers
anvia-durableExperimental: durable main agents, owned subagents, replay-safe effects, approvals, persisted waits, task graphs, and remote controls; includes a local no-network restart smoke check
anvia-chatServer routes, transports, React hooks, and chat UI primitives
anvia-channelsDiscord, Slack, Telegram, sessions, and proactive delivery
anvia-evalsDeterministic metrics, model judges, RAG checks, and CI evaluation
anvia-mcpMCP clients, transports, tool discovery, and URL safety
anvia-pipelineSequential, parallel, batch, and agent pipeline stages
anvia-ragChunking, embeddings, vector stores, knowledge graphs, and retrieval
anvia-studioServing and inspecting agents, traces, approvals, and observability
release-notesA generic release-note drafting demo
sh
anvia skills list

list prints bundled names, rather than inspecting installed files. The CLI has no per-skill installation flag.

Install the canonical files ​

sh
anvia skills init

The default layout is:

text
skills/
  anvia-agent/
    SKILL.md
    references/
    scripts/
  anvia-chat/
    SKILL.md
    references/
    scripts/
  ...

Run this from any project directory. React, components.json, and shadcn initialization are not required. Script executable permissions are preserved where the filesystem supports them. Running init again fills missing files and keeps differing existing files unless you use --force. Files that are no longer in the bundle are not deleted.

Connect your coding agent ​

Target flags add integrations alongside the canonical skill copy:

FlagOutputHow it connects the agent
Noneskills/<name>/Your agent can read each SKILL.md directly
--claude.claude/skills/<name>/A separate, self-contained copy for Claude Code
--cursor.cursor/rules/<name>.mdcOne rule per bundled skill, pointing to the canonical SKILL.md; alwaysApply: false
--agentsAGENTS.mdA section listing the skills and how to read them
--codexAGENTS.mdAn alias for the AGENTS.md integration; it does not create .codex/skills/
sh
anvia skills init --claude --cursor --codex

The AGENTS.md integration owns the section between <!-- anvia-skills:start --> and <!-- anvia-skills:end -->. It preserves content outside a valid marker pair. If the markers are absent, it appends a section; if the file is absent, it creates it. Keep project-specific instructions outside the generated section.

Choose another directory ​

sh
anvia skills init --dir agent-skills --cwd ./my-project --cursor --agents

The canonical files now live in my-project/agent-skills/. Cursor rules and the AGENTS.md section point to agent-skills/<name>/SKILL.md. The Claude copy still lives under my-project/.claude/skills/.

Use the same --dir and --cwd values on later updates. Changing --dir selects a different destination; it does not move or remove the previous copy. Updating differing Cursor pointers requires --apply.

Update skills and integrations ​

Preview the canonical copy and selected integrations:

sh
anvia skills update --claude --cursor --codex

The preview lists paths that would change and writes nothing, including AGENTS.md. Apply the same selection explicitly:

sh
anvia skills update --claude --cursor --codex --apply

Target choices are not saved. Without flags, updates only visit the canonical copy. Comparisons use the skills bundled with the CLI build you run.

TargetPreviewWith --apply
Canonical and Claude skill treesList differing and missing files inside installed skillsReplace differing files and restore missing files within installed skills
Cursor rulesList differing and missing rulesReplace differing rules and create missing rules for all bundled skills
AGENTS.md / CodexReport a pending generated section without writingCreate or refresh the generated section, preserving surrounding instructions

skills update --force remains a compatibility alias for --apply. During installation, skills init --force still allows replacing differing skill files and Cursor rules.

For skill trees, a skill counts as installed when at least one file expected by the bundle exists. Removing an entire skill directory prevents update, including --apply, from reinstalling it. Run skills init to restore it. Cursor rules and the AGENTS.md list are generated from all bundled names, so they can still point to a skill directory you removed.

The comparison cannot tell a local customization from an older bundled file: both differ from the current bundle. Review or commit your changes before using --apply.

Use the files in an Anvia runtime ​

For an application that deliberately loads these skills into an Anvia agent, the Core skill loader can read the canonical directory:

ts
import { loadSkills, skill } from '@anvia/core/skills'

const skills = await loadSkills(skill.local('./skills'))
console.log(skills.skills.map((entry) => entry.name))

Installing files for a coding agent and enabling skills in an application runtime are separate steps. Continue with runtime skills for loading and agent configuration, or the CLI API reference for programmatic installation.

Built for Anvia.