Skip to content

Add original email export and local/MCP message links - #27

Merged
mrinc merged 4 commits into
masterfrom
feat/mail-source-and-direct-links
Sep 28, 2026
Merged

mrinc merged 4 commits into
masterfrom
feat/mail-source-and-direct-links

Conversation

@bcbetterninja

@bcbetterninja bcbetterninja commented Sep 24, 2026 •

Copy link
Copy Markdown
Collaborator

Adds original email export and stable message references alongside the existing header viewer and read_mail_headers MCP tool.

  • Save as .eml in message/conversation actions exports provider-original MIME, including attachments. MCP read_mail_raw returns bounded base64 chunks with size and SHA-256; an authenticated HTTP route downloads the .eml directly.
  • get_mail_link returns a stable captured-record reference, a bettermail:// URL for the local app, and HTTP record/download URLs using the live localhost listener or connected BetterTunnels endpoint. HTTP requests retain bearer authentication and mailbox authorization; credentials are never embedded in URLs.
  • Registers bettermail:// on Windows and in Linux/macOS packaging, forwards activations to the running app, and opens the referenced message. Tunnel forwarding permits only explicit evidence GET routes in addition to the MCP root.

Captured references survive source moves; raw downloads still require provider connectivity and the original provider message ID. HTTP links require an authorized client, rather than an unauthenticated browser. Local links resolve records in the currently open profile.

Validation: dotnet test --project tests/BetterMail.Tests --no-restore — 541 passed. Coverage includes raw byte fidelity, chunk boundaries, local/tunnel URL selection, missing bearer authorization, mailbox revocation, MCP tool discovery, rejected tunnel traversal/write routes, and saved-versus-canceled export status through both UI entry points, and conversation header viewing. Windows/macOS handler installation remains for platform validation; local validation ran on Linux.

@coderabbitai

coderabbitai Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 0bf6553f-a24b-4354-bded-54623b5e7772


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a1e3200918

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread src/BetterMail.App/Program.cs

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 965ce0f574

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread src/BetterMail.App/MainWindowViewModel.cs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1480b7a30c

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread src/BetterMail.App/ConversationThreadView.axaml
@mrinc
mrinc merged commit 45650aa into master Sep 28, 2026
9 checks passed
@mrinc
mrinc deleted the feat/mail-source-and-direct-links branch September 28, 2026 11:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants