diff --git a/apps/web/src/components/CommandPalette.tsx b/apps/web/src/components/CommandPalette.tsx
index 9f993ab86c40a6448f037ed82981af0613688036..fddd7fa8bd7aef920db8636d66f3fe27c948c6a4 100644
--- a/apps/web/src/components/CommandPalette.tsx
+++ b/apps/web/src/components/CommandPalette.tsx
@@ -42,6 +42,7 @@ import { useLocation, useNavigate, useParams } from "@tanstack/react-router";
import * as Option from "effect/Option";
import {
ArrowLeftIcon,
+ ChartNoAxesColumnIcon,
CornerLeftUpIcon,
FileSearchIcon,
FolderIcon,
@@ -193,6 +194,7 @@ import {
} from "../sidebarProjectGrouping";
import type { Project } from "../types";
import { PullRequestGlyph } from "~/components/pullRequest/pullRequestIcons";
+import { readPullRequestListPreferences } from "~/components/pullRequest/pullRequestListPreferences";
const EMPTY_BROWSE_ENTRIES: FilesystemBrowseResult["entries"] = [];
@@ -1999,6 +2001,34 @@ function OpenCommandPaletteDialog(props: {
},
});
+ if (
+ environments.some(
+ (environment) => environment.serverConfig?.environment.capabilities.pullRequests === true,
+ )
+ ) {
+ actionItems.push({
+ kind: "action",
+ value: "action:pull-requests",
+ searchTerms: ["pull requests", "prs", "pr", "github", "review", "merge", "branch"],
+ title: "Open pull requests",
+ icon: ,
+ run: async () => {
+ await navigate({ to: "/pull-requests", search: readPullRequestListPreferences() });
+ },
+ });
+ }
+
+ actionItems.push({
+ kind: "action",
+ value: "action:usage",
+ searchTerms: ["usage", "use", "tokens", "cost", "spend", "limits", "stats", "analytics"],
+ title: "Open usage",
+ icon: ,
+ run: async () => {
+ await navigate({ to: "/usage" });
+ },
+ });
+
actionItems.push({
kind: "action",
value: "action:settings",