Documentation
Guides

Contributing Guide

Local development workflow, testing guidelines, and coding standards for Andromity contributors.

We welcome contributions from developers, researchers, and open-source enthusiasts. Andromity is licensed under the permissive MIT License.


1. Setting Up the Monorepo

Clone the repository and inspect the active branches:

git clone https://github.com/agenticmarket/andromity.git
cd andromity

Python Core Agent (src/andromity/)

python -m venv venv

pip install -e ".[dev]"

pytest tests

VS Code Extension (vscode-extension/)

cd vscode-extension
npm install

npm run watch

npm test

Press F5 in VS Code to launch the Extension Development Host window for live debugging.

Edge Gateway Worker (gateway-worker/)

cd gateway-worker
npm install

npm test

npx wrangler dev

2. Coding Standards

  • Python: Type annotations throughout (typing.Optional, typing.List, etc.), PEP 8 compliance, Python >= 3.11.
  • TypeScript: Strict type-checking ("strict": true), no implicit any, interfaces declared in dedicated types.ts files.
  • Error Handling: Never leak internal exception traces (e.g. litellm.RateLimitError) to the user UI. Wrap provider failures into actionable, human-friendly statuses with clear remediation suggestions.
  • Zero Dummy Code: No placeholder buttons, unreachable mock branches, or dead code. Every feature and pixel must have clear utility.

3. Pull Request Checklist

Before submitting a PR:

  1. All unit and integration tests pass cleanly (pytest tests and npm test).
  2. No API keys, admin secrets, or private tokens are committed.
  3. Backwards compatibility is preserved for CLI flags, gateway endpoints, and config.toml.
  4. Documentation is updated to reflect new tools or configuration keys.