Skip to content

[HWORKS-3004] Document hops session teleport - #644

Open
jimdowling wants to merge 14 commits into
logicalclocks:mainfrom
jimdowling:HWORKS-3004
Open

[HWORKS-3004] Document hops session teleport#644
jimdowling wants to merge 14 commits into
logicalclocks:mainfrom
jimdowling:HWORKS-3004

Conversation

@jimdowling

@jimdowling jimdowling commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Part of the hops teleport work (HWORKS-3163).

Adds a user guide for moving Claude Code sessions between a laptop and a Hopsworks terminal pod with the hops session CLI:

  • the command surface (push, pull, new, list, mirror, stop) and the baton hand-off model,
  • the optional SSH-key Git-checkout sync,
  • how staged transcripts are kept private (per-user 0700 HopsFS home), attached with one-time session-bound tokens, and expired by the teleport_ttl_days cleaner.

Wires it into the projects nav under a new Terminal section. Markdownlint clean; no cross-page links or Python code blocks.

🤖 Generated with Claude Code

Update (2026-09-02)

The git-sync section now documents the three ways the pod authenticates (existing SSH key, new key generated for Hopsworks, registered personal access token over HTTPS), the platforms each is offered on, and the hops git provider commands.

jimdowling and others added 12 commits May 21, 2026 09:09
Adds a user guide for moving Claude Code sessions between a laptop and a
Hopsworks terminal pod with the hops session CLI (push, pull, new, list,
mirror, stop), the optional SSH-key Git-checkout sync, and how staged
transcripts are kept private and expired. Wires it into the projects nav
under a new Terminal section.

Signed-off-by: Jim Dowling <jim@hopsworks.ai>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…rovider

The teleport guide now describes the three ways the pod can authenticate
to the Git host (an existing SSH key, a new key generated for Hopsworks,
or a registered personal access token over HTTPS), the platforms each is
offered on, and the hops git provider commands that manage the token.

Signed-off-by: Jim Dowling <jim@hopsworks.ai>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
https://hopsworks.atlassian.net/browse/HWORKS-3004

Signed-off-by: Jim Dowling <jim@hopsworks.ai>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…erminal tab is open

https://hopsworks.atlassian.net/browse/HWORKS-3004

The push section read as if the pod landed a session by itself.  The
pod's landing hook only runs inside an open Terminal tab, so the guide
now says so and names what push prints until then.

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…peated

https://hopsworks.atlassian.net/browse/HWORKS-3004

States that a repeated push re-stages the same session and when it
refuses, that pull only refuses a session a live pod has landed, and
that a repeated pull changes nothing.

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
https://hopsworks.atlassian.net/browse/HWORKS-3004

Adds the command to the table and a section on starting over with a
different key or token: what reset forgets and removes, what it leaves
alone, and why a running pod needs a stop before it picks up a new key.

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…root into the HopsFS home

https://hopsworks.atlassian.net/browse/HWORKS-3004

States that git sync applies only when push runs from the repository
root, what push prints otherwise, and that the pod clones into the
user's private HopsFS home once and fetches and checks out the branch
there on later pushes.

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…switching tabs

https://hopsworks.atlassian.net/browse/HWORKS-3004

Names Alt+PgUp/PgDn and Ctrl+PgUp/PgDn for moving between terminal tabs,
and where the browser keeps the Ctrl pair for itself.

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The documentation and navigation update is coherent and self-contained, with only a minor wording/style tweak suggested.

Pull request overview

Adds documentation to the Hopsworks docs site describing how to “teleport” (handoff) Claude Code sessions between a developer laptop and a Hopsworks terminal pod using the hops session CLI, and exposes the new page in the Projects navigation.

Changes:

  • Added a new user guide page explaining hops session session handoff (push/pull/new/list/mirror/reset/stop), privacy model, and optional Git checkout syncing.
  • Wired the new page into the Projects navigation under a new Terminal section.
File summaries
File Description
mkdocs.yml Adds a new “Terminal” nav section under Projects and links the new teleport documentation page.
docs/user_guides/projects/terminal/teleport.md New user guide documenting session teleport workflow, optional Git sync/auth methods, and privacy/retention behavior.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

## Optional: sync your Git checkout to the pod

When you push a session, `hops session` can also reproduce your local Git checkout on the pod, so the landed session starts in the same repository, on the same branch, at the commit you pushed.
This applies when you run `hops session push` from the root directory of the repository; from anywhere else the command prints `The current working dir is not a github repo, so no git sync performed` and pushes the session without a checkout.
jimdowling and others added 2 commits September 8, 2026 05:48
…ops session extend

https://hopsworks.atlassian.net/browse/HWORKS-3004

Names the 12-hour lifetime of a terminal started from the CLI, the time
left that push prints, and the extend command (HWORKS-3224).

Signed-off-by: Jim Dowling <jim@logicalclocks.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants