Jotpod docs

Everything you need to set up and use Jotpod, from installing the GitHub App to polls, calls and the exact rules for who can join. New here? Start with the quick start.

What Jotpod is

Jotpod gives a GitHub issue its own private, real-time pod, so a discussion that would take dozens of issue comments can happen live, with only the people who work on the repository.

There are two kinds of pods:

  • Repository pods are linked to a repository (and usually an issue). Only people GitHub reports as collaborators on that repository can join. Their names and avatars come from GitHub.
  • Quick pods aren't linked to GitHub. Anyone with the invite link can join, they always expire, and they can be made public so visitors can chat as guests.

Quick start

  1. Sign in with GitHub.
  2. Open Repositories and choose Install the GitHub App. Pick the repositories you want and confirm on GitHub.
  3. Go to New pod, choose Repository pod, pick the repository and issue, and create it. Or comment /jotpod on the issue.
  4. Jotpod posts the pod link on the issue. Share it with your collaborators.
  5. They open the link, sign in with GitHub, and they're in.
Only a repository owner or admin installs the app, once. Contributors never install anything; they just sign in with GitHub.

Signing in

  • Continue with GitHub is the recommended way, and it's required for repository pods. Jotpod uses your numeric GitHub ID, username, display name and avatar. It doesn't ask GitHub for your email.
  • Email and password works for quick pods. To join repository pods later, choose Connect GitHub on the Repositories page; your rooms and messages stay with you.

If you change your GitHub username, Jotpod follows it, because accounts are matched on your numeric GitHub ID, never on your username.

Username and profile

  • Usernames are 3 to 30 characters: letters, numbers, dots, dashes and underscores. They must be unique. This is the name people use to @mention you.
  • GitHub accounts start with your GitHub username; you can change it in Settings → General.
  • Set the default lifetime for new quick pods in Settings → General, and switch between light and dark mode in Settings → Appearance.

Deleting your account

Settings → Account → Delete account, then type sudo delete your-username to confirm. This permanently removes your profile, your stored GitHub sign-in token, your repository access records, every message and reaction you sent, and every pod you own. Other members of pods you joined see a short note that you deleted your account. It can't be undone.

Installing the GitHub App

  1. Open Repositories and choose Install the GitHub App, or go straight to github.com/apps/jotpod.
  2. Choose the account or organization to install it on.
  3. Pick Only select repositories and choose the ones you want (recommended), or All repositories.
  4. Confirm. GitHub sends you back to Jotpod and the repositories show as connected.
You need to be an owner of the personal account, or an owner or admin of the organization, to install a GitHub App. In organizations that require approval, an owner has to approve the request first.

Managing repositories

  • Add or remove repositories: change the app's repository access on GitHub (Settings → Applications → Jotpod → Configure). Jotpod picks up the change automatically.
  • Disconnect a repository from the Repositories page to pause Jotpod there without touching the GitHub installation. Its pods become read-only and /jotpod stops working. Reconnect brings everything back. Disconnecting needs admin access to the repository.
  • Uninstalling the app on GitHub disconnects all of that account's repositories.
  • Renamed or transferred repositories are followed automatically; links keep working.

Repository pods

Create one from New pod → Repository pod:

  1. Pick a connected repository.
  2. Pick an open issue, or none for a repository-wide pod. Pull requests aren't listed; issues only.
  3. Choose a lifetime: Keep it (never expires, the default) or Temporary (24 hours, 36 hours or 6 days).
  4. Leave Post the link on the issue on to have Jotpod comment the pod link on the issue.
  • There's one pod per issue. Creating it again, by anyone, opens the existing one instead of making a duplicate.
  • You need write access (write, maintain or admin) to the repository to create one. Read access is enough to join.

The /jotpod command

Comment /jotpod on any issue in a connected repository. Within a few seconds Jotpod replies with a Join pod link.

  • The command must be on its own line. /jotpod and /jotpod let's pair on this work; please run /jotpod, quoted text (> /jotpod) and inline code don't.
  • It isn't case-sensitive.
  • Repeating it within 10 minutes adds a 👍 reaction to your comment instead of posting the link again. After that it posts the link once more.
  • If you don't have write access, or the repository is disconnected, Jotpod reacts with 😕 and does nothing else.
  • Jotpod ignores comments from bots and its own comments, so it never loops.

Quick pods

Create one from New pod → Quick pod. No GitHub needed.

  • Lifetime: 24 hours, 36 hours or 6 days (default 6 days, or your own default). When it ends, the pod and every message in it are deleted.
  • Private (default): only members can read and chat. People join with the invite link or pod code.
  • Public: anyone with the link can chat as a guest without an account. Guest messages are live only and disappear when the guest leaves, unless they sign up to keep them.
  • Only the pod's owner can change its visibility or lifetime.

Joining a pod

  • Open the link someone shared, or paste a link or pod code into Join a chat on the home page.
  • For a repository pod, sign in with GitHub. Jotpod checks with GitHub that you're a collaborator, then lets you in. If you aren't, you'll see why, and nothing about a private repository is revealed.
  • Joining twice is harmless; you just land back in the room.

