How to Contribute
AI Legal UK is an open-source project licensed under the MIT License. We welcome contributions across every part of the system -- from new legal skills to dashboard features, MCP server tooling, and documentation improvements.

Plate I — the broadsheet rebrand.

Plate I.a — the original, kept for reference.
Fork / Branch / PR Workflow
# 1. Fork the repository on GitHub
# 2. Clone your fork
git clone https://github.com/YOUR-USERNAME/ai-legal-uk.git
cd ai-legal-uk
# 3. Create a feature branch
git checkout -b feat/your-feature-name
# 4. Make your changes, commit, and push
git add .
git commit -m "feat: description of your change"
git push origin feat/your-feature-name
# 5. Open a Pull Request against the main branchBranch Naming Convention
Use prefixes that describe the type of change:
feat/-- new features or skillsfix/-- bug fixesdocs/-- documentation onlyrefactor/-- code restructuring without behaviour changetest/-- adding or updating tests
Areas to Contribute
| Area | Description | Key Files / Directories |
|---|---|---|
| New Skills | Add a new /legal command for a legal domain not yet covered | skills/legal-*/SKILL.md, legal/SKILL.md |
| Agent Improvements | Enhance subagent analysis depth, output format, or scoring | agents/legal-*.md |
| Dashboard Features | New pages, components, API routes, or UI improvements | dashboard/app/, dashboard/components/, dashboard/lib/ |
| MCP Server Tools | Add legislation lookup tools or improve existing ones | mcp-servers/uk-legislation/src/ |
| Documentation | Improve guides, add examples, fix errors | doc-site/ |
| Sample Documents | Add realistic sample legal documents for demo mode | dashboard/lib/demo-data/, samples/ |
| Tests | Improve test coverage for dashboard lib functions | dashboard/lib/*.test.ts |
| PDF Reports | Enhance the PDF report generator layout and styling | scripts/generate_legal_pdf.py |
Ideas for New Skills
- Partnership law (Partnership Act 1890)
- Charity law (Charities Act 2011)
- Planning and construction (CDM Regulations 2015)
- Environmental compliance
- Marine and shipping law
- Insurance contract review (Insurance Act 2015)
Before You Start
- Check existing issues -- someone may already be working on it
- Open an issue first for large changes to discuss the approach
- Read the coding standards -- see Coding Standards for rules that apply to all contributions
- Run the tests before submitting your PR:
# Dashboard tests
cd dashboard
npm install
npm test
npm run lint
# MCP server tests
cd mcp-servers/uk-legislation
npm install
npm testWARNING
Always run npm run build in the dashboard/ directory before submitting a PR. The CI pipeline runs a production build and will catch type errors that npm run dev might miss.
Pull Request Checklist
Before submitting a PR, verify:
- [ ] Your branch is up to date with
main - [ ] All existing tests pass (
npm testindashboard/) - [ ] New code has appropriate test coverage
- [ ] No linting errors (
npm run lint) - [ ] Skill files include the standard disclaimer block
- [ ] Jurisdiction is limited to England & Wales only
- [ ] Risk indicators use the standard format (
🔴 High Risk,🟡 Medium Risk,🟢 Low Risk) - [ ] Commit messages follow conventional format (
feat:,fix:,docs:, etc.) - [ ] PR description clearly explains what changed and why
Community Guidelines
- Be respectful -- constructive feedback, no personal attacks
- Be specific -- when reporting bugs, include steps to reproduce, expected behaviour, and actual behaviour
- Be patient -- maintainers review PRs as time allows
- Ask questions -- if you are unsure about the right approach, open a discussion
- Credit others -- if your work builds on someone else's contribution, acknowledge it
- Focus feedback on the work, not the person -- all contributions are welcome regardless of experience level
- Welcome newcomers -- help new contributors get started and find their footing
License
This project is licensed under the MIT License. By contributing, you agree that your contributions will be licensed under the same terms.
MIT License
Copyright (c) 2025 Davendra Patel
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.INFO
All skill files (SKILL.md) and agent files are pure Markdown with no runtime code dependencies. This makes them straightforward to write and review -- no build step is required for skill-only changes.
Quick Links
| Guide | Description |
|---|---|
| Adding Skills | Create a new /legal command |
| Adding Agents | Create a parallel analysis agent |
| Dashboard Development | Set up and develop the web UI |
| Coding Standards | Conventions and requirements |
Getting Help
- Open a GitHub issue for bugs or feature requests
- Start a GitHub Discussion for questions or design proposals
- Review existing skills in
skills/legal-*/SKILL.mdfor examples of the expected format