GetPullRequest (Sia)
Inspiration
Developers spend too much time on small, repetitive coding tasks - bug fixes, refactors, simple features. We wanted to build an AI assistant that handles these while the dev is sleep, so devs can wake up to ready-to-review PRs instead of a growing backlog.
What it does
Sia is an AI-powered coding assistant that:
- Takes well-defined coding tasks from a web UI, CLI, or chat apps (Slack/Discord)
- Spins up cloud dev machines with AI agents (Containing Rovo Dev or Claude Code or Kiro or Cursor)
- Clones your repo, creates a branch, writes the code
- Runs build/test/lint verification
- Creates a Pull Request automatically
You queue up tasks, go to bed, and wake up to PRs ready for review.
How we built it
- Monorepo with Nx for managing multiple apps
- Fastify backend with REST APIs and WebSocket for real-time log streaming
- gRPC for bidirectional communication between backend and AI agents
- Temporal for durable workflow orchestration (job queues, retries, heartbeats)
- Next.js + shadcn/ui frontend with TanStack Query
- Claude Sonnet 4.5 as the AI coding engine in Kiro IDE.
- PostgreSQL + Drizzle ORM for data persistence
- PropelAuth for authentication
Challenges we ran into
- Orchestrating long-running AI coding tasks reliably - solved with Temporal workflows
- Handling orphan jobs when agents disconnect - built heartbeat monitoring and orphan detection
- Real-time log streaming at scale - WebSocket manager with proper subscription cleanup
- Keeping the monorepo organized - Nx + strict TypeScript + steering files for guidelines
Accomplishments that we're proud of
- End-to-end job execution: from task submission to PR creation
- Resilient job queue with automatic retry and orphan recovery
- Platform-agnostic chat integration (Slack working, Discord/Teams in review)
- Clean architecture with specs documenting every component
What we learned
- Temporal is amazing for durable workflows - worth the learning curve
- gRPC streaming is perfect for agent communication
- Spec-driven development (with Kiro) keeps complex projects organized
- AI coding assistants need guardrails - verification pipelines are essential
What's next for GetPullRequest (Sia)
- Discord and Microsoft Teams integrations
- Multi-agent parallel execution
- Smarter task decomposition (break big tasks into smaller ones)
- Self-healing: auto-fix when tests fail
- Public beta launch
Built With
- fastify
- gcp
- grpc
- nextjs
- nx
- postgresql
- typescript
Log in or sign up for Devpost to join the conversation.