flags.rs

 1use crate::FeatureFlag;
 2
 3pub struct NotebookFeatureFlag;
 4
 5impl FeatureFlag for NotebookFeatureFlag {
 6    const NAME: &'static str = "notebooks";
 7}
 8
 9pub struct PanicFeatureFlag;
10
11impl FeatureFlag for PanicFeatureFlag {
12    const NAME: &'static str = "panic";
13}
14
15pub struct AgentV2FeatureFlag;
16
17impl FeatureFlag for AgentV2FeatureFlag {
18    const NAME: &'static str = "agent-v2";
19}
20
21pub struct AcpBetaFeatureFlag;
22
23impl FeatureFlag for AcpBetaFeatureFlag {
24    const NAME: &'static str = "acp-beta";
25}
26
27pub struct AgentSharingFeatureFlag;
28
29impl FeatureFlag for AgentSharingFeatureFlag {
30    const NAME: &'static str = "agent-sharing";
31}
32
33pub struct SubagentsFeatureFlag;
34
35impl FeatureFlag for SubagentsFeatureFlag {
36    const NAME: &'static str = "subagents";
37
38    fn enabled_for_staff() -> bool {
39        false
40    }
41}
42
43pub struct DiffReviewFeatureFlag;
44
45impl FeatureFlag for DiffReviewFeatureFlag {
46    const NAME: &'static str = "diff-review";
47
48    fn enabled_for_staff() -> bool {
49        false
50    }
51}
52
53/// Controls whether we show the new thinking and effort level controls in the Agent Panel when using applicable models
54/// through the Zed provider (Cloud).
55pub struct CloudThinkingEffortFeatureFlag;
56
57impl FeatureFlag for CloudThinkingEffortFeatureFlag {
58    const NAME: &'static str = "cloud-thinking-effort";
59
60    fn enabled_for_staff() -> bool {
61        false
62    }
63}