Conversation
Adds a CSS rule for .ai-tool-edit-stats so the per-edit +x/-y
on restored cards reads with the same muted grey as the Show diff
toggle (the .ai-msg-edit-summary-scoped green/red colors don't apply
inside the tool indicator, leaving the default bright text otherwise).
CLAUDE.md gains a short note on which file API to reach for —
Phoenix.VFS.{read,write,unlink}Async for raw app data (no size
cap, recursive dir delete) versus FileSystem.getFileForPath only
for files that may be opened as editor documents.
The 0.8rem (≈11px) tab labels read as undersized chrome against the 14px panel content and didn't align with the secondary-tier scale used elsewhere. Bumps: - font-size 0.8rem → 0.85rem (~12px) - icon size 0.78rem → 0.82rem to track - vertical padding 0.25rem → 0.3rem so the slightly larger label isn't boxed in - active tab weight 500 → 600 so the selected state doesn't rely on color alone Affects every consumer of the global SidebarTabs component (Files, AI, extension sidebar tabs) uniformly.
Threads the new attached-folders list from sendPrompt all the way to the SDK's additionalDirectories option. Validates each entry (absolute, exists, not a duplicate of cwd) and drops invalid ones silently so a typo doesn't blow up the query. Adds the matching styles: .ai-attach-dropup mirrors the screenshot dropup, and .ai-context-chip-folder gives the new folder chip an amber-tinted border and icon so it reads as a distinct kind of context vs file/selection/live-preview chips. Plus three new strings for the popup options and folder-picker title.
Mirrors the Claude Code CLI's default permissions.allow set (git status / log / diff / show / remote show / branch / ls-files / rev-parse, plus generic ls / pwd / cat / head / tail / wc / which / file / stat / echo, and version probes) so the user isn't prompted for every "look around the repo" command. Anything containing shell composition characters (; && || | $(...) backticks < >) still falls through to a user prompt, so chained destructive operations can't piggy-back on a safe prefix.
…plan overlay css * Safe-bash classifier in claude-code-agent.js now splits commands on `;`, `&&`, `||` and accepts the chain if every segment matches a safe pattern, so `git status && git log -5` and `sleep 1; echo done` no longer prompt. `sleep` (numeric durations) joins the allowlist. Process substitution (`$(...)`, backticks), redirection (`<`, `>`) and pipes (`|`) still fall through to a user prompt — chained destructive ops can't piggy-back on a safe prefix. * New scoped overrides at the bottom of Extn-AIChatPanel.less neutralise Bootstrap's .btn / .btn-primary / .btn-secondary skins and add dark-theme defaults for inputs/textareas/selects inside .ai-chat-panel, so the always-dark sidebar renders identically in light and dark editor themes. * Plan-card maximize: .ai-plan-maximize-btn (muted button flush right of the header) plus .ai-plan-fullscreen-overlay (fixed, z-index 10001, dark backdrop, 960px card with the same plan chrome). Strings AI_CHAT_PLAN_MAXIMIZE and AI_CHAT_PLAN_CLOSE_FULLSCREEN. * First-time Full Auto warning strings: AI_CHAT_FULL_AUTO_WARNING_TITLE / _BODY / _PROCEED.
Companion to the phoenix-pro onboarding iframe wiring.
* Extn-AIChatPanel.less:
- .ai-tab-container gains `position: relative` so the prompt
overlay (re-parented there at runtime) can use absolute inset:0
to cover tabs + panel body.
- .ai-onboarding-wrap claims the same flex slot as .ai-chat-messages
when shown.
- .ai-history-open also hides the wrap so opening the history
dropdown takes the panel body cleanly.
- .ai-onboarding-prompt-overlay (top-level rule, not nested under
the wrap, so the styles apply after the runtime reparent)
matches Phoenix Code's panel chrome — neutral grey card on
@bc-ai-sidebar-bg / @bc-ai-input-border, header strip with
title + × close, full-bleed flush textarea, action row with
quiet text Cancel and an icon-only send button mirroring
.ai-send-btn. Explicit focus reset (border/outline/box-shadow:
none) so the global textarea:focus rule can't shift the
dialog when the user clicks in.
- Light entrance animations (overlay fade, card pop).
* strings.js: AI_CHAT_ONBOARDING_REVIEW_PROMPT ("Ready to build")
and AI_CHAT_ONBOARDING_SEND.
Companion to the AIChatPanel.js refactor: the iframe-theme values now live as --bg-panel / --text-primary / --accent-primary / etc. on .ai-chat-panel itself. JS reads them via getComputedStyle and forwards them to the iframe, so retheming is purely editing this LESS list — no JS change required.
|
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.



No description provided.