Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ porque lee lo que cada CLI deja escrito y no hay dos que anoten las mismas cosas
| Reanudar una conversación iniciada fuera de lich, desde la pestaña Historial de la paleta | sí | sí | sí | sí | sí | Linux; macOS y Windows sin probar | sí | sí |
| Un pegado largo puede llegar como texto editable en vez de un marcador plegado (Ajustes › Proveedores, desactivado por defecto) | sí | no | no | sí | no medido | no, se convierte en un adjunto `paste_N.txt` | no | sí |
| Bifurcar una conversación en un nuevo worktree, o en su propio checkout en la ventana nativa | sí | sí | no | sí | no | no | no | no |
| Aviso en la ventana nativa cuando retomas, desde la propia app del agente, una conversación que otra tarjeta tiene abierta | sí | en tu próximo prompt | en tu próximo prompt, sin probar | no | no | en su próxima llamada a una tool | no | sí |
| Aviso en la ventana nativa cuando retomas, desde la propia app del agente, una conversación que otra tarjeta tiene abierta | sí | en tu próximo prompt | en tu próximo prompt, sin probar | no | sí | en su próxima llamada a una tool | no | sí |
| Abrir una sesión con un esfuerzo de razonamiento elegido | sí | sí | sí | no | sí | no | en el nombre del modelo | sí |
| Abrir una sesión con ultracode activado | sí | no | no | no | no | no | no | no |
| Varias cuentas lado a lado como perfiles, cada una con su propio inicio de sesión completo, y una sesión movida a otra cuenta que sigue en la misma tarjeta (en la ventana nativa, experimental: Ajustes › Proveedores) | sí | sí, con sus propios plugins en cada perfil y los ajustes de Personal compartidos por todos | no | sí, con sesión iniciada desde una tarjeta de terminal; una sesión no puede pasar a otro perfil, porque sus conversaciones están en la base de datos que guarda el inicio de sesión | sí, con sesión iniciada desde una tarjeta de terminal, con sus ajustes compartidos por todos los perfiles | no medido | Linux y Windows (en macOS su inicio de sesión está en el Llavero), con sesión iniciada desde una tarjeta de terminal, con `mcp.json`, hooks y skills compartidos por todos los perfiles | solo Linux (macOS guarda su inicio de sesión en el Llavero y en Windows nada lo mueve), con sesión iniciada desde una tarjeta de terminal, con sus conversaciones compartidas por todos los perfiles |
Expand Down
2 changes: 1 addition & 1 deletion README.ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ lich は各 CLI が書き残したものを読むので、書き残す内容は
| lich の外で始めた会話を、パレットの History タブから再開 | あり | あり | あり | あり | あり | Linux のみ。macOS と Windows は未検証 | あり | あり |
| 長いペーストを、折りたたまれたプレースホルダーではなく編集可能なテキストとして貼り付けられる(Settings › Providers、既定ではオフ) | あり | なし | なし | あり | 未計測 | なし(`paste_N.txt` の添付になる) | なし | あり |
| 会話を新しいワークツリーにフォーク(ネイティブウィンドウでは同じチェックアウト内にも) | あり | あり | なし | あり | なし | なし | なし | なし |
| 別のカードで開いている会話をエージェント自身のアプリで再開すると、ネイティブウィンドウに警告 | あり | 次のプロンプトで | 次のプロンプトで(未検証) | なし | なし | 次のツール呼び出しで | なし | あり |
| 別のカードで開いている会話をエージェント自身のアプリで再開すると、ネイティブウィンドウに警告 | あり | 次のプロンプトで | 次のプロンプトで(未検証) | なし | あり | 次のツール呼び出しで | なし | あり |
| 推論エフォートを指定してセッションを開く | あり | あり | あり | なし | あり | なし | モデル名で指定 | あり |
| ultracode をオンにしてセッションを開く | あり | なし | なし | なし | なし | なし | なし | なし |
| 複数のアカウントをプロファイルとして並べて使え、それぞれが独自の完全なログインを持ち、別のアカウントへ移したセッションが同じカードで続行される(ネイティブウィンドウ、実験的機能:Settings › Providers) | あり | あり。各プロファイルが独自のプラグインを持ち、Personal の設定はすべてで共有される | なし | あり。ターミナルカードからログインする。会話がログインを保持するデータベースにあるため、セッションを別のプロファイルへ移すことはできない | あり。ターミナルカードからログインし、設定はすべてのプロファイルで共有される | 未計測 | Linux と Windows(macOS ではログインがキーチェーンにある)。ターミナルカードからログインし、`mcp.json`、フック、スキルはすべてのプロファイルで共有される | Linux のみ(macOS ではログインがキーチェーンにあり、Windows ではそれを移す手段がない)。ターミナルカードからログインし、会話はすべてのプロファイルで共有される |
Expand Down
2 changes: 1 addition & 1 deletion README.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ lich로 할 수 있는 일:
| lich 밖에서 시작한 대화를 팔레트의 History 탭에서 재개 | 예 | 예 | 예 | 예 | 예 | Linux; macOS와 Windows는 미검증 | 예 | 예 |
| 긴 붙여 넣기를 접힌 자리 표시자 대신 편집 가능한 텍스트로 넣기(Settings › Providers, 기본값 꺼짐) | 예 | 아니요 | 아니요 | 예 | 측정 안 됨 | 아니요, `paste_N.txt` 첨부 파일이 됨 | 아니요 | 예 |
| 대화를 새 worktree로 포크, 네이티브 창에서는 같은 체크아웃에도 포크 | 예 | 예 | 아니요 | 예 | 아니요 | 아니요 | 아니요 | 아니요 |
| 다른 카드에 열려 있는 대화를 에이전트 자체 앱에서 재개하면 네이티브 창에 경고 | 예 | 다음 프롬프트에서 | 다음 프롬프트에서, 미검증 | 아니요 | 아니요 | 다음 도구 호출에서 | 아니요 | 예 |
| 다른 카드에 열려 있는 대화를 에이전트 자체 앱에서 재개하면 네이티브 창에 경고 | 예 | 다음 프롬프트에서 | 다음 프롬프트에서, 미검증 | 아니요 | 예 | 다음 도구 호출에서 | 아니요 | 예 |
| 원하는 reasoning effort로 세션 열기 | 예 | 예 | 예 | 아니요 | 예 | 아니요 | 모델 이름으로 | 예 |
| ultracode를 켠 채로 세션 열기 | 예 | 아니요 | 아니요 | 아니요 | 아니요 | 아니요 | 아니요 | 아니요 |
| 여러 계정을 프로필로 나란히 두고 각자 완전한 로그인을 가지며, 다른 계정으로 옮긴 세션이 같은 카드에서 계속됨(네이티브 창, 실험적 기능: Settings › Providers) | 예 | 예, 프로필마다 자체 플러그인을 두고 Personal의 설정은 모든 프로필이 공유 | 아니요 | 예, 터미널 카드에서 로그인; 대화가 로그인 정보와 같은 데이터베이스에 있어서 세션을 다른 프로필로 옮길 수 없음 | 예, 터미널 카드에서 로그인하며 설정은 모든 프로필이 공유 | 측정 안 됨 | Linux와 Windows(macOS에서는 로그인이 키체인에 있음), 터미널 카드에서 로그인하며 `mcp.json`, hooks, skills는 모든 프로필이 공유 | Linux만(macOS는 로그인을 키체인에 두고, Windows에서는 그 위치를 옮길 방법이 없음), 터미널 카드에서 로그인하며 대화는 모든 프로필이 공유 |
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ reads what each CLI writes down and no two of them write down the same things.
| Resume a conversation started outside lich, from the palette's History tab | yes | yes | yes | yes | yes | Linux; macOS and Windows untested | yes | yes |
| A long paste can land as editable text instead of a folded placeholder (Settings › Providers, off by default) | yes | no | no | yes | not measured | no, it becomes a `paste_N.txt` attachment | no | yes |
| Fork a conversation into a new worktree, or in its own checkout in the native window | yes | yes | no | yes | no | no | no | no |
| Warned in the native window when you resume, from the agent's own app, a conversation another card has open | yes | on your next prompt | on your next prompt, untested | no | no | at its next tool call | no | yes |
| Warned in the native window when you resume, from the agent's own app, a conversation another card has open | yes | on your next prompt | on your next prompt, untested | no | yes | at its next tool call | no | yes |
| Open a session at a chosen reasoning effort | yes | yes | yes | no | yes | no | in the model name | yes |
| Open a session with ultracode on | yes | no | no | no | no | no | no | no |
| Several accounts side by side as profiles, each with its own full login, and a session moved to another account carrying on in the same card (in the native window, experimental: Settings › Providers) | yes | yes, with its own plugins in each profile and Personal's settings shared by all of them | no | yes, logged in from a terminal card; a session cannot move to another profile, since its conversations sit in the database that holds the login | yes, logged in from a terminal card, with its settings shared by every profile | not measured | Linux and Windows (on macOS its login is in the Keychain), logged in from a terminal card, with `mcp.json`, hooks and skills shared by every profile | Linux only (macOS keeps its login in the Keychain, and on Windows nothing moves it), logged in from a terminal card, with its conversations shared by every profile |
Expand Down
2 changes: 1 addition & 1 deletion README.pt-BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ mesmas coisas.
| Retomar pela aba Histórico da paleta uma conversa iniciada fora do lich | sim | sim | sim | sim | sim | Linux; macOS e Windows não testados | sim | sim |
| Um paste longo pode chegar como texto editável em vez de um marcador dobrado (Configurações › Provedores, desligado por padrão) | sim | não | não | sim | não medido | não, vira um anexo `paste_N.txt` | não | sim |
| Fazer fork de uma conversa para uma nova worktree, ou no mesmo checkout na janela nativa | sim | sim | não | sim | não | não | não | não |
| Aviso na janela nativa quando você retoma, pelo próprio app do agente, uma conversa que outro card tem aberta | sim | no seu próximo prompt | no seu próximo prompt, não testado | não | não | na próxima chamada de tool | não | sim |
| Aviso na janela nativa quando você retoma, pelo próprio app do agente, uma conversa que outro card tem aberta | sim | no seu próximo prompt | no seu próximo prompt, não testado | não | sim | na próxima chamada de tool | não | sim |
| Abrir uma sessão com um esforço de raciocínio escolhido | sim | sim | sim | não | sim | não | no nome do modelo | sim |
| Abrir uma sessão com o ultracode ligado | sim | não | não | não | não | não | não | não |
| Várias contas lado a lado como perfis, cada uma com seu login completo, e uma sessão movida para outra conta continuando no mesmo card (na janela nativa, experimental: Configurações › Provedores) | sim | sim, com plugins próprios em cada perfil e as configurações do Pessoal compartilhadas por todos | não | sim, com login feito em um card de terminal; uma sessão não pode mudar de perfil, já que as conversas dela ficam no banco de dados que guarda o login | sim, com login feito em um card de terminal e as configurações compartilhadas por todos os perfis | não medido | no Linux e no Windows (no macOS o login fica no Keychain), com login feito em um card de terminal, e `mcp.json`, hooks e skills compartilhados por todos os perfis | só no Linux (o macOS guarda o login no Keychain, e no Windows nada muda o lugar dele), com login feito em um card de terminal e as conversas compartilhadas por todos os perfis |
Expand Down
2 changes: 1 addition & 1 deletion README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ lich вообще не запускается.
| Возобновление разговора, начатого вне lich, со вкладки «История» палитры | да | да | да | да | да | Linux; macOS и Windows не проверялись | да | да |
| Длинная вставка может попасть как редактируемый текст вместо свёрнутой заглушки (Настройки › Провайдеры, по умолчанию выключено) | да | нет | нет | да | не измерялось | нет, она становится вложением `paste_N.txt` | нет | да |
| Форк разговора в новый worktree, а в нативном окне и в том же checkout | да | да | нет | да | нет | нет | нет | нет |
| Предупреждение в нативном окне, когда вы возобновляете в самом приложении агента разговор, открытый в другой карточке | да | при следующем промпте | при следующем промпте, не проверено | нет | нет | при следующем вызове инструмента | нет | да |
| Предупреждение в нативном окне, когда вы возобновляете в самом приложении агента разговор, открытый в другой карточке | да | при следующем промпте | при следующем промпте, не проверено | нет | да | при следующем вызове инструмента | нет | да |
| Открытие сессии с выбранным уровнем рассуждений | да | да | да | нет | да | нет | в названии модели | да |
| Открытие сессии с включённым ultracode | да | нет | нет | нет | нет | нет | нет | нет |
| Несколько аккаунтов рядом в виде профилей, у каждого свой полный вход, а сессия, перенесённая на другой аккаунт, продолжается в той же карточке (в нативном окне, экспериментально: Настройки › Провайдеры) | да | да, со своими плагинами в каждом профиле и общими для всех настройками Personal | нет | да, вход из терминальной карточки; сессию нельзя перенести в другой профиль, потому что её разговоры лежат в базе данных, где хранится и вход | да, вход из терминальной карточки, настройки общие для всех профилей | не измерялось | Linux и Windows (в macOS вход хранится в связке ключей), вход из терминальной карточки, `mcp.json`, хуки и навыки общие для всех профилей | только Linux (macOS хранит вход в связке ключей, а в Windows его расположение ничем не переносится), вход из терминальной карточки, разговоры общие для всех профилей |
Expand Down
2 changes: 1 addition & 1 deletion README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@
| 在命令面板的 History 页恢复在 lich 之外开始的对话 | 有 | 有 | 有 | 有 | 有 | Linux;macOS 和 Windows 未测 | 有 | 有 |
| 长文本粘贴可以以可编辑的完整文本出现,而不是折叠成占位符(设置 › Providers,默认关闭) | 有 | 无 | 无 | 有 | 未测 | 无,会变成 `paste_N.txt` 附件 | 无 | 有 |
| 把一段对话分叉到新的 worktree,在原生窗口中也可在同一检出内分叉 | 有 | 有 | 无 | 有 | 无 | 无 | 无 | 无 |
| 在智能体自己的应用里恢复另一张卡片已打开的对话时,原生窗口发出警告 | 有 | 在你的下一个提示时 | 在你的下一个提示时,未测试 | 无 | 无 | 在它的下一次工具调用时 | 无 | 有 |
| 在智能体自己的应用里恢复另一张卡片已打开的对话时,原生窗口发出警告 | 有 | 在你的下一个提示时 | 在你的下一个提示时,未测试 | 无 | 有 | 在它的下一次工具调用时 | 无 | 有 |
| 按指定的推理强度打开会话 | 有 | 有 | 有 | 无 | 有 | 无 | 写在模型名里 | 有 |
| 以 ultracode 模式打开会话 | 有 | 无 | 无 | 无 | 无 | 无 | 无 | 无 |
| 多个账号以 profile 并存,各自完整登录;会话可以移到另一个账号,在同一张卡片里接着做(在原生窗口中,实验性:设置 › Providers) | 有 | 有;每个 profile 有自己的插件,Personal 的设置所有 profile 共用 | 无 | 有;在终端卡片里登录。会话不能移到另一个 profile:对话和登录信息存在同一个数据库里 | 有;在终端卡片里登录,各 profile 共用设置 | 未测量 | Linux 和 Windows(macOS 上登录信息在钥匙串里);在终端卡片里登录,`mcp.json`、hooks 和 skills 各 profile 共用 | 仅 Linux(macOS 把登录信息放在钥匙串里,Windows 上没有办法移动它);在终端卡片里登录,对话由所有 profile 共用 |
Expand Down
18 changes: 9 additions & 9 deletions docs/ceilings.md
Original file line number Diff line number Diff line change
Expand Up @@ -1204,15 +1204,15 @@ work when nobody knows it and that the call site never shows. The mechanism and
- **The two-cards-one-conversation warning reaches only the providers that report an in-app switch**
(`internal/terminal/terminal.go` `reportDuplicate`, `native/cmd/lich-native/duplicate.go`): lich learns
which conversation a card runs from its session-start report, so a resume typed inside the agent's own app
is warned about only once that report names the new id. Measured on 2026-10-17: Claude Code (`/resume`) and
Kiro CLI 2.21.0 (`/chat`, `agentSpawn` fires per switch) report at the switch; Codex 0.162.1 reports it with
its next prompt and Crush v0.98.1 with its next tool call, so a turn may already have run in both cards;
Antigravity 1.4.0 carries the id on every `PreInvocation`, read in the binary and not run. oh-my-pi 18.8.9
emits `session_switch`, which the plugin does not hear; Cursor CLI skips `sessionStart` on any resume
(2026.10.16); opencode 1.18.35 raises nothing on `/sessions`. Cursor CLI and opencode report nothing at
all, so their row keeps the old id and a restart resumes the conversation the card opened with. Reopening
from lich itself is not this gap: every door through `store.reopen` focuses the card that holds the
conversation.
is warned about only once that report names the new id. Measured on 2026-10-17: Claude Code (`/resume`),
Kiro CLI 2.21.0 (`/chat`, `agentSpawn` fires per switch) and oh-my-pi 18.8.9 (`/resume`, whose
`session_switch` the plugin reports from 0.20.5 on) report at the switch; Codex 0.162.1 reports it with its
next prompt and Crush v0.98.1 with its next tool call, so a turn may already have run in both cards;
Antigravity 1.4.0 carries the id on every `PreInvocation`, read in the binary and not run. Cursor CLI skips
`sessionStart` on any resume (2026.10.16); opencode 1.18.35 raises nothing on `/sessions`. Those two report
nothing at all, so their row keeps the old id and a restart resumes the conversation the card opened with.
Reopening from lich itself is not this gap: every door through `store.reopen` focuses the card that holds
the conversation.
- **A model or effort is a birth value, and two providers forget it on resume** (`internal/terminal/command.go`,
`modelArgs`, `effortArgs`): lich passes neither when it resumes or forks a conversation, because a `/model` or
`/effort` typed inside the session is the user's decision and re-sending the birth value would undo it. What a
Expand Down
Loading