ai-agent-skills

Agent Behavior Standard

Purpose

This document defines the canonical behavior rules that ALL AI agents must follow to work with bioconductor’s skill repository. It establishes a platform-agnostic contract: agents adapt to this standard, not the other way around.

Core Principles

1. Agent Neutrality

Skills are platform-agnostic by design. They contain no embedded vendor-specific metadata or logic. Agents are responsible for:

Skills do not reference platforms:, triggers:, or other agent-specific configuration.

2. Single Source of Truth

3. Natural Language Invocation

Skills are discovered and invoked through natural language matching, not rigid command syntax. See § Skill Discovery & Invocation for details.

4. Skill Execution Model

Agents read and follow skills as instructions:

  1. Read the skill file (SKILL.md)
  2. Understand the skill’s purpose from the description
  3. Follow the documented process step-by-step
  4. Adapt tool usage to agent’s available capabilities
  5. Produce output as documented in the skill

Skills are prompts, not code. Agents interpret and execute them using their own tools.

5. Portability Over Convenience

6. Workflow over Code Snippets

Skills must define workflows (the intent, multi-step process, and domain knowledge), not just provide raw code. While highly specific code snippets can be provided to overcome LLM anti-patterns, handle unique APIs, or adhere to strict lab standards (e.g., BiocParallel vs lapply), they must serve strictly as guardrails embedded within a numbered workflow step, never as the entire skill itself.

Skill File Format

Minimal Required Fields

Every skill MUST include these YAML frontmatter fields:

---
name: skill-name              # Unique identifier (kebab-case, REQUIRED)
description: Brief purpose    # One-line description driving discovery (REQUIRED)
version: 1.0.0               # Semantic version (REQUIRED)
category: meta               # Primary domain: meta, r-packages, etc. (REQUIRED)
author: bioconductor           # Creator/maintainer (OPTIONAL)
tags: [tag1, tag2]          # Searchable tags (OPTIONAL)
---

What NOT to Include

Skills MUST NOT contain:

# [Skill Name]

Brief overview (1-2 paragraphs).

## Usage

How users naturally invoke this skill.
Agents will adapt this to their platform.

## Prerequisites

Required files, setup, or dependencies.

## Process

Numbered steps describing what to do.
Platform-agnostic language: "read the file", not "use Read tool".

## Output Format

Expected output structure or examples.

## Platform-Specific Notes (Optional)

Only if meaningful platform differences exist.
Document HOW platforms differ, not what they should do.

## Examples

Concrete usage scenarios.

## Notes

Additional context or caveats.

Principle: Describe WHAT to do, not HOW (specific tools). Let agents figure out HOW with their available capabilities.

Avoiding Content Duplication

Skills must maintain this document (AGENTS.md) as the single source of truth for format specifications and standards.

How to Reference Properly

Instead of duplicating, use references:

✅ "See AGENTS.md § Skill File Format for complete specification"
✅ "Check that frontmatter conforms to AGENTS.md § Minimal Required Fields"
❌ Do not list required fields or copy YAML templates
❌ Do not duplicate external classification systems or checklists

When to Include Content

Skills SHOULD include:

Principle: Reference authoritative sources; only include content unique to the skill’s purpose.

Skill Discovery & Invocation

Primary Discovery Mechanism: SKILLS.md

The file SKILLS.md is the canonical skill index. It is:

Format:

### [Category]

#### [Skill Name]
**Purpose**: From skill description
**Location**: `skills/[name]/SKILL.md`
**Invocation**: "Natural language the user might say"
**When to use**: Context for when this skill applies

Invocation Pattern

  1. User provides intent (natural language): “Create a new skill for validating R packages”
  2. Agent reads SKILLS.md: Finds matching skill based on description
  3. Agent invokes skill: Using platform-specific mechanism
    • Claude Code: /create-skill (optional shortcut)
    • Copilot: @workspace create a new skill (optional shortcut)
    • Other agents: Custom mechanism, but same underlying skill
  4. Agent executes skill: Follows documented process, adapts tools as needed
  5. User receives output: Consistent regardless of platform

Optional Platform-Specific Shortcuts

Agents MAY provide platform-specific shortcuts for convenience:

Important: These shortcuts are optional conveniences, not the primary invocation mechanism. Users who don’t know or use these shortcuts can still invoke skills through natural language.

Agent Responsibilities

MUST (Mandatory)

Compliant agents:

SHOULD (Strong Recommendation)

MAY (Optional)

Platform Adapter Requirements

What Adapters Are

Platform adapters are thin wrapper documents located in instructions/{agent-name}.md that explain how to install skills for a specific agent, provide optional shortcuts, and list troubleshooting tips.

What Adapters Should/Must Not Include

Example minimal structure:

# Claude Code Setup

## Installation

[Setup steps for configuring skills on Claude Code]

## Using Skills

1. Browse available skills in [SKILLS.md](../SKILLS.md)
2. Invoke naturally: "Analyze this R package"
3. Optional: Use slash commands if configured (e.g., `/analyze-r-package`)

## Troubleshooting

[Platform-specific troubleshooting tips]

See [AGENTS.md](../AGENTS.md) for canonical behavior and [SKILLS.md](../SKILLS.md) for skill catalog.

Responsibility Mapping

Concept Who owns it What it contains What it MUST NOT contain
Skill Invocation Examples SKILLS.md Natural language examples (“I want to make a skill that…”) N/A (Do not duplicate in instructions/{agent}.md)
Platform-Specific Shortcuts instructions/{agent}.md Optional shortcuts (e.g., /create-skill) N/A (Do not put shortcuts in skill files)
Skill Process & Logic SKILL.md files Step-by-step process, prerequisites, output format, platform-agnostic logic Platform-specific setup, shortcuts, or configuration (do not put these in skill files)
Setup & Configuration instructions/{agent}.md How to install skills, platform-specific troubleshooting N/A
Canonical Behavior Rules AGENTS.md Discovery/invocation rules, compliance criteria, prohibited metadata N/A
Technical Format SKILL_STANDARD.md YAML frontmatter fields, markdown structure, validation checklist N/A

Scope & Limitations

This Standard Does Not Cover

Relationship to Other Documents

Questions & Clarifications

Q: What if a skill needs different logic for different agents?

A: Document the platform differences in a “Platform-Specific Notes” section within the skill. Let each agent adapt the approach to their capabilities.

Q: Can agents cache SKILLS.md or skill files?

A: Yes. But they must re-validate against the repository version periodically to stay current.

Q: What about MCP (Model Context Protocol) servers?

A: MCP is optional infrastructure. Skills are designed to work as plain markdown + YAML, with or without MCP support. If an agent uses MCP, it’s an implementation detail, not a requirement here.

Version History

Maintenance

Maintained by: bioconductor

When to update:

Change process:

  1. Open issue describing needed change
  2. Discuss rationale with maintainers
  3. Submit PR with updated AGENTS.md
  4. Increment version
  5. Tag release and notify affected agents

The key principle: Agents adapt to this standard and repository, not the other way around. Skills are portable, platform-agnostic prompts. Agents are the layer that brings them to life on specific platforms.