Who can join

  • Only people GitHub lists as collaborators on the repository: direct collaborators, and organization members with access through a team or base permission.
  • A link alone never grants access, and public repositories aren't open to everyone. Being able to read a public repository doesn't make you a collaborator.
  • Access is checked when you join and again while you use the room. A result is reused for up to 10 minutes. If GitHub is briefly unavailable, a recent positive check is trusted for up to an hour so outages don't lock people out.
  • Remove someone on GitHub and they're removed from the pod too, the next time their access is checked.

Read-only and expiry

A repository pod becomes read-only (history stays visible, nobody can post) when:

  • its issue is closed. Reopening the issue makes the pod active again.
  • its issue is deleted, or moved to another repository.
  • its repository is disconnected or the app is uninstalled.

Expiry: temporary pods show a countdown in the header. When it reaches zero, the pod and everything in it (messages, threads, reactions, polls) are permanently deleted.

Messages

  • Enter sends, Shift + Enter adds a new line. Messages can be up to 4,000 characters.
  • Messages appear instantly and are saved in the background. If one fails to send, your text comes back to the box.
  • Unsent text is kept per pod and per thread, so switching pods never moves a draft.
  • Delete your own message by hovering it and choosing the trash icon, or swiping it left on touch screens.
  • The emoji button inserts emoji at the cursor.

Threads and reactions

  • Hover a message and choose Reply in thread to discuss it on the side. Thread replies don't crowd the main chat; the message shows a reply count and who replied.
  • Choose the smiley to react. Reactions appear under the message; click one to add or remove yours.

@mentions

  • Type @ (or use the @ button) to see the people in the pod. Keep typing to filter by username or GitHub username.
  • ↑ ↓ to move, Enter or Tab to pick, Esc to close.
  • Mentions are highlighted in messages, and mentions of you stand out more.

Polls

Choose the poll button in the message box to build one:

  • A question (up to 300 characters) and 2 to 10 options (up to 100 characters each, all different).
  • Multiple answers: people can pick more than one option.
  • Anonymous: nobody, including the creator, can see who voted for what. You still see your own choice.
  • Let others add options: anyone in the pod can suggest an answer. The creator can always add options.

Click an option to vote; click it again to take your vote back. Results update live with a percentage per option (out of everyone who voted) and the avatars of who chose it. The creator can close a poll to stop voting, and reopen it later. Polls are posted in the pod itself, not in threads.

Calls

  • Start a video call from the pod info button → Start call. Up to 5 people can be in a call.
  • While a call is running, the header shows who's in it. Click it to join, or to return to the call if you minimized it.
  • Calls are peer-to-peer: audio and video go directly between participants and are never recorded or stored.

Music

Choose the music button in the message box, search for a song and pick it to open a small player above the message box. You can seek, hide the player, or open it full size. Searches run in your browser and aren't saved.

Pod settings

Open them with the info button in the pod header:

  • General: name, lifetime and visibility (owner only), and start a call.
  • Invite: the invite link and pod code (quick pods).
  • Members: who's in the room and who's online.
  • Leave pod, or Delete pod if you own it. Deleting removes the pod and all its messages for everyone, immediately.

Keyboard shortcuts

KeysAction
EnterSend message
Shift + EnterNew line
@Mention someone
↑ ↓Move through mention or song suggestions
Enter / TabPick the highlighted suggestion
EscClose suggestions

Limits

WhatLimit
Message length4,000 characters
Sending rate30 messages per 10 seconds
Guest message length2,000 characters
Poll question / option300 / 100 characters
Poll options2 to 10
Quick pod lifetime24 hours, 36 hours or 6 days
Repository pod lifetimeKept, or 24 hours, 36 hours or 6 days
People in a call5
Pods per issue1
/jotpod repeat window10 minutes

GitHub permissions

PermissionWhy Jotpod needs it
Metadata: readSee the repositories you installed it on and check who is a collaborator
Issues: read & writeRead issue titles and states, and post the pod link as a comment

Jotpod subscribes to issue comment, issues and repository events. It can't read your code, pull request contents, secrets or settings, and it never pushes anything. Read the privacy policy for exactly what's stored.

Troubleshooting

  • Jotpod didn't reply to /jotpod. Check that the app is installed on that repository and it's connected on the Repositories page, and that the command is on its own line. A 😕 reaction means you don't have write access or the repository is disconnected. A 👍 means the link was posted in the last 10 minutes; scroll up.
  • “This pod is restricted.” GitHub doesn't list you as a collaborator. Ask a maintainer to add you, then open the link again.
  • “Connect GitHub to continue.” You signed in with email. Choose Connect GitHub on the Repositories page.
  • My repository isn't listed. Give the app access to it on GitHub (Settings → Applications → Jotpod → Configure), then refresh the Repositories page.
  • The pod is read-only. Its issue was closed, deleted or moved, or the repository was disconnected. The banner at the bottom says which.
  • “Reconnecting…” at the top of a room. Your connection dropped. Messages sent meanwhile appear when you're back online.
  • The first load is slow. The server can take up to a minute to start after a quiet period. It's fast once it's awake.

Getting help

Something not covered here, or found a bug? Email singh20x7@gmail.com.