Skip to content

Make three local CLI sessions readable and replyable from iPhone #976

Description

@shiny-code-app

Objective

Turn the chosen route into a usable iPhone workflow for the owner's three locally running CLI sessions. Resolve the concrete reason the owner waited in a meeting: no way to read or send a short message without opening a laptop.

gets and gives quick updates to a CLI session from away

This exact phrase from the merged DIRECTION.md admits the issue to Remote access on the fresh start.

Finish Line

The owner uses an iPhone to find, read and communicate with each of three sessions begun locally while all original CLI sessions remain open and usable. The same conversation and session identity are visible locally and remotely. Phone attachment and return never require finishing, closing, restarting or forking the local task.

Current Status

State: blocked by #979's minimum account separation. The route proof #975 remains complete.
Next action after #979: make the selected setup/startup and recovery repeatable, then qualify three distinguishable CLI tasks from the iPhone, including busy/waiting behavior, reconnects and recovery after an execution-account limit.
Blocked by: #979 through the native dependency. Independent setup/reconnect preparation may continue while account design is underway, but final qualification requires the accepted account-switching route.
Last verified: 2026-09-26. #980 merged at e1ab370 after exact-head owner approval, placing minimum account switching in the remote milestone. Matching-account concurrency passed in #975; full three-session use and separate-account recovery remain untested. Credit top-ups are excluded by the owner's value constraint.

Scope

Reuse the stock phone surface and shared CLI server proven by #975. #979 now supplies the minimum separation between phone/GUI identity and CLI execution accounts within the same remote milestone. Use its accepted route for the three-session qualification; automatic account rotation remains outside this issue.

Add a catalog instruction, setup helper, sidecar or small justified patch only for observed missing behavior. Setup documentation belongs with the chosen maintained component; a new app is not assumed.

Preserve active sessions and the working enrollment. Reuse the server that owns the CLI tasks; a second remote host is not equivalent. Credential, account-storage and login-flow changes retain DIRECTION.md's owner boundary.

Acceptance Criteria

  • Setup and recovery are repeatable through the supported stock interface or the smallest justified maintained helper. Record enablement persistence, host ownership and recovery after an ordinary restart; do not restart unrelated active work for qualification.
  • Keep the original CLI and phone view open concurrently throughout read, reply and acknowledgment. Both observe the same conversation; attaching the phone must not require finishing, closing, restarting, forking or transferring ownership of the local session.
  • Three session entries show enough task/repository context to choose correctly.
  • Each entry exposes recent conversation and a truthful waiting/running/disconnected state.
  • A short message reaches the selected original session once and its acknowledgment or result is visible from the phone.
  • The two untargeted sessions are unaffected.
  • Busy-session and approval/question-wait behavior are understandable and preserve the CLI's turn ordering. Record any unsupported phone interaction explicitly; do not represent it as a passing capability.
  • Closing and reopening the phone view preserves session identity and does not resend an instruction.
  • Returning to the local CLI shows the same conversation and allows ordinary work to continue.
  • Qualify the owner's observed immediate usage-limit stop: the phone can inspect the original task, show why work stopped, and recover useful same-session work without a laptop using the owner's accepted accounts. Additional-credit purchases are excluded by the owner's value constraint; a hypothetical future tier is not a recovery path. The merged Include account switching in the remote-access milestone #980 makes Separate GUI and phone identity from CLI execution accounts on the fresh start #979 the implementation dependency for this requirement; do not claim the recovery passed from documentation or a simulated phone alone.
  • Record the control/execution-account arrangement delivered by Separate GUI and phone identity from CLI execution accounts on the fresh start #979 and prove the real iPhone flow remains usable when an execution account changes after a usage limit. Preserve the original local tasks and their identity; record any remaining limitation.
  • The owner completes this exercise away from the computer using the iPhone; actual friction and limitations are recorded.
  • Record upstream files changed; escalate before broad patches.

Relationships

Native child of #974. Blocked by #979's account-separation work; the native dependency on the closed #975 preserves the completed route proof. This issue natively blocks #977's Launchplane/GitHub integration.

Validation

Use three harmless sessions with distinguishable tasks and record the phone/host observations. Add focused behavior or UI coverage only for code actually introduced, following repo instructions. A setup-only solution can finish with repeatable live evidence.

2026-09-26 owner correction: "usage limit now does stop a session immedietely". Treat the immediate stop as the observed workflow failure. It is distinct from the already source-confirmed remote disconnection on changing the server's authentication owner; the phone's behavior during a pure usage-limit stop remains to be observed.

The current official pricing page documents additional credits on Plus/Pro after included usage is exhausted. Its qualified statement about active-turn continuation does not establish that the owner's sessions continue. The owner subsequently rejected additional-credit purchases on value grounds, so that option is excluded from further qualification. No credits were purchased and no limits were deliberately exhausted in this planning turn.

The placement question was resolved by owner-approved #980, merged at e1ab370. The native graph now places #979 before #976 and #977, with the former #979 -> #974 blocker removed. This changes planned qualification, not the live proof already recorded.

Owner value constraint, 2026-09-26: multiple accounts are the only acceptable-value capacity option the owner has found. This is the owner's purchasing constraint, not a universal pricing claim. PR #980 has now landed, making minimum account switching part of the remote milestone. No new runtime test or credential change was performed.

Decisions

A new phone-created task, copied transcript or restarted/forked session does not substitute for reaching work already begun in the CLI.

2026-09-26: #975 established the stock concurrent route. The owner then confirmed immediate usage-limit stops and ruled out credit top-ups on value grounds. Owner-approved #980 moved minimum account switching into this milestone; #979 now precedes this issue, followed by #977. The retired Lab runtime and a new remote client are not selected by that decision.

Open Questions

Routine implementation choices follow the proven route.

Activity

  1. added
    planDurable planning issue
    plan:blockedPlan blocked by an open native dependency issue
    on Sep 26, 2026
  2. added
    plan:activePlan is actionable now
    and removed
    plan:blockedPlan blocked by an open native dependency issue
    on Sep 26, 2026
  3. added
    plan:blockedPlan blocked by an open native dependency issue
    and removed
    plan:activePlan is actionable now
    on Sep 26, 2026
  4. added
    plan:donePlan completed or superseded
    and removed
    plan:blockedPlan blocked by an open native dependency issue
    on Sep 28, 2026
  5. shiny-code-app commented on Sep 28, 2026

    @shiny-code-app
    Author

    Closing as superseded. Remote access to CLI sessions now lives in cbusillo/discord-blue: the Discord bridge is live for Codex sessions (cbusillo/discord-blue#132) and in progress for Claude Code sessions (cbusillo/discord-blue#140). #1001, merged by the owner, parks Codex Lab and retires this milestone.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    planDurable planning issueplan:donePlan completed or superseded

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions