01
BACK TO PROJECTS LISTArche
DevTools / AI Agents
Self-hosted development agent orchestrator that automates Jira tickets end-to-end (plan, execute, review) into GitLab merge requests, running each step in an isolated Docker sandbox
Context
Personal project / DevTools
1 month
Solo
Automate the full lifecycle of a Jira ticket (from planning to merge request) without relying on a SaaS agent platform: everything must run on a VM or VPS, with strict Docker sandboxing and explicit human approval at each critical step.
My Role
Architect & Developer
RESPONSIBILITIES
- —3-process decoupled architecture (CLI, Fastify server, worker) with shared state in SQLite/Drizzle
- —Plan, execute, review pipeline with multi-model profiles via OpenRouter
- —Hardened Docker sandbox to execute generated code (read-only rootfs, cap_drop ALL, cpu/pids/memory limits)
- —Jira webhook + GitLab integration for automated merge requests, rule-based repo routing
- —Ergonomic CLI (Commander + Clack) with `init` wizard, `doctor` checks, and live terminal dashboard
DELIVERABLES
Complete self-hosted platform: CLI, HTTP API, worker, dashboard, one-command `arche init` setup
Results
- ✓End-to-end pipeline working: Jira ticket, branch + commits, GitLab merge request
- ✓Docker sandbox hardened by default rather than optional (read-only rootfs, no_new_privileges, command allowlist)
- ✓Standard VM/VPS or Docker Compose deployment, no dependency on a SaaS agent platform
ACHIEVEMENTS
- •3-tier architecture (CLI + server + worker) with shared SQLite and locks to handle concurrency
- •Explicit human approval for plan and MR publication, with bounded review cycles
Technical Stack
TECHNOLOGIES
TypeScriptNode.jsFastifySQLiteDrizzle ORMDockerOpenRouterAI AgentsJira APIGitLab APICLIViteSelf-hostedDevOps Automation
KEY FEATURES
- —Full `arche` CLI (init, doctor, runs, repositories, profiles, serve, worker, dashboard)
- —Plan, execute, review workflow with bounded review cycles and human approvals
- —Jira webhook triggers a run, GitLab merge request generated automatically
- —Hardened-by-default Docker sandbox (read-only rootfs, cap_drop ALL, no_new_privileges, cpu/memory/pids limits)
- —Decoupled Fastify server and Node worker, persistent state in SQLite via Drizzle ORM
- —Multi-model execution profiles (planner / executor / reviewer) via OpenRouter
- —Live terminal dashboard to monitor workers and runs in real time
- —Tokenized command allowlist in `orchestrator.yml`, repo routing by project/label/issue type
Gallery





Similar project in mind?
Let's discuss how I can help you