PowerShell wrapper for the Warp Terminal (Oz) CLI
Idiomatic PowerShell functions that wrap the warp-terminal CLI, giving you structured objects, pipeline support, and tab-completion instead of raw text output.
This module exposes 28 public functions covering the full surface of the warp-terminal CLI. Every function returns parsed PSCustomObject output (via --output-format json under the hood), so results plug directly into Format-Table, Where-Object, Export-Csv, and the rest of the PowerShell ecosystem.
The warp-terminal CLI is still being developed, so features are not aligned with the Warp Terminal GUI. For example, it's not (yet) possible to create agents, agent profiles, skills, rules, interface with Warp Drive or check billing and usage status. I will try to keep this module updated as often as features change, but feel free to submit PR's for anything you feel would enhance or repair this module. Thank you!
- π€ Agent Operations - Launch local or cloud agents, list available agents and profiles, with automatic conversation continuation
- π Run Management - List and inspect ambient agent task runs
- π Environment Management - Create, update, delete, and inspect cloud environments and base images
- π Secret Management - Create, update, delete, and list secrets in Warp's secure storage
- β° Schedule Management - Create, update, pause, resume, and delete scheduled (cron) agents
- π Integrations - List, create, and update integrations
- π§© Utility - List available models, MCP servers, and manage authentication
- PowerShell 7.0 or higher
warp-terminalCLI installed and in yourPATH- A Warp account (authenticate via
Connect-Warp)
Install-PsResource psWarpTerminal-
Clone the repository
git clone https://github.com/ds0934/psWarpTerminal.git cd psWarpTerminal -
Import the module
Import-Module ./psWarpTerminal.psd1
Import the module and explore available cmdlets:
# Import the module
Import-Module psWarpTerminal
# Get all available cmdlets
Get-Command -Module psWarpTerminal
# Authenticate
Connect-Warp
# Launch a cloud agent
Invoke-WarpAgent -Cloud -Prompt "Build a REST API" -Environment "my-env-id" -Open
# List recent runs
Get-WarpRun -Limit 5
# Inspect a specific run
Get-WarpRun -TaskId "abc123"
# List environments, pipe to delete
Get-WarpEnvironment | Where-Object name -eq "old-env" | Remove-WarpEnvironment
# Create a scheduled agent
New-WarpSchedule -Name "daily-review" -Cron "0 9 * * *" -Prompt "Review open PRs" -Environment "my-env-id"
# Pause / resume a schedule
Suspend-WarpSchedule -Id "sched-id"
Resume-WarpSchedule -Id "sched-id"Invoke-WarpAgent automatically tracks conversation context across calls. After the first invocation, follow-on prompts continue the same conversation without needing to pass a conversation ID manually.
# Start a new agent conversation
Invoke-WarpAgent -Prompt "Build a REST API"
# Follow-on prompt automatically continues the same conversation
Invoke-WarpAgent -Prompt "Now add unit tests"
# Inspect the stored context
Get-WarpAgentContext
# Start fresh by clearing the context
Clear-WarpAgentContext
Invoke-WarpAgent -Prompt "Something completely different"Use -Verbose to see when auto-continuation is applied. You can always override by passing -Conversation explicitly.
Complete list of exported cmdlets (including conversation context helpers):
| Function | Description |
|---|---|
Invoke-WarpAgent |
Run an agent locally (default) or in the cloud (-Cloud). Auto-continues conversations |
Get-WarpAgent |
List available agents |
Get-WarpAgentProfile |
List agent profiles |
Get-WarpAgentContext |
Inspect the stored conversation context from the last agent run |
Clear-WarpAgentContext |
Reset the conversation context to start a fresh session |
| Function | Description |
|---|---|
Get-WarpRun |
List runs or get a specific run by -TaskId |
| Function | Description |
|---|---|
Get-WarpEnvironment |
List environments or get one by -Id |
New-WarpEnvironment |
Create a cloud environment |
Set-WarpEnvironment |
Update an existing environment |
Remove-WarpEnvironment |
Delete an environment (supports -WhatIf) |
Get-WarpEnvironmentImage |
List available base images |
| Function | Description |
|---|---|
Get-WarpSecret |
List secrets |
New-WarpSecret |
Create a secret |
Set-WarpSecret |
Update a secret |
Remove-WarpSecret |
Delete a secret (supports -WhatIf) |
| Function | Description |
|---|---|
New-WarpSchedule |
Create a scheduled agent with a cron expression |
Get-WarpSchedule |
List schedules or get one by -Id |
Set-WarpSchedule |
Update a schedule |
Remove-WarpSchedule |
Delete a schedule (supports -WhatIf) |
Suspend-WarpSchedule |
Pause a scheduled agent |
Resume-WarpSchedule |
Unpause a scheduled agent |
| Function | Description |
|---|---|
Get-WarpIntegration |
List integrations |
New-WarpIntegration |
Create an integration |
Set-WarpIntegration |
Update an integration |
| Function | Description |
|---|---|
Connect-Warp |
Log in to Warp |
Disconnect-Warp |
Log out (supports -WhatIf) |
Get-WarpModel |
List available models |
Get-WarpMcp |
List MCP servers |
Contributions are welcome! Feel free to:
- Report bugs
- Suggest new features or cmdlets
- Improve documentation
- Submit pull requests
Please open an issue or submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.