Skip to content

Commit 63cdd88

Browse files
committed
Remove unused hosted service surfaces
1 parent d843cc9 commit 63cdd88

39 files changed

Lines changed: 114 additions & 2183 deletions

File tree

.github/STAKEHOLDERS

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@
7878
/app/src/ai/mcp/ @peicodes @vkodithala
7979
/app/src/ai/skills/ @peicodes @vkodithala
8080
/crates/mcp/ @peicodes @vkodithala
81-
/resources/bundled/skills/feedback/ @captainsafia
8281

8382
# File-based MCP (overrides MCP and skills above)
8483
/app/src/ai/mcp/file_based_manager.rs @vkodithala

CASTCODES.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ Use the rebrand guard for public-surface changes:
3030
Core identity checks:
3131

3232
```bash
33-
cargo test -p warp_core --features local_fs castcodes
33+
cargo test -p warp_core --features local_fs
3434
cargo check -p warp --bin cast-codes --features gui
3535
```

FAQ.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ CastCodes is an open-source terminal and code workspace fork focused on local te
66

77
## Is CastCodes connected to upstream hosted services?
88

9-
No. CastCodes does not provide upstream hosted services. The public CastCodes build disables sign-in, upstream cloud cloud flows, hosted telemetry, hosted crash reporting, billing, shared sessions, upstream release feeds, and upstream feedback flows by default.
9+
No. CastCodes does not provide upstream hosted services. The public CastCodes build disables sign-in, upstream cloud flows, hosted telemetry, hosted crash reporting, billing, shared sessions, upstream release feeds, and upstream feedback flows by default. Feedback links route to this fork's GitHub issue tracker.
1010

1111
## Why do internal names still say `warp`?
1212

1313
This pass avoids a risky blind rename. Internal names such as `warp_core`, `warpui`, `warp_terminal`, inherited upstream dependencies, protocol names, tests, and historical references may remain until a later internal rename.
1414

1515
## Where does CastCodes store local data?
1616

17-
New public CastCodes builds write to CastCodes paths such as `.cast-codes`, Linux `cast-codes`, Windows `castcodes\\CastCodes`, and macOS `dev.castcodes.CastCodes`. Legacy legacy upstream paths are only compatibility references and should not receive newly-created CastCodes data.
17+
New public CastCodes builds write to CastCodes paths such as `.cast-codes`, Linux `cast-codes`, Windows `castcodes\\CastCodes`, and macOS `dev.castcodes.CastCodes`. Legacy upstream paths are only compatibility references and should not receive newly-created CastCodes data.
1818

1919
## What should I run before opening a PR?
2020

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ CastCodes is an open-source terminal and code workspace fork. This repository is
99
- Public app ID: `dev.castcodes.CastCodes`
1010
- Public URL scheme: `castcodes://`
1111
- Local terminal and code workflows are in scope.
12-
- upstream hosted services are not provided by this fork.
12+
- Upstream hosted services are not provided by this fork.
1313

14-
The public CastCodes build is fork-local by default. Sign-in, upstream cloud cloud flows, hosted telemetry, hosted crash reporting, upstream release feeds, billing, shared sessions, and upstream feedback flows are disabled or unavailable unless CastCodes-owned infrastructure is added later.
14+
The public CastCodes build is fork-local by default. Sign-in, upstream cloud flows, hosted telemetry, hosted crash reporting, upstream release feeds, billing, shared sessions, and upstream feedback flows are disabled or unavailable unless CastCodes-owned infrastructure is added later. Feedback links route to this fork's GitHub issue tracker.
1515

1616
## Build
1717

