pool  by poolsideai

Terminal-based coding agent for development workflows

Created 2 months ago
291 stars

Top 90.3% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

Poolside's pool is a terminal-based coding agent designed to assist developers by integrating directly into their workflows. It offers interactive features, supports open agent protocols for editor and tool integration, and provides configurable modes for automation control. The agent aims to enhance productivity by providing context-aware assistance and automating code-related tasks.

How It Works

pool operates using the Agent Client Protocol (ACP) to interface with editors like Zed and JetBrains, and can also function as an ACP client to drive other AI agents. It leverages the Model Context Protocol (MCP) to connect to external tools and data sources, extending its capabilities. Users can define reusable workflows as "skills." The agent's behavior is governed by distinct modes: "Always ask" (default, prompts for tool use), "Accept edits" (auto-approves workspace modifications), "Allow all" (fully automated), and "Plan" (generates changes without execution). This modular design allows for flexible integration and controlled automation.

Quick Start & Requirements

Installation on Linux and macOS is via a shell script: curl -fsSL https://downloads.poolside.ai/pool/install.sh | sh. Windows users can use PowerShell: irm https://downloads.poolside.ai/pool/install.ps1 | iex (preview). To run, navigate to your project directory and execute pool. Further options are available via pool -h or /help within an interactive session.

Highlighted Details

  • Interactive terminal features include slash commands (/), fuzzy file/directory search (@), shell mode (!), and message history rewind.
  • Extensive ACP support allows pool to act as a server for editors or a client for agents like Claude, Codex, and Gemini.
  • MCP integration enables connections to various servers, including filesystem, Notion, and Linear, for enhanced tool access.
  • pool exec provides a non-interactive mode for scripting, CI pipelines, and one-off tasks, supporting inline prompts or prompts from files.
  • Granular permissions for tool usage and file path access can be configured across project-specific and user-default levels.

Maintenance & Community

Feedback and bug reporting can be submitted directly within an interactive session using the /feedback command. The provided README does not detail specific community channels, active contributors, or a public roadmap.

Licensing & Compatibility

The specific open-source license is referenced as being available in LICENSE.md, but is not detailed within the README text itself. Compatibility is broad due to its adherence to ACP and MCP standards, allowing integration with numerous editors and AI agents.

Limitations & Caveats

The Windows installation is noted as a preview. Shell commands involving control operators (e.g., |) or composite commands require manual approval. Tool permission rules currently support only single-level wildcards (*), not recursive ones (**). Path rules necessitate forward slashes for all paths, irrespective of the operating system. The exact license terms require consulting the LICENSE.md file.

Health Check
Last Commit

1 week ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
5
Star History
84 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.