One workspace for the whole dev loop: requirements, stories, tests, and PR reviews. Orwin participates at every step, never in another tab.
Bulk CSV export for reports
Fix login redirect loop
Speed up board first paint
Stripe webhook: subscription events
Upgrade to Node 22
Kickoff call with Acme
Email digests for mentions
OAuth device flow
Rate-limit the public API
CSV import for the backlog
Realtime presence on the board
Audit log for settings changes
SAML SSO for orgs
Project groups in sidebar
⌘K team switcher
Keyboard shortcuts overlay
Built with Orwin, on Orwin
Works with your stack
Before any story is written, Orwin produces the Problem, Constraints, Solution, Architecture, and Requirements documents in that order. It runs an AI review on each one and lists the findings, and you choose which findings to apply.
Subscription events arrive at src/webhooks/stripe.ts and are verified against the Stripe-Signature header before any handler runs; an unsigned payload is rejected at the edge. Each event is keyed by its Stripe event id and written to an idempotency table, so a redelivery is a no-op rather than a double charge. Verified events route by type to the customer record.
Replay window for the idempotency key is unspecified.
OpenDocument the dedupe window on the events table — suggest 24h.
Signature check moved ahead of body parsing.
AppliedApplied — unsigned payloads now reject at the edge before parse.
Before any story is written, Orwin produces the Problem, Constraints, Solution, Architecture, and Requirements documents in that order. It runs an AI review on each one and lists the findings, and you choose which findings to apply.
Subscription events arrive at src/webhooks/stripe.ts and are verified against the Stripe-Signature header before any handler runs; an unsigned payload is rejected at the edge. Each event is keyed by its Stripe event id and written to an idempotency table, so a redelivery is a no-op rather than a double charge. Verified events route by type to the customer record.
Replay window for the idempotency key is unspecified.
OpenDocument the dedupe window on the events table — suggest 24h.
Signature check moved ahead of body parsing.
AppliedApplied — unsigned payloads now reject at the edge before parse.
Orwin reads the requirements document and proposes epics and stories, each with acceptance criteria. You approve each one before it goes on the board.
Orwin turns the approved solution design into a clear system architecture: the services, the data flow between them, and the contract at each boundary. Every story is then built against one agreed design instead of an approach improvised per task.
The kanban board has five columns: Backlog, In Progress, Testing, In Review, Done. Moving a card to Testing drafts the test cases, and moving it to In Review opens the pull request.
Bulk CSV export for reports
Fix login redirect loop
Upgrade to Node 22
Kickoff call with Acme
OAuth device flow
Realtime presence on the board
Project groups in sidebar
⌘K team switcher
Stripe webhook: subscription events
In your editor, one command pulls the story's acceptance criteria, test cases, and design documents into context. Orwin proposes a technical approach and waits for your approval before writing production code.
When a card reaches Testing, Orwin drafts the test cases, and your editor turns each one into a happy path, an edge, and an error test. Coverage reports back to the board.
Opening the pull request runs about ten structured checks, starting with the acceptance criteria. A blocking finding sends the card back to an earlier column.
All three criteria are met and covered by tests.
Signature is verified before the body is parsed.
Happy path, edge, and error cases all present.
Matches the Stripe event schema for this version.
Consider a note on the idempotency window.
The same card carried the work from the first design document all the way to a merged pull request.
Generous free tier when we open up. Paid plans as you grow.
For solo devs and trials
For small teams shipping fast
For growing orgs
Orwin is in private pilot. Request early access and we'll reach out as spots open.