Contributing

Artemis is open source and welcomes contributions of all kinds โ€” code, skills, documentation, and ideas.

๐Ÿ›

Report bugs

Found something broken? Open a GitHub issue with reproduction steps, your Node version, and OS. Include relevant logs from the gateway output.

๐Ÿ’ก

Request features

Have an idea for a new channel, tool, or MCP server? Start a discussion on GitHub. Describe the use case and how it fits into the existing architecture.

๐Ÿ”ง

Submit code

Fork the repo, create a feature branch, and submit a PR. The monorepo uses pnpm workspaces โ€” run pnpm install at the root, not in individual packages.

๐Ÿ“ฆ

Build skills

Create SKILL.md files that extend the agent with new workflows. Skills are markdown-driven โ€” no code compilation needed. Host them on GitHub for community installation.

๐ŸŒ

Add channels

Each channel is a separate package under packages/. Follow the pattern in packages/discord or packages/whatsapp โ€” implement a listener and connect to the gateway.

๐Ÿ”Œ

Create MCP servers

Build new MCP tool servers for integrations like Notion, Spotify, or smart home devices. Use the @modelcontextprotocol/sdk and register in the agent's MCP config.

Development setup

1git clone https://github.com/eduardosilveiradev/artemis-ai && cd artemis-ai
2pnpm install
3cp .env.example .env # Add your API keys
4pnpm dev # Starts the gateway + all MCP servers

Project structure

artemis-ai/
โ”œโ”€โ”€ packages/core # Agent brain, tools, prompts, memory
โ”œโ”€โ”€ packages/gateway # HTTP + WebSocket API server
โ”œโ”€โ”€ packages/web # Next.js web chat interface
โ”œโ”€โ”€ packages/cli # Terminal REPL client
โ”œโ”€โ”€ packages/discord # Discord bot (DM-only)
โ”œโ”€โ”€ packages/telegram # Telegram bot via telegraf
โ”œโ”€โ”€ packages/whatsapp # WhatsApp via wwebjs
โ”œโ”€โ”€ packages/gmail # Gmail OAuth2 integration
โ””โ”€โ”€ packages/types # Shared TypeScript types