Building a Guarded Control Plane for Tomcat Automation
I built and maintain an open-source project called InfraPilot, and I’m looking for technical feedback from DevOps, SRE, Ansible, and platform engineering practitioners.
InfraPilot is a natural-language control plane for Tomcat operations. The goal is to let an operator use plain-English commands for Tomcat deployment, scaling, verification, and recovery, while keeping execution bounded through validation and deterministic Ansible-backed workflows.
The project is not trying to make infrastructure execution free-form. Natural language is only the interface. The execution path is guarded, validated, and backed by predefined automation.
Example commands
Deploy a scalable Java app with 5 instances
Scale Tomcats to 4
Reduce JVMs to 1
Why I built it
Middleware operations often involve scripts, playbooks, manual checks, and environment-specific commands. Even when automation exists, the operator experience can still be fragmented.
InfraPilot tries to provide a cleaner operational layer for Tomcat lifecycle actions by combining:
- natural-language intent parsing
- policy-based validation
- deterministic Ansible-backed execution
- desired-state scaling and reconciliation
- runtime verification
- targeted recovery workflows
- dashboard and API visibility
Design principle
The main design principle is:
Natural language should describe intent, but policy validation and deterministic automation should control execution.
That means unsupported or ambiguous prompts should not result in unpredictable infrastructure actions. They should be rejected, clarified, or mapped only to explicitly supported operations.
What I’m looking for feedback on
I’m especially interested in criticism around:
- unsafe prompt handling
- ambiguity rejection
- validation boundaries
- recovery verification
- dry-run behavior
- whether the demo/docs are easy to follow
- whether this control-plane pattern makes sense for Tomcat operations
Repository
InfraPilot:
https://github.com/pramodmuppala/InfraPilot
GitHub Discussions:
https://github.com/pramodmuppala/InfraPilot/discussions
I’m looking for technical criticism, not promotion. If you see architectural weaknesses, safety gaps, or usability problems, please leave feedback in GitHub Discussions so it can be tracked with the project.
Top comments (1)
Specific design question: should ambiguous natural-language prompts be rejected immediately at the parser layer, or converted into a “needs clarification” response before validation?
I’m trying to keep the interface useful without allowing unsafe or unpredictable infrastructure actions.