feat(cli): add privacy_mode for blurring PII in the TUI - #12442
Merged
Conversation
Add a `privacy_mode` config flag that masks personal/team information in the always-visible sidebar footer and requires explicit confirmation before `/profile` reveals the full account details. The CLI `kilo profile` command is unaffected. Always-visible sidebar: - Personal/team balance renders as `•••` when the flag is on - Team label collapses to "Team credits" instead of the org name - Kilo Pass period usage, bonus, and renew date are hidden `/profile` gate: - Show a DialogConfirm (default: Cancel, action: Reveal) that warns email, name, balance, and team will be exposed before fetching the profile `/privacy` command: - Toggles `privacy_mode` in the global config and refreshes sync Mechanism: - New top-level `privacy_mode` boolean in ConfigV1.Info (kilocode_change) - Registered in the overlay field paths so it's editable - SDK regenerated for the new SdkConfig field - DialogConfirm extended with optional `confirmLabel` and `defaultOption` props (kilocode_change) for the gate UX All edits are isolated to kilocode paths or wrapped in kilocode_change markers to keep the upstream diff minimal.
Contributor
Code Review SummaryStatus: 2 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
SUGGESTION
Files Reviewed (11 files)
Fix these issues in Kilo Cloud Previous Review Summary (commit 6b8c736)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 6b8c736)Status: 3 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
SUGGESTION
Files Reviewed (8 files)
Reviewed by kimi-k3 · Input: 235K · Output: 17.7K · Cached: 1.4M Review guidance: REVIEW.md from base branch |
Contributor
Author
|
Cloud PR to add to the schema: Kilo-Org/cloud#4658 |
Contributor
Author
Ready to review |
johnnyeric
requested changes
Aug 5, 2026
…ndependent color The /privacy command wrote only to global config but read the effective config, so a project-level privacy_mode could shadow the global toggle and the UI would not change even though the command reported success. Since privacy mode is a personal preference, persist and read it only from the global config. The sidebar footer used tone() for both the bullet and masked balance, so the bullet color still revealed whether the balance was low. Use theme().textMuted for both while masked, retaining tone() only when privacy mode is off.
IamCoder18
force-pushed
the
feat/privacy-mode-tui
branch
from
August 5, 2026 13:34
42d89f1 to
76f8967
Compare
Contributor
Author
|
Addressed both review feedback. Thank you! |
johnnyeric
approved these changes
Aug 5, 2026
Contributor
|
Thanks for the contribution! Merged. |
This was referenced Aug 5, 2026
t7tran
pushed a commit
to t7tran/kilocode
that referenced
this pull request
Aug 14, 2026
feat(cli): add privacy_mode for blurring PII in the TUI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
Closes #12441
Context
Add a
privacy_modeconfig flag for the TUI that blurs always-visible personal information (balance, team name, Kilo Pass usage) and requires explicit confirmation before/profilereveals the full account details. The CLIkilo profilecommand is unaffected.Implementation
The new
privacy_modeboolean is a top-levelConfigV1.Infofield and registered in the overlay field paths so it's editable from the settings surface.•••, team label collapses from"Acme Corp team"to"Team credits", and the Kilo Pass block is hidden.pii.tsexports only the singleREDACTED_BALANCEconstant./profileshows aDialogConfirmbefore fetching when the flag is on./privacyslash command toggles the flag.Screenshots / Video
Redacted balance
/profile command
How to Test
Manual/local verification
Verified locally with
/privacy, see screenshots.Reviewer test steps
/privacyor Enable privacy mode in the TUI's command picker.Checklist
Get in Touch
Discord: @IamCoder18