About this project

Ally is a desktop AI coding assistant designed to work with local projects through natural-language conversations. It allows users to read, search, create, edit, and safely delete files within workspace boundaries, with optimistic concurrency checks. It also supports remote SSH workspaces, reusing existing SSH logins. The interface provides visual diffs, multi-file edits, command output, and detailed tool failure reasons directly in chat. Ally integrates with multiple model providers including OpenAI Chat Completions, OpenAI Responses, Anthropic Messages, and compatible services. It captures provider reasoning fields and configurable reasoning tags. Users can configure per-workspace model selection, tune reasoning depth, and set up multiple API keys with automatic failover and cooldown recovery. A bundled provider/model preset catalog speeds up setup. Additional features include sandboxed interactive HTML rendering, Mermaid diagrams with zoom and pan, KaTeX math, highlighted code blocks, image attachment for vision models, and preview of generated images. It supports parallel sub-agents with live steps, token usage, and inline summaries. MCP servers can be connected via stdio, SSE, or Streamable HTTP. Workflows are extensible with discoverable Skills and durable cross-project memory; built-in skills include codegraph, playwright-cli, and anydoc for Office/PDF to Markdown conversion. The application manages multiple workspaces, chat sessions, todos, and scheduled tasks, with a built-in workspace explorer and file editor. It runs shell commands and tracked background processes with a task-center log viewer, automatically discovering Git Bash on Windows. Web fetching and HTTP API calls are supported with bounded responses, timeouts, and rate limits. Token usage trends are visualized in an asynchronous dashboard. The UI can be personalized with custom background images and opacity. Auto-update is available on Windows and macOS with staged rollback. Proxy settings follow system or manual configuration across all network operations. Localized Chinese and English UI is provided. Bundled ripgrep enables code search without separate installation. Getting started: download the platform-specific package from GitHub Releases, start Ally, select a project directory, configure model provider and API key in settings, then begin chatting. On macOS, the unsigned app requires a one-time quarantine clearance via a provided command. Ally is built with Wails v3 and licensed under GPL-3.0-only. Release packages include ripgrep under MIT/Unlicense. The project acknowledges implementation details from Kimi Code CLI, Codex CLI, pi, and OpenCode.