docker-imploid
Practical Ephemeral Code with Imploid - A holistic approach to autonomous development and testing.
Overview
This repository provides a secure, containerized environment that integrates two powerful tools into a holistic workflow:
Imploid - Autonomous Code Generation
An AI-powered coding agent built on Claude Code that:
- Works at the conceptual level - You describe what you want, not how to do it
- Handles the full development cycle - From planning to implementation
- Manages git workflows - Creates branches, commits, and PRs automatically
- Maintains context across sessions - Tracks activity and learns from your codebase
Desplega.ai's qa-use MCP - Autonomous Testing & Validation
An MCP (Model Context Protocol) server that enables Claude Code to:
- Generate and execute end-to-end tests - Natural language to executable QA tests
- Visualize test execution - See what the agent is testing in real-time
- Validate implementations automatically - Ensure generated code actually works
- Provide feedback loops - Failed tests inform the next iteration
Why This Combination Matters
As discussed in this article, having imploid generate code is powerful, but having it validate that code works is transformative. This setup provides:
- Complete autonomy - From feature request to tested implementation
- Quality assurance - Every change is validated through automated testing
- Faster iterations - Catch issues immediately, not in production
- Reduced context switching - No manual testing between code generation cycles
Without qa-use, you'd just have code generation. Without imploid, you'd just have testing. Together, you have a complete autonomous development workflow.
Getting Started
Prerequisites
- Docker & Docker Compose
- SSH keys configured (for git operations)
- API keys:
- Anthropic API key (for Claude) - desplega.ai API key (for qa-use MCP) - GitHub token (optional, for gh CLI operations)
Installation
Based on lessons learned from practical experimentation, here's the battle-tested setup:
- Clone this repository:
git clone git@github.com:desplega-ai/docker-imploid.git
cd docker-imploid- Configure your environment:
Create a .env file with your API keys:
ANTHROPIC_API_KEY=your_anthropic_key
DESPLEGA_API_KEY=your_desplega_key
GITHUB_TOKEN=your_github_token # Optional- Set up your project's setup.sh:
Imploid expects a setup.sh file in your project's root directory. This script should: - Install dependencies - Start your application - Ensure it's running on the configured localhost port
Example:
#!/bin/bash
npm install
npm run dev &
# Wait for server to be ready
sleep 5- Build and start the containers:
docker-compose up -d- Initialize imploid inside the container:
docker-compose exec imploid bash
npx imploid@latest --config
npx imploid@latest --foregroundKey Configuration Details
Following the :
- Non-root user: The container runs as a non-sudo user to safely use
--dangerously-skip-permissions - SSH key mapping: Your
~/.sshdirectory is mapped for git operations - MCP configuration: Claude wrapper automatically loads the MCP config for qa-use integration
- Activity tracking: Map
~/.imploidto persist agent activity and configuration
How It Works
The Complete Workflow
- You provide a feature request (e.g., "Add user authentication with JWT")
- Imploid generates the implementation:
- Creates a feature branch - Plans the implementation - Writes the code - Commits changes
- qa-use validates the implementation:
- Generates end-to-end tests based on the feature - Executes tests against your running application - Visualizes test execution - Reports results back to Claude
- Feedback loop:
- If tests pass: Creates a PR with confidence - If tests fail: Imploid iterates on the implementation - Process repeats until quality is assured
Using qa-use MCP
The qa-use MCP server enables Claude to:
- Create natural language test scenarios
- Execute them against your running application (localhost:xxxx)
- Capture screenshots and interaction flows
- Provide detailed test reports
- You can later promote your tests to a regression test suite in production or staging.
The MCP handles all the complexity of browser automation, test execution, and result reporting.
License
This project is licensed under the MIT License - see the LICENSE file for details.
