Skip to content

Latest commit

 

History

History
158 lines (129 loc) · 10.1 KB

File metadata and controls

158 lines (129 loc) · 10.1 KB

Melodee AI Agent Guide

Overview

This document serves as a guide for AI agents interacting with the Melodee solution. It outlines the project structure, coding standards, and available resources to ensure consistent and high-quality contributions.

Project Context

Melodee is a comprehensive music and media management system built with .NET (C#) and Blazor. It includes features like Party Mode, Jukebox functionality, and media library management.

AI Resources

This repository contains a suite of configuration files designed to guide AI behavior, located in the .github/ directory.

Quick start: pick the right instruction set

Before editing, open the most relevant instruction file(s) under .github/instructions/.

1. Custom Instructions (.github/instructions/)

These files define the specific coding standards, architectural guidelines, and best practices for the project. Agents MUST adhere to these instructions when working on relevant parts of the codebase.

See: .github/instructions/

2. Agent Personas (.github/agents/)

Specialized agent definitions for specific tasks. Use these personas to adopt the appropriate mindset and toolset.

See: .github/agents/

3. Prompt Library (.github/prompts/)

Reusable prompts for common tasks to ensure consistency.

See: .github/prompts/

4. CI/CD Workflows (.github/workflows/)

GitHub Actions workflows defining the build and test pipelines.

See: .github/workflows/

Usage Guidelines for Agents

  1. Context awareness: Before generating code, always check .github/instructions/ for relevant guidelines. For example, if editing a Blazor component, consult blazor.instructions.md.
  2. Persona adoption: When assigned a specific task type (e.g., "Refactor this"), check if a matching agent persona exists in .github/agents/ (e.g., tdd-refactor.agent.md) and align your behavior with it.
  3. Prompt utilization: If asked to write documentation or tests, check .github/prompts/ to see if a prompt exists to standardize output format (e.g. csharp-docs.prompt.md).

Before you change code (fast checklist)

Documentation Guidelines

IMPORTANT: The /docs directory is reserved for the Jekyll-based public documentation site (GitHub Pages). DO NOT place internal documentation, implementation notes, session summaries, or test guides in /docs.

Where to Place Documentation

Document Type Location Notes
Public user docs /docs/pages/ Jekyll-formatted, visible at melodee.org
Implementation notes /design/docs/ Internal technical documentation
Session summaries /design/docs/ AI session summaries and fix docs
Requirements specs /design/requirements/ Feature requirements and specifications
Testing guides /design/testing/ Manual test walkthroughs, coverage reports
Runbooks /design/runbooks/ Operational debugging guides
ADRs /design/adr/ Architecture Decision Records
Chart data /design/charts/ JSON data files for music charts

Public Documentation (Jekyll)

When creating public-facing documentation (user guides, API docs):

  1. Create files in /docs/pages/
  2. Use Jekyll front matter format
  3. Update /docs/_data/toc.yml for navigation

Example front matter:

---
title: Feature Name
description: Brief description of the feature
tags:
  - feature
  - configuration
---

Internal Documentation

When creating internal documentation (implementation notes, debugging guides):

  1. Create files in the appropriate /design/ subdirectory
  2. Use standard Markdown (no Jekyll front matter required)
  3. Name files descriptively: feature-name-description.md

Auto-generated guide for AI collaboration.