For an agentless configuration management tool, the first results are ansible/ansible (Ansible is the flagship agentless configuration management tool that uses SSH for remote execution, supports declarative playbooks and roles, manages inventories, and ensures idempotent state enforcement, exactly matching this search), fizzadar/pyinfra (pyinfra is an agentless automation framework that uses SSH to execute declarative Python code idempotently on managed hosts, fitting perfectly as a configuration management tool without requiring any pre-installed agent) and geerlingguy/ansible-for-devops. mbecker20/komodo and puppetlabs/puppet round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Automate server infrastructure and system configuration tasks using lightweight agentless tools that communicate over SSH.
Ansible is an agentless infrastructure automation engine designed to manage remote servers and network devices. It functions as a cross-platform orchestration tool that coordinates system updates, software installations, and service configurations from a centralized management workstation. By utilizing a declarative approach, it allows users to define desired system states through human-readable configuration files, ensuring consistency across distributed environments. The platform operates by establishing secure shell connections to target nodes, eliminating the need for persistent agent sof
Ansible is the flagship agentless configuration management tool that uses SSH for remote execution, supports declarative playbooks and roles, manages inventories, and ensures idempotent state enforcement, exactly matching this search.
pyinfra is an agentless infrastructure automation framework that turns declarative Python code into idempotent shell commands to manage servers, containers, and local machines over SSH without requiring any pre-installed software on target hosts. It operates by comparing the desired state of a system against its current state, using a dry-run simulation mode to preview changes and a fact-based conditional execution engine to gather host attributes at runtime and control which operations run. The tool compiles Python operations into optimized shell commands and executes them in parallel across
pyinfra is an agentless automation framework that uses SSH to execute declarative Python code idempotently on managed hosts, fitting perfectly as a configuration management tool without requiring any pre-installed agent.
This project is an infrastructure as code framework and library of reusable playbooks designed for server configuration and DevOps workflow automation. It provides a Linux server configuration suite and specialized tools for provisioning multi-node Kubernetes clusters to support containerized applications. The library enables the automation of infrastructure tasks and the orchestration of multi-server workflows. It includes specific logic for deploying containerized workloads and managing application environments across different hosting platforms. The codebase covers broad capability areas
This repository is a collection of Ansible playbooks and educational content rather than the configuration management tool itself — you would need to install Ansible separately to use it, so it does not directly provide the agentless SSH-based automation engine you are looking for.
Komodo is a self-hosted deployment manager and agentless software distributor designed to build application binaries and distribute them across a fleet of remote servers. It functions as a remote deployment orchestrator that manages the build and release process from a centralized control point. The system distinguishes itself by using a programmatic deployment pipeline, employing script logic rather than static configuration files to coordinate build and distribution sequences. It utilizes SSH for remote execution and binary synchronization, allowing the controller to push updates to target
Komodo is an agentless SSH-based deployment and binary distribution tool, but your search is for a configuration management tool with declarative configuration and playbook organization — it handles deployment pipelines, not the desired state enforcement and inventory modeling that defines configuration management.
Puppet is an infrastructure as code tool and configuration management framework used to automate the provisioning and state orchestration of server fleets. It functions as a declarative state orchestrator that manages server configurations and system settings to ensure consistency and reproducibility across a fleet of machines. The system utilizes a declarative state modeling approach and an idempotent execution engine to maintain configuration state and prevent environment drift. It employs resource-based abstraction and a client-server architecture to translate high-level specifications int
Puppet is a client-server configuration management tool that requires a persistent agent on each managed node, which directly conflicts with the requirement for an agentless tool that uses SSH as the sole transport.
Kubespray is an Ansible-based tool for deploying production-ready Kubernetes clusters on physical or virtual machines across various environments. It serves as an infrastructure provisioner and cluster deployer that automates the installation and configuration of cluster nodes. The project functions as a bare metal cluster orchestrator, allowing for the setup of Kubernetes on physical hardware without relying on a managed cloud provider. It includes specialized installers for configuring networking fabrics, pod communication plugins, and routing policies. The framework also manages the insta
Kubespray is a set of Ansible playbooks for deploying Kubernetes clusters, not a general configuration management tool—it uses SSH and Ansible (which is what you likely want), but the repository itself only manages Kubernetes infrastructure, not arbitrary server configuration.
Salt is an infrastructure configuration management tool and orchestration framework designed for large-scale system administration. It functions as a remote execution engine that enables administrators to manage, provision, and enforce declarative states across distributed fleets of servers from a central control point. By utilizing a high-performance message bus, the platform allows for the simultaneous execution of administrative tasks and the maintenance of consistent software configurations across thousands of nodes. The system distinguishes itself through a flexible architecture that sup
Salt is an agent-based configuration management tool that uses a high-performance message bus for remote execution, not SSH — it lacks the agentless, SSH‑driven approach this search specifies, though it can do configuration management at scale.
Spug is a web-based agentless SSH management platform used for executing remote commands and managing servers without requiring the installation of agent software on target machines. It serves as a centralized operations suite that integrates remote command execution, task scheduling, configuration management, health monitoring, and application deployment. The platform differentiates itself through a browser-based SSH terminal and jump box, providing direct interactive shell access to remote hosts without a local client. It also features a remote file manager for bidirectional file transfers
Spug is an agentless SSH-based remote operations platform with some configuration management features, but it focuses more on remote command execution, task scheduling, and monitoring rather than providing declarative configuration, playbook/role organization, and idempotent execution that define a dedicated configuration management tool like Ansible.
Kamal is a deployment tool for containerized applications that manages Docker containers across a fleet of remote servers via SSH. It serves as a lightweight alternative to managed platforms, enabling the hosting of web applications on bare metal or virtual private servers without a heavy orchestrator. The tool orchestrates zero-downtime deployments by managing container rotations and using traffic switching to ensure applications remain available during updates. It utilizes a centralized command line interface to coordinate deployment sequences and execute commands across multiple remote des
Kamal is a deployment tool for containerized applications, not a configuration management tool; it uses SSH for remote execution but focuses on Docker container lifecycle management rather than declarative system configuration, playbook organization, or idempotent state enforcement across nodes.
Capistrano is a Ruby-based release manager and remote server orchestrator. It uses SSH to push code updates and execute a standardized sequence of deployment tasks across a fleet of remote machines. The tool distinguishes itself through role-based server targeting and parallel connection pooling, allowing users to assign functional labels to servers and execute commands across multiple machines simultaneously. It manages multiple environments by applying a single deployment definition across different stages through parameter-based mapping. The system provides a framework for remote task exe
Capistrano is an agentless SSH-based deployment and release orchestration tool, not a configuration management system—it lacks declarative state management and idempotent configuration, making it a neighbouring category rather than the tool this search is after.
lsyncd is a synchronization service and background daemon that monitors local directories for changes and mirrors them to remote targets in real time. It operates as a sync manager that orchestrates the movement of local data to remote hosts, ensuring data consistency through automated mirroring. The project uses an embedded Lua scripting engine to define configuration logic, allowing for custom synchronization actions and layered rule definitions. It leverages rsync for delta-transfers to minimize bandwidth and utilizes SSH for secure encrypted communication with remote servers. The service
Lsyncd is an agentless SSH-based file synchronization daemon that mirrors local directories to remote hosts, but it is not a configuration management tool—it lacks declarative configuration, playbook/role organization, and inventory management, so it only partially overlaps with your search.
Deployer is a PHP deployment tool and SSH-based deployment automator used to push applications to remote servers and automate the provisioning of hosting environments. It functions as a zero-downtime deployment manager that utilizes symbolic links to switch between application versions, ensuring continuous site availability. The system employs pre-defined deployment recipes tailored to the specific requirements of popular PHP web frameworks. This framework-specific automation allows for the execution of task sequences designed for particular software environments. The tool covers remote serv
Deployer is an SSH-based deployment tool for PHP applications, not a declarative configuration management system—it automates pushing app releases and running task sequences rather than managing server state idempotently or with playbook/role organization.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| ansible/ansible | 69K | Python | GPL-3.0 | |
| fizzadar/pyinfra | 5.8K | Python | MIT | |
| geerlingguy/ansible-for-devops |
| 9.8K |
| Python |
| MIT |
| mbecker20/komodo | 11.4K | Rust | GPL-3.0 |
| puppetlabs/puppet | 7.9K | Ruby | Apache-2.0 |
| kubernetes-sigs/kubespray | 18.6K | Jinja | Apache-2.0 |
| saltstack/salt | 15.2K | Python | apache-2.0 |
| openspug/spug | 11K | JavaScript | AGPL-3.0 |
| basecamp/kamal | 14.3K | Ruby | MIT |
| capistrano/capistrano | 13K | Ruby | MIT |