### Platform Setup with Common Skills Installed Globally Source: https://github.com/warpdotdev/warp/blob/master/WARP.md Perform platform-specific setup and install common agent skills globally into ~/.agents/skills. ```bash ./script/bootstrap --install-common-skills-globally ``` -------------------------------- ### Platform Setup with Common Skills Installed in Repository Source: https://github.com/warpdotdev/warp/blob/master/WARP.md Perform platform-specific setup and install common agent skills directly into the project's .agents/skills directory. ```bash ./script/bootstrap --install-common-skills-in-repo ``` -------------------------------- ### Platform Setup Without Common Skill Installation Source: https://github.com/warpdotdev/warp/blob/master/WARP.md Perform platform-specific setup while skipping the installation or update of common agent skills. ```bash ./script/bootstrap --skip-common-skills ``` -------------------------------- ### Compile Inno Setup Installer Source: https://github.com/warpdotdev/warp/blob/master/script/windows/README.md Compiles the Inno Setup script to generate a Windows installer executable. Ensure the Inno Setup Command-line Compiler is in your PATH. ```shell iscc .\script\windows\windows-installer.iss ``` -------------------------------- ### Install script placeholders for versioning Source: https://github.com/warpdotdev/warp/blob/master/specs/APP-3805/TECH.md Illustrates the use of version placeholders in the installation script for downloading and installing the remote server binary. These placeholders are substituted based on the release channel. ```bash Download URL query string: `...&channel={channel}{version_query}` Final install path: `mv "$bin" "$install_dir/{binary_name}{version_suffix}"` ``` -------------------------------- ### Run Inno Setup Installer Source: https://github.com/warpdotdev/warp/blob/master/script/windows/README.md Executes the generated Warp Windows installer. The output path may vary based on your Inno Setup configuration. ```shell .\script\windows\Output\Warp-Windows-Setup.exe ``` -------------------------------- ### Handle SSH Remote Server Install Click - Rust Source: https://github.com/warpdotdev/warp/blob/master/specs/APP-4069/TECH.md Initiates the installation process by transitioning from AwaitingUserChoice to AwaitingInstall. Extracts necessary session information for the installation. ```rust pub fn handle_ssh_remote_server_install( &mut self, session_id: SessionId, ctx: &mut ModelContext, ) { // Extract session_info from AwaitingUserChoice to get the socket path. let SshInitState::AwaitingUserChoice { ref session_info } = self.state else { log::warn!("Install clicked but state is not AwaitingUserChoice for {:?}", session_id); return; }; let IsLegacySSHSession::Yes { socket_path } = &session_info.is_legacy_ssh_session else { return; }; let socket_path = socket_path.clone(); let SshInitState::AwaitingUserChoice { session_info } = std::mem::replace(&mut self.state, SshInitState::AwaitingInstall { session_id, socket_path: socket_path.clone() }) else { unreachable!("just matched AwaitingUserChoice above"); }; } ``` -------------------------------- ### Install Claude API Go SDK Source: https://github.com/warpdotdev/warp/blob/master/resources/bundled/skills/claude-api/go/claude-api.md Install the official Go SDK for the Claude API using the go get command. ```bash go get github.com/anthropics/anthropic-sdk-go ``` -------------------------------- ### Create an Agent (Minimal) Source: https://github.com/warpdotdev/warp/blob/master/resources/bundled/skills/claude-api/python/managed-agents/README.md Create a new agent. Agents are reusable and versioned. This minimal example shows agent creation and starting a session. ```APIDOC ## Create an Agent (required first step) ### Minimal ```python # 1. Create the agent (reusable, versioned) agent = client.beta.agents.create( name="Coding Assistant", model="claude-opus-4-7", tools=[{"type": "agent_toolset_20260401", "default_config": {"enabled": True}}], ) # 2. Start a session session = client.beta.sessions.create( agent={"type": "agent", "id": agent.id, "version": agent.version}, environment_id=environment.id, ) print(session.id, session.status) ``` ``` -------------------------------- ### Install Remote Binary Source: https://github.com/warpdotdev/warp/blob/master/specs/APP-4069/TECH.md Initiates the installation of the binary on the remote host. Emits SetupStateChanged and BinaryInstallComplete. This is a side-effect decoupled from the session lifecycle. ```rust pub fn install_binary( &self, session_id: SessionId, socket_path: PathBuf, ctx: &mut ModelContext, ) { ctx.emit(RemoteServerManagerEvent::SetupStateChanged { session_id, state: RemoteServerSetupState::Installing { progress_percent: None }, }); let spawner = self.spawner.clone(); ctx.background_executor().spawn(async move { let result = match run_ssh_script(&socket_path, &install_script(), INSTALL_TIMEOUT).await { Ok(output) if output.status.success() => Ok(()), Ok(output) => { let code = output.status.code().unwrap_or(-1); let stderr = String::from_utf8_lossy(&output.stderr); Err(format!("install script failed (exit {code}): {stderr}")) } Err(e) => Err(e.to_string()), }; let _ = spawner.spawn(move |_, ctx| { ctx.emit(RemoteServerManagerEvent::BinaryInstallComplete { session_id, result, }); }).await; }).detach(); } ``` -------------------------------- ### Install Platform Plugin in setup_harness Source: https://github.com/warpdotdev/warp/blob/master/specs/REMOTE-1218/TECH.md Adds a call to install the platform plugin alongside the existing plugin installation. Both calls are best-effort and log warnings on failure. ```rust if let Some(manager) = plugin_manager { if let Err(e) = manager.install().await { log::warn!("Plugin installation failed (continuing): {e}"); } if let Err(e) = manager.install_platform_plugin().await { log::warn!("Platform plugin installation failed (continuing): {e}"); } } ``` -------------------------------- ### Install Docker Desktop Source: https://github.com/warpdotdev/warp/blob/master/app/tests/ssh/README.md Installs Docker Desktop using Homebrew. Ensure Docker Desktop is running to make the `docker` CLI available. ```bash brew install --cask docker ``` -------------------------------- ### Inno Setup Compiler CLI Usage Source: https://github.com/warpdotdev/warp/blob/master/script/windows/README.md Demonstrates the command-line usage for the Inno Setup Compiler, including how to override preprocessor definitions using the /D flag. ```shell iscc