Vaner

Agent Skills

How Vaner discovers, consumes, and distills SKILL.md files in a closed loop.

Vaner can treat agent skills as both an input signal and an output artifact.

Closed loop

graph LR
  subgraph ws [Workspace]
    Skills[".cursor/skills/**/SKILL.md<br/>.claude/skills/**/SKILL.md"]
  end
  subgraph agent [AgentRuntime]
    Agent[AgentLoadsSkill]
  end
  subgraph vaner [Vaner]
    Discover[skills_discovery]
    Features[extract_hybrid_features]
    Frontier[ExplorationFrontier]
    Scen[ScenarioStore]
    MCP["report_outcome (skill)"]
    Dist[distill_skill_CLI]
    Dec[DecisionRecord]
  end

  Skills -->|"scan on cycle"| Discover
  Discover -->|"skill_loaded signals"| Features
  Discover -->|"seed_from_skills"| Frontier
  Agent -->|"loads skill"| Skills
  Agent -->|"calls tools"| MCP
  MCP -->|"feedback queue"| Frontier
  MCP --> Scen
  Dec -->|"distill"| Dist
  Dist -->|"writes SKILL.md"| Skills

Supported skill roots

  • .cursor/skills/**/SKILL.md
  • .claude/skills/**/SKILL.md
  • skills/**/SKILL.md

By default, Vaner only persists repo-local skills. Global paths are opt-in via:

[intent]
include_global_skills = true

Authoring a Vaner-aware skill

---
name: vaner-predictive-debug
description: Use when diagnosing a failing test.
tags: [debug, tests]
triggers:
  - "tests/**"
  - "pytest"
vaner:
  kind: debug
  expand_depth: 2
  feedback: auto
---
  • triggers help Vaner map skills to likely file sets.
  • vaner.kind biases scenario matching (debug, explain, change, research).

Auto-feedback

vaner init now installs a managed vaner-feedback skill under:

  • .cursor/skills/vaner/vaner-feedback/SKILL.md
  • .claude/skills/vaner/vaner-feedback/SKILL.md

It teaches agents to close the loop with report_outcome.

Distill a skill from a decision

vaner distill-skill --path . --name "repo-debug-playbook"

This converts a decision record into a managed SKILL.md playbook.

Disable the loop

[intent.skills_loop]
enabled = false

On this page