-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Add announcement for Sonic model #7244
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,9 +3,11 @@ import { Trans } from "react-i18next" | |
| import { VSCodeLink } from "@vscode/webview-ui-toolkit/react" | ||
|
|
||
| import { Package } from "@roo/package" | ||
|
|
||
| import { useAppTranslation } from "@src/i18n/TranslationContext" | ||
| import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "@src/components/ui" | ||
| import { useExtensionState } from "@src/context/ExtensionStateContext" | ||
| import { vscode } from "@src/utils/vscode" | ||
| import { Dialog, DialogContent, DialogHeader, DialogTitle } from "@src/components/ui" | ||
| import { Button } from "@src/components/ui" | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could we combine this Button import with the other UI component imports on line 9 for better organization? Then remove line 10. |
||
|
|
||
| interface AnnouncementProps { | ||
| hideAnnouncement: () => void | ||
|
|
@@ -23,6 +25,7 @@ interface AnnouncementProps { | |
| const Announcement = ({ hideAnnouncement }: AnnouncementProps) => { | ||
| const { t } = useAppTranslation() | ||
| const [open, setOpen] = useState(true) | ||
| const { cloudIsAuthenticated } = useExtensionState() | ||
|
|
||
| return ( | ||
| <Dialog | ||
|
|
@@ -37,98 +40,64 @@ const Announcement = ({ hideAnnouncement }: AnnouncementProps) => { | |
| <DialogContent className="max-w-96"> | ||
| <DialogHeader> | ||
| <DialogTitle>{t("chat:announcement.title", { version: Package.version })}</DialogTitle> | ||
| <DialogDescription> | ||
| {t("chat:announcement.description", { version: Package.version })} | ||
| </DialogDescription> | ||
| </DialogHeader> | ||
| <div> | ||
| <h3>{t("chat:announcement.whatsNew")}</h3> | ||
| <ul className="space-y-2"> | ||
| <li> | ||
| •{" "} | ||
| <Trans | ||
| i18nKey="chat:announcement.feature1" | ||
| components={{ | ||
| bold: <b />, | ||
| code: <code />, | ||
| settingsLink: ( | ||
| <VSCodeLink | ||
| href="#" | ||
| onClick={(e) => { | ||
| e.preventDefault() | ||
| setOpen(false) | ||
| hideAnnouncement() | ||
| window.postMessage( | ||
| { | ||
| type: "action", | ||
| action: "settingsButtonClicked", | ||
| values: { section: "codebaseIndexing" }, | ||
| }, | ||
| "*", | ||
| ) | ||
| }} | ||
| /> | ||
| ), | ||
| }} | ||
| /> | ||
| </li> | ||
| <li> | ||
| •{" "} | ||
| <Trans | ||
| i18nKey="chat:announcement.feature2" | ||
| components={{ | ||
| bold: <b />, | ||
| code: <code />, | ||
| }} | ||
| /> | ||
| </li> | ||
| <li> | ||
| •{" "} | ||
| <Trans | ||
| i18nKey="chat:announcement.feature3" | ||
| i18nKey="chat:announcement.stealthModel.feature" | ||
| components={{ | ||
| bold: <b />, | ||
| code: <code />, | ||
| }} | ||
| /> | ||
| </li> | ||
| </ul> | ||
| <Trans | ||
| i18nKey="chat:announcement.detailsDiscussLinks" | ||
| components={{ discordLink: <DiscordLink />, redditLink: <RedditLink /> }} | ||
| /> | ||
|
|
||
| <p className="text-xs text-muted-foreground mt-2">{t("chat:announcement.stealthModel.note")}</p> | ||
|
|
||
| <div className="mt-4"> | ||
| {!cloudIsAuthenticated ? ( | ||
| <Button | ||
| onClick={() => { | ||
| vscode.postMessage({ type: "rooCloudSignIn" }) | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Consider adding telemetry tracking when users click this button to understand feature adoption rates. This would help measure engagement with the new Sonic model announcement. |
||
| }} | ||
| className="w-full"> | ||
| {t("chat:announcement.stealthModel.connectButton")} | ||
| </Button> | ||
| ) : ( | ||
| <div className="text-sm w-full"> | ||
| <Trans | ||
| i18nKey="chat:announcement.stealthModel.selectModel" | ||
| components={{ | ||
| code: <code className="px-1 py-0.5 bg-gray-100 dark:bg-gray-800 rounded" />, | ||
| settingsLink: ( | ||
| <VSCodeLink | ||
| href="#" | ||
| onClick={(e) => { | ||
| e.preventDefault() | ||
| setOpen(false) | ||
| hideAnnouncement() | ||
| window.postMessage( | ||
| { | ||
| type: "action", | ||
| action: "settingsButtonClicked", | ||
| values: { section: "provider" }, | ||
| }, | ||
| "*", | ||
| ) | ||
| }} | ||
| /> | ||
| ), | ||
| }} | ||
| /> | ||
| </div> | ||
| )} | ||
| </div> | ||
| </div> | ||
| </DialogContent> | ||
| </Dialog> | ||
| ) | ||
| } | ||
|
|
||
| const DiscordLink = () => ( | ||
| <VSCodeLink | ||
| href="https://discord.gg/roocode" | ||
| onClick={(e) => { | ||
| e.preventDefault() | ||
| window.postMessage( | ||
| { type: "action", action: "openExternal", data: { url: "https://discord.gg/roocode" } }, | ||
| "*", | ||
| ) | ||
| }}> | ||
| Discord | ||
| </VSCodeLink> | ||
| ) | ||
|
|
||
| const RedditLink = () => ( | ||
| <VSCodeLink | ||
| href="https://reddit.com/r/RooCode" | ||
| onClick={(e) => { | ||
| e.preventDefault() | ||
| window.postMessage( | ||
| { type: "action", action: "openExternal", data: { url: "https://reddit.com/r/RooCode" } }, | ||
| "*", | ||
| ) | ||
| }}> | ||
| </VSCodeLink> | ||
| ) | ||
|
|
||
| export default memo(Announcement) | ||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -274,13 +274,12 @@ | |
| }, | ||
| "announcement": { | ||
| "title": "🎉 Roo Code {{version}} Released", | ||
| "description": "Roo Code {{version}} brings powerful new features and significant improvements to enhance your development workflow.", | ||
| "whatsNew": "What's New", | ||
| "feature1": "<bold>Message Queueing</bold>: Queue multiple messages while Roo is working, allowing you to continue planning your workflow without interruption.", | ||
| "feature2": "<bold>Custom Slash Commands</bold>: Create personalized slash commands for quick access to frequently used prompts and workflows, with full UI management.", | ||
| "feature3": "<bold>Enhanced Gemini Tools</bold>: New URL context and Google Search grounding capabilities provide Gemini models with real-time web information and enhanced research abilities.", | ||
| "hideButton": "Hide announcement", | ||
| "detailsDiscussLinks": "Get more details and discuss in <discordLink>Discord</discordLink> and <redditLink>Reddit</redditLink> 🚀" | ||
| "stealthModel": { | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The i18n keys use "stealthModel" but the model is called "Sonic" (roo/sonic). Should we rename these keys to "sonicModel" for consistency throughout the codebase? |
||
| "feature": "<bold>Limited-time FREE stealth model</bold> - A blazing fast reasoning model that excels at agentic coding with a 262k context window, available through Roo Code Cloud.", | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The text refers to a "stealth model" but should say "Sonic model" to match the actual model name (roo/sonic): |
||
| "note": "(Note: prompts and completions are logged by the model creator to improve the model)", | ||
| "connectButton": "Connect to Roo Code Cloud", | ||
| "selectModel": "Select <code>roo/sonic</code> from the Roo Code Cloud provider in<br/><settingsLink>Settings</settingsLink> to get started" | ||
| } | ||
| }, | ||
| "reasoning": { | ||
| "thinking": "Thinking", | ||
|
|
||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this intentional? The announcement ID uses "stealth-model" but the PR title and model reference use "Sonic". Consider using "aug-20-2025-sonic-model" for consistency: