Skip to content

Jonathanm10/mr-chatter

MR Chatter

MR Chatter is a desktop app for reviewing GitLab merge requests and GitHub pull requests with AI-assisted context and review workflows.

It combines:

  • a local Tauri desktop shell
  • a Vue + TypeScript frontend
  • Rust-backed integrations for code hosts and ticket systems
  • optional Codex-powered chat for contextual explanation and review

What it does

MR Chatter is built for people who review changes in real repositories and want AI help that stays grounded in the actual diff.

Current product surface includes:

  • local repository selection with code-host detection
  • GitLab merge request browsing and diff review
  • GitHub pull request browsing and diff review
  • optional Jira and YouTrack ticket enrichment
  • two AI chat modes:
    • Context for quick explanation
    • Review for deeper critique and risk-finding
  • in-app model / reasoning selection for AI-backed workflows
  • signed desktop release builds via Tauri updater artifacts

For a deeper explanation of the prompt-building and snapshot model, see SYSTEM_PROMPT.md.

Status

MR Chatter is usable, but this repository is still being polished for public open-source development. Expect some rough edges in documentation, release workflow, and contributor ergonomics while that cleanup continues.

Architecture at a glance

  • Frontend: Vue 3 + TypeScript + Pinia + Vite
  • Desktop shell: Tauri 2
  • Backend/integrations: Rust
  • AI integration: external Codex-compatible setup, optional for core local browsing

Important files and directories:

  • src/ – Vue frontend
  • src-tauri/ – Tauri/Rust backend
  • SYSTEM_PROMPT.md – prompt-building architecture notes
  • .github/workflows/release.yml – tagged release pipeline

Requirements

To develop locally, you will need:

  • current Node.js LTS and npm
  • Rust stable with cargo
  • the Tauri prerequisites for your OS

Linux notes

The current Ubuntu release pipeline installs:

  • libwebkit2gtk-4.1-dev
  • libappindicator3-dev
  • librsvg2-dev
  • patchelf

If you are developing on Ubuntu or a compatible Linux distribution, you will likely need the same or equivalent packages.

Local development

Install dependencies:

npm ci

Run the frontend dev server:

npm run dev

Run the Tauri app:

npm run tauri dev

Available scripts

npm test
npm run typecheck
npm run build
npm run tauri
npm run release

Testing and verification

Frontend checks:

npm test
npm run typecheck
npm run build

Rust/Tauri checks:

cargo check --manifest-path src-tauri/Cargo.toml

Authentication and local data

MR Chatter connects to external services using personal tokens.

Current supported integrations include:

  • GitLab
  • GitHub
  • Jira
  • YouTrack

Token handling is designed to avoid storing secrets in plain text in the repository:

  • tokens are stored in the system credential store / keychain via the shared Rust credential store (src-tauri/src/credential_store.rs)
  • local metadata such as instance URLs and non-secret settings may be written to app config files with restricted permissions on Unix platforms

Even so, treat local config and logs carefully, and never commit tokens or .env files.

If you discover a security issue, please follow SECURITY.md.

Releases

Tagged releases are built through GitHub Actions from .github/workflows/release.yml.

The current release flow:

  • builds signed desktop artifacts on macOS, Ubuntu, and Windows
  • drafts a GitHub release
  • expects CI secrets for Tauri signing

A helper script exists at scripts/release.sh for maintainers, but it is still a maintainer-focused workflow and not yet a stable public release interface for forks.

Forking and maintainer-specific config

If you publish a fork, review these maintainer-specific settings before shipping releases:

  • src-tauri/tauri.conf.json bundle identifier
  • Tauri updater endpoint configuration
  • release signing keys and GitHub Actions secrets

Do not assume the default release/update settings are appropriate for a downstream fork.

Contributing

Please read CONTRIBUTING.md before opening a pull request.

Project governance and support docs:

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors