Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Multiple terminals per folder

Open
#88 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
android, kotlin
Domain
cli, mobile

Research direction

Start at RemoteTerminalRepository.open and trace how the terminal button opens a PTY for the current folder. Then inspect the app's terminal UI and the existing /api/pty client calls; the issue proposes folder tabs, a terminal list, creation, rename, close, and remembering the last used terminal. Done means users can manage and switch among multiple terminals for one folder, with the selected terminal opening from the chat button.

Written by the indexing model from the issue text.

Description

feature
Problem

The terminal shows a single shell per folder: opening it reuses the first running PTY of the session's directory, or creates one when there is none (RemoteTerminalRepository.open). Two chats in the same folder share it, and other terminals of that folder (for example opened from another client) are not reachable. Running a dev server in one shell while working in another is not possible.

The server already supports more:

  • GET /api/pty lists every PTY of a location, including exited ones kept until removal;
  • POST /api/pty creates a new one (optional title, command, args, cwd, env);
  • PUT / DELETE /api/pty/{ptyID} rename or resize, and close.
Open questions
  1. How to link them
    • per folder, as today, with tabs or a picker listing all the folder's terminals;
    • or per chat: the app creates a terminal titled after the session and finds it again by title. The server has no session ↔ PTY link, so this would be an app-side convention.
  2. Persistence
    • what happens to PTYs when the server restarts, and to exited ones that stay in the list;
    • the experimental /api/experimental/persistent-pty/* endpoints (snapshot, handoff, shutdown, connect) look meant for terminals that survive reconnects or restarts; they need a closer look before relying on them.
  3. Management
    • new terminal, rename, close (one or all), and showing or clearing exited ones;
    • what the chat's terminal button opens when a folder has several: the last used, or the picker.
Proposal

Start from tabs per folder (the server's own model): list the folder's terminals, add "New terminal", rename and close, remember the last one used. Per-chat linking and persistent PTYs can follow once the questions above are answered.

Dominant language
Kotlin
Stars
1
Forks
0
Avg merge
10h 37m
Merged PRs (30d)
42

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from beppe2880/opencode-mobile

All issues in beppe2880/opencode-mobile

Similar issues

More Kotlin issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.