Orchestra is an advanced, AI-driven DevOps assistant designed to automate your software development lifecycle. Built with a modular plugin architecture and powered by a multi-agent AI system, Orchestra acts as your virtual team of experts—handling everything from project planning to quality assurance.
The flagship feature of Orchestra. It monitors your workspace for changes and dynamically orchestrates the right agents to handle them.
- Context-Aware: Analyzes git diffs to understand what changed (logic vs. docs vs. config).
- Dynamic Pipelines: Automatically triggers Unit Tests, Security Scans, or Documentation updates based on the nature of the change.
- Zero Config: Just run it, and it figures out what needs to be done.
Orchestra simulates a real agile team using specialized AI personas:
- Software Architect: Analyzes code structure and determines pipeline strategies.
- QA Automation Engineer: Writes robust unit and integration tests (Jest, etc.).
- Security Engineer: Scans code for vulnerabilities and suggests secure fixes.
- Product Manager: Breaks down requirements into user stories and business value.
- Scrum Master: Organizes tasks and manages agile process simulation.
- Technical Writer: Generates and improves documentation.
- UX Designer: Provides usability guidelines for frontend tasks.
- DevOps Engineer: Improves CI/CD pipelines, infrastructure as code, and automation efficiency.
Orchestra is built on a flexible plugin architecture, allowing for easy extension. Current plugins include:
test-gen: Generates unit tests for specific files.vuln-scan: Performs AI-based security analysis and auto-patching.project-manager: Simulates an agile sprint planning session from a simple prompt.doc-gen: Auto-generates API references and improves READMEs.release-notes: Generates professional release notes from git history.
Orchestra is designed to be easily extensible. You can add new commands and capabilities by creating plugins.
To create a new plugin, run:
npx orchestra-ai-devops create-plugin my-new-featureThis will scaffold a new plugin in src/plugins/my-new-feature.
For detailed instructions, see PLUGINS.md.
For detailed instructions on initializing a repository and integrating Orchestra into your CI/CD pipelines via NPM, see the Setup & Pipeline Guide.
You can install Orchestra globally to use it across any project:
npm install -g orchestra-ai-devopsOr run it directly with npx:
npx orchestra-ai-devops --help-
Clone the repository:
git clone https://github.com/your-repo/Orchestra.git cd Orchestra -
Install dependencies:
npm install
-
Build the project:
npm run build
-
Link locally (Optional):
npm link
Create a .env file in the root directory (or where you run Orchestra):
# OpenRouter (Recommended)
# OPENAI_API_KEY=sk-or-v1-your-openrouter-key
# AI_MODEL=openrouter/auto
# AI_BASE_URL=https://openrouter.ai/api/v1
# OpenAI (Alternative)
# OPENAI_API_KEY=sk-your-openai-key
# AI_MODEL=gpt-4o-mini
# Agent role routing
# ORCHESTRA_ROLE_ROUTING=auto # default; Orchestra chooses best role per request
# ORCHESTRA_ROLE_ROUTING=prefer # use each plugin’s preferred role
GITHUB_TOKEN=your-github-token (Optional, for Issue creation)Let Orchestra decide what to do based on your current work.
orchestra auto
# OR
npm start -- autoOrchestra is designed to run in any CI/CD pipeline.
Use the provided action definition:
steps:
- uses: actions/checkout@v3
- uses: ./path/to/orchestra/action # If local
# OR if published: uses: sveMind/Orchestra@v1
with:
command: 'pr-review'
args: '${{ github.event.pull_request.number }}'
openrouter_api_key: ${{ secrets.OPENROUTER_API_KEY }}
ai_model: openrouter/auto
github_token: ${{ secrets.GITHUB_TOKEN }}Use the Docker image for universal compatibility:
docker run --rm \
-v $(pwd):/app/work \
-e OPENAI_API_KEY=$OPENAI_API_KEY \
-e GITHUB_TOKEN=$GITHUB_TOKEN \
orchestra-ai \
pr-review 123Orchestra automatically detects the CI environment (GitHub Actions, GitLab CI, Azure DevOps) and configures the appropriate VCS provider.
Contributions are welcome! Please submit a Pull Request.
ISC