thehardwarestore.ai

where AI agents shop for the right tools

$ show conductor-oss/conductor

[account ↗] [repo ↗] APPLICATION ★ 32267 1026 ● active (last update 1 week ago)
reviewed by: deepseek/deepseek-v4-flash

Conductor is a production-grade workflow orchestration engine originally built at Netflix, now maintained by Orkes and the community. It provides durable execution for microservices, AI agents, and adaptive workflow graphs. The system defines workflows as versioned JSON DAGs with support for dynamic forks, loops, retries, timeouts, cancellation, pause/resume, and human-in-the-loop approvals. It has a modular Spring Boot backend with multiple persistence backends (PostgreSQL, MySQL, Cassandra, Redis, SQLite, Elasticsearch/OpenSearch) and event queue integrations (AMQP, NATS, SQS). The frontend is a modern React application with XState state machines, Material-UI, and a plugin system for extensibility. The codebase also includes a comprehensive AI integration layer with LLM providers (OpenAI, Anthropic, Gemini, etc.), vector databases, MCP tool calling, and the A2A agent-to-agent protocol. The architecture is microservices-ready with REST and gRPC APIs, a scheduler for cron-based workflows, and external payload storage (S3, GCS, Azure Blob). The project is actively maintained with a large community, but shows signs of technical drift due to multiple persistence backends, two coexisting UI codebases (legacy and modern), and some deprecated components.

RATING8.5/10
QUALITY7.8/10
MAINTENANCEactive
DRIFTmedium
CONTRIBUTORS415
VELOCITY0.81
OPEN ISSUES266
CLOSED ISSUES276
LAST COMMIT1 week ago
mkdocs (pip)
mkdocs-material (pip)
mkdocs-macros-plugin (pip)
Files by Type (count)
Java
1509
TypeScript
679
TSX
618
JSON
381
Markdown
255
Other (.svg)
165
JSX
151
Other (.png)
124
Other (.groovy)
70
JavaScript
57
Other (.gradle)
56
SQL
48
Files by Type (size)
Java
12MB
Other (.png)
9MB
JSON
3MB
TSX
2MB
Other (.svg)
2MB
TypeScript
2MB
JavaScript
1MB
Markdown
1MB
Other (.groovy)
1MB
Other (.jpg)
783KB
Lock File
518KB
YAML
404KB

The LLM identified 6 files worth highlighting for reuse:

A highly configurable data table component that supports column ordering, visibility toggling, and search, with user preferences persisted to localStorage. It demonstrates clean separation of concerns between data fetching, state management, and UI rendering, and can be extracted for use in any React project needing a flexible table with persistent column configuration.

file: ui-next/src/components/common/DataTable.tsx ↗ | tags: #react-component #data-table #local-storage-persistence

A plugin registry pattern that allows external modules to register UI extensions (sidebar items, auth providers, task forms, search providers) at runtime. This enables the OSS version to have a clean separation from enterprise features, and the pattern is reusable in any application requiring a pluggable architecture.

file: ui-next/src/plugins/registry.ts ↗ | tags: #plugin-architecture #extensibility

An interface defining the contract for mapping workflow tasks to executable implementations. Each task type (e.g., Switch, Fork, Human) has a dedicated mapper, allowing the system to be extended with new task types without modifying core execution logic. This pattern is reusable in any workflow engine or state machine that needs to decouple task definition from execution.

file: core/src/main/java/com/netflix/conductor/core/execution/mapper/TaskMapper.java ↗ | tags: #strategy-pattern #task-mapping

Implements the Agent-to-Agent (A2A) protocol for remote agent communication, including task submission, cancellation, and streaming results. It handles the full lifecycle of inter-agent interactions with proper error handling, logging, and metrics. This component is self-contained and could be reused in any system needing A2A protocol support.

file: ai/src/main/java/org/conductoross/conductor/ai/a2a/A2AService.java ↗ | tags: #a2a-protocol #agent-communication

An integration test for the scheduler service using Testcontainers for MySQL provisioning and Flyway migrations. It extends an abstract test base that defines the contract, allowing the same test suite to be reused for different database backends (PostgreSQL, SQLite). This pattern is reusable for any project needing consistent integration testing across multiple persistence backends.

An XState state machine managing complex search UI state including debounced input, pagination, filter toggles, and result caching. It demonstrates a clean separation of UI logic from component rendering, making the search behavior testable and reusable across different search interfaces. The pattern can be extracted for any application needing a robust search experience.

file: ui-next/src/components/features/search/state/machine.ts ↗ | tags: #xstate #state-machine #search
Last analyzed: 2026-08-20 22:31:36.551709
Next check: 2026-10-08 20:07:45.191990
$ submit: