Agentic Tool Development

Data Team guide for developing agentic tools that work in our repositories.

The Data Team’s approach to agentic tooling is built around a skills-first, compose-upward model. Rather than building monolithic agents, the team decomposes work into small, testable, reusable skills — each handling a single well-defined task. Agents are then composed from those skills, delegating to them based on the type of work requested.

This approach builds on emerging standards from OpenCode and Anthropic — including conventions like AGENTS.md for repository-level agent context — and will be continuously evaluated and evolved as GitLab Duo matures as a platform.

Directory Structure Convention

Every repository that adopts this pattern organizes agentic tooling under an agents/ directory with four subdirectories:

agents/
├── memory/     # Shared context files for coordinating parallel agent work
├── skills/     # Atomic, reusable capabilities; each skill has a SKILL.md
└── agents/     # Composed agents ready for use; each agent has a markdown spec

Skills

Skills are the atomic building blocks. Each skill lives in its own directory with a SKILL.md that defines its purpose, inputs, process steps, and constraints. Skills are scoped to a single responsibility and are designed to be invoked by agents or directly by engineers.

The team’s skills follow the emerging Agent Skills specification, an open standard that defines a portable, interoperable format for packaging AI agent capabilities. By conforming to this specification, skills can be discovered, loaded, and executed consistently across different AI coding tools and clients — making them portable beyond any single platform.

Agents

Agents are composed from skills and subagents. Each agent is defined by a markdown file that specifies:

  • System prompt — the agent’s role and behavioral constraints
  • Skills — which atomic skills it may invoke
  • Subagents — which peer agents it may delegate to
  • MCP servers — which external tools (databases, APIs, knowledge bases) it has access to
  • Process — a structured workflow the agent follows

Agents are designed to be transparent and auditable: all capabilities are explicitly enumerated and no agent improvises outside its defined toolset.

Development and Change Management

New skills and agents are validated before being promoted to production using tools like Anthropic’s skill-creator, which provides a structured framework for evaluating, testing, and benchmarking skills prior to merging. This ensures that only well-tested, reliable capabilities are promoted to the skills/ and agents/ directories.

Once ready, changes follow the same merge request workflow as any other code change in the repository, ensuring peer review, version history, and rollback capability. Because skills and agents are plain markdown files, they are diffable, reviewable, and auditable like any other code artifact.

The AGENTS.md file at the repository root serves as the entry point for agentic context — it describes the directory structure and conventions so that any AI coding assistant working in the repository can orient itself immediately.

As the field of agentic AI evolves rapidly, the team’s conventions, tooling choices, and agent designs will be continuously re-evaluated. Patterns that work well today may be superseded by new capabilities in GitLab Duo or updated standards from the broader ecosystem, and the team will adapt accordingly.