wingman-cli

command module
v0.3.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 25, 2026 License: MIT Imports: 7 Imported by: 0

README ΒΆ

Wingman CLI

A powerful AI-powered coding assistant that runs directly in your terminal. Wingman helps you with coding tasks by reading files, executing commands, editing code, and writing new files β€” all through natural conversation.

Go Version License Platform

✨ Features

  • Interactive TUI β€” Rich terminal interface with markdown rendering and syntax highlighting
  • File Operations β€” Read, write, edit, and search files in your codebase
  • Shell Integration β€” Execute shell commands with elicitation
  • MCP Support β€” Extend functionality with Model Context Protocol servers
  • Context Management β€” Automatic conversation compaction to handle long sessions
  • Multi-Model Support β€” Works with any OpenResponses API compatible endpoint with auto-selection
  • Rewind & Diff β€” Checkpoint-based undo with visual diff viewer
  • Skills β€” Define custom workflows using Agent Skills format
  • Image Support β€” Paste images from clipboard for vision-capable models
  • File Context β€” Add files to context with @filename or /file command
  • Theme Detection β€” Automatic light/dark theme based on terminal settings

πŸ“¦ Installation

From Source
go install github.com/adrianliechti/wingman-cli@latest
Build Locally
git clone https://github.com/adrianliechti/wingman-cli.git
cd wingman-cli
go build -o wingman .

πŸš€ Quick Start

  1. Set up your API key:
# For any OpenResponses API compatible endpoint
export OPENAI_API_KEY="your-api-key"

# Optional: custom endpoint (defaults to OpenAI)
export OPENAI_BASE_URL="https://your-api-endpoint/v1"
  1. Run Wingman in your project directory:
wingman
  1. Start chatting! Ask Wingman to help with coding tasks:
> Show me all TODO comments in this project
> Refactor the config package to use dependency injection
> Write tests for the agent module

βš™οΈ Configuration

Environment Variables
Variable Description
OPENAI_API_KEY OpenAI API key (required)
OPENAI_BASE_URL Custom OpenAI-compatible API endpoint
OPENAI_MODEL Model to use (auto-selected if not specified)

Alternative: Wingman Server

Variable Description
WINGMAN_URL Wingman server URL (takes priority over OpenAI vars)
WINGMAN_TOKEN Wingman authentication token
WINGMAN_MODEL Model to use
Project Configuration

Create an AGENTS.md file in your project root to provide context-specific instructions:

# Project Guidelines

- Use Go 1.25+ features
- Follow standard Go project layout
- Write tests for all new functionality
MCP Integration

Add a mcp.json file to integrate with MCP servers:

{
  "servers": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "@my-org/my-mcp-server"]
    }
  }
}

πŸ› οΈ Built-in Tools

Wingman comes with powerful built-in tools:

Tool Description
read Read file contents with optional line range
write Create or overwrite files
edit Make surgical edits to existing files
ls List directory contents
find Find files using glob patterns
grep Search file contents using regex patterns
shell Execute shell commands

🎨 Modes

  • Agent Mode β€” Full autonomous operation with tool execution
  • Plan Mode β€” Planning and analysis without making changes

Toggle between modes using Tab key.

⌨️ Keyboard Shortcuts

Shortcut Action
Enter Send message
Tab Toggle Agent/Plan mode
Shift+Tab Cycle through available models
@ Open file picker to add context
Ctrl+V / Cmd+V Paste image from clipboard
Ctrl+L Clear chat history
Escape Clear input and pending attachments
Ctrl+C Close modal or exit

πŸ“ Commands

Command Description
/help Show available commands
/model Select AI model from available options
/file Add file to context
/paste Paste from clipboard
/plan Show current plan
/diff Show changes from session baseline
/rewind Restore to previous checkpoint
/clear Clear chat history
/quit Exit application

πŸ”§ Skills

Skills are reusable workflows defined in SKILL.md files. Wingman discovers skills from:

  • .skills/
  • .github/
  • .claude/
  • .opencode/

Example skill file (.skills/testing/SKILL.md):

---
name: run-tests
description: Run the project test suite with coverage
---

# Testing Skill

Run tests with: `go test -cover ./...`

Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
pkg
app

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL