Claude Code Plugins

Community-maintained marketplace

Feedback

This skill should be used when the user asks to "generate gitlab-ci.yml",

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name building-with-tbc
description This skill should be used when the user asks to "generate gitlab-ci.yml", "create GitLab CI pipeline", "configure GitLab CI/CD", "use To-Be-Continuous templates", "setup TBC templates", "create CI/CD for Python/Node/Go/Java project", "configure Docker build in GitLab", "setup Kubernetes deployment in GitLab", "add SonarQube to GitLab CI", "configure Terraform with GitLab", or mentions "TBC", "To-Be-Continuous", "Kicker".
version 1.0.0

Building with To-Be-Continuous (TBC)

Knowledge base for generating GitLab CI/CD configurations using the To-Be-Continuous framework.

CRITICAL: Framework-First Principle

NEVER assume a solution. ALWAYS evaluate the framework first.

Before generating any configuration, invoke the component-research skill using the Skill tool:

Skill: component-research

This triggers the Deep Research process to determine:

  • Which TBC components fit the use case
  • Whether variants are needed
  • If custom steps are truly required (rare)

Mandatory Workflow:

  1. Invoke component-research skill (Skill tool) to evaluate fit
  2. Wait for decision output with Priority 1-6 recommendation
  3. Only proceed to generate configuration after decision is documented
  4. If Priority 6 (custom step), document WHY TBC doesn't fit

The user may request something and be incorrect about the approach. The component-research skill disciplines correct framework usage before any generation happens.

Overview

To-Be-Continuous (TBC) is a framework of 62 modular templates organized into 8 categories for building GitLab CI/CD pipelines.

Template Categories

Category Count Selection
Build 15 Single
Code Analysis 7 Multiple
Packaging 3 Single
Infrastructure 1 Single
Deployment 11 Single
Acceptance 10 Multiple
Other 3 Multiple

Selection Rules:

  • Build, Packaging, Infrastructure, Deployment: SELECT ONE or NONE
  • Code Analysis, Acceptance, Other: SELECT MULTIPLE (including none)

Configuration Modes

Mode GitLab Version Syntax
component 16.0+ (recommended) $CI_SERVER_FQDN/path/template@version
project Self-hosted project: "path" + ref + file
remote External HTTPS URL to template

Version Modes

Mode Syntax Updates
major @7 Auto major (less stable)
minor @7.5 Auto patch (recommended)
full @7.5.2 None (most stable)

Generating Configurations

When generating a TBC configuration, read and follow references/create-component.md.

Evaluating Component Fit

Before generating, invoke the component-research skill using the Skill tool. That skill executes the complete decision process with flowcharts and Deep Research protocol.

Reference Files

Need Reference
Decide if component fits Invoke component-research skill (Skill tool)
Complete template catalog references/templates-catalog.md
Build templates (15) references/build-templates.md
Deployment templates (11) references/deployment-templates.md
Analysis templates (7) references/analysis-templates.md
Variants (Vault, OIDC) references/variantes.md
Common presets references/presets.md
Best practices references/best-practices.md
Configuration formats references/configuration-formats.md

Schemas

All templates have JSON schemas in schemas/. Read schema to get valid inputs, components, and versions:

schemas/{template-name}.json

Example Configurations

Working examples in examples/:

  • python-docker-k8s.yml
  • node-sonar-docker.yml
  • terraform-aws.yml
  • java-maven-cf.yml

Validation

Use SlashCommand tool with tbc:validate.

Key Principles

  1. Read schemas first - templates have specific variables, don't hallucinate
  2. Transform names for component mode - lowercase with hyphens
  3. Validate before presenting - use tbc:validate
  4. Respect selection rules - single vs multiple per category
  5. Document secret variables - they go in GitLab CI/CD settings
  6. Use $CI_SERVER_FQDN for component mode