Skip to content

Latest commit

 

History

History
68 lines (52 loc) · 2.07 KB

File metadata and controls

68 lines (52 loc) · 2.07 KB

Contributing to AgentMesh

Thanks for your interest in contributing to AgentMesh! This project aims to create a universal coordination protocol for AI coding agents.

Getting Started

git clone https://github.com/codeahead-dev/agent-mesh.git
cd agent-mesh
npm install
npm test

How to Contribute

Reporting Bugs

  • Open an issue with a clear description
  • Include steps to reproduce
  • Include your Node.js version and OS

Suggesting Features

  • Open an issue with the feature label
  • Describe the use case and why it matters
  • If possible, reference how it fits the protocol

Pull Requests

  1. Fork the repo and create your branch from main
  2. Write tests for any new functionality
  3. Ensure all tests pass: npm test
  4. Keep PRs focused — one feature or fix per PR

Architecture

The codebase is intentionally simple:

bin/agent-mesh.js     → CLI entry point (routes commands)
src/protocol.js       → Protocol constants and file utilities
src/init.js           → Initialize .agent-mesh/ directory
src/register.js       → Agent registration
src/router.js         → @mention routing (the killer feature)
src/task.js           → Task management
src/message.js        → Inter-agent messaging
src/context.js        → Token-aware context sharing
src/watch.js          → File conflict detection
src/daemon.js         → Real-time coordination daemon
src/status.js         → Dashboard display
src/index.js          → Programmatic API
templates/PROTOCOL.md → The self-describing protocol spec

Design Principles

  1. Files are the interface. Don't add features that require a server to work.
  2. Keep it simple. No build step. No transpilation. Pure Node.js ESM.
  3. Protocol first. Changes to the protocol must be backwards-compatible.
  4. Test everything. Every feature needs a test.

Code Style

  • ES Modules (import/export)
  • No TypeScript (keeps it zero-build)
  • Descriptive function names
  • JSDoc comments for public functions

License

By contributing, you agree that your contributions will be licensed under the MIT License.