use super::*;
struct ProfilingClipboard;
impl input::clipboard::ClipboardWriter for ProfilingClipboard {
fn copy(&mut self, _text: &str) -> anyhow::Result<()> {
Ok(())
}
}
fn profiling_app(temp: &tempfile::TempDir, sender: Sender<TuiEvent>) -> MissionControlApp {
let mut app = MissionControlApp::new(
TuiSessionConfig {
config: EffectiveConfig {
provider: Some("openai".to_string()),
model: Some("profiling-model".to_string()),
no_color: false,
file_autocomplete_respects_gitignore: true,
custom_providers: std::collections::BTreeMap::new(),
thinking_level: crate::thinking::ThinkingLevel::Default,
auth: None,
paths: crate::config::McPaths::from_root(temp.path().join("mc")),
},
settings: crate::config::Settings::default(),
appearance: crate::appearance::RuntimeAppearance::default(),
theme_cli_override: false,
initial_prompt: None,
instructions: Vec::new(),
discovered_skills: SkillDiscovery::default(),
skills: SkillDiscovery::default(),
commands: CommandRegistry::mvp(),
manager: SessionManager::new(temp.path().join("sessions")),
active_session: None,
resumed_session: false,
update_restart: false,
cwd: temp.path().to_path_buf(),
herdr_reporter: None,
},
sender,
);
app.startup_readiness = StartupReadiness::Ready;
app
}
mod prompt_input;