Thank you for your interest in contributing to Localcode! This document provides guidelines and instructions for contributing.
This project adheres to our Code of Conduct. By participating, you agree to abide by its terms.
- Node.js 18.0 or later
- npm 9.0 or later
- Git
git clone https://github.com/thealxlabs/localcode.git
cd localcode
npm install
npm run build- Fork the repository
- Create a feature branch:
git checkout -b feat/your-feature - Make your changes
- Build and test:
npm run build - Commit with conventional commits:
git commit -m 'feat: add your feature' - Push and open a Pull Request
We follow Conventional Commits:
feat:— New featurefix:— Bug fixdocs:— Documentation changesstyle:— Code style changes (formatting, no logic)refactor:— Code restructuring (no feature change)perf:— Performance improvementstest:— Adding or updating testschore:— Build process, dependencies, toolingci:— CI/CD configuration changes
Examples:
feat: add multi-agent orchestration
fix: resolve file path resolution on Windows
docs: update README with new commands
refactor: simplify tool executor logic
- Fill out the PR template completely
- Link related issues
- Include screenshots for UI changes
- Ensure CI passes
- Request review from at least one maintainer
# Build
npm run build
# Type check
npx tsc --noEmit
# Test manually
npm startsrc/
├── bin/ # CLI entry point
├── core/ # Core types and constants
├── providers/ # LLM provider abstraction
├── tools/ # Tool execution engine
├── agents/ # Agent system (registry, orchestration, dispatch)
├── sessions/ # Session management
├── mcp/ # MCP server support
├── plugins/ # Plugin system
├── settings/ # Settings management
└── ui/ # Terminal UI components
extensions/vscode/ # VS Code extension
Agents are markdown files in ~/.localcode/agents/. Each file uses frontmatter:
---
description: What this agent does
mode: subagent
---
You are a specialized agent that...- Use GitHub Issues
- Include reproduction steps
- Mention your OS, Node version, and Localcode version
- For security issues, see SECURITY.md
By contributing, you agree that your contributions will be licensed under the MIT License.