Compiled entirely from public activity on meta.discourse.org, X, and GitHub.

💬 meta.discourse.org

Sam announced the next version of Discourse MCP and spent much of the week triaging older reports across Discourse AI, localization, formatting, exports, and subfolder support. He confirmed several issues were already fixed, closed or considered closing stale reports, and asked for clarification or fresh confirmation where problems remained unclear.

🐦 On social

Social activity centered on term-llm development—its Preact port, worktree dialog, widget system, Homebrew installation, and workflow features such as /fork. Other posts compared AI models and subscriptions, highlighting Gemini’s speed, Luna Fast, NVIDIA’s free endpoints, and differences in pricing and tool support. Replies were often more conversational and engaging, particularly the explanation of how Cursor’s bundled model access shapes usage, while technical replies prompted follow-up discussion about code reviews, MCP tool search, and the Preact migration.

Most engaged tweets:

🛠️ GitHub — Sam’s Commits

samsaffron/term-llm

Sam focused heavily on modernizing term-llm’s web experience, completing a broad Preact migration and refining session, project, branch, and worktree workflows. He strengthened reliability around live streams and reconnects, transcript ordering, migrations, and session identity, while polishing navigation and interaction details. He also expanded capabilities with default-enabled widget management, fast-mode controls, provider usage reporting, and improved Homebrew/systemd deployment support.

Key commits:

discourse/discourse

Sam tightened several privacy and security boundaries in Discourse, closing leaks around reaction activity, poll results, private-message invites, secure-topic broadcasts, and shared AI conversation oneboxes. He also fixed AI agents inheriting the site LLM, invalidated stale AI summaries when posts are deleted, preserved list markers during placeholder replacement, and made AI configuration usage details easier to reach.

Key commits:

SamSaffron/dotfiles

Sam focused on improving his desktop and AI tooling: he expanded the Quickshell usage dashboard to track Grok and Gemini quotas, redesigned it for more providers, and made refresh failures preserve last-known-good data. He also configured a custom Hyprland screen-share picker, tightened the term-llm hub service setup, and refreshed several Neovim development plugins.

Key commits:

SamSaffron/homebrew-tap

Sam established the official Homebrew tap for term-llm, adding cross-platform formulas, installation documentation, automated dependency updates, and CI checks for syntax, auditing, installation, and execution. He then simplified the formula by letting Homebrew infer the release version, reducing manual maintenance and supporting smoother release automation.

Key commits:

discourse/discourse-ai

Sam completed the retirement of the standalone discourse-ai repository after its integration into Discourse core. He removed the plugin’s source, tests, and dependencies, then removed the remaining repository configuration—over 133,000 lines—and replaced the README with a pointer to its new home in the main Discourse repository.

Key commits:

rubyjs/mini_racer

Sam focused on preparing mini_racer 0.22.1 for release, finalizing the changelog and bumping the gem version. The release packages improved Clang 22+ compatibility and safer, much larger Ruby/JavaScript bigint serialization, including fixes for truncation and big-endian systems.

Key commits:

discourse/discourse-mcp

In the last seven days, Sam simplified write-mode configuration so --allow_writes is the sole opt-in, while preserving read-only defaults and rejecting contradictory settings to make operator intent explicit. He also prepared the 0.3.1 release with expanded tests, documentation, changelog entries, and updated package metadata.

Key commits:

sam-saffron-jarvis/term-llm-hub-ingress

Sam added an opt-in path to build and deploy the term-llm Hub directly from upstream’s main branch, enabling faster testing of unreleased changes. The workflow pins an exact commit for reproducibility while preserving release builds as the default, along with health checks, rollback protection, configuration updates, and operational documentation.

Key commits:

SamSaffron/quickshell-share-picker

Sam substantially improved the share picker’s usability, adding richer previews, keyboard navigation and filtering, workspace grouping, monitor identification, region-selection persistence, and more reliable layer-shell/XDPH behavior. He also hardened installation and release operations with automated setup, reproducible GitHub/AUR publishing workflows, broader tests, and clearer documentation. The work culminated in the v0.2.0 and v0.2.1 releases, with required portal and region-selection dependencies included by default.

Key commits:

🤖 Jarvis — Public Repo Work

Agent-authored public commits, typically guided by Sam during implementation work.

SamSaffron/term-llm

Under Sam’s direction, Jarvis concentrated on making term-llm’s web experience more resilient and polished, improving streaming performance, reconnect/state reconciliation, conversation branching, sidebar behavior, and mobile layouts. The work also added terminal-host lifecycle reporting for chat state and strengthened operational safety and compatibility around shell descendants, proxied Hub nodes, legacy flags, build metadata, and CI coverage.

Key commits:

SamSaffron/quickshell-share-picker

Under Sam’s direction, Jarvis launched the initial v0.1.0 of quickshell-share-picker, delivering a focused Quickshell-based screen, window, and region picker for XDPH with tests, CI, documentation, and Arch/AUR packaging. Rapid v0.1.1 and v0.1.2 follow-ups hardened ShellCheck compatibility and improved release archives and AUR metadata, emphasizing reliable distribution across Ubuntu and Arch environments.

Key commits:

⤴️ GitHub — Pull Requests

No PR activity this week.

🐛 GitHub — Issues

No issue activity this week.

👀 GitHub — Reviews

No reviews this week.