app/Cargo.toml

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -460,14 +460,11 @@ cross_repo_context = []
460460
codebase_index_persistence = ["full_source_code_embedding"]
461461
default = [
462462
"agent_mode",
463-
"viewing_shared_sessions",
464463
"render_continuous_block_selections_with_single_border",
465464
"settings_import",
466-
"shared_with_me",
467465
"block_toolbelt_save_as_workflow",
468466
"remove_alt_screen_padding",
469467
"less_horizontal_terminal_padding",
470-
"session_sharing_acls",
471468
"external_agent_mode_context",
472469
"shell_selector",
473470
"minimalist_ui",
@@ -490,7 +487,6 @@ default = [
490487
"agent_mode_pre_plan_xml",
491488
"command_correction_key",
492489
"kitty_images",
493-
"global_ai_analytics_collection",
494490
"grep_tool",
495491
"validate_autosuggestions",
496492
"clear_autosuggestion_on_escape",
@@ -499,7 +495,6 @@ default = [
499495
"fast_forward_autoexecute_button",
500496
"image_as_context",
501497
"command_palette_file_search",
502-
"usage_based_pricing",
503498
"ai_context_menu",
504499
"at_menu_outside_of_ai_mode",
505500
"agent_management_view",
@@ -512,7 +507,6 @@ default = [
512507
"ai_context_menu_code",
513508
"agent_decides_command_execution",
514509
"linked_code_blocks",
515-
"drive_objects_as_context",
516510
"search_codebase_ui",
517511
"profiles_design_revamp",
518512
"multi_profile",
@@ -533,8 +527,6 @@ default = [
533527
"mcp_oauth",
534528
"expand_edit_to_pane",
535529
"fallback_model_load_output_messaging",
536-
"api_key_authentication",
537-
"api_key_management",
538530
"summarization_cancellation_confirmation",
539531
"ui_zoom",
540532
"discard_per_file_and_all_changes",
@@ -543,54 +535,32 @@ default = [
543535
"summarize_conversation_command",
544536
"inline_code_review",
545537
"web_search_ui",
546-
"agent_shared_sessions",
547538
"integration_command",
548539
"artifact_command",
549-
"cloud_environments",
550-
"create_environment_slash_command",
551540
"code_review_find",
552-
"shared_session_long_running_commands",
553541
"mcp_grouped_server_context",
554542
"fork_from_command",
555543
"context_window_usage_v2",
556-
"ambient_agents_command_line",
557-
"ambient_agents_image_upload",
558-
"scheduled_ambient_agents",
559-
"warp_managed_secrets",
560544
"v4a_file_diffs",
561545
"classic_completions",
562546
"force_classic_completions",
563-
"team_api_keys",
564547
"agent_tips",
565-
"pluggable_notifications",
566548
"agent_onboarding",
567549
"global_search",
568-
"cloud_conversations",
569550
"list_skills",
570551
"ask_user_question",
571552
"bundled_skills",
572-
"ambient_agents_rtc",
573-
"cloud_mode",
574-
"cloud_mode_from_local_session",
575-
"cloud_mode_image_context",
576553
"agent_mode_computer_use",
577-
"oz_platform_skills",
578-
"oz_identity_federation",
579-
"sync_ambient_plans",
580554
"conversation_artifacts",
581555
"agent_view",
582556
"agent_view_block_context",
583-
"agent_view_conversation_list_view",
584557
"inline_slash_commands",
585558
"inline_history_menu",
586559
"inline_model_selector",
587-
"oz_launch_modal",
588-
"open_warp_launch_modal",
589560
"new_tab_styling",
590561
"richtext_multiselect",
591562
"inline_profile_selector",
592563
"web_fetch_ui",
593-
"oz_changelog_updates",
594564
"skill_arguments",
595565
"incremental_auto_reload",
596566
"active_conversation_requires_interaction",
@@ -614,13 +584,11 @@ default = [
614584
"agent_toolbar_editor",
615585
"configurable_toolbar",
616586
"transfer_control_tool",
617-
"hoa_notifications",
618587
"open_code_notifications",
619588
"cli_agent_rich_input",
620589
"vertical_tabs",
621590
"tab_configs",
622591
"hoa_onboarding_flow",
623-
"hoa_remote_control",
624592
"codex_notifications",
625593
"trim_trailing_blank_lines",
626594
"open_warp_new_settings_modes",

app/src/ai/agent_tips.rs

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -199,19 +199,12 @@ static DEFAULT_TIPS: LazyLock<Vec<AgentTip>> = LazyLock::new(|| {
199199
kind: AgentTipKind::Mcp,
200200
},
201201
AgentTip {
202-
description: "`/open-mcp-servers` to view and share MCP servers with your team.".to_string(),
202+
description: "`/open-mcp-servers` to view MCP servers configured for your workspace.".to_string(),
203203
link: None,
204204
binding_name: None,
205205
action: None,
206206
kind: AgentTipKind::Mcp,
207207
},
208-
AgentTip {
209-
description: "`/create-environment` to turn a repo into a remote docker environment an agent can run in.".to_string(),
210-
link: Some("https://docs.warp.dev/reference/cli/integration-setup".to_string()),
211-
binding_name: None,
212-
action: None,
213-
kind: AgentTipKind::General,
214-
},
215208
AgentTip {
216209
description: "`/add-prompt` to create a reusable prompt for repeatable workflows.".to_string(),
217210
link: None,
@@ -262,8 +255,8 @@ static DEFAULT_TIPS: LazyLock<Vec<AgentTip>> = LazyLock::new(|| {
262255
kind: AgentTipKind::General,
263256
},
264257
AgentTip {
265-
description: "Use the `oz` command to run an Oz agent in headless mode, useful for remote machines.".to_string(),
266-
link: Some("https://docs.warp.dev/reference/cli".to_string()),
258+
description: "Use the CastCodes CLI to run local agent workflows from a shell.".to_string(),
259+
link: None,
267260
binding_name: None,
268261
action: None,
269262
kind: AgentTipKind::General,
@@ -290,7 +283,7 @@ static DEFAULT_TIPS: LazyLock<Vec<AgentTip>> = LazyLock::new(|| {
290283
kind: AgentTipKind::Context,
291284
},
292285
AgentTip {
293-
description: "Warpify a remote SSH session to enable Oz inside that environment.".to_string(),
286+
description: "Warpify a remote SSH session to improve terminal integration in that environment.".to_string(),
294287
link: Some("https://docs.warp.dev/terminal/warpify".to_string()),
295288
binding_name: None,
296289
action: None,
@@ -319,7 +312,7 @@ static DEFAULT_TIPS: LazyLock<Vec<AgentTip>> = LazyLock::new(|| {
319312
},
320313
AgentTip {
321314
description: "Enable desktop notifications to get an alert when an agent needs your attention.".to_string(),
322-
link: Some("https://docs.warp.dev/agent-platform/cloud-agents/managing-cloud-agents#in-app-agent-notifications".to_string()),
315+
link: None,
323316
binding_name: None,
324317
action: None,
325318
kind: AgentTipKind::General,

app/src/app_menus.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ fn make_new_app_menu(ctx: &AppContext) -> Menu {
187187

188188
menu_items.push(MenuItem::Separator);
189189
menu_items.push(link_menu_item(
190-
"Privacy Policy...",
190+
"CastCodes Privacy Notes...",
191191
links::PRIVACY_POLICY_URL.into(),
192192
));
193193

@@ -909,9 +909,8 @@ fn feedback_menu_item() -> MenuItem {
909909
MenuItem::Custom(CustomMenuItem::new(
910910
"Send Feedback...",
911911
move |ctx| {
912-
// Route through the root-view action so workspace windows can open the
913-
// guided AI flow, while non-workspace windows still fall back to the
914-
// browser-based feedback form.
912+
// Route through the root-view action so workspace windows and
913+
// non-workspace windows use the same fork-local feedback target.
915914
ctx.dispatch_global_action("root_view:send_feedback", &());
916915
},
917916
no_updates,
@@ -924,9 +923,8 @@ fn make_new_help_menu() -> Menu {
924923
"Help",
925924
vec![
926925
feedback_menu_item(),
927-
link_menu_item("Warp Documentation...", links::USER_DOCS_URL.into()),
926+
link_menu_item("CastCodes Documentation...", links::USER_DOCS_URL.into()),
928927
link_menu_item("GitHub Issues...", links::GITHUB_ISSUES_URL.into()),
929-
link_menu_item("Warp Slack Community...", links::SLACK_URL.into()),
930928
],
931929
)
932930
}

app/src/autoupdate/linux.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ use warp_core::channel::{Channel, ChannelState};
88
use warp_terminal::shell::ShellType;
99
use warpui::ViewContext;
1010

11+
use crate::util::links;
1112
use crate::workspace::Workspace;
1213

1314
use super::release_assets_directory_url;
@@ -247,7 +248,7 @@ mod package_manager {
247248
FormattedTextFragment::plain_text(" to install the update and re-launch Warp. "),
248249
FormattedTextFragment::hyperlink(
249250
"Please report any issues",
250-
"https://github.com/warpdotdev/Warp/issues/new/choose",
251+
links::GITHUB_ISSUES_URL,
251252
),
252253
]));
253254

app/src/lib.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2911,11 +2911,20 @@ pub fn enabled_features() -> HashSet<FeatureFlag> {
29112911
flag,
29122912
FeatureFlag::Autoupdate
29132913
| FeatureFlag::Changelog
2914+
| FeatureFlag::CrashReporting
2915+
| FeatureFlag::CocoaSentry
2916+
| FeatureFlag::LogExpensiveFramesInSentry
2917+
| FeatureFlag::RecordAppActiveEvents
2918+
| FeatureFlag::GlobalAIAnalyticsBanner
2919+
| FeatureFlag::GlobalAIAnalyticsCollection
29142920
| FeatureFlag::ViewingSharedSessions
29152921
| FeatureFlag::CreatingSharedSessions
2922+
| FeatureFlag::SharedSessionWriteToLongRunningCommands
29162923
| FeatureFlag::SessionSharingAcls
29172924
| FeatureFlag::SharedWithMe
29182925
| FeatureFlag::CloudEnvironments
2926+
| FeatureFlag::CreateEnvironmentSlashCommand
2927+
| FeatureFlag::DriveObjectsAsContext
29192928
| FeatureFlag::AmbientAgentsCommandLine
29202929
| FeatureFlag::AmbientAgentsImageUpload
29212930
| FeatureFlag::ScheduledAmbientAgents
@@ -2925,8 +2934,10 @@ pub fn enabled_features() -> HashSet<FeatureFlag> {
29252934
| FeatureFlag::TeamApiKeys
29262935
| FeatureFlag::AgentSharedSessions
29272936
| FeatureFlag::SyncAmbientPlans
2937+
| FeatureFlag::WarpManagedSecrets
29282938
| FeatureFlag::CloudConversations
29292939
| FeatureFlag::AmbientAgentsRTC
2940+
| FeatureFlag::PluggableNotifications
29302941
| FeatureFlag::AgentViewConversationListView
29312942
| FeatureFlag::CloudMode
29322943
| FeatureFlag::CloudModeFromLocalSession

app/src/resource_center/view.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -36,29 +36,29 @@ use crate::{
3636

3737
// Footer icons
3838
const DOCS_SVG_PATH: &str = "bundled/svg/gitbook-logo.svg";
39-
const SLACK_SVG_PATH: &str = "bundled/svg/slack-logo.svg";
39+
const GITHUB_SVG_PATH: &str = "bundled/svg/github.svg";
4040
const FEEDBACK_SVG_PATH: &str = "bundled/svg/feedback.svg";
4141

4242
#[derive(Debug, Clone, Copy)]
4343
pub enum ResourceCenterFooterItem {
4444
Docs,
45-
Slack,
45+
Issues,
4646
Feedback,
4747
}
4848

4949
impl ResourceCenterFooterItem {
5050
pub fn ui_label(&self) -> &'static str {
5151
match self {
5252
ResourceCenterFooterItem::Docs => "Docs",
53-
ResourceCenterFooterItem::Slack => "Slack",
53+
ResourceCenterFooterItem::Issues => "Issues",
5454
ResourceCenterFooterItem::Feedback => "Feedback",
5555
}
5656
}
5757

5858
pub fn svg_path(&self) -> &'static str {
5959
match self {
6060
ResourceCenterFooterItem::Docs => DOCS_SVG_PATH,
61-
ResourceCenterFooterItem::Slack => SLACK_SVG_PATH,
61+
ResourceCenterFooterItem::Issues => GITHUB_SVG_PATH,
6262
ResourceCenterFooterItem::Feedback => FEEDBACK_SVG_PATH,
6363
}
6464
}
@@ -89,7 +89,7 @@ struct MouseStateHandles {
8989
close: MouseStateHandle,
9090
// Footer mouse state handles
9191
view_user_docs: MouseStateHandle,
92-
join_slack: MouseStateHandle,
92+
open_issues: MouseStateHandle,
9393
share_feedback: MouseStateHandle,
9494
}
9595

@@ -258,9 +258,9 @@ impl ResourceCenterView {
258258
) {
259259
match item {
260260
ResourceCenterFooterItem::Docs => ctx.open_url(links::USER_DOCS_URL),
261-
ResourceCenterFooterItem::Slack => ctx.open_url(links::SLACK_URL),
262-
// Route feedback through the workspace action so the guided agent experience is
263-
// launched when AI is available, and the GitHub issue form is opened otherwise.
261+
ResourceCenterFooterItem::Issues => ctx.open_url(links::GITHUB_ISSUES_URL),
262+
// Route feedback through the workspace action so every surface uses
263+
// the same fork-local GitHub issue form.
264264
ResourceCenterFooterItem::Feedback => {
265265
ctx.dispatch_typed_action(&WorkspaceAction::SendFeedback)
266266
}
@@ -415,7 +415,7 @@ impl ResourceCenterView {
415415
) -> Box<dyn Element> {
416416
let mouse_state = match item {
417417
ResourceCenterFooterItem::Docs => self.button_mouse_states.view_user_docs.clone(),
418-
ResourceCenterFooterItem::Slack => self.button_mouse_states.join_slack.clone(),
418+
ResourceCenterFooterItem::Issues => self.button_mouse_states.open_issues.clone(),
419419
ResourceCenterFooterItem::Feedback => self.button_mouse_states.share_feedback.clone(),
420420
};
421421

@@ -452,13 +452,13 @@ impl ResourceCenterView {
452452

453453
fn render_footer(&self, appearance: &Appearance) -> Box<dyn Element> {
454454
let docs_button = self.render_footer_button(ResourceCenterFooterItem::Docs, appearance);
455-
let slack_button = self.render_footer_button(ResourceCenterFooterItem::Slack, appearance);
455+
let issues_button = self.render_footer_button(ResourceCenterFooterItem::Issues, appearance);
456456
let feedback_button =
457457
self.render_footer_button(ResourceCenterFooterItem::Feedback, appearance);
458458

459459
let footer = Flex::row()
460460
.with_child(docs_button)
461-
.with_child(slack_button)
461+
.with_child(issues_button)
462462
.with_child(feedback_button)
463463
.with_main_axis_size(MainAxisSize::Max)
464464
.with_main_axis_alignment(MainAxisAlignment::SpaceEvenly)

0 commit comments

Comments
 (0)