  {"id":14790,"date":"2026-10-29T06:43:38","date_gmt":"2026-10-29T06:43:38","guid":{"rendered":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/"},"modified":"2026-10-29T06:59:18","modified_gmt":"2026-10-29T06:59:18","slug":"intric-claude-operating-system","status":"publish","type":"case_study","link":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/","title":{"rendered":"INTRIC and Webpuppies built an operating system around Claude"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"14790\" class=\"elementor elementor-14790 elementor-bc-flex-widget\" data-elementor-post-type=\"case_study\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fe94a3f elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"fe94a3f\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c132ca5\" data-id=\"c132ca5\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1467890 elementor-widget elementor-widget-html\" data-id=\"1467890\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Urbanist:wght@500;600;700;800&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap\" rel=\"stylesheet\"><style>\n:root{\n  --bg:#000;--bg2:#0A0A0A;--panel:#101010;--border:#242424;--border2:#2E2E2E;\n  --fg:#F4F4F5;--fg2:#B4B4B8;--fg3:#7A7A80;\n  --cyan:#0CA7FF;--cyan2:#5EC4FF;--cyan-dim:rgba(12,167,255,.12);\n  --amber:#F5B544;--green:#3DDC97;\n  --max:1120px;--gut:20px;\n}\n*{box-sizing:border-box}\nhtml{scroll-behavior:smooth}\nbody{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}\na{color:var(--cyan2);text-decoration:none}\na:hover{text-decoration:underline}\nh1,h2,h3{font-family:Urbanist,Inter,sans-serif;letter-spacing:-.02em;margin:0}\nh1{font-weight:800;font-size:clamp(34px,5.2vw,58px);line-height:1.04}\nh2{font-weight:800;font-size:clamp(26px,3.4vw,38px);line-height:1.1}\nh3{font-weight:700;font-size:22px;line-height:1.2}\np{margin:0 0 1.1em}\n.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}\n.mono{font-family:\"JetBrains Mono\",monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}\n.top{position:sticky;top:0;z-index:5;background:rgba(0,0,0,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}\n.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}\n.top img{height:22px;display:block}\n.top nav a{color:var(--fg2);font-size:14px;margin-left:22px}\n.top nav a:hover{color:var(--fg);text-decoration:none}\n.crumb{color:var(--fg3);font-size:14px;margin-bottom:28px}\n.crumb a{color:var(--fg3)}\n.hero{padding:64px 0 48px;background:radial-gradient(900px 420px at 15% -10%,rgba(12,167,255,.18),transparent 70%)}\n.hero .eyebrow{margin-bottom:18px}\n.hero p.lede{font-size:clamp(18px,2vw,22px);color:var(--fg2);max-width:820px;margin:26px 0 0;line-height:1.5}\n.logos{display:flex;align-items:center;flex-wrap:wrap;gap:18px 22px;margin-top:34px;color:var(--fg3);font-size:13px}\n.logos img{height:28px;display:block}\n.logos img.intric{height:34px}\n.logos img.claude{height:24px}\n.logos .x{color:var(--fg3)}\n.logos .sep{width:1px;height:28px;background:var(--border2)}\n.stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg2)}\n.stats .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0}\n.stat{padding:30px 22px 28px;border-left:1px solid var(--border)}\n.stat:first-child{border-left:0;padding-left:0}\n.stat .n{font-family:Urbanist,sans-serif;font-weight:800;font-size:clamp(34px,4vw,48px);line-height:1;color:var(--fg)}\n.stat .n small{font-size:.5em;color:var(--cyan2);margin-left:2px}\n.stat .l{color:var(--fg2);font-size:14px;margin-top:10px;line-height:1.45}\n.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;padding:64px 0}\narticle section{padding:0 0 56px;margin:0 0 56px;border-bottom:1px solid var(--border)}\narticle section:last-child{border-bottom:0}\narticle h2{margin-bottom:22px}\narticle h3{margin:34px 0 12px}\narticle ul{padding-left:0;list-style:none;margin:0 0 1.2em}\narticle ul li{position:relative;padding-left:22px;margin-bottom:10px}\narticle ul li::before{content:\"\";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:2px;background:var(--cyan)}\narticle li b{color:var(--fg)}\n.callout{border:1px solid var(--border2);border-left:3px solid var(--cyan);background:var(--panel);padding:18px 22px;border-radius:6px;margin:26px 0}\n.callout .mono{display:block;margin-bottom:8px}\n.callout p:last-child{margin-bottom:0}\n.steps{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:8px 0 10px}\n.step{border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:22px}\n.step .num{font-family:\"JetBrains Mono\",monospace;color:var(--cyan);font-size:13px;margin-bottom:10px}\n.step h3{margin:0 0 10px;font-size:19px}\n.step p{color:var(--fg2);font-size:15.5px;margin:0}\n.sys{border:1px solid var(--border2);border-radius:10px;overflow:hidden;margin:30px 0}\n.sys header{padding:20px 24px;background:var(--panel);border-bottom:1px solid var(--border)}\n.sys header .mono{display:block;margin-bottom:6px}\n.sys header h3{margin:0}\n.sys .row{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:18px 24px;border-top:1px solid var(--border)}\n.sys .row:first-of-type{border-top:0}\n.sys .k{font-family:\"JetBrains Mono\",monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg3);padding-top:4px}\n.sys .v{color:var(--fg2);font-size:16px}\n.sys .v p:last-child{margin-bottom:0}\n.sys .row.result .k{color:var(--green)}\n.sys .row.result .v{color:var(--fg)}\n.sys .models{font-family:\"JetBrains Mono\",monospace;font-size:12.5px;color:var(--cyan2);background:var(--cyan-dim);padding:12px 24px;border-top:1px solid var(--border)}\n.diagram{margin:18px 0 6px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:10px;background:var(--bg2);padding:14px 16px}\n.diagram svg{display:block;width:100%;max-width:740px;margin:0 auto;height:auto}\n.sys .diagram{margin:0;border:0;border-radius:0;border-top:1px solid var(--border);background:var(--bg2)}\n.flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 14px;font-size:13px}\n.flow span{border:1px solid var(--border2);border-radius:999px;padding:5px 12px;color:var(--fg2);background:var(--bg)}\n.flow span.ai{border-color:var(--cyan);color:var(--cyan2)}\n.flow span.hu{border-color:var(--amber);color:var(--amber)}\n.flow i{color:var(--fg3);font-style:normal}\n.patterns li{margin-bottom:16px}\n.num-list{counter-reset:n;padding:0;list-style:none}\n.num-list li{counter-increment:n;padding-left:52px;margin-bottom:22px}\n.num-list li::before{content:counter(n,decimal-leading-zero);position:absolute;left:0;top:0;width:auto;height:auto;background:none;font-family:\"JetBrains Mono\",monospace;color:var(--cyan);font-size:14px;border-radius:0}\n.gov{display:grid;grid-template-columns:1fr;gap:14px}\n.gov div{border:1px solid var(--border);border-radius:8px;padding:18px 20px;background:var(--panel)}\n.gov div b{display:block;color:var(--fg);margin-bottom:6px;font-family:Urbanist,sans-serif;font-size:18px}\n.gov div p{color:var(--fg2);font-size:15.5px;margin:0}\nblockquote{margin:30px 0;padding:26px 28px;border:1px solid var(--border2);border-left:3px solid var(--cyan);border-radius:8px;background:var(--panel);font-family:Urbanist,sans-serif;font-size:22px;font-weight:600;line-height:1.35}\nblockquote cite{display:block;margin-top:14px;font-family:Inter,sans-serif;font-size:14px;font-style:normal;font-weight:400;color:var(--fg3)}\nblockquote .tbc{color:var(--amber);font-family:\"JetBrains Mono\",monospace;font-size:12px;letter-spacing:.12em}\n.note{color:var(--fg3);font-size:14.5px;border-top:1px solid var(--border);padding-top:16px;margin-top:26px}\naside{position:sticky;top:84px;align-self:start}\n.glance{border:1px solid var(--border2);border-radius:10px;background:var(--panel);padding:22px}\n.glance .mono{display:block;margin-bottom:14px}\n.glance dl{margin:0}\n.glance dt{font-size:12px;color:var(--fg3);text-transform:uppercase;letter-spacing:.1em;margin-top:14px}\n.glance dd{margin:4px 0 0;font-size:14.5px;color:var(--fg);line-height:1.45}\n.glance dd a{color:var(--cyan2)}\n.cta{border-top:1px solid var(--border);background:var(--bg2);padding:64px 0}\n.cta .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}\n.cta p{color:var(--fg2);margin:12px 0 0}\n.btn{display:inline-block;background:var(--cyan);color:#000;font-weight:600;padding:14px 22px;border-radius:8px;font-size:15px}\n.btn:hover{text-decoration:none;background:var(--cyan2)}\n.cta .contact{text-align:right}\n.cta .contact a.mail{display:block;color:var(--fg2);margin-top:14px;font-size:14px}\nfooter{border-top:1px solid var(--border);padding:34px 0;color:var(--fg3);font-size:13.5px}\nfooter .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}\nfooter img{height:30px;display:block}\n@media (max-width:980px){\n  .layout{grid-template-columns:1fr;gap:40px}\n  aside{position:static}\n  .stats .wrap{grid-template-columns:1fr}\n  .stat{padding:22px 0;border-left:0;border-top:1px solid var(--border)}\n  .stat:first-child{border-top:0}\n}\n@media (max-width:640px){\n  body{font-size:16px}\n  .top nav{display:none}\n  .steps{grid-template-columns:1fr}\n  .sys .row{grid-template-columns:1fr;gap:6px;padding:16px 18px}\n  .sys header,.sys .models{padding-left:18px;padding-right:18px}\n  .cta .wrap{grid-template-columns:1fr}\n  .cta .contact{text-align:left}\n  blockquote{font-size:19px;padding:20px}\n}\n<\/style><style>body{background:#000!important}.elementor-widget-html,.elementor-widget-container{width:100%}#intric-story{font-family:Inter,-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,sans-serif;font-size:17px;line-height:1.6;color:#F4F4F5;-webkit-font-smoothing:antialiased}<\/style><style id=\"intric-story-overrides\">\n.elementor-14790 .elementor-container{max-width:none!important;width:100%!important}\n.elementor-14790 .elementor-element-populated,.elementor-14790 .elementor-widget-container,.elementor-14790 .elementor-widget-wrap{padding:0!important;margin:0!important}\n.elementor-14790 .elementor-widget{margin:0!important}\n#intric-story h1,#intric-story h2,#intric-story h3{color:#F4F4F5!important;font-family:Urbanist,Inter,sans-serif!important;margin-top:0}\n#intric-story h1{font-size:clamp(34px,5.2vw,58px)!important;line-height:1.04!important;font-weight:800!important}\n#intric-story h2{font-size:clamp(26px,3.4vw,38px)!important;line-height:1.1!important;font-weight:800!important}\n#intric-story h3{font-size:22px!important;line-height:1.2!important;font-weight:700!important}\n#intric-story .step h3{font-size:19px!important}\n#intric-story .cta h2{color:#F4F4F5!important}\n#intric-story img{height:auto;max-width:none}\n#intric-story .top img{height:22px!important;width:auto!important}\n#intric-story .logos img{height:28px!important;width:auto!important}\n#intric-story .logos img.intric{height:34px!important}\n#intric-story .logos img.claude{height:24px!important}\n#intric-story footer img{height:30px!important;width:auto!important}\n#intric-story p{color:inherit}\n#intric-story .sys .row{display:grid!important;grid-template-columns:120px 1fr!important;gap:18px!important;margin:0!important;padding:18px 24px!important;width:auto!important;max-width:none!important;flex-wrap:nowrap!important}\n#intric-story .sys .row>*{padding-left:0;padding-right:0;flex:none;max-width:none;width:auto}\n#intric-story .sys .k{padding-top:4px}\n#intric-story .steps{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}\n#intric-story .layout{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:56px!important}\n@media (max-width:980px){#intric-story .layout{grid-template-columns:1fr!important;gap:40px!important}}\n@media (max-width:640px){#intric-story .steps{grid-template-columns:1fr!important}#intric-story .sys .row{grid-template-columns:1fr!important;gap:6px!important;padding:16px 18px!important}}\n#intric-story a{color:#5EC4FF}\n#intric-story article ul,#intric-story article ol{padding-left:0!important;margin:0 0 1.2em!important;list-style:none!important}\n#intric-story .num-list{padding:0!important}\n#intric-story .glance dl,#intric-story .glance dt,#intric-story .glance dd{margin-left:0}\n#intric-story .diagram svg{width:100%!important;max-width:740px!important;height:auto!important}\n#intric-story .btn{color:#000!important}\n#intric-story blockquote{border-left:3px solid #0CA7FF!important;padding:26px 28px!important;font-style:normal!important;background:#101010!important}\n#intric-story .stat .n,#intric-story .stat .n small{color:#F4F4F5}\n#intric-story .stat .n small{color:#5EC4FF}\n#intric-story .mono{color:#0CA7FF}\n@media (max-width:640px){#intric-story{font-size:16px}}\n#intric-story .glance dt{font-weight:400!important}\n#intric-story .glance dd br{display:inline}\n@media (max-width:640px){#intric-story blockquote{padding:20px!important}}\n#intric-story .crumb a{color:#7A7A80!important}\n#intric-story .top nav a{color:#B4B4B8!important}\n#intric-story .top nav a:hover{color:#F4F4F5!important}\n#intric-story .cta .mail{color:#B4B4B8!important}\n#intric-story aside{top:110px}\n<\/style><div id=\"intric-story\">\n\n\n\n<header class=\"hero\">\n  <div class=\"wrap\">\n    <div class=\"crumb\"><a href=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/our-case-studies\/\">Our work<\/a> \/ INTRIC<\/div>\n    <div class=\"mono eyebrow\">Customer story \u00b7 Cross-border real estate<\/div>\n    <h1>INTRIC and Webpuppies built an operating system around Claude<\/h1>\n    <p class=\"lede\">INTRIC is a members-only network for people buying residential property outside their own country. INTRIC's own team and Webpuppies designed and built the harness that runs it as one engineering group: routers, rules, write gates, QA rubrics and fallbacks, with Claude as the reasoning engine inside each one, on Amazon Bedrock and the Claude Developer Platform. Together these systems talk to buyers in six languages, work for the agencies that list, grade every enquiry before a seller sees it, and prepare the catalogue.<\/p>\n    <div class=\"logos\">\n      <img decoding=\"async\" class=\"intric\" src=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-intric-logo-trim.png\" alt=\"INTRIC\">\n      <span class=\"x\">with<\/span>\n      <img decoding=\"async\" src=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-wp-full-logo.svg\" alt=\"Webpuppies\">\n      <span class=\"sep\"><\/span>\n      <span class=\"x\">built on<\/span>\n      <img decoding=\"async\" class=\"claude\" src=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-claude-white.png\" alt=\"Claude\">\n    <\/div>\n  <\/div>\n<\/header>\n\n<section class=\"stats\">\n  <div class=\"wrap\">\n    <div class=\"stat\"><div class=\"n\">4<\/div><div class=\"l\">systems in production around Claude: buyers, sellers, agencies and the catalogue<\/div><\/div>\n    <div class=\"stat\"><div class=\"n\">7,000<small>+<\/small><\/div><div class=\"l\">live listings across more than 20 countries, prepared by Claude and released by people<\/div><\/div>\n    <div class=\"stat\"><div class=\"n\">6<\/div><div class=\"l\">languages the platform speaks, with Claude replying in whichever one the buyer writes<\/div><\/div>\n  <\/div>\n<\/section>\n\n<div class=\"wrap layout\">\n<article>\n\n<section id=\"challenge\">\n  <h2>The challenge<\/h2>\n  <p>INTRIC had a working platform before this build began, with developers and agencies already listing on it. Each listing was prepared by hand. Growth was a function of how many hours a person could spend on it.<\/p>\n  <p>A buyer weighing Lisbon against Dubai is comparing two legal systems, two tax regimes and two sets of market data published in different languages and currencies. INTRIC wanted a system that could hold that conversation. Four things stood between the early product and that system.<\/p>\n  <ul>\n    <li><b>The catalogue could not grow by hand:<\/b> every listing needed copy, classified images, checked facts and a public page. Partner feeds arrived in their own formats, one per developer or agency, and each one had to be read by a person.<\/li>\n    <li><b>Buyers ask at midnight, in their own language.<\/b> A fluent wrong answer about rental yield or residency eligibility is a liability. A generic assistant gives exactly that answer.<\/li>\n    <li><b>The agencies INTRIC was signing had no marketing teams.<\/b> They needed outreach, social posts and sell kits produced for them, and would not type long prompts to get them.<\/li>\n    <li><b>Every form submission reached a developer's inbox looking the same,<\/b> whether it came from a serious buyer or a bot.<\/li>\n  <\/ul>\n  <p>INTRIC's founder set one condition that shaped every design decision that followed: anything the AI does on its own has to be reversible, and anything it cannot reverse has to wait for a person.<\/p>\n  <div class=\"callout\">\n    <span class=\"mono\">Why this matters<\/span>\n    <p>INTRIC asked for a system that does the listing and the qualifying itself, with a conversation on top of it. That is a different build from a chatbot on a marketplace, and it needs a model you can give tools to.<\/p>\n  <\/div>\n<\/section>\n\n<section id=\"approach\">\n  <h2>The approach<\/h2>\n  <p>Webpuppies' engineers and INTRIC's team work in one repository, on one backlog, with reviews crossing both ways. INTRIC's people hold the product and the domain, Webpuppies brought the harness pattern and the Claude experience, and the pairs that built each system were drawn from both. Two decisions set the shape of what the joint team built.<\/p>\n  <div class=\"steps\">\n    <div class=\"step\">\n      <div class=\"num\">01<\/div>\n      <h3>Route before you reason<\/h3>\n      <p>Every buyer message first passes an intent router that contains no model at all. It sends the message down one of three paths: a fast answer, a catalogue search, or the agent. Claude is called only on the third, and a short-lived cache sits in front of the second.<\/p>\n    <\/div>\n    <div class=\"step\">\n      <div class=\"num\">02<\/div>\n      <h3>Pick the model per workload<\/h3>\n      <p>Anything that touches a signed-in member runs a Claude Sonnet model on Amazon Bedrock. Listing copy at volume runs Sonnet on the Claude Developer Platform, with a Haiku model classifying images. The heaviest planning work runs on Claude Opus.<\/p>\n    <\/div>\n  <\/div>\n  <p>Claude is one part of the harness, and the harness is what the joint team built. Around each model call sit a router that decides whether a model is needed, rules that answer first where they can, a gate that separates proposing from doing, rubrics that score the output, and a fallback that answers when the model does not.<\/p>\n  <div class=\"diagram\"><svg viewBox=\"0 0 740 698\" width=\"100%\" role=\"img\" aria-label=\"The harness around every Claude call\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs><marker id=\"ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#7A7A80\"\/><\/marker><marker id=\"ah-E5484D\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#E5484D\"\/><\/marker><marker id=\"ah-3DDC97\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#3DDC97\"\/><\/marker><marker id=\"ah-F5B544\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#F5B544\"\/><\/marker><marker id=\"ah-0CA7FF\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#0CA7FF\"\/><\/marker><\/defs><style>.t{font:600 16px Inter,sans-serif;fill:#F4F4F5}.s{font:400 13px Inter,sans-serif;fill:#A0A0A6}.l{font:400 13px Inter,sans-serif}.g{font:500 12px \"JetBrains Mono\",monospace;fill:#7A7A80;letter-spacing:.14em}<\/style><text x=\"0\" y=\"22\" class=\"g\">EVERY SYSTEM, SAME SHAPE<\/text><rect x=\"210.0\" y=\"40\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"68.0\" text-anchor=\"middle\" class=\"t\">Member, agency or partner feed<\/text><text x=\"370.0\" y=\"87.0\" text-anchor=\"middle\" class=\"s\">the request comes in<\/text><rect x=\"210.0\" y=\"134\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Router<\/text><text x=\"370.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">no model, decides if a model is needed<\/text><rect x=\"210.0\" y=\"228\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"256.0\" text-anchor=\"middle\" class=\"t\">Rules first<\/text><text x=\"370.0\" y=\"275.0\" text-anchor=\"middle\" class=\"s\">answer if they can<\/text><rect x=\"210.0\" y=\"322\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Claude<\/text><text x=\"370.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">the reasoning engine<\/text><rect x=\"210.0\" y=\"416\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"444.0\" text-anchor=\"middle\" class=\"t\">Rubric or gate<\/text><text x=\"370.0\" y=\"463.0\" text-anchor=\"middle\" class=\"s\">score the output, propose the action<\/text><rect x=\"210.0\" y=\"510\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(245,181,68,.12)\" stroke=\"#F5B544\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"538.0\" text-anchor=\"middle\" class=\"t\">A person<\/text><text x=\"370.0\" y=\"557.0\" text-anchor=\"middle\" class=\"s\">approves, and can undo<\/text><rect x=\"210.0\" y=\"604\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"632.0\" text-anchor=\"middle\" class=\"t\">Action<\/text><text x=\"370.0\" y=\"651.0\" text-anchor=\"middle\" class=\"s\">live, logged<\/text><path d=\"M370,104 L370,134\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,198 L370,228\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,292 L370,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,386 L370,416\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,480 L370,510\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,574 L370,604\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M210.0,166.0 L60,166.0 L60,636.0 L210.0,636.0\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><text transform=\"rotate(-90 44 354.0)\" x=\"44\" y=\"354.0\" text-anchor=\"middle\" class=\"l\" fill=\"#7A7A80\">fast path: no model needed<\/text><path d=\"M530.0,354.0 L680,354.0 L680,260.0 L530.0,260.0\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah)\"\/><text x=\"538.0\" y=\"374.0\" text-anchor=\"start\" class=\"l\" fill=\"#7A7A80\">timeout: back to rules<\/text><path d=\"M530.0,274.0 L640,274.0 L640,636.0 L530.0,636.0\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah)\"\/><text x=\"634\" y=\"594\" text-anchor=\"end\" class=\"l\" fill=\"#7A7A80\">rules answered: straight to action<\/text><\/svg><\/div>\n  <p>Where Claude runs follows the data. Anything a member can reach goes through Amazon Bedrock. The catalogue pipeline, which handles partner material, goes through the Claude Developer Platform under its own retention rules. Engineering itself runs on Claude Code, with a review action on every pull request.<\/p>\n<\/section>\n\n<section id=\"built\">\n  <h2>What was built<\/h2>\n  <p>Four systems carry the platform. Each one wraps Claude in the same harness: a boundary written down before the first prompt, and a person at the point where an action becomes hard to undo.<\/p>\n  <div class=\"flow\"><span class=\"ai\">Claude<\/span><i>\u00b7<\/i><span class=\"hu\">Human decision<\/span><i>\u00b7<\/i><span>Existing system, rule or data<\/span><i>\u00b7<\/i><span style=\"border-color:#3DDC97;color:#3DDC97\">Live outcome<\/span><i>\u00b7<\/i><span style=\"border-color:#E5484D;color:#E5484D\">Stopped or refused<\/span><i>\u00b7<\/i><span style=\"border-style:dashed\">Fallback or undo<\/span><\/div>\n\n  <div class=\"sys\">\n    <header><span class=\"mono\">Catalogue<\/span><h3>Listing intake pipeline<\/h3><\/header>\n    <div class=\"diagram\"><svg viewBox=\"0 0 740 604\" width=\"100%\" role=\"img\" aria-label=\"Listing intake pipeline\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs><marker id=\"ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#7A7A80\"\/><\/marker><marker id=\"ah-E5484D\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#E5484D\"\/><\/marker><marker id=\"ah-3DDC97\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#3DDC97\"\/><\/marker><marker id=\"ah-F5B544\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#F5B544\"\/><\/marker><marker id=\"ah-0CA7FF\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#0CA7FF\"\/><\/marker><\/defs><style>.t{font:600 16px Inter,sans-serif;fill:#F4F4F5}.s{font:400 13px Inter,sans-serif;fill:#A0A0A6}.l{font:400 13px Inter,sans-serif}.g{font:500 12px \"JetBrains Mono\",monospace;fill:#7A7A80;letter-spacing:.14em}<\/style><text x=\"0\" y=\"22\" class=\"g\">CLAUDE PREPARES, A PERSON RELEASES<\/text><rect x=\"210.0\" y=\"40\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"68.0\" text-anchor=\"middle\" class=\"t\">Partner feeds<\/text><text x=\"370.0\" y=\"87.0\" text-anchor=\"middle\" class=\"s\">many formats, one per developer or agency<\/text><rect x=\"55\" y=\"134\" width=\"300\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"205.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Claude Sonnet<\/text><text x=\"205.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">writes the public copy<\/text><rect x=\"385\" y=\"134\" width=\"300\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"535.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Claude Haiku<\/text><text x=\"535.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">classifies every image<\/text><path d=\"M370,104 L370,118 L205.0,118 L205.0,134\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,104 L370,118 L535.0,118 L535.0,134\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"228\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"256.0\" text-anchor=\"middle\" class=\"t\">Two QA rubrics<\/text><text x=\"370.0\" y=\"275.0\" text-anchor=\"middle\" class=\"s\">page and data must both pass, or back to the model<\/text><path d=\"M205.0,198 L205.0,212 L370,212 L370,228\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M535.0,198 L535.0,212 L370,212\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"322\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Sample re-judged<\/text><text x=\"370.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">a share checked against the live page<\/text><path d=\"M370,292 L370,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"416\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(245,181,68,.12)\" stroke=\"#F5B544\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"444.0\" text-anchor=\"middle\" class=\"t\">Release sign-off<\/text><text x=\"370.0\" y=\"463.0\" text-anchor=\"middle\" class=\"s\">a person runs every release<\/text><path d=\"M370,386 L370,416\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"510\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"538.0\" text-anchor=\"middle\" class=\"t\">Live listing<\/text><text x=\"370.0\" y=\"557.0\" text-anchor=\"middle\" class=\"s\">reversible for a fixed window<\/text><path d=\"M370,480 L370,510\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M530.0,260.0 L700,260.0 L700,166.0 L685,166.0\" fill=\"none\" stroke=\"#E5484D\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah-E5484D)\"\/><path d=\"M210.0,542.0 L40,542.0 L40,448.0 L210.0,448.0\" fill=\"none\" stroke=\"#F5B544\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah-F5B544)\"\/><text x=\"46\" y=\"502\" text-anchor=\"start\" class=\"l\" fill=\"#F5B544\">undo within the window<\/text><\/svg><\/div>\n    <div class=\"row\"><div class=\"k\">Baseline<\/div><div class=\"v\"><p>Every listing prepared by hand, one at a time.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Built<\/div><div class=\"v\"><p>A pipeline that reads partner feeds, writes the public copy for each listing with Claude Sonnet using adaptive thinking at low effort, and classifies every image with Claude Haiku. Listings are processed in parallel, with low-urgency work going through the Message Batches API. Each listing is scored on two rubrics, one for the page and one for the data, and must clear both. A sample of released listings is re-judged against the live page.<\/p>\n    <p>An unattended mode runs the whole pipeline as a headless Claude Code session on Claude Opus with the long context, capped in turns and in wall-clock time. It is given no MCP servers. It can prepare a release. Only a person can run one.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Boundaries<\/div><div class=\"v\"><p>Partner material stays under its own retention rule. Every release is reversible for a fixed window. The pipeline is never given write access to production on its own.<\/p><\/div><\/div>\n    <div class=\"row result\"><div class=\"k\">Result<\/div><div class=\"v\"><p>More than 7,000 listings are live across more than 20 countries, each one prepared by the pipeline and released by a person.<\/p><\/div><\/div>\n    <div class=\"models\">Claude Sonnet \u00b7 Claude Haiku \u00b7 Claude Opus \u00b7 Message Batches \u00b7 Claude Code<\/div>\n  <\/div>\n\n  <div class=\"sys\">\n    <header><span class=\"mono\">Buyers<\/span><h3>The buyer concierge<\/h3><\/header>\n    <div class=\"diagram\"><svg viewBox=\"0 0 740 614\" width=\"100%\" role=\"img\" aria-label=\"The buyer concierge\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs><marker id=\"ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#7A7A80\"\/><\/marker><marker id=\"ah-E5484D\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#E5484D\"\/><\/marker><marker id=\"ah-3DDC97\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#3DDC97\"\/><\/marker><marker id=\"ah-F5B544\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#F5B544\"\/><\/marker><marker id=\"ah-0CA7FF\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#0CA7FF\"\/><\/marker><\/defs><style>.t{font:600 16px Inter,sans-serif;fill:#F4F4F5}.s{font:400 13px Inter,sans-serif;fill:#A0A0A6}.l{font:400 13px Inter,sans-serif}.g{font:500 12px \"JetBrains Mono\",monospace;fill:#7A7A80;letter-spacing:.14em}<\/style><text x=\"0\" y=\"22\" class=\"g\">ROUTE BEFORE YOU REASON<\/text><rect x=\"210.0\" y=\"40\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"68.0\" text-anchor=\"middle\" class=\"t\">Buyer message<\/text><text x=\"370.0\" y=\"87.0\" text-anchor=\"middle\" class=\"s\">in any of six languages<\/text><rect x=\"210.0\" y=\"134\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Intent router<\/text><text x=\"370.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">no model<\/text><path d=\"M370,104 L370,134\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"12\" y=\"238\" width=\"226\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"125.0\" y=\"266.0\" text-anchor=\"middle\" class=\"t\">Fast answer<\/text><text x=\"125.0\" y=\"285.0\" text-anchor=\"middle\" class=\"s\">no model<\/text><rect x=\"253\" y=\"238\" width=\"226\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"366.0\" y=\"266.0\" text-anchor=\"middle\" class=\"t\">Catalogue search<\/text><text x=\"366.0\" y=\"285.0\" text-anchor=\"middle\" class=\"s\">short-lived cache<\/text><rect x=\"494\" y=\"238\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"607.0\" y=\"266.0\" text-anchor=\"middle\" class=\"t\">Buyer concierge<\/text><text x=\"607.0\" y=\"285.0\" text-anchor=\"middle\" class=\"s\">Claude Sonnet with tools<\/text><path d=\"M370,198 L370,214 L125.0,214 L125.0,238\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,198 L370,214 L366.0,214 L366.0,238\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,198 L370,214 L607.0,214 L607.0,238\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"12\" y=\"332\" width=\"432\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"228.0\" y=\"360.0\" text-anchor=\"middle\" class=\"t\">Reply to buyer<\/text><text x=\"228.0\" y=\"379.0\" text-anchor=\"middle\" class=\"s\">read-only answers go straight back<\/text><path d=\"M125.0,302 L125.0,332\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M366.0,302 L366.0,332\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"494\" y=\"332\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"607.0\" y=\"360.0\" text-anchor=\"middle\" class=\"t\">Proposes a write<\/text><text x=\"607.0\" y=\"379.0\" text-anchor=\"middle\" class=\"s\">enquiry, shortlist, call<\/text><path d=\"M607.0,302 L607.0,332\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"494\" y=\"426\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(245,181,68,.12)\" stroke=\"#F5B544\" stroke-width=\"1.6\"\/><text x=\"607.0\" y=\"454.0\" text-anchor=\"middle\" class=\"t\">Buyer confirms<\/text><text x=\"607.0\" y=\"473.0\" text-anchor=\"middle\" class=\"s\">on the next turn, not the same one<\/text><path d=\"M607.0,396 L607.0,426\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"494\" y=\"520\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"607.0\" y=\"548.0\" text-anchor=\"middle\" class=\"t\">Action runs<\/text><text x=\"607.0\" y=\"567.0\" text-anchor=\"middle\" class=\"s\">logged<\/text><path d=\"M607.0,490 L607.0,520\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M494,458.0 L454,458.0 L454,270.0 L494,270.0\" fill=\"none\" stroke=\"#F5B544\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah-F5B544)\"\/><text x=\"448\" y=\"463.0\" text-anchor=\"end\" class=\"l\" fill=\"#F5B544\">proposal expires if not confirmed<\/text><path d=\"M494,364.0 L444,364.0\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah)\"\/><text x=\"228\" y=\"416\" text-anchor=\"middle\" class=\"l\" fill=\"#7A7A80\">an answer with no write goes straight back<\/text><\/svg><\/div>\n    <div class=\"row\"><div class=\"k\">Baseline<\/div><div class=\"v\"><p>A search form and a contact form. Non-English buyers got the same two forms.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Built<\/div><div class=\"v\"><p>An agent on Claude Sonnet through Amazon Bedrock with dozens of in-process tools: search and present properties, compare, shortlist, send an enquiry, book a call, convert currency, and hand off to a human. It runs on the web and on the other channels buyers use, each through the same harness.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Boundaries<\/div><div class=\"v\"><p>A write gate separates proposing from doing. The model proposes an action in one turn and the action runs only on a later turn, so the model cannot confirm itself. Proposals expire. A short \"yes\" runs the stored proposal without consulting the model again. Listing IDs the model did not retrieve are rejected. Every conversation turn is capped in agent turns, tool calls and wall-clock time, and voice is capped tighter.<\/p><\/div><\/div>\n    <div class=\"row result\"><div class=\"k\">Result<\/div><div class=\"v\"><p>Live for buyers in six site languages, with the model replying in whichever language the buyer writes.<\/p><\/div><\/div>\n    <div class=\"models\">Claude Sonnet on Amazon Bedrock<\/div>\n  <\/div>\n\n  <div class=\"sys\">\n    <header><span class=\"mono\">Sellers<\/span><h3>Enquiry qualifier<\/h3><\/header>\n    <div class=\"diagram\"><svg viewBox=\"0 0 740 510\" width=\"100%\" role=\"img\" aria-label=\"Enquiry qualifier\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs><marker id=\"ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#7A7A80\"\/><\/marker><marker id=\"ah-E5484D\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#E5484D\"\/><\/marker><marker id=\"ah-3DDC97\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#3DDC97\"\/><\/marker><marker id=\"ah-F5B544\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#F5B544\"\/><\/marker><marker id=\"ah-0CA7FF\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#0CA7FF\"\/><\/marker><\/defs><style>.t{font:600 16px Inter,sans-serif;fill:#F4F4F5}.s{font:400 13px Inter,sans-serif;fill:#A0A0A6}.l{font:400 13px Inter,sans-serif}.g{font:500 12px \"JetBrains Mono\",monospace;fill:#7A7A80;letter-spacing:.14em}<\/style><rect x=\"210.0\" y=\"30\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"58.0\" text-anchor=\"middle\" class=\"t\">Enquiry form<\/text><text x=\"370.0\" y=\"77.0\" text-anchor=\"middle\" class=\"s\">web, portal or sales kit<\/text><rect x=\"210.0\" y=\"124\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"152.0\" text-anchor=\"middle\" class=\"t\">Rules first<\/text><text x=\"370.0\" y=\"171.0\" text-anchor=\"middle\" class=\"s\">score how suspicious it looks<\/text><path d=\"M370,94 L370,124\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"218\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"246.0\" text-anchor=\"middle\" class=\"t\">Claude grades the rest<\/text><text x=\"370.0\" y=\"265.0\" text-anchor=\"middle\" class=\"s\">intent, clarity, language<\/text><path d=\"M370,188 L370,218\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"12\" y=\"322\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"125.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Qualified<\/text><text x=\"125.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">with the reasons<\/text><rect x=\"253\" y=\"322\" width=\"226\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"366.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Review<\/text><text x=\"366.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">incomplete details, never junk<\/text><rect x=\"494\" y=\"322\" width=\"226\" height=\"64\" rx=\"9\" fill=\"rgba(229,72,77,.12)\" stroke=\"#E5484D\" stroke-width=\"1.6\"\/><text x=\"607.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Junk<\/text><text x=\"607.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">never shown to the seller<\/text><path d=\"M370,282 L370,298 L125.0,298 L125.0,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,282 L370,298 L366.0,298 L366.0,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M370,282 L370,298 L607.0,298 L607.0,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"12\" y=\"416\" width=\"467\" height=\"64\" rx=\"9\" fill=\"rgba(245,181,68,.12)\" stroke=\"#F5B544\" stroke-width=\"1.6\"\/><text x=\"245.5\" y=\"444.0\" text-anchor=\"middle\" class=\"t\">Seller decides<\/text><text x=\"245.5\" y=\"463.0\" text-anchor=\"middle\" class=\"s\">in the seller inbox, can override any grade<\/text><path d=\"M125.0,386 L125.0,416\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M366.0,386 L366.0,416\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M530.0,156.0 L728,156.0 L728,354.0 L720,354.0\" fill=\"none\" stroke=\"#E5484D\" stroke-width=\"1.6\" marker-end=\"url(#ah-E5484D)\"\/><text transform=\"rotate(-90 716 239.0)\" x=\"716\" y=\"239.0\" text-anchor=\"middle\" class=\"l\" fill=\"#E5484D\">suspicious: no model call<\/text><path d=\"M210.0,250.0 L40,250.0 L40,156.0 L210.0,156.0\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah)\"\/><text x=\"46\" y=\"210\" text-anchor=\"start\" class=\"l\" fill=\"#7A7A80\">timeout or error: rules decide alone<\/text><\/svg><\/div>\n    <div class=\"row\"><div class=\"k\">Baseline<\/div><div class=\"v\"><p>Every form submission forwarded to the seller unread.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Built<\/div><div class=\"v\"><p>A grader that marks each enquiry Qualified, Review or Junk, with the buyer's intent, the clarity of the message and its detected language. Rules run first: an obviously suspicious submission is Junk and never reaches the model. Claude Sonnet grades what remains, within a few hundred tokens and a few seconds.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Boundaries<\/div><div class=\"v\"><p>A missing phone number or budget can only ever produce Review, never Junk. If the model times out or errors, the rules decide alone. Sellers see the reasons beside each enquiry in their inbox and can override them.<\/p><\/div><\/div>\n    <div class=\"row result\"><div class=\"k\">Result<\/div><div class=\"v\"><p>The large majority of enquiries are marked usable, a handful go to review, and a small number are caught as junk before a seller sees them. Sellers open each enquiry with a grade and a reason attached.<\/p><\/div><\/div>\n    <div class=\"models\">Claude Sonnet on Amazon Bedrock<\/div>\n  <\/div>\n\n  <div class=\"sys\">\n    <header><span class=\"mono\">Agencies<\/span><h3>The agency concierge<\/h3><\/header>\n    <div class=\"diagram\"><svg viewBox=\"0 0 740 604\" width=\"100%\" role=\"img\" aria-label=\"The agency concierge\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs><marker id=\"ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#7A7A80\"\/><\/marker><marker id=\"ah-E5484D\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#E5484D\"\/><\/marker><marker id=\"ah-3DDC97\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#3DDC97\"\/><\/marker><marker id=\"ah-F5B544\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#F5B544\"\/><\/marker><marker id=\"ah-0CA7FF\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0L10 5 0 10z\" fill=\"#0CA7FF\"\/><\/marker><\/defs><style>.t{font:600 16px Inter,sans-serif;fill:#F4F4F5}.s{font:400 13px Inter,sans-serif;fill:#A0A0A6}.l{font:400 13px Inter,sans-serif}.g{font:500 12px \"JetBrains Mono\",monospace;fill:#7A7A80;letter-spacing:.14em}<\/style><text x=\"0\" y=\"22\" class=\"g\">EVERYTHING THE CONCIERGE WRITES IS A DRAFT<\/text><rect x=\"210.0\" y=\"40\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"68.0\" text-anchor=\"middle\" class=\"t\">Agency asks<\/text><text x=\"370.0\" y=\"87.0\" text-anchor=\"middle\" class=\"s\">in plain words<\/text><rect x=\"210.0\" y=\"134\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Agency concierge<\/text><text x=\"370.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">Claude Sonnet, whitelisted actions only<\/text><path d=\"M370,104 L370,134\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"544\" y=\"134\" width=\"190\" height=\"64\" rx=\"9\" fill=\"rgba(229,72,77,.12)\" stroke=\"#E5484D\" stroke-width=\"1.6\"\/><text x=\"639.0\" y=\"162.0\" text-anchor=\"middle\" class=\"t\">Refused<\/text><text x=\"639.0\" y=\"181.0\" text-anchor=\"middle\" class=\"s\">not on the list<\/text><path d=\"M530.0,166.0 L544,166.0\" fill=\"none\" stroke=\"#E5484D\" stroke-width=\"1.6\" marker-end=\"url(#ah-E5484D)\"\/><rect x=\"210.0\" y=\"228\" width=\"320\" height=\"64\" rx=\"9\" fill=\"#121212\" stroke=\"#5A5A60\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"256.0\" text-anchor=\"middle\" class=\"t\">Draft<\/text><text x=\"370.0\" y=\"275.0\" text-anchor=\"middle\" class=\"s\">outreach, post, sales kit<\/text><path d=\"M370,198 L370,228\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"322\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(245,181,68,.12)\" stroke=\"#F5B544\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"350.0\" text-anchor=\"middle\" class=\"t\">Agency approves<\/text><text x=\"370.0\" y=\"369.0\" text-anchor=\"middle\" class=\"s\">edits or discards before anything is scheduled<\/text><path d=\"M370,292 L370,322\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"416\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(12,167,255,.12)\" stroke=\"#0CA7FF\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"444.0\" text-anchor=\"middle\" class=\"t\">Moderation<\/text><text x=\"370.0\" y=\"463.0\" text-anchor=\"middle\" class=\"s\">allow, review or reject<\/text><path d=\"M370,386 L370,416\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><rect x=\"210.0\" y=\"510\" width=\"320\" height=\"64\" rx=\"9\" fill=\"rgba(61,220,151,.12)\" stroke=\"#3DDC97\" stroke-width=\"1.6\"\/><text x=\"370.0\" y=\"538.0\" text-anchor=\"middle\" class=\"t\">Published<\/text><text x=\"370.0\" y=\"557.0\" text-anchor=\"middle\" class=\"s\">to the feed, or sent<\/text><path d=\"M370,480 L370,510\" fill=\"none\" stroke=\"#7A7A80\" stroke-width=\"1.6\" marker-end=\"url(#ah)\"\/><path d=\"M530.0,448.0 L700,448.0 L700,354.0 L530.0,354.0\" fill=\"none\" stroke=\"#E5484D\" stroke-width=\"1.6\" stroke-dasharray=\"6 5\" marker-end=\"url(#ah-E5484D)\"\/><text x=\"694\" y=\"408\" text-anchor=\"end\" class=\"l\" fill=\"#E5484D\">review or reject: back to the agency<\/text><\/svg><\/div>\n    <div class=\"row\"><div class=\"k\">Baseline<\/div><div class=\"v\"><p>Agencies with listings and no one to write about them.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Built<\/div><div class=\"v\"><p>An agency concierge on Claude Sonnet with a whitelist of actions: find listings, draft outreach, draft a social post, build a sales kit, create a collection. A caption fact-check runs on every draft. A separate moderation pass grades each post for the shared feed as allow, review or reject, with the instruction that the post is data, not instructions. The heaviest planning tasks run on Claude Opus with a daily cap per seller.<\/p><\/div><\/div>\n    <div class=\"row\"><div class=\"k\">Boundaries<\/div><div class=\"v\"><p>The whitelist is the only gate. An action not on it is refused, and everything the concierge writes lands as a draft that nothing publishes until the agency approves it. Drafted outreach carries a disclosure footer. Confirmations are signed with a short-lived token.<\/p><\/div><\/div>\n    <div class=\"row result\"><div class=\"k\">Result<\/div><div class=\"v\"><p>Agencies with no marketing staff now publish outreach and posts they approved rather than wrote. Listing and portal copy for agencies and developers runs through the same gateway, and it drops any sentence containing a number that was not in the facts it was given.<\/p><\/div><\/div>\n    <div class=\"models\">Claude Sonnet \u00b7 Claude Opus on Amazon Bedrock<\/div>\n  <\/div>\n<\/section>\n\n<section id=\"patterns\">\n  <h2>Four decisions that repeated<\/h2>\n  <p>The four systems were built months apart by different pairs of Webpuppies and INTRIC engineers. They converged on the same shapes.<\/p>\n  <ul class=\"patterns\">\n    <li><b>Deterministic path first.<\/b> The intent router, the qualifier's rules and the moderation fallback all answer without a model where they can. Claude handles what is left, which keeps both cost and failure surface small.<\/li>\n    <li><b>Propose in one turn, act in the next.<\/b> The buyer concierge's write gate and the agency concierge's proposal tokens both put a turn boundary, and a person, between a suggestion and its consequence. The model never approves its own action.<\/li>\n    <li><b>Numbers must trace to a source.<\/b> Portal copy discards any sentence with a number that was not in the submitted facts. An internal daily brief is dropped entirely if a single figure in it does not appear in the underlying report. Neither is proof of truth. Both remove the easiest way to be wrong.<\/li>\n    <li><b>Fall back to rules, not to silence.<\/b> When Claude times out, the qualifier grades by rules, and the moderator applies static checks. The buyer or seller always gets an answer, and the log says which path produced it.<\/li>\n  <\/ul>\n<\/section>\n\n<section id=\"results\">\n  <h2>Results and what comes next<\/h2>\n  <p>More than 7,000 listings are live across more than 20 countries, in six languages. The harness, with Claude inside it, now sits in the path of every buyer conversation, every enquiry and every listing that reaches the site, and a person still signs off anything that cannot be undone. The figures here are rounded on purpose.<\/p>\n  <blockquote>\n    \"We did not want a chatbot on top of a marketplace. We wanted the marketplace itself to do the work, and we wanted to be able to stop any single action without stopping the system. Building the harness with Webpuppies and putting Claude inside it gave us both. My team can read every gate and explain why it is there.\"\n    <cite>Jovi Pinedez, Head of Accounts, INTRIC<\/cite>\n  <\/blockquote>\n<\/section>\n\n<section id=\"governance\">\n  <h2>Governance and ownership<\/h2>\n  <div class=\"gov\">\n    <div><b>INTRIC holds the platform relationships.<\/b><p>The cloud and Claude accounts are INTRIC's. Webpuppies does not resell, mark up or sit between INTRIC and either provider.<\/p><\/div>\n    <div><b>Every system runs inside a documented boundary.<\/b><p>Each Claude endpoint accepts one role, each automated job can invoke one model, and partner material stays under its own retention rule.<\/p><\/div>\n    <div><b>The code and the architecture are INTRIC's.<\/b><p>The harness, the prompts and the rubrics all live in INTRIC's repository under INTRIC's name. Because INTRIC's engineers built them alongside Webpuppies, the team that runs the platform is the team that designed it.<\/p><\/div>\n    <div><b>Disclosure.<\/b><p>INTRIC and Webpuppies share a founder. The engagement is contracted on the same terms and acceptance criteria Webpuppies offers any client.<\/p><\/div>\n  <\/div>\n<\/section>\n\n<section id=\"lessons\">\n  <h2>Lessons for anyone building the same thing<\/h2>\n  <ul class=\"num-list\">\n    <li><b>Route before you reason.<\/b> A router with no model in it decides whether a model is needed, so the messages that do reach Claude arrive with intent already known.<\/li>\n    <li><b>Put the confirmation on the next turn.<\/b> An agent that can propose and execute in the same breath will, eventually, confirm itself. A turn boundary costs the user one tap and removes the whole class of failure.<\/li>\n    <li><b>Let the model write only the numbers you gave it.<\/b> Dropping a sentence is cheaper than correcting a published yield, so build the check into the output path rather than the review process.<\/li>\n    <li><b>Sign off at release, not at draft.<\/b> Claude can prepare more listings in a day than a team can read. A person approving each release, with an undo window behind them, is what made it safe to let it.<\/li>\n    <li><b>Build it with the team that will run it.<\/b> Every system here was built by a pair drawn from both companies, so the knowledge of why each gate exists stayed with INTRIC when the build moved on.<\/li>\n  <\/ul>\n<\/section>\n\n<\/article>\n\n<aside>\n  <div class=\"glance\">\n    <span class=\"mono\">At a glance<\/span>\n    <dl>\n      <dt>Customer<\/dt><dd>INTRIC Technologies Limited<br><a href=\"https:\/\/intricglobal.com\">intricglobal.com<\/a><\/dd>\n      <dt>Industry<\/dt><dd>Cross-border residential real estate<\/dd>\n      <dt>Footprint<\/dt><dd>7,000+ live listings in 20+ countries; platform in 6 languages<\/dd>\n      <dt>Engagement<\/dt><dd>Joint design and build of the platform's AI layer, with Webpuppies engineers embedded in INTRIC's team<\/dd>\n      <dt>Claude products<\/dt><dd>Amazon Bedrock, Claude Developer Platform (Messages and Message Batches), Claude Code, Claude Code GitHub Action<\/dd>\n      <dt>Models<\/dt><dd>Claude Sonnet, Claude Opus and Claude Haiku, chosen per workload<\/dd>\n      <dt>In production<\/dt><dd>Buyer concierge, enquiry qualifier, agency concierge and listing intake pipeline, each built around Claude<\/dd>\n      <dt>Client lead<\/dt><dd>Jovi Pinedez, Head of Accounts<\/dd>\n      <dt>Partner<\/dt><dd>Webpuppies, Claude Partner Network member (Services Track)<\/dd>\n      <dt>Figures<\/dt><dd>Rounded on purpose<\/dd>\n    <\/dl>\n  <\/div>\n<\/aside>\n<\/div>\n\n<section class=\"cta\">\n  <div class=\"wrap\">\n    <div>\n      <h2>Building a platform that needs a model with tools?<\/h2>\n      <p>We can walk you through how the write gate, the qualifier and the intake pipeline would apply to your catalogue.<\/p>\n    <\/div>\n    <div class=\"contact\">\n      <a class=\"btn\" href=\"mailto:contact@webpuppies.com.sg?subject=Claude%20build%20enquiry\">Talk to Webpuppies<\/a>\n      <a class=\"mail\" href=\"mailto:contact@webpuppies.com.sg\">contact@webpuppies.com.sg<\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>How INTRIC and Webpuppies built a cross-border property platform&#8217;s AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.<\/p>\n","protected":false},"featured_media":14794,"template":"elementor_header_footer","meta":{"_acf_changed":false,"_yoast_wpseo_focuskw":"","_yoast_wpseo_title":"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies","_yoast_wpseo_metadesc":"How INTRIC and Webpuppies built a cross-border property platform's AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.","_yoast_wpseo_meta-robots-noindex":"","_yoast_wpseo_meta-robots-nofollow":"","_yoast_wpseo_canonical":"","_yoast_wpseo_opengraph-title":"","_yoast_wpseo_opengraph-description":"","_yoast_wpseo_opengraph-image":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","_yoast_wpseo_twitter-title":"","_yoast_wpseo_twitter-description":"","_yoast_wpseo_twitter-image":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","content-type":"","site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"disabled","ast-hfb-above-header-display":"disabled","ast-hfb-below-header-display":"disabled","ast-hfb-mobile-header-display":"disabled","site-post-title":"disabled","ast-breadcrumbs-content":"disabled","ast-featured-img":"disabled","footer-sml-layout":"disabled","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"thumbnails":"14794","_wvf_managed_metadesc":"","_wvf_managed_og":"","_wvf_managed_title":"","_wvf_managed_h1":"","_wvf_managed_og_image":"","company-name":"","footnotes":""},"services":[90,91,92],"tags":[],"categories":[],"class_list":["post-14790","case_study","type-case_study","status-publish","has-post-thumbnail","hentry","services-ai-consultancy","services-software-development","services-system-integration"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies<\/title>\n<meta name=\"description\" content=\"How INTRIC and Webpuppies built a cross-border property platform&#039;s AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies\" \/>\n<meta property=\"og:description\" content=\"How INTRIC and Webpuppies built a cross-border property platform&#039;s AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/\" \/>\n<meta property=\"og:site_name\" content=\"Webpuppies\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-29T06:59:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/\",\"url\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/\",\"name\":\"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies\",\"isPartOf\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png\",\"datePublished\":\"2026-10-29T06:43:38+00:00\",\"dateModified\":\"2026-10-29T06:59:18+00:00\",\"description\":\"How INTRIC and Webpuppies built a cross-border property platform's AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.\",\"breadcrumb\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage\",\"url\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png\",\"contentUrl\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png\",\"width\":1024,\"height\":768},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Case Studies\",\"item\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"INTRIC and Webpuppies built an operating system around Claude\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#website\",\"url\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/\",\"name\":\"Webpuppies\",\"description\":\"Your partner in digital innovation across AI, Data &amp; Cloud, Security, and Enterprise Maintenance.\",\"publisher\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#organization\",\"name\":\"Webpuppies\",\"url\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2020\/02\/Full-Logo.svg\",\"contentUrl\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2020\/02\/Full-Logo.svg\",\"width\":146,\"height\":28,\"caption\":\"Webpuppies\"},\"image\":{\"@id\":\"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies","description":"How INTRIC and Webpuppies built a cross-border property platform's AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/","og_locale":"en_US","og_type":"article","og_title":"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies","og_description":"How INTRIC and Webpuppies built a cross-border property platform's AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.","og_url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/","og_site_name":"Webpuppies","article_modified_time":"2026-10-29T06:59:18+00:00","og_image":[{"url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png"}],"twitter_card":"summary_large_image","twitter_image":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/","url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/","name":"INTRIC Customer Story: An Operating System Built Around Claude | Webpuppies","isPartOf":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#website"},"primaryImageOfPage":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage"},"image":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage"},"thumbnailUrl":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","datePublished":"2026-10-29T06:43:38+00:00","dateModified":"2026-10-29T06:59:18+00:00","description":"How INTRIC and Webpuppies built a cross-border property platform's AI layer around Claude on Amazon Bedrock and the Claude Developer Platform: a buyer concierge, an enquiry grader, an agency copilot and a listing pipeline, each with a person at the point of no return.","breadcrumb":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#primaryimage","url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","contentUrl":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2026\/10\/intric-story-tile.png","width":1024,"height":768},{"@type":"BreadcrumbList","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/intric-claude-operating-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/"},{"@type":"ListItem","position":2,"name":"Case Studies","item":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/case-studies\/"},{"@type":"ListItem","position":3,"name":"INTRIC and Webpuppies built an operating system around Claude"}]},{"@type":"WebSite","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#website","url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/","name":"Webpuppies","description":"Your partner in digital innovation across AI, Data &amp; Cloud, Security, and Enterprise Maintenance.","publisher":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#organization","name":"Webpuppies","url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#\/schema\/logo\/image\/","url":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2020\/02\/Full-Logo.svg","contentUrl":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-content\/uploads\/2020\/02\/Full-Logo.svg","width":146,"height":28,"caption":"Webpuppies"},"image":{"@id":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/case_study\/14790"}],"collection":[{"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/case_study"}],"about":[{"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/types\/case_study"}],"version-history":[{"count":1,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/case_study\/14790\/revisions"}],"predecessor-version":[{"id":14791,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/case_study\/14790\/revisions\/14791"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/media\/14794"}],"wp:attachment":[{"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/media?parent=14790"}],"wp:term":[{"taxonomy":"services","embeddable":true,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/services?post=14790"},{"taxonomy":"tags","embeddable":true,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/tags?post=14790"},{"taxonomy":"categories","embeddable":true,"href":"https:\/\/glutenfreepleasure.com\/__proxy_domain\/webpuppies.com.sg\/wp-json\/wp\/v2\/categories?post=14790"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}