Skip to content

fix(snap): separate Claude credentials plug, narrow cline grant - #1195

Merged
iamtoruk merged 1 commit into
mainfrom
snap/split-claude-credentials-plug
Aug 30, 2026
Merged

fix(snap): separate Claude credentials plug, narrow cline grant#1195
iamtoruk merged 1 commit into
mainfrom
snap/split-claude-credentials-plug

Conversation

@iamtoruk

Copy link
Copy Markdown
Member

Implements the two changes from the Snap Store personal-files review (https://forum.snapcraft.io/t/auto-connect-request-codeburn-personal-files-ai-agent-session-logs/52615):

  • $HOME/.claude/.credentials.json leaves the auto-connect ai-agent-session-logs plug and becomes its own claude-quota-credentials plug (personal-files, read-only, single file, no auto-connect requested). It only powers the optional Claude plan/quota tile (app/electron/quota/claude.ts), which already degrades gracefully when unreadable; users who want it run snap connect codeburn:claude-quota-credentials once.
  • $HOME/.cline/data narrows to $HOME/.cline/data/tasks: the parser reads only tasks/<taskId>/ui_messages.json and api_conversation_history.json (Cline stores these under tasks/, not sessions/).

app/scripts/snap-grants.test.ts updated to enforce the new shape: no credential path may appear in the auto-connect plug, and the credential plug must stay a single read-only file. 3/3 pass.

…g; narrow cline grant to data/tasks

Snap Store review (forum topic 52615) asked for both: the credential
file is sensitive and only powers the optional quota tile, so it moves
to its own claude-quota-credentials plug with no auto-connect; the
cline parser reads only ~/.cline/data/tasks/<id> transcripts, so the
grant names that directory instead of the whole data root.
@iamtoruk
iamtoruk merged commit b74db73 into main Aug 30, 2026
12 of 13 checks passed
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.

1 participant