Skip to content

Plugin Development

A developer-oriented map of how the plugin is organized: where agents, skills, extensions, and tests live, and where to go for detailed contribution guidance.

Plugin Anatomy

The plugin follows a standard Copilot CLI plugin layout defined by plugin.json:

osdu-copilot-plugin/
├── plugin.json              # Manifest: name, version, entry points
├── AGENTS.md                # System identity and routing rules
├── .mcp.json                # MCP server configuration
├── agents/                  # Agent definitions (*.agent.md)
├── skills/                  # Skill definitions (SKILL.md per directory)
├── .github/extensions/      # Copilot CLI extensions
│   ├── cron/                # Session-scoped task scheduling
│   └── osdu/                # Live OSDU platform access
├── tests/                   # Four-layer test framework
│   ├── evals/triggers/      # L2: Trigger eval sets per skill
│   ├── evals/scenarios/     # L3: Multi-turn session scenarios
│   ├── scripts/             # Test runners and validators
│   └── unit/                # pytest suite
├── docs/                    # This documentation site
├── Makefile                 # Test runner entry point
└── CONTRIBUTING.md          # Full contributor guide

What Contributors Change

What you want to do Where to look
Add or modify a skill skills/{name}/SKILL.md with optional reference/ and scripts/
Add or modify an agent agents/{name}.agent.md and routing in AGENTS.md
Change system routing or identity AGENTS.md
Add or modify an extension .github/extensions/{name}/
Add trigger test coverage tests/evals/triggers/{name}.json
Add session test coverage tests/evals/scenarios/{name}-workflow.json
Update MCP server config .mcp.json

Key Commands

make test                # Lint + unit tests (~2s)
make integration S=glab  # Session test for one skill
make doctor              # Check local CLI dependencies

For the full development workflow, conventions, and authoring steps, see CONTRIBUTING.md.

  • Testing Framework


    Four-layer test model: structure validation, trigger accuracy, session integration, and skill value benchmarking.