Skip to content

Add support for repository-specific Copilot custom instructions #63

@dorser

Description

@dorser

Background

GitHub supports adding custom instructions per repository for Copilot, allowing teams to configure tailored behavior and context for AI suggestions on a project-by-project basis.
Docs: https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions

Problem

Micromize currently does not provide a way to define repository-level custom Copilot instructions. This means team-specific guidance (e.g., architectural patterns, code styles, preferred APIs) cannot be surfaced automatically by Copilot within the context of this repo.

Goal

Introduce a mechanism to store and apply repository-specific custom Copilot instructions, so that Copilot suggestions align with Micromize’s conventions and team preferences.

Proposed Solution

  1. Add a config file in the repo (e.g., .github/copilot_instructions.yml or similar) to hold custom instruction settings.
  2. Define a schema for repository instructions, such as:
preferences:
  writing_style: "Concise, technical, code-first"
  avoid_suggestions: ["magic numbers", "insecure defaults"]
context:
  project_focus: "Optimizing Knative workloads via Rust eBPF"
  architecture: "multi-tenant, secure by default"
  1. Ensure Copilot uses these instructions when generating completions in this repository.
  2. Add tests/validation for the config file format (optional).

Acceptance Criteria

  • A clear instruction file exists in Micromize repositories.
  • Copilot reads and applies the instructions when active in the repo.
  • Documentation is added on how to update and maintain repository instructions.

References

GitHub Docs: Add repository instructions for Copilot: https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions

Metadata

Metadata

Assignees

No one assigned

    Labels

    ci/cdCI/CD pipeline and automationdevexDeveloper experience improvements

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions