{"id":"pg_k8qaaebdsy11","property_id":"prp_xmyp1ziwpl3m","domain_id":"dom_cmnflwxgauzb","root_domain":"linear.app","locale":"en","url":"https://linear.app/customers/ramp","url_hash":"c064768d840f5d6f05c0eb204e151cb4572582a0cf26755d2adeeeeb17aad4f2","path":"/customers/ramp","depth":1,"canonical_url":"https://linear.app/customers/ramp","canonical_page_id":null,"page_type":"case-study","page_type_guess":"case-study","state":"indexed","skip_reason":null,"priority":"0.9","discovered_via":"sitemap","first_seen_at":"2026-08-27T09:04:29.608Z","last_seen_at":"2026-09-26T09:09:06.947Z","http_status":200,"content_hash":"a2cc8e678a8a7b911599491116c2b56950de842537a7c6f9e85156ad617b6d60","title":"The coding agent behind 75% of Ramp’s merged PRs","description":"Businesses shuttle many billions of dollars along the lines of code in Ramp’s codebase each year. Despite the stakes, in November 2025 Ramp made the call to hand most of its code to an agent it built in-house. That agent, called Inspect, now writes three of every four PRs Ramp merges. Its context includes six years of specs, customer requests, and roadmaps kept in Linear.","author":null,"published_at":null,"modified_at":null,"word_count":537,"reading_time_sec":146,"lang_detected":"en","images":[],"links_out":null,"markdown_source":"readability","refresh_interval":"monthly","last_fetched_at":"2026-09-26T09:07:48.720Z","next_refresh_at":"2026-10-26T09:07:48.720Z","runs_count":2,"changes_count":1,"last_changed_at":"2026-09-26T09:07:48.720Z","fail_count":0,"last_error":null,"created_at":"2026-08-27T09:04:29.608Z","updated_at":"2026-08-27T09:04:29.608Z","inlinks":7,"inlinks_body":7,"outlinks":41,"outlinks_external":5,"anchor_terms":["Our speed is intense and Linear helps us be action biased.Nik KoblovHead of Engineering, Ramp","Our speed is intense and Linear helps us be action biased.Nik KoblovRamp","PreviousRamp","The coding agent behind 75% of Ramp’s merged PRsWatch video →","The coding agent behind 75% of Ramp’s merged PRsWhy and how Ramp built an internal coding agent that’s now responsible t"],"template_score":"0.24137931034482758621","cash":"0.374222209064896005","cash_total":"2.335950483120329936","pagerank":"0.0548365089659478","is_orphan":false,"link_confirmed":true,"discovered_wave":0,"embedded_hash":"5bbb15ec3d4a13486f6458a952a5cfdd986b4e2e934fcfc19fa9e7f3186067c8","embedded_at":"2026-08-27T09:13:09.333Z","domain_name":"Linear","brand_color":null,"domain_rank":449,"spam_score":14,"markdown":"Elapsed00:00\n\nRemaining time unknown\n\nBusinesses shuttle many billions of dollars along the lines of code in Ramp’s codebase each year. Despite the stakes, in November 2025 Ramp made the call to hand most of its code to an agent it built in-house. That agent, called Inspect, now writes three of every four PRs Ramp merges. Its context includes six years of specs, customer requests, and roadmaps kept in Linear.\n\nFoundedNew York, 2019\n\nSwitchedOctober 2019\n\nCompany size1,600\n\n### What Inspect is[⁠](#what-inspect-is)\n\nInspect is a background coding agent that writes code and verifies its own output using the tools a Ramp engineer would reach for. Each session runs in a sandbox configured with Ramp’s own infrastructure, and anyone can start one from the web interface, a Chrome extension, or Slack, where a reply of “@Inspect, fix this” is often all it takes to open a PR.\n\nSessions are also shareable. A designer can take a dashboard rework most of the way there from a Figma file, then hand the session to an engineer to bring it live. Engineers end up reviewing work that is already close to done.\n\n### Why Ramp built its own coding agent[⁠](#why-ramp-built-its-own-coding-agent)\n\nInspect began as a casual idea between Zach Bruggeman and two colleagues, Jason Quense and Rahul Sengottuvelu, who built the first version in two weeks. Rather than adopt one of the many agents on the market, they wanted one shaped around Ramp’s internal workflows. “It’s a really tight integration with our development lifecycle and our tooling,” Zach says.\n\nBuilding internally let them be exact about how the agent connects to everything else. They know the one API key it needs and precisely what the schema of their logs looks like, which made the agent faster to build and better at its job. A central team defines what agents can access and do, so functional teams can build their own automations safely on the same rails.\n\n### How it works with Linear[⁠](#how-it-works-with-linear)\n\nRamp has run its entire product development process through Linear since 2019, which means Linear holds a structured record of everything behind the product. The specs teams write, the feedback customers send, the roadmaps they plan against, and how it all connects.\n\nBy integrating through Linear’s API for agents, the team gave Inspect native access to that whole layer. Combined with its reach into Ramp’s codebase and internal docs, the agent operates with something close to the full picture a well-informed engineer would have. Asked to fix a bug, it can trace the thread from a customer request through a product spec to the relevant code, rather than working from a narrow prompt.\n\nZach calls the connection a natural fit, and says building it was quick. He prompted a coding agent with [Linear’s docs](https://linear.app/developers/agent-interaction), added a couple of rough pointers, and it got the integration “90 percent of the way there in about 30 minutes.”\n\nThe speed has moved Ramp’s bottleneck from writing code to reviewing it, a constraint any company running agents at this scale will meet. Zach says he’s paying close attention to how companies like Linear are shaping what code review becomes next.\n\n_Since our interview with the Ramp team, we launched [Diffs](https://linear.app/docs/diffs), which lets you review code changes directly in Linear._","storage":{"htmlKey":"stealpage/html/linear.app/pg_k8qaaebdsy11/run_xilzdl-_fbaw.html.gz","markdownKey":"stealpage/md/linear.app/pg_k8qaaebdsy11/run_xilzdl-_fbaw.md.gz"},"facets":{"page_id":"pg_k8qaaebdsy11","domain_id":"dom_cmnflwxgauzb","root_domain":"linear.app","locale":"en","format":"case-study","depth":3,"technicality":2,"promotional":1,"originality":2,"audience":"developer","funnel_stage":"consideration","intent":"informational","evidence":"none","tone":"conversational","has_code":false,"code_langs":[],"has_data":false,"has_tables":false,"has_images":false,"has_video":false,"has_faq":false,"external_links":10,"heading_count":3,"topics":["observability","ai","software development"],"keywords":["Ramp","Linear","Inspect","coding agent","AI adoption"],"entities":{},"takeaways":["Ramp developed an internal coding agent called Inspect that is now responsible for over 60% of merged PRs, demonstrating the potential of AI in software development.","The coding agent was built to integrate tightly with Ramp's existing workflows, particularly with Linear, which serves as the central hub for their product development process.","Inspect allows non-engineering teams to contribute to product development by leveraging AI, reducing the need for direct engineering involvement in early stages.","The integration of AI into development workflows has shifted the bottleneck from writing code to reviewing it, prompting new challenges and opportunities for tooling.","Ramp's approach to AI adoption emphasizes internal control and integration, allowing for safer and more effective use of AI in a regulated environment."],"summary":"This case study describes how Ramp built an internal coding agent called Inspect, which is now responsible for over 60% of merged PRs, and how it was integrated with Linear to streamline their development workflow.","ai_likelihood":"0.103","shelf_life":"dated","quality_score":"0.6172","fingerprint":"5bbb15ec3d4a13486f6458a952a5cfdd986b4e2e934fcfc19fa9e7f3186067c8","model":"qwen/qwen3-30b-a3b","classified_at":"2026-08-27T09:10:29.227Z","created_at":"2026-08-27T09:10:29.227Z","updated_at":"2026-08-27T09:10:29.227Z"},"assets":[{"kind":"image","src_url":"https://linear.app/api/og/customers?slug=ramp","r2_key":null,"alt":null,"caption":null,"width":null,"height":null,"is_hero":true,"zone":"main"},{"kind":"image","src_url":"https://linear.app/api/og/customers?slug=ramp&v=1790380800","r2_key":null,"alt":null,"caption":null,"width":null,"height":null,"is_hero":true,"zone":"main"},{"kind":"image","src_url":"https://webassets.linear.app/images/ornj730p/production/82cefa82802a8608210897a66c0fe09b70382dc5-56x56.svg?q=95&auto=format&dpr=2","r2_key":null,"alt":"Commure logo","caption":null,"width":56,"height":56,"is_hero":false,"zone":"main"},{"kind":"image","src_url":"https://webassets.linear.app/images/ornj730p/production/1d42e07351f50eb6bc01ceb5a6b3826b50d8219b-1952x960.png?auto=format&dpr=2&q=95&w=1024","r2_key":null,"alt":"","caption":null,"width":1024,"height":960,"is_hero":false,"zone":"main"},{"kind":"image","src_url":"https://webassets.linear.app/images/ornj730p/production/ed8de6cb87bae3db96d7db5b19ecf30cd8271b06-56x56.svg?auto=format&dpr=2&q=95","r2_key":null,"alt":"Cursor logo","caption":null,"width":56,"height":56,"is_hero":false,"zone":"main"},{"kind":"image","src_url":"https://webassets.linear.app/images/ornj730p/production/ae73f1a60bba9e74933fe43829bc084f4dddcacf-56x56.svg?q=95&auto=format&dpr=2","r2_key":null,"alt":"OpenAI logo","caption":null,"width":56,"height":56,"is_hero":false,"zone":"main"},{"kind":"image","src_url":"https://webassets.linear.app/images/ornj730p/production/06d8c855b2790315c0e4ac2390c7d197c562bba9-56x56.svg?auto=format&dpr=2&q=95","r2_key":null,"alt":"Automattic logo","caption":null,"width":56,"height":56,"is_hero":false,"zone":"main"},{"kind":"video","src_url":"https://webassets.linear.app/files/ornj730p/production/6ac324027800a6898809b08ae7742ececc4cc737.mp4","r2_key":null,"alt":null,"caption":null,"width":null,"height":null,"is_hero":false,"zone":"main"}],"shots":[],"history":[{"id":"run_xilzdl-_fbaw","started_at":"2026-09-26T09:07:48.714Z","http_status":200,"fetcher":"direct","changed":true,"diff":{"added":0,"removed":427,"similarity":null},"word_count":537},{"id":"run_vsprrxydjnii","started_at":"2026-08-27T09:05:04.961Z","http_status":200,"fetcher":"direct","changed":false,"diff":null,"word_count":964}],"citedBy":[{"id":"pg_pnnwgadcnfbw","url":"https://linear.app/","title":"Linear – The system for product development","anchors":["Our speed is intense and Linear helps us be action biased.Nik KoblovRamp","Our speed is intense and Linear helps us be action biased.Nik KoblovHead of Engineering, Ramp"],"zone":"main"},{"id":"pg_7dagup9jiit-","url":"https://linear.app/customers","title":"Linear Customers","anchors":["The coding agent behind 75% of Ramp’s merged PRsWatch video →"],"zone":"main"},{"id":"pg_xsi-zqxddlzo","url":"https://linear.app/ai","title":"Linear – Agents that follow work from conversation to code","anchors":["Our speed is intense and Linear helps us be action biased.Nik KoblovRamp","Our speed is intense and Linear helps us be action biased.Nik KoblovHead of Engineering, Ramp"],"zone":"main"},{"id":"pg_w8jvy80jzm_h","url":"https://linear.app/plan","title":"Linear – Plan and navigate from idea to launch","anchors":["Our speed is intense and Linear helps us be action biased.Nik KoblovRamp"],"zone":"main"},{"id":"pg_siyjbtdhsza6","url":"https://linear.app/customers/openai","title":"Why OpenAI chose Linear and scaled to 3,000 users","anchors":["PreviousRamp"],"zone":"main"},{"id":"pg_qozlgcov1dpi","url":"https://linear.app/now","title":"Now – Updates from the Linear team","anchors":["The coding agent behind 75% of Ramp’s merged PRsWhy and how Ramp built an internal coding agent that’s now responsible t"],"zone":"main"}]}