{"id":38993432,"url":"https://github.com/remotemobprogramming/intellij-mob","last_synced_at":"2026-01-17T17:05:32.750Z","repository":{"id":38195084,"uuid":"252966046","full_name":"remotemobprogramming/intellij-mob","owner":"remotemobprogramming","description":"IntelliJ plugin for fast git handover and timer with mob","archived":false,"fork":false,"pushed_at":"2023-12-22T12:11:43.000Z","size":1008,"stargazers_count":34,"open_issues_count":16,"forks_count":5,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-05-01T19:41:32.644Z","etag":null,"topics":["git","intellij","intellij-plugin","kotlin","mob","mob-programming","remote-mob-programming"],"latest_commit_sha":null,"homepage":"https://plugins.jetbrains.com/plugin/14266-mob","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/remotemobprogramming.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null},"funding":{"github":["nowsprinting"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-04-04T10:20:23.000Z","updated_at":"2024-04-19T19:43:25.000Z","dependencies_parsed_at":"2023-02-18T20:01:14.294Z","dependency_job_id":null,"html_url":"https://github.com/remotemobprogramming/intellij-mob","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/remotemobprogramming/intellij-mob","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remotemobprogramming%2Fintellij-mob","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remotemobprogramming%2Fintellij-mob/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remotemobprogramming%2Fintellij-mob/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remotemobprogramming%2Fintellij-mob/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/remotemobprogramming","download_url":"https://codeload.github.com/remotemobprogramming/intellij-mob/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remotemobprogramming%2Fintellij-mob/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28511876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T13:38:16.342Z","status":"ssl_error","status_checked_at":"2026-01-17T13:37:44.060Z","response_time":85,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","intellij","intellij-plugin","kotlin","mob","mob-programming","remote-mob-programming"],"created_at":"2026-01-17T17:05:32.653Z","updated_at":"2026-01-17T17:05:32.730Z","avatar_url":"https://github.com/remotemobprogramming.png","language":"Kotlin","funding_links":["https://github.com/sponsors/nowsprinting"],"categories":[],"sub_categories":[],"readme":"# Swift git handover with mob IntelliJ plugin\n\n![build](https://github.com/remotemobprogramming/intellij-mob/workflows/build/badge.svg)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=remotemobprogramming_intellij-mob\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=remotemobprogramming_intellij-mob)\n[![Version](https://img.shields.io/jetbrains/plugin/v/14266-mob.svg)](https://plugins.jetbrains.com/plugin/14266-mob)\n[![Downloads](https://img.shields.io/jetbrains/plugin/d/14266-mob.svg)](https://plugins.jetbrains.com/plugin/14266-mob)\n[![rating](https://img.shields.io/jetbrains/plugin/r/rating/14266-mob.svg)](https://plugins.jetbrains.com/plugin/14266-mob)\n\n![mob Logo](documents/logo.svg)\n\n\u003c!-- Plugin description --\u003e\nSwift [git handover](https://www.remotemobprogramming.org/#git-handover) and timer with mob IntelliJ plugin,\nit useful for [Remote Mob Programming](https://www.remotemobprogramming.org).\n\n- mob IntelliJ plugin is a port of [mob command line tool](https://github.com/remotemobprogramming/mob)\n- mob is the fast way to [handover code via git](https://www.remotemobprogramming.org/#git-handover)\n- mob keeps your `master` branch clean\n- mob creates WIP commits on the `mob-session` branch\n- mob notifies you when it's time to handover\n- mob squash commits at done session and set `Co-authored-by:` trailer in commit message\n\u003c!-- Plugin description end --\u003e\n\n\n## How to install\n\nThere are three ways to install.\n\n### Stable channel of JetBrains Plugins Repository\n\n1. Open Settings(Windows, Linux) / Preferences(macOS)... | Plugins\n1. Search \"Mob\" and install\n\n### EAP channel of JetBrains Plugins Repository\n\nAlpha, Beta, and RC versions will only be released on EAP channel.\n\n1. Open Settings(Windows, Linux) / Preferences(macOS)... | Plugins | :gear: | Manage Plugin Repositories...\n1. Add `https://plugins.jetbrains.com/plugins/eap/list`\n1. Search \"Mob\" and install\n\n### Download from plugin page\n\n1. Open [Mob - plugin for IntelliJ IDEs](https://plugins.jetbrains.com/plugin/14266-mob) page and download latest zip file\n1. Open Settings(Windows, Linux) / Preferences(macOS)... | Plugins | :gear: | Install Plugin from Disk...\n1. Select downloaded zip file to install plugin\n\n\n## How to use\n\nGit | Mob | Start Mob Programming as Typist... (shortcut: ALT+M, S)\n\n![menu](documents/menu.png)\n\n![start dialog](documents/start.png)\n\nClick OK, so switched to a separate branch. Start mob programming!\n\nWhen handover to the next person,\n\nGit | Mob | Next : Handover to Next Typist... (shortcut: ALT+M, N)\n\n![next dialog](documents/next.png)\n\nContinue with \"Start\" and handover to the next person with \"Next\".\nContinue with \"Start\" and handover to the next person with \"Next\".\nContinue with \"Start\" and handover to the next person with \"Next\".\n...\n\nWhen you're done,\n\nGit | Mob | Done : Finish Mob Session... (shortcut: ALT+M, D)\n\nAfter confirm in a dialog,\nget your changes into the staging area of the `master` branch. \nPlease commit \u0026 push into base branch yourself.\n\n\n## How does it work\n\n- Start Mob Programming as Typist : creates branch `mob-session` and pulls from `origin/mob-session`\n- Next : pushes all changes to `origin/mob-session`in a `mob next [ci-skip]` commit\n- Done : squashes all changes in `mob-session` into staging of `master` and removes `mob-session` and `origin/mob-session`\n- Set \"Timer\" in start dialog : start a specific minute timer, notify by a balloon if expired\n- Select \"Also activates screenshare in Zoom\" in start dialog : start screen sharing in Zoom (requires Zoom configuration)\n- Select \"Stay in WIP branch after executing 'Next' and checkout base branch\" in next dialog : after handover code, stay on mob session branch\n- Resets Any Unfinished Mob Session : deletes `mob-session` and `origin/mob-session`\n\n### Zoom Screen Share Integration\n\nThe \"Also activates screenshare in Zoom\" feature uses the Zoom keyboard shortcut \"Start/Stop Screen Sharing\". This only works if you\n\n- make the shortcut globally available (Zoom \u003e Preferences \u003e Keyboard Shortcuts), and\n- keep the default shortcut at CMD+SHIFT+S (macOS)/ ALT+S (Windows, Linux).\n- setting under System Preferences required on macOS Catalina (or later?); Security \u0026 Privacy -\u003e Privacy tab -\u003e Accessibility, and add your IntelliJ Platform Based IDEs .app\n\n[More tips on setting up Zoom for effective screen sharing.](https://effectivehomeoffice.com/setup-zoom-for-effective-screen-sharing/)\n\n\n## How to configure\n\nOpen Settings(Windows, Linux) / Preferences(macOS) | Tools | Mob\n\n![preferences](documents/preferences.png)\n\nSettings are saves to `.idea/mob.xml`.\n\nIf you want a voice notification when the timer expires,\nopen Notifications settings and turn on \"Read aloud\" on \"Mob Timer\" row (macOS only).\n\n![notification settings](documents/preferences_notification.png)\n\nThere are two ways to open Notification settings.\n\n- Preferences... | Appearance \u0026 Behavior | Notifications\n- Event Log window | :wrench:\n\n\n## Troubleshoot\n\nTo see `idea.log`, in JetBrains Toolbox, open Settings | Configuration, and click \"Show logs directory\" button.\n\nIf necessary, get the trace level log.\nOpen Help | Diagnostic Tools | Debug Log Settings…, and input `#com.nowsprinting.intellij-mob:trace`.\n\n\n## Milestones\n\n### 1.1\n\n- Good looking timer widget on statusbar\n- Pause/resume timer action launch from statusbar\n\n### 1.x\n\n- Integration tests\n- Refactor: dialogs uses `DialogWrapper`\n- Refactor: tests about `GitRepository`\n- Input validation on dialogs\n- Support multiple repository\n- Can rollback on \"done\" by splitting the done process into two phases\n\n\n## How to contribute\n\nOpen an issue or create a pull request.\n\n\n## Credits\n\nOriginal [mob](https://github.com/remotemobprogramming/mob) developed and maintained by [Dr. Simon Harrer](https://twitter.com/simonharrer).\n\n\u003c!-- Original contributions and testing by Jochen Christ, Martin Huber, Franziska Dessart, and Nikolas Hermann. Thank you! --\u003e\n\nOriginal and plugin logo designed by [Sonja Scheungrab](https://twitter.com/multebaerr).\n\nPort to IntelliJ plugin by [Koji Hasegawa](https://twitter.com/nowsprinting)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremotemobprogramming%2Fintellij-mob","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fremotemobprogramming%2Fintellij-mob","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremotemobprogramming%2Fintellij-mob/lists"}