these chats run in the plugin's own directory

context='plugin' + contextId='proxy-manager', and the platform turns that into
$DATA_PATH/<email>/plugins/proxy-manager/chats. the path is never sent from
here — see resolveChatCwd and docs/commander-directory.md.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043
This commit is contained in:
2026-08-25 18:18:11 +00:00
co-authored by Claude Opus 5
parent 6122cd0b55
commit 92a6c390b8
+16 -1
View File
@@ -39,8 +39,23 @@ const PREFIX = [
* below the fold, which is exactly what shipping it bare produced. `ChatPanelWrapper` has the same div for * below the fold, which is exactly what shipping it bare produced. `ChatPanelWrapper` has the same div for
* the same reason. * the same reason.
*/ */
/**
* `context`/`contextId` name the plugin; the platform turns that into a working directory —
* `$DATA_PATH/<email>/plugins/proxy-manager/chats` — and the path is never sent from here. See
* `resolveChatCwd`, and `docs/commander-directory.md` for why a client does not choose a cwd.
*
* What that buys beyond tidiness: Claude Code reads a `CLAUDE.md` from its cwd at session start, so
* anything these chats should know can live in that directory instead of in every conversation on the
* machine.
*/
export const ChatPanel = ({ panelId }: { panelId: string }) => ( export const ChatPanel = ({ panelId }: { panelId: string }) => (
<div className="flex h-full min-h-0 flex-col"> <div className="flex h-full min-h-0 flex-col">
<EmbeddableChat className="min-h-0 flex-1" panelId={panelId} promptPrefix={PREFIX} /> <EmbeddableChat
className="min-h-0 flex-1"
panelId={panelId}
promptPrefix={PREFIX}
context="plugin"
contextId="proxy-manager"
/>
</div> </div>
); );