GitHub Copilot CLI

Skills and memory system with GitHub Copilot CLI

Overview

GitHub Copilot CLI integrates directly into your terminal workflow. Fulcrum generates a .github/ configuration that leverages Copilot's skills and memory systems for persistent, context-aware assistance.

Generated Structure

Running fulcrum sync --vendor copilot generates:

.github/
├── copilot-instructions.md   # Main instructions file
├── skills/                   # Skill definitions
│   ├── brainstorming.md
│   ├── code-reviewer.md
│   ├── test-engineer.md
│   └── ...
└── memories/                 # Persistent context
    └── project-context.md

Using Skills

Copilot CLI supports skill invocation through the instructions file. Skills are referenced and activated based on context:

# In your terminal with Copilot CLI
gh copilot suggest "implement user authentication"

# Skills auto-activate based on task type
# brainstorming → design discussions
# code-reviewer → PR reviews
# test-engineer → test generation

Skill Configuration

Each skill in .github/skills/ defines:

  • Trigger conditions — When the skill should activate
  • Instructions — How Copilot should behave
  • Output format — Expected response structure

Memory System

Copilot CLI's memory feature provides persistent context across sessions:

# .github/memories/project-context.md
## Project Overview
- TypeScript monorepo with React frontend
- PostgreSQL database with Prisma ORM
- Deployed on Vercel

## Conventions
- Use functional components with hooks
- All API routes in /api directory
- Test files colocated with source

## Recent Decisions
- Migrated from REST to GraphQL (2024-01)
- Added Redis caching layer (2024-02)
Memory tip: Keep project-context.md updated with architectural decisions, conventions, and recent changes. Copilot uses this for more relevant suggestions.

Instructions File

The main copilot-instructions.md configures Copilot's behavior:

# Copilot Instructions

## Role
You are an AI pair programmer working on this codebase.

## Available Skills
When the user's request matches these patterns, apply the corresponding skill:

- **brainstorming**: Creative exploration, design discussions
- **code-reviewer**: PR reviews, code quality checks
- **test-engineer**: Test generation, coverage improvement

## Project Context
@import memories/project-context.md

## Coding Standards
- TypeScript strict mode
- ESLint + Prettier formatting
- Conventional commits

Terminal Workflow

Copilot CLI integrates into your existing terminal workflow:

# Ask for implementation help
gh copilot suggest "add rate limiting to API endpoints"

# Explain code
gh copilot explain "$(cat src/auth/middleware.ts)"

# Generate commit message
gh copilot suggest "commit message for these changes"

Configuration Options

Customize the adapter in fulcrum.config.ts:

// fulcrum.config.ts
export default {
  vendors: {
    copilot: {
      enabled: true,
      output: '.github',
      skills: {
        include: ['brainstorming', 'code-reviewer', 'test-engineer'],
        exclude: ['platform-architect']
      },
      memory: {
        enabled: true,
        contextFile: 'project-context.md'
      }
    }
  }
}

Sync Command

# Generate Copilot CLI configuration
fulcrum sync --vendor copilot

# Watch for changes and auto-sync
fulcrum sync --vendor copilot --watch

# Sync all vendors at once
fulcrum sync
GitHub integration: The .github/ directory is automatically recognized by GitHub, making your Copilot configuration portable across development environments.