diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..2753629 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,100 @@ +# DanceLessonsCoach Agent Improvement Log + +This file tracks the agent's contributions and decisions. Kept compact and iterative. + +## Current Focus (2026-04-04) + +### Active Configuration +- **Agent**: DanceLessonsCoachProgrammer +- **Location**: `/Users/gabrielradureau/Work/Vibe/.mistral/dancelessonscoachprogrammer-agent.toml` +- **Status**: Fully operational with workflow constraints + +### Recent Decisions +- ✅ Use existing `cli` system prompt with custom overrides +- ✅ Enable web tools for research (web_search, web_fetch) +- ✅ Restrict git commands (no add/commit/push/merge/rebase) +- ✅ Require ADR documentation for all architectural decisions + +## Workflow Constraints + +### Always Ask Before +- Adding libraries/frameworks +- Major architectural changes +- Breaking changes + +### Always Check +- `adr/` folder for existing decisions +- Roadmap alignment +- BDD scenario coverage + +### Always Document +- New ADRs in `adr/` folder +- Feature changes in CHANGELOG.md +- Test scenarios in `features/` + +## Agent Session Guide + +### Starting a Session +```bash +cd /Users/gabrielradureau/Work/Vibe/DanceLessonsCoach +vibe start --agent dancelessonscoachprogrammer +``` + +### Example Workflow +``` +🤖 "Need to add library X. Approve?" +👤 "Yes, document in ADR first" +🤖 Creates adr/00XX-library-x.md +🤖 Implements with BDD tests +🤖 Updates CHANGELOG.md +``` + +## Compact History (Last 5 Entries) + +### 2026-04-04 +- Configured agent with workflow constraints +- Enabled web research tools +- Restricted git operations +- Documented in adr/0010-agent-configuration-relationship.md + +### 2026-04-04 +- Added bdd_testing skill (updated to match validated implementation) +- Added commit_message skill (Gitmoji validation) +- Added skill_creator skill (framework) + +### 2026-04-04 +- Implemented BDD testing with Godog +- Created features/greet.feature and features/health.feature +- Added pkg/bdd/ with test server and steps + +### 2026-04-04 +- Added comprehensive ADR documentation +- Created adr/0001-0009 covering all major decisions +- Enhanced AGENTS.md with complete project documentation + +### 2026-04-04 +- Established project structure +- Implemented core Greet service +- Added Chi router and Zerolog logging +- Created CLI and web server interfaces + +## Maintenance + +**Compaction Rule**: Keep only last 5 entries. Older history archived in git. + +**Archiving**: When compaction needed: +```bash +git log --oneline -- CHANGELOG.md > CHANGELOG_archive.md +echo "## Compact History (Last 5 Entries)" > CHANGELOG.md +# Add last 5 entries from git history +git log -5 --pretty=format:"### %ad%n- %s%n" -- CHANGELOG.md >> CHANGELOG.md +``` + +## References + +- **Agent Config**: `/Users/gabrielradureau/Work/Vibe/.mistral/dancelessonscoachprogrammer-agent.toml` +- **ADR Pattern**: `/adr/README.md` +- **BDD Guide**: `/pkg/bdd/README.md` +- **Project Docs**: `/AGENTS.md` +- **Mistral Vibe Docs**: https://docs.mistral.ai/mistral-vibe/introduction +- **Mistral Vibe GitHub**: https://github.com/mistralai/mistral-vibe \ No newline at end of file diff --git a/adr/0010-agent-configuration-relationship.md b/adr/0010-agent-configuration-relationship.md new file mode 100644 index 0000000..dd3f3de --- /dev/null +++ b/adr/0010-agent-configuration-relationship.md @@ -0,0 +1,150 @@ +# 10. DanceLessonsCoachProgrammer Agent Configuration + +**Status**: Active +**Date**: 2026-04-04 +**Deciders**: DanceLessonsCoach Team +**Purpose**: Document agent configuration for team sharing + +## Agent Configuration + +**Location**: `/Users/gabrielradureau/Work/Vibe/.mistral/dancelessonscoachprogrammer-agent.toml` + +**Complete Configuration**: +```toml +# DanceLessonsCoachProgrammer Custom Agent Configuration +# Respects Mistral Vibe specification format + +# Basic agent identification +active_model = "devstral-2" +system_prompt_id = "cli" + +# Project-specific prompt customization +[system_prompt_overrides] +role = "DanceLessonsCoachProgrammer" +goals = [ + "Follow BDD practices", + "Use Gitmoji commits", + "Respect ADR process", + "Ask before adding dependencies", + "Document all architectural decisions" +] + +# Knowledge base integration +[knowledge] +project_root = "/Users/gabrielradureau/Work/Vibe/DanceLessonsCoach" +sources = [ + "${project_root}/AGENTS.md", + "${project_root}/pkg/bdd/README.md", + "${project_root}/.vibe/skills/bdd_testing/SKILL.md", + "${project_root}/.vibe/skills/commit_message/SKILL.md", + "${project_root}/CHANGELOG.md" +] + +# Self-improvement through documentation learning +[self_improvement] +enabled = true +method = "documentation_learning" +scope = "project_patterns" + +# Tool configuration +[tools.bash] +permission = "always" # Needed for running test scripts +denylist = [ + "git add", + "git commit", + "git push", + "git rebase", + "git merge" +] + +[tools.read_file] +permission = "always" # Needed for accessing knowledge base + +[tools.search_replace] +permission = "default" + +[tools.write_file] +permission = "default" + +# Enable web tools for research +disabled_tools = [] + +# Workflow constraints +[workflow] +always_ask_before = [ + "adding libraries", + "adding frameworks", + "major architectural changes" +] + +check_before_implementation = [ + "adr folder for existing decisions", + "roadmap for feature alignment", + "bdd scenarios for new features" +] +``` + +## Usage + +### Starting a Session +```bash +cd /Users/gabrielradureau/Work/Vibe/DanceLessonsCoach +vibe start --agent dancelessonscoachprogrammer +``` + +### Agent Capabilities +- **Knowledge**: Access to AGENTS.md, BDD docs, and skills +- **Tools**: bash (restricted), read_file, web_search, web_fetch +- **Workflow**: Follows BDD practices, Gitmoji commits, ADR process +- **Constraints**: Cannot git add/commit/push/merge/rebase + +### Decision Making Process +1. **Before adding dependencies**: Agent asks for approval +2. **Before architectural changes**: Agent checks ADR folder and asks +3. **Before new features**: Agent verifies roadmap alignment +4. **All decisions**: Documented in CHANGELOG.md + +## Workflow Constraints + +### Always Ask Before +- Adding libraries/frameworks +- Major architectural changes +- Breaking changes to existing features + +### Always Check +- ADR folder for existing decisions +- Roadmap for feature alignment +- BDD scenarios for new features +- Test coverage for all changes + +### Always Document +- New architectural decisions in `adr/` +- Feature implementations in CHANGELOG.md +- Test scenarios in `features/` +- API changes in AGENTS.md + +## Examples + +### Adding a Library +``` +🤖 "Need to add github.com/golang-jwt/jwt v5.0.0 for authentication. Approve?" +👤 "Yes, create ADR first" +🤖 Creates adr/00XX-jwt-authentication.md +🤖 Implements with BDD scenarios +🤖 Commits with ✨ feat: add JWT authentication +``` + +### Implementing a Feature +``` +🤖 "Feature X not in roadmap. Should I implement?" +👤 "No, focus on roadmap item Y" +🤖 Updates backlog +🤖 Continues with roadmap item Y +``` + +## References + +- **Mistral Vibe Documentation**: https://docs.mistral.ai/mistral-vibe/introduction +- **Mistral Vibe GitHub**: https://github.com/mistralai/mistral-vibe +- **Agent Configuration**: See `.vibe/agent-config.toml` in this project +- **System Prompts**: Built-in `cli` prompt with custom overrides \ No newline at end of file