anthropics / anthropics/claude-code
claude:// session deep link opens app but not the specific session (Remote Control "local" session)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 147k
- Forks
- 24k
- PR merge metrics
- PR metrics pending
Description
Summary
get_session("self")'s link field returns a claude:// deep link intended to open a specific session directly. When triggered from a mobile browser context (e.g. a webpage's window.location.href), iOS correctly hands off to the installed Claude app — confirming the app is registered as the handler for the claude:// scheme — but the app opens to its generic home screen instead of the targeted session.
Steps to reproduce
- Have a Claude Code session running locally on a Mac with Remote Control enabled (
set_remote_control,enabled: true) — session ID has alocal_prefix. - Call
get_session("self")and take the returnedlinkfield, shaped likeclaude://claude.ai/epitaxy/<session-id>. - From an iPhone with the Claude app installed and updated to the latest version, trigger that URL from within a web page (e.g.
window.location.href = linkfrom a button tap in Safari/Chrome). - Observe the result.
Expected: The Claude app opens directly to the specified session.
Actual: iOS switches from the browser to the Claude app (confirming OS-level scheme registration works), but the app lands on its default home screen ("Evening, [name]") rather than the session. The user then has to manually navigate (hamburger menu → Code → find the session by title) to reach it.
Notes / hypotheses (unconfirmed — no visibility into app internals)
- This may be specific to
local_-prefixed (Remote-Control-bridged) sessions rather than fully cloud-hosted ones — untested whether the same link format resolves correctly for a cloud session. - The
linkfield's own tool description frames it as intended for "text that leaves this conversation (a PR description, Slack, a file)" — it's possible mobile deep-linking into a specific session was never wired up, rather than being wired up and broken. - No error is shown; the app just silently falls through to home, which made this hard to distinguish from "the link isn't handled at all" until we confirmed the app switch itself was happening.
Environment: iOS (iPhone), Claude app (latest, updated during testing), trigger context: Chrome/Safari mobile browser, Remote Control session hosted on macOS.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No repository file or test is named. Start by reproducing the get_session("self") link flow with a local_ session on iOS, then determine whether the deep-link handling is implemented in this repository or the Claude app. Done means the claude:// link opens the specified session rather than the generic home screen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100