[{"data":1,"prerenderedAt":1559},["ShallowReactive",2],{"site-nav-content":3,"blog:\u002Fblog\u002Fmultiplayer-ai-and-multi-agent-ai":177,"blog-index-copy":483,"blog:\u002Fblog\u002Fmultiplayer-ai-and-multi-agent-ai:surround":504,"hiring-banner-content":1528,"site-cta-content":1540},{"header":4,"productNav":9,"nav":42,"footer":61,"askAI":132,"id":161,"title":162,"archived":163,"authors":164,"badge":164,"body":165,"date":164,"definedTerm":164,"department":164,"description":169,"extension":172,"eyebrow":164,"faqHeader":164,"faqs":164,"footerBand":164,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":173,"relatedHeading":164,"seo":174,"series":164,"sitemap":163,"status":164,"stem":175,"subhead":164,"tags":164,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":176},{"productLabel":5,"loginLabel":6,"contactLabel":7,"contactSalesLabel":8},"Product","Log in","Contact","Get started for free",[10,14,18,22,26,30,34,38],{"label":11,"to":12,"description":13},"Overview","\u002Foverview","Seven layers. One closed loop.",{"label":15,"to":16,"description":17},"Conflux","\u002Fproduct\u002Fconflux","Where your team, workstreams, and agents meet.",{"label":19,"to":20,"description":21},"Agent Teams","\u002Fproduct\u002Fagent-teams","Specialist teams - governed from day one.",{"label":23,"to":24,"description":25},"Lifecycle Graph","\u002Fproduct\u002Flifecycle-graph","Intelligence that compounds across every interaction.",{"label":27,"to":28,"description":29},"Company Wiki","\u002Fproduct\u002Fwiki","Playbooks and policies where expertise stays.",{"label":31,"to":32,"description":33},"Workstreams","\u002Fproduct\u002Fworkstreams","From brief to signed-off deliverable on one canvas.",{"label":35,"to":36,"description":37},"Perception Console","\u002Fproduct\u002Fperception","Ask your whole business in plain English.",{"label":39,"to":40,"description":41},"Governance","\u002Fproduct\u002Fgovernance","Frontier AI you can actually sign off on.",[43,46,49,52,55,58],{"label":44,"to":45},"Models","\u002Fmodels",{"label":47,"to":48},"Pricing","\u002Fpricing",{"label":50,"to":51},"Integrations","\u002Fintegrations",{"label":53,"to":54},"Security","\u002Fsecurity",{"label":56,"to":57},"Partners","\u002Fpartners",{"label":59,"to":60},"Insights","\u002Fblog",{"productHeading":5,"companyHeading":62,"resourcesHeading":63,"legalHeading":64,"docsLabel":65,"docsUrl":66,"statementLines":67,"copyright":70,"companyLinks":71,"resourcesLinks":86,"legalLinks":102,"socialLinks":109,"bottomLinks":119},"Company","Resources","Legal","Docs","https:\u002F\u002Fdocs.gonimbus.ai",[68,69],"Stop training someone else's model.","Control your AI.","© 2026 Nimbus Intelligence, Inc. All rights reserved.",[72,73,74,75,76,78,81,84],{"label":47,"to":48},{"label":50,"to":51},{"label":53,"to":54},{"label":59,"to":60},{"label":77,"to":57},"Partner Program",{"label":79,"to":80},"Careers","\u002Fcareers",{"label":82,"to":83},"System status","\u002Fstatus",{"label":7,"to":85},"\u002Fcontact",[87,90,93,96,99],{"label":88,"to":89},"Glossary","\u002Fglossary",{"label":91,"to":92},"Compare","\u002Fcompare",{"label":94,"to":95},"Evaluate","\u002Fevaluate",{"label":97,"to":98},"Problems","\u002Fproblems",{"label":100,"to":101},"Use cases","\u002Fuse-cases",[103,106],{"label":104,"to":105},"Terms of Service","\u002Fterms",{"label":107,"to":108},"Privacy Policy","\u002Fprivacy",[110,113,116],{"label":111,"href":112},"LinkedIn","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fgonimbusai\u002F",{"label":114,"href":115},"X","https:\u002F\u002Fx.com\u002Fgonimbusai",{"label":117,"href":118},"Instagram","https:\u002F\u002Fwww.instagram.com\u002Fgonimbus_ai\u002F",[120,122,124,127,128],{"label":121,"to":105},"Terms",{"label":123,"to":108},"Privacy",{"label":125,"to":126},"Compliance","\u002Fcompliance",{"label":82,"to":83},{"label":129,"to":130,"external":131},"LLMs.txt","\u002Fllms.txt",true,{"text":133,"prompt":134,"platforms":135},"Ask AI about Nimbus","I'm researching enterprise intelligence platforms and want to know how Nimbus combines perception, collaboration, and autonomous agents to drive strategic decision-making. Summarize the highlights from Nimbus's website: https:\u002F\u002Fgonimbus.ai",[136,141,146,151,156],{"name":137,"label":138,"icon":139,"hrefPrefix":140},"chatgpt","ChatGPT","simple-icons:openai","https:\u002F\u002Fchatgpt.com\u002F?prompt=",{"name":142,"label":143,"icon":144,"hrefPrefix":145},"perplexity","Perplexity","mdi:magnify","https:\u002F\u002Fwww.perplexity.ai\u002Fsearch\u002Fnew?q=",{"name":147,"label":148,"icon":149,"hrefPrefix":150},"grok","Grok","simple-icons:x","https:\u002F\u002Fx.com\u002Fi\u002Fgrok?text=",{"name":152,"label":153,"icon":154,"hrefPrefix":155},"claude","Claude","simple-icons:anthropic","https:\u002F\u002Fclaude.ai\u002Fnew?q=",{"name":157,"label":158,"icon":159,"hrefPrefix":160},"google-ai","Google AI","simple-icons:google","https:\u002F\u002Fwww.google.com\u002Fsearch?udm=50&aep=11&q=","content\u002Fshared\u002Fnav.md","Site navigation",false,null,{"type":166,"value":167,"toc":168},"minimark",[],{"title":169,"searchDepth":170,"depth":170,"links":171},"",2,[],"md","\u002Fshared\u002Fnav",{"title":162,"description":169},"shared\u002Fnav","Q7sDe7TuGEwhwUMamyeOxjvGlsUaF3Iay9VTW0KaE_U",{"id":178,"title":179,"archived":163,"authors":180,"badge":184,"body":186,"date":460,"definedTerm":461,"department":164,"description":462,"extension":172,"eyebrow":164,"faqHeader":463,"faqs":466,"footerBand":164,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":476,"relatedHeading":164,"seo":477,"series":478,"sitemap":131,"status":164,"stem":479,"subhead":164,"tags":480,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":482},"content\u002Fblog\u002Fmultiplayer-ai-and-multi-agent-ai.md","Multiplayer AI vs multi-agent AI: what is the difference?",[181],{"name":182,"to":183},"Nimbus Research","https:\u002F\u002Fgonimbus.ai",{"label":185},"Explainer",{"type":166,"value":187,"toc":452},[188,192,195,203,208,215,228,241,245,248,251,254,257,265,269,272,275,278,281,293,301,305,308,311,324,327,335,338,342,345,348,365,375,383,386,390,393,411,424,431,434],[189,190,191],"p",{},"Multiplayer AI is people and AI on the same job at the same time. Multi-agent AI is more than one model handing work to another. They are not the same product, and they fail in different places. You can have both — several models staffing steps inside one shared room — but buying a swarm is not the same as buying a room.",[189,193,194],{},"You should care if a demo shows agents passing tickets to each other and you still cannot name who would refuse a write to a live system. This is a useful distinction, not a verdict on agent platforms. Plenty of teams will keep specialists for retrieval or checks. The question is whether people still share the job.",[189,196,197,202],{},[198,199,201],"a",{"href":200},"\u002Fblog\u002Fwhat-is-multi-agent-ai\u002F","What is multi-agent AI"," is the cast-of-models definition. This page keeps that word apart from multiplayer: people and AI on the same job at the same time.",[204,205,207],"h2",{"id":206},"what-is-multiplayer-ai","What is multiplayer AI?",[189,209,210,214],{},[211,212,213],"strong",{},"Multiplayer AI"," is people and AI sharing one job at the same time: the same brief, the same files, and a named person who can refuse a change. The unit is the job, not the chat thread and not the model. Two departments can open the same work, see the same draft, and leave a record when someone says no.",[189,216,217,218,222,223,227],{},"That is different from giving the team one login to a personal assistant. It is also different from ",[198,219,221],{"href":220},"\u002Fblog\u002Fwhat-is-collaborative-ai\u002F","collaborative AI",", which stresses the shared job after the session ends. Multiplayer answers who is in the room now. Collaborative AI answers whether the outcome still has a home tomorrow. You usually want both. ",[198,224,226],{"href":225},"\u002Fblog\u002Fhow-to-evaluate-collaborative-ai\u002F","How to evaluate collaborative AI"," is the buying sheet for the shared-job side.",[189,229,230,231,235,236,240],{},"If the work does not depend on any one agent still being around — because the files, the decision, and the signer live on the job — that is ",[198,232,234],{"href":233},"\u002Fblog\u002Fagents-should-be-disposable\u002F","agents should be disposable",". If several people can see the job but nobody can stop a write, you have a room without a door. ",[198,237,239],{"href":238},"\u002Fblog\u002Fgovernance-as-a-multiplayer-primitive\u002F","Governance as a multiplayer primitive"," is that door.",[204,242,244],{"id":243},"what-is-the-difference-between-multiplayer-ai-and-multi-agent-ai","What is the difference between multiplayer AI and multi-agent AI?",[189,246,247],{},"Multiplayer answers: who is in the room, what they can see, and who can halt a change. The unit is the job. Finance and sales can open the same brief while the model drafts.",[189,249,250],{},"Multi-agent answers: how work is split between models. One specialist retrieves. Another drafts. A third “reviews.” The unit is the graph — the sequence of model calls.",[189,252,253],{},"A simple check: if you remove every extra model and two departments still cannot share the files and the stop, you never had multiplayer. If you remove the second human and the run still completes in private, you had a personal tool with extra model calls.",[189,255,256],{},"Write-back is when AI changes a live system. In a multiplayer setup, one job holds one payload — the exact change — and a named signer. In a multi-agent setup, several writers can exist unless you bind them to that same stop. Fail-closed means if nobody approves, nothing happens. That rule belongs to a person on the roster, not to the orchestrator.",[189,258,259,260,264],{},"McKinsey’s ",[198,261,263],{"href":262},"https:\u002F\u002Fwww.mckinsey.com\u002Fcapabilities\u002Fquantumblack\u002Four-insights\u002Fthe-state-of-ai","State of AI"," (2025) found that most organisations using AI are still piloting. A common pilot is either one copilot or a small agent demo. Neither automatically creates a shared job.",[204,266,268],{"id":267},"why-does-that-distinction-matter","Why does that distinction matter?",[189,270,271],{},"It matters when something goes out wrong and you need a name.",[189,273,274],{},"In multiplayer AI, a named person owns the finish line: the model drafts, and a human on the roster signs or rejects. If the artefact is wrong, you can say who was on the job, including which AI role, and who was allowed to stop it.",[189,276,277],{},"In multi-agent AI, accountability is easy to lose. Each specialist did “its step.” The human who started the run may not have seen the intermediate draft. A log can show that agent B called agent C at 14:03. It does not show that finance agreed.",[189,279,280],{},"Orchestration decides sequence. Accountability is a person with a duty who can refuse at the moment a live system is about to change. A node labelled “human review” is not a name until you can say whose name, on this job, for which class of write.",[189,282,283,287,288,292],{},[198,284,286],{"href":285},"\u002Fblog\u002Frbac-for-enterprise-ai\u002F","RBAC for enterprise AI"," is that list. ",[198,289,291],{"href":290},"\u002Fblog\u002Fwhat-is-write-back-governance\u002F","Write-back governance"," is the companion for the write itself.",[189,294,295,296,300],{},"The harness — the tools, stops, and checks around the model — is how a cast of specialists stays bounded. ",[198,297,299],{"href":298},"\u002Fblog\u002Fwhat-is-harness-engineering\u002F","Harness engineering"," is the guide to that environment.",[204,302,304],{"id":303},"when-do-you-need-several-people-versus-several-models","When do you need several people versus several models?",[189,306,307],{},"You need several people when more than one owner must stand on the result, or when a handover will happen, or when a customer-facing sentence can leave.",[189,309,310],{},"You need several models when the hand-off already exists between human roles and you want a narrower tool for each step. Useful examples:",[312,313,314,318,321],"ul",{},[315,316,317],"li",{},"A research pass that must not share an identity with the agent drafting customer email.",[315,319,320],{},"A finance check that should not be able to send mail, even by accident.",[315,322,323],{},"A long retrieval over many files that a person will then judge on the job.",[189,325,326],{},"Separation of duties is the useful idea. The specialist that recommends a CRM update is not the principal that executes it. Multiplayer AI still puts a human on the execute step.",[189,328,329,330,334],{},"You do not need a swarm to summarise your own notes. That is a ",[198,331,333],{"href":332},"\u002Fblog\u002Fcollaborative-ai-and-personal-assistants\u002F","personal assistant",". You do not need a second department on a private brainstorm. You do need both people and a stop when the output can change CRM, a journal, or a message a customer will keep.",[189,336,337],{},"A disagreement is a good test. Sales’ specialist wants to send. Legal’s specialist wants to hold. If the orchestrator averages them, or picks the last speaker, you do not have a stop. You have a race. Multiplayer AI makes the human with the duty the one who decides.",[204,339,341],{"id":340},"how-do-you-talk-about-this-with-a-vendor","How do you talk about this with a vendor?",[189,343,344],{},"Ask to see the room and the cast as two demos, not one slide.",[189,346,347],{},"Useful questions:",[312,349,350,353,356,359,362],{},[315,351,352],{},"Can a second department join live, see the same brief, and reject a proposal?",[315,354,355],{},"If we remove the person who started the run, can someone else still refuse a write?",[315,357,358],{},"When two specialists disagree, who decides — a person with a name, or the graph?",[315,360,361],{},"Can we open the intermediate draft tomorrow, including a stored no?",[315,363,364],{},"Is the write identity a named human role, or a shared service credential?",[189,366,367,371,372,374],{},[198,368,370],{"href":369},"\u002Fblog\u002Fwhat-auditors-are-asking-for\u002F","What auditors are asking for"," is the evidence cut. A common first rule is: do not give the swarm a production write token so the demo looks complete. ",[198,373,291],{"href":290}," is that checklist.",[189,376,377,378,382],{},"Stanford HAI’s ",[198,379,381],{"href":380},"https:\u002F\u002Fhai.stanford.edu\u002Fai-index","AI Index"," (2025) tracks adoption, investment, and incident reporting. Incident stories are easier to learn from when you can name the job and the signer, not only the model family.",[189,384,385],{},"If the vendor can only show a happy path of agents completing a ticket, ask for a specialist disagreement and a human rejection. That is a fair request. You may still buy the swarm for staffing. You will know whether you also bought a workplace.",[204,387,389],{"id":388},"how-do-you-start-without-buying-a-new-stack","How do you start without buying a new stack?",[189,391,392],{},"Bind what you already have to one job.",[394,395,396,399,402,405,408],"ol",{},[315,397,398],{},"Pick a recurring job that already has two owners (a weekly exception, a clause check, a forecast update).",[315,400,401],{},"Put the brief and two files in one place those people can both open.",[315,403,404],{},"If you already run specialists, let them draft into that place. Keep the intermediate draft visible.",[315,406,407],{},"Name who can sign a write. Keep the connection read-only until that name exists.",[315,409,410],{},"After two cycles, ask: did we fail because we needed another model, or because the second person could not see the file?",[189,412,413,414,418,419,423],{},"Nimbus’s ",[198,415,417],{"href":416},"\u002Fproduct\u002Fworkstreams\u002F","workstreams"," and ",[198,420,422],{"href":421},"\u002Fproduct\u002Fgovernance\u002F","governance"," are one attempt at that shape. You can start with a shared folder, a ticket, and a written stop if that is what you have.",[189,425,426,430],{},[198,427,429],{"href":428},"\u002Fblog\u002Fnimbus-vs-paperclip\u002F","Nimbus vs Paperclip"," is a vendor-shaped version of the same cut: governing what agents do inside one platform is not the same as two departments finishing a signed forecast in your CRM.",[189,432,433],{},"Keep the words apart because they help you buy the right next thing. Multiplayer is the room. Multi-agent is the cast. Adding to the cast is a staffing decision. The room is what owns the result.",[189,435,436,437,441,442,446,447,451],{},"Three companion pages stay with this. ",[198,438,440],{"href":439},"\u002Fblog\u002Fsolo-ai-vs-multiplayer-ai\u002F","The shift from solo AI to multiplayer AI"," is the private chat against the shared room. ",[198,443,445],{"href":444},"\u002Fblog\u002Fthe-shared-canvas-for-human-ai-teams\u002F","Designing collaborative canvas interfaces"," is the interface. ",[198,448,450],{"href":449},"\u002Fblog\u002Fshared-state-when-the-teammate-is-a-model\u002F","Real-time sync for AI teammates"," is the state layer under the document.",{"title":169,"searchDepth":170,"depth":170,"links":453},[454,455,456,457,458,459],{"id":206,"depth":170,"text":207},{"id":243,"depth":170,"text":244},{"id":267,"depth":170,"text":268},{"id":303,"depth":170,"text":304},{"id":340,"depth":170,"text":341},{"id":388,"depth":170,"text":389},"2026-08-17","multiplayer AI","Multiplayer AI is people and AI on one job.",{"eyebrow":464,"title":465},"Short answers","People in the room, or models in a loop?",[467,470,473],{"question":468,"answer":469},"Can we have both multiplayer AI and multi-agent AI?","Yes. Several models can staff steps on one shared job. The distinction is whether people share the job, not how many models you run.",{"question":471,"answer":472},"Does more agents mean more accountability?","Not by itself. Accountability is a named person who can refuse a change. Extra models without that name make the trail harder to read.",{"question":474,"answer":475},"Is a human-in-the-loop node enough?","Only if you can say whose name, on this job, for which class of write. A node labelled “review” is not a roster until it is a person.","\u002Fblog\u002Fmultiplayer-ai-and-multi-agent-ai",{"title":179,"description":462},"explainer","blog\u002Fmultiplayer-ai-and-multi-agent-ai",[478,461,481],"multi-agent AI","08lVinpdcx6mR1jgdFZQHubw8U_mudvfB4-z7VOPC24",{"hero":484,"id":486,"title":487,"archived":163,"authors":164,"badge":164,"body":488,"date":164,"definedTerm":164,"department":164,"description":492,"extension":172,"eyebrow":493,"faqHeader":164,"faqs":164,"footerBand":494,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":60,"relatedHeading":500,"seo":501,"series":164,"sitemap":131,"status":164,"stem":502,"subhead":164,"tags":164,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":503},{"filename":485},"u2221455217_Flat_design_of_a_futuristic_minimalist_landscape__5d589295-cdea-4ea9-a262-be766881accf_1.png","content\u002Fblog\u002Findex.md","Exploring the future of intelligence.",{"type":166,"value":489,"toc":490},[],{"title":169,"searchDepth":170,"depth":170,"links":491},[],"Deep dives into pre-cognitive intelligence, sentient enterprises, and the evolving landscape of AI-driven business transformation.","Latest Research",{"headline":495,"description":496,"primaryLabel":497,"primaryTo":498,"secondaryLabel":499,"secondaryTo":12},"Stay at the frontier.","Subscribe for product updates and new insights.","Subscribe","\u002Fnewsletter","Explore the platform","More research",{"title":487,"description":492},"blog\u002Findex","BFSWGYO9bcTlaulivKYWyg08_DJHsdGg3OC6g_CG1Hw",[505,857],{"id":506,"title":507,"archived":163,"authors":164,"badge":508,"body":512,"date":460,"definedTerm":164,"department":164,"description":834,"extension":172,"eyebrow":164,"faqHeader":835,"faqs":837,"footerBand":164,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":847,"relatedHeading":164,"seo":848,"series":849,"sitemap":131,"status":164,"stem":850,"subhead":164,"tags":851,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":856},"content\u002Fblog\u002Fnimbus-vs-glean.md","Nimbus vs Glean: Finding the Deck vs Running the Job That Deck Implies",{"label":509,"10|authors":510},"Comparisons",[511],{"name":182,"to":183},{"type":166,"value":513,"toc":815},[514,521,528,535,539,589,593,606,613,616,619,622,625,628,632,640,643,646,649,653,656,678,686,696,700,705,711,715,718,722,725,729,732,736,743,747,758,762,765,769,772,776,790,794],[189,515,516,520],{},[198,517,519],{"href":518},"https:\u002F\u002Fwww.glean.com\u002F","Glean"," is workplace search that grew a work assistant on top. It finds files across Drive, Slack, Confluence, and the rest of the workplace — and it respects who is allowed to see them. Nimbus is the place you then run the job those files imply: update the customer record, file the next step, get a person to sign.",[189,522,523,524,527],{},"Glean’s centre of gravity is ",[211,525,526],{},"find the right object, for the right person, at the right time",". Nimbus’s is a signed-off outcome. Both products will say “knowledge” and “agents.” They are not the same purchase. Search that does not leak is a hard, years-long problem. A release on a live system is a different hard problem. Many enterprises have both. They should not pretend one vendor covers both because both say “knowledge graph.”",[189,529,530,534],{},[198,531,533],{"href":532},"https:\u002F\u002Fwww.glean.com\u002Fproduct","Glean’s product"," connects to Google Workspace, Microsoft 365, Slack, Salesforce, Confluence, Jira, and many more — publicly, 100+ workplace apps — then builds an index that respects the same permissions as the source system. Under the hood that is a mix of classic keyword search and meaning-based search, plus a map of people, documents, and activity. Glean has added assistants and agents so the search layer can also draft and automate. That architecture is why Glean wins large-enterprise search bake-offs. Identity, crawl, and permission fidelity are the hard problems, and Glean has spent years on them.",[204,536,538],{"id":537},"words-youll-hear","Words you’ll hear",[312,540,541,547,553,559,565,571,577,583],{},[315,542,543,546],{},[211,544,545],{},"Workplace search."," An index across the apps the company already uses, so people stop hunting for files.",[315,548,549,552],{},[211,550,551],{},"Permission mirroring."," If a document is restricted in Drive, Glean should not surface it in a chat answer. That is the product.",[315,554,555,558],{},[211,556,557],{},"Knowledge graph (Glean)."," A map of people, documents, and activity for retrieval. Not the same as Nimbus’s Lifecycle Graph.",[315,560,561,564],{},[211,562,563],{},"Crawl."," The programme of connecting apps, mapping identity, and keeping the index fresh. Why IT sponsors Glean. Why it takes time.",[315,566,567,570],{},[211,568,569],{},"Workstream."," In Nimbus, a shared workspace for one job — not a search result.",[315,572,573,576],{},[211,574,575],{},"Write-back."," Changing a live system. Search products add agents on top of the index. Nimbus treats the write as a first-class release.",[315,578,579,582],{},[211,580,581],{},"Lifecycle Graph."," A causal record of AI work: what ran, who approved it, what changed. Not an index of every file an employee ever touched.",[315,584,585,588],{},[211,586,587],{},"Copilot."," Microsoft’s assistant inside Office. Glean searches across many apps, including Microsoft. Neither is a governed execution layer.",[204,590,592],{"id":591},"why-the-difference-matters","Why the difference matters",[189,594,595,596,600,601,605],{},"If you have ever watched a naive chatbot answer from a restricted Drive folder, you understand why Glean exists. Permission mirroring is not a slogan. It is the product: if a document is restricted in Drive, Glean should not surface it in a chat answer. ",[198,597,599],{"href":598},"https:\u002F\u002Fcsrc.nist.gov\u002Fpubs\u002Fsp\u002F800\u002F53\u002Fr5\u002Fupd1\u002Ffinal","NIST SP 800-53 Rev. 5"," Access Control (the AC family) is the control-catalogue reason: the system must enforce who may see what. ",[198,602,604],{"href":603},"https:\u002F\u002Fwww.glean.com\u002Fsecurity","Glean’s security page"," describes that enforcement as a product: permission mirroring, encryption, and compliance claims. Glean is search that does not leak. It is not an AI risk-management framework, and it does not, by itself, put a named signer on a customer-record write.",[189,607,608,609,612],{},"Glean’s primary object is a document, message, ticket, or person. Nimbus’s primary object is a job, an agent team, a release. Glean’s success metric is time-to-answer. Nimbus’s is time-to-signed-off outcome. Glean’s write path is secondary — agents on top of the index. Nimbus’s write path is first-class: ",[198,610,611],{"href":290},"read-only until you open it",", then a person on the change.",[189,614,615],{},"Ask whether agents are a feature of search, or search is a feature of agents. Glean is the first. Nimbus is the second. Assistants on a permission-aware index are a reasonable next step for a search company. They still orbit findability. A workstream does not orbit a search result. It orbits a finish line, a budget, and a write policy.",[189,617,618],{},"The crawl is why IT sponsors Glean and why it takes time: connecting apps, mapping identity, keeping the index fresh, proving permission QA. That is the right model for a 20,000-person corpus. It is the wrong model if you needed a signed CRM update this quarter and were told to wait until 2019’s files had finished indexing. Nimbus assumes you can already find the policy, or that you will attach the systems this job needs. It does not wait for a company-wide crawl of every historical file.",[189,620,621],{},"The two “graphs” are the usual confusion. Glean’s knowledge graph is mostly an index of people and content for retrieval. Nimbus’s Lifecycle Graph is an operational ledger of work, agents, and releases. Collapsing the terms in a vendor meeting is how you buy the wrong one. You can run both graphs. You cannot substitute one for the other.",[189,623,624],{},"Role by role, the fork is practical. A CIO running a knowledge programme wants a universal search bar across 100+ apps, with permission mirroring as the non-negotiable. That is Glean. A Head of RevOps wants an agent to propose opportunity updates with a named signer — search will find the deck; it will not be the release. Security cares that Glean does not leak restricted files, and still cares who may change Salesforce. Knowledge workers want time-to-answer. Operators want time-to-signed-off outcome. Legal will not accept “the assistant found it” as the story of why a customer field moved.",[189,626,627],{},"A healthy split: Glean for findability across the sprawling workplace; Nimbus for execution on the jobs that mutate systems of record. Do not stretch Glean into an operating layer because it added agents. Do not stretch Nimbus into a crawl of every Confluence page because Perception can answer questions about the record.",[204,629,631],{"id":630},"when-glean-is-a-better-fit","When Glean is a better fit",[189,633,634,635,639],{},"Choose Glean when the corpus is huge, permissions ",[636,637,638],"em",{},"are"," the product, and you need a universal search bar across 100+ apps before you invent agent teams. Choose Glean also if the executive sponsor is the CIO’s knowledge programme rather than a line-of-business operating model.",[189,641,642],{},"Deployment is a crawl programme: identity mapping, permission QA, often with Glean or partner engineers in the building. That is the right model for a 20,000-person corpus. Do not treat that implementation cost as a reason Glean is “worse.” It is the cost of doing permission-aware search well.",[189,644,645],{},"Do not choose Glean as a stealth agent operating layer. You will spend a year on crawl quality and still lack workstreams, specialist teams, and change control on writes.",[189,647,648],{},"Some organisations will run Glean for findability and Nimbus for execution. That is a coherent architecture if you do not pretend one graph is the other. Keep Glean as the place people find the deck. Put the job the deck implies — update the customer record, file the next step, get a person to sign — in a Nimbus workstream. Connectors in Nimbus are not a substitute for Glean-scale historical crawl. A Glean assistant is not a substitute for a quoted write.",[204,650,652],{"id":651},"how-this-shows-up-in-nimbus","How this shows up in Nimbus",[189,654,655],{},"Search exists inside Nimbus as a way to ask about the record, your playbooks, and the systems you attached. It is not a company-wide crawl of 2019.",[189,657,658,659,663,664,668,669,672,673,677],{},"The ",[198,660,662],{"href":661},"\u002Fproduct\u002Fwiki\u002F","wiki"," is what the company asserts. ",[198,665,667],{"href":666},"\u002Fintegrations\u002F","Connectors"," are scoped per ",[198,670,671],{"href":416},"workstream",". Agents do not get “search everything this user could theoretically open” as the default tool. They get the systems you attached, in the mode you allowed (usually read), until a human releases a write. ",[198,674,676],{"href":675},"\u002Fproduct\u002Fperception\u002F","Perception"," is ordinary language over that scoped world, not a second Glean.",[189,679,680,681,685],{},"You can ",[198,682,684],{"href":683},"\u002Foverview\u002F","set Nimbus up yourselves",": a workspace, wiki, connectors, a first workstream. You do not wait for an index of every historical file to finish.",[189,687,688,689,691,692,695],{},"See ",[198,690,39],{"href":421}," and the ",[198,693,23],{"href":694},"\u002Fproduct\u002Flifecycle-graph\u002F",".",[204,697,699],{"id":698},"questions-people-actually-ask","Questions people actually ask",[701,702,704],"h3",{"id":703},"does-glean-require-more-implementation-than-nimbus","Does Glean require more implementation than Nimbus?",[189,706,707,708,710],{},"Usually yes. Permission-aware crawl at enterprise scale is a programme. Nimbus is self-service for most buyers: you are not waiting on vendor engineers sitting with your team for months to get collaboration, sign-off, and a causal record. That is not a claim that Glean is slow for no reason. Crawl and permission QA ",[636,709,638],{}," the work.",[701,712,714],{"id":713},"does-nimbus-replace-glean","Does Nimbus replace Glean?",[189,716,717],{},"Only if your Glean usage is a thin Q&A bot on a small corpus. It does not replace Glean as permission-aware enterprise search across a sprawling workplace. If you need the latter, keep a search product.",[701,719,721],{"id":720},"both-mention-knowledge-graphs-are-they-the-same","Both mention knowledge graphs. Are they the same?",[189,723,724],{},"No. Glean’s graph is mostly an index of people and content for retrieval. Nimbus’s Lifecycle Graph is an operational ledger of work, agents, and releases. Collapsing the terms in a vendor meeting is how you buy the wrong one.",[701,726,728],{"id":727},"can-nimbus-search-drive-and-slack","Can Nimbus search Drive and Slack?",[189,730,731],{},"Connectors bring live systems into agent context and into questions you ask about the record. That is targeted operational retrieval, not a Glean-scale crawl of every historical file. If you need the latter, keep a search product.",[701,733,735],{"id":734},"glean-vs-copilot-vs-nimbus","Glean vs Copilot vs Nimbus?",[189,737,738,739,695],{},"Copilot is productivity inside Microsoft that respects Microsoft permissions. Glean is search across many apps (including Microsoft) that respects source permissions. Nimbus is governed execution. A Microsoft-first company may still need Glean if SharePoint search is not enough, and may still need Nimbus if Copilot Studio is not an operating layer. See ",[198,740,742],{"href":741},"\u002Fblog\u002Fnimbus-vs-microsoft-copilot\u002F","Nimbus vs Microsoft Copilot",[701,744,746],{"id":745},"can-we-run-glean-and-nimbus-together","Can we run Glean and Nimbus together?",[189,748,749,750,753,754,757],{},"Yes. That is the intended coexistence for organisations that have both a findability problem and an execution problem. Do not give Glean agents production write credentials because the index is permission-aware. Permission to ",[636,751,752],{},"see"," is not permission to ",[636,755,756],{},"change",". Route mutations through Nimbus governance.",[701,759,761],{"id":760},"who-should-own-which-product","Who should own which product?",[189,763,764],{},"The CIO’s knowledge programme typically owns Glean: identity mapping, crawl, permission QA. Line operators own Nimbus workstreams because they own the systems of record those jobs touch. Security reviews both — leak prevention on the search side, write gates on the execution side.",[701,766,768],{"id":767},"if-glean-has-agents-now-why-add-nimbus","If Glean has agents now, why add Nimbus?",[189,770,771],{},"Because agents on an index are still a feature of search. Time-to-answer is not time-to-signed-off outcome. If the job is to change a customer record with a person on the write, you need a workstream, a wiki clause, and a graph — not another way to find the deck.",[204,773,775],{"id":774},"related-reading","Related reading",[189,777,778,782,783,787,788,695],{},[198,779,781],{"href":780},"\u002Fblog\u002Fwhat-is-enterprise-rag\u002F","What is enterprise RAG",", ",[198,784,786],{"href":785},"\u002Fblog\u002Fwhat-is-a-lifecycle-graph\u002F","What is a lifecycle graph",", and ",[198,789,742],{"href":741},[204,791,793],{"id":792},"sources","Sources",[312,795,796,800,805,810],{},[315,797,798],{},[198,799,519],{"href":518},[315,801,802],{},[198,803,804],{"href":532},"Glean product",[315,806,807],{},[198,808,809],{"href":603},"Glean security",[315,811,812],{},[198,813,814],{"href":598},"NIST SP 800-53 Rev. 5 (Access Control)",{"title":169,"searchDepth":170,"depth":170,"links":816},[817,818,819,820,821,832,833],{"id":537,"depth":170,"text":538},{"id":591,"depth":170,"text":592},{"id":630,"depth":170,"text":631},{"id":651,"depth":170,"text":652},{"id":698,"depth":170,"text":699,"children":822},[823,825,826,827,828,829,830,831],{"id":703,"depth":824,"text":704},3,{"id":713,"depth":824,"text":714},{"id":720,"depth":824,"text":721},{"id":727,"depth":824,"text":728},{"id":734,"depth":824,"text":735},{"id":745,"depth":824,"text":746},{"id":760,"depth":824,"text":761},{"id":767,"depth":824,"text":768},{"id":774,"depth":170,"text":775},{"id":792,"depth":170,"text":793},"Glean is permission-aware workplace search; Nimbus is the place an agent can change a customer record — with a person signing off.",{"eyebrow":464,"title":836},"Search versus a signed change",[838,841,844],{"question":839,"answer":840},"What is Glean for?","Permission-aware workplace search. It finds the file the person is allowed to see.",{"question":842,"answer":843},"What is Nimbus for beside search?","The job the file implies: changing a customer record, with a person signing off.",{"question":845,"answer":846},"Can search replace the write path?","No. Finding the deck and being allowed to act on it are different controls. Many companies need both.","\u002Fblog\u002Fnimbus-vs-glean",{"title":507,"description":834},"comparisons","blog\u002Fnimbus-vs-glean",[849,852,853,854,855],"glean","enterprise-search","knowledge-graph","agents","ZPznjefdGfilTWFfVNBL098K-K1ns95GH7UNKbmWFkU",{"id":858,"title":859,"archived":163,"authors":860,"badge":862,"body":863,"date":1506,"definedTerm":164,"department":164,"description":1507,"extension":172,"eyebrow":164,"faqHeader":1508,"faqs":1510,"footerBand":164,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":1520,"relatedHeading":164,"seo":1521,"series":478,"sitemap":131,"status":164,"stem":1522,"subhead":164,"tags":1523,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":1527},"content\u002Fblog\u002Fwhat-is-harness-engineering.md","What is Harness Engineering",[861],{"name":182,"to":183},{"label":185},{"type":166,"value":864,"toc":1488},[865,870,896,899,911,928,930,1016,1022,1026,1034,1037,1057,1072,1086,1089,1093,1103,1122,1135,1149,1164,1178,1181,1185,1191,1197,1210,1221,1231,1235,1241,1247,1253,1259,1273,1276,1289,1293,1296,1311,1313,1317,1320,1324,1332,1336,1343,1347,1354,1358,1376,1380,1397,1399,1408,1410],[189,866,867,869],{},[211,868,299],{}," is the practice of treating the runtime around a model as the system you design, test, and tighten — so that when an agent fails, you change the environment, not only the prompt.",[189,871,872,876,877,880,881,885,886,890,891,895],{},[198,873,875],{"href":874},"https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flangchain\u002Fagents","LangChain"," defines the object: Agent = Model + Harness. Harness engineering is what you ",[636,878,879],{},"do"," to that object. ",[198,882,884],{"href":883},"https:\u002F\u002Faddyosmani.com\u002Fblog\u002Fagent-harness-engineering\u002F","Addy Osmani"," puts the payoff in one line: a decent model with a great harness beats a great model with a bad harness. ",[198,887,889],{"href":888},"https:\u002F\u002Fmartinfowler.com\u002Farticles\u002Fharness-engineering.html","Birgitta Böckeler’s article on martinfowler.com"," is the user’s-side map for coding agents: guides in, sensors back. Thoughtworks then asked the organisational question: ",[198,892,894],{"href":893},"https:\u002F\u002Fwww.thoughtworks.com\u002Finsights\u002Fpodcasts\u002Ftechnology-podcasts\u002Fscaling-the-enterprise-harness--how-to-achieve-ai-agent-controll","how you scale that harness across a company"," without turning every team into a snowflake of markdown files.",[189,897,898],{},"The practice showed up because prompt engineering hit a wall that everyone could see and nobody wanted to name. You can spend a week on a system prompt. The agent will still skip the test, ignore the style guide, or report the task finished. The model is non-deterministic. The prompt is interpreted, not executed. The harness is code. That is the whole discipline.",[189,900,901,902,906,907,695],{},"The companion discipline for work that already has a checklist is ",[198,903,905],{"href":904},"\u002Fblog\u002Fwhat-is-loop-engineering\u002F","loop engineering",". The cut between the two is ",[198,908,910],{"href":909},"\u002Fblog\u002Floop-engineering-vs-harness-engineering\u002F","loop engineering vs harness engineering",[189,912,913,914,918,919,923,924,927],{},"This is not a replacement for ",[198,915,917],{"href":916},"https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fbuilding-effective-agents","prompt"," or ",[198,920,922],{"href":921},"https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Feffective-harnesses-for-long-running-agents","context"," work. Those live ",[636,925,926],{},"inside"," the harness. Harness engineering is the wider loop: every failure becomes a rule, a hook, a test, or a denied tool — the ratchet Osmani describes — so the same mistake is cheaper the second time and impossible the tenth.",[204,929,538],{"id":537},[312,931,932,938,961,972,983,989,995,1006],{},[315,933,934,937],{},[211,935,936],{},"Ratchet."," A failure updates the harness. Commented-out test → pre-commit hook and a reviewer check. Invented CRM field → schema quote and a Hard gate. If you only fix the artefact by hand, you did operations. You did not do harness engineering.",[315,939,940,943,944,947,948,782,952,955,956,960],{},[211,941,942],{},"Guides (feed-forward)."," Context the agent gets ",[636,945,946],{},"before"," it acts: ",[949,950,951],"code",{},"AGENTS.md",[949,953,954],{},"CLAUDE.md",", architecture notes, ",[198,957,959],{"href":958},"\u002Fblog\u002Fwhat-is-a-company-wiki-for-ai-agents\u002F","company wiki"," playbooks. Böckeler’s term. Advice. Necessary. Not a stop.",[315,962,963,966,967,971],{},[211,964,965],{},"Sensors (feedback)."," Deterministic checks (compiler, linter, schema, pytest) and inferential checks (LLM reviewer, specialist critic). ",[198,968,970],{"href":969},"https:\u002F\u002Fwww.thoughtworks.com\u002Fen-us\u002Finsights\u002Fblog\u002Fgenerative-ai\u002Fharness-engineering-agent-feedback-exploring-ai-coding-sensors","Thoughtworks on sensors",". Without sensors the agent grades its own homework.",[315,973,974,977,978,982],{},[211,975,976],{},"Hooks."," Lifecycle intercepts that always run. ",[198,979,981],{"href":980},"https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fhooks","Claude Code"," can block a tool with exit code 2. LangChain middleware is the library form. A guide that says “never run rm -rf” is not a hook.",[315,984,985,988],{},[211,986,987],{},"Harness-as-a-service."," Osmani’s HaaS framing: you used to build on completion APIs; you now build on runtime APIs (Claude Agent SDK, Codex SDK, OpenAI Agents SDK) that already own the loop, sandbox, and hooks. You configure; you do not re-implement ReAct.",[315,990,991,994],{},[211,992,993],{},"Skill issue."," HumanLayer’s joke with a serious edge: most agent failures are configuration. Blaming the model first is how teams wait for the next release instead of adding a sensor.",[315,996,997,1000,1001,1005],{},[211,998,999],{},"Organizational harness."," ",[198,1002,1004],{"href":1003},"https:\u002F\u002Fwww.thoughtworks.com\u002Finsights\u002Farticles\u002Foperating-system-enterprise-ai","Thoughtworks’ enterprise layer",": who may build which harness, how exceptions work, identity, economics, learning. The gap after builder harnesses (Claude Code, Cursor) and user harnesses (guides and sensors on a repo).",[315,1007,1008,1011,1012,695],{},[211,1009,1010],{},"Eval loop."," Independent verification that does not take the model’s word. SWE-bench and Terminal-Bench for code. Quoted payload vs executed write for operations. See ",[198,1013,1015],{"href":1014},"\u002Fblog\u002Feval-loops-for-enterprise-agent-harnesses\u002F","eval loops for enterprise agent harnesses",[189,1017,1018,1019,1021],{},"In Nimbus, harness engineering for operators looks like: wiki revisions as guides, connector scopes as tool policy, Soft \u002F Hard \u002F Critical as hooks on the write plane, and the ",[198,1020,23],{"href":694}," as the sensor log you can query. That is the same discipline as adding a linter. The artefact is a signed CRM change rather than a green CI job.",[204,1023,1025],{"id":1024},"why-you-should-care","Why you should care",[189,1027,1028,1029,1033],{},"If you only tune prompts, every incident is a conversation. If you engineer the harness, incidents become tests. ",[198,1030,1032],{"href":1031},"https:\u002F\u002Fwww.nist.gov\u002Fitl\u002Fai-risk-management-framework","NIST’s AI RMF"," Measure and Manage steps assume you can change controls after you observe harm. A prompt history is not a control change. A hook that now fires is.",[189,1035,1036],{},"It affects you if:",[312,1038,1039,1042,1048,1051,1054],{},[315,1040,1041],{},"agents already write code or propose writes to live systems",[315,1043,1044,1045,1047],{},"two teams have two ",[949,1046,954],{}," files that contradict Legal",[315,1049,1050],{},"you cannot say which harness version ran last Tuesday",[315,1052,1053],{},"spend is “the model was verbose” rather than “the loop had no budget”",[315,1055,1056],{},"auditors ask who could have stopped the action, and the answer is “the model was supposed to ask”",[189,1058,1059,1062,1063,1066,1067,1071],{},[198,1060,1061],{"href":262},"McKinsey’s 2025 State of AI"," keeps showing usage without redesign. Harness engineering ",[636,1064,1065],{},"is"," the redesign for agentic work: not a new department named AI, a runtime with stops. ",[198,1068,1070],{"href":1069},"https:\u002F\u002Fwww.iso.org\u002Fstandard\u002F42001","ISO\u002FIEC 42001"," wants named AI actors and documented operational controls. You cannot name actors if every operator’s personal GPT is a different harness.",[189,1073,1074,1075,1077,1078,1080,1081,1085],{},"Coding teams already have half of this and do not always notice. Types, tests, CI, CODEOWNERS — Böckeler’s point is that those ",[636,1076,638],{}," sensors. The work is to point the agent at them and to add the ones that are missing (architecture fitness, behaviour: did it do what was asked). Operations teams usually have the human version — maker-checker, SoD, SOX — and have not yet wired those instincts into a loop. ",[198,1079,291],{"href":290}," is that wiring. ",[198,1082,1084],{"href":1083},"\u002Fblog\u002Fwhat-is-human-in-the-loop-ai\u002F","Human-in-the-loop approval architecture"," is the state machine.",[189,1087,1088],{},"Air Canada’s chatbot and the sanctioned ChatGPT brief are what happens when generation reaches a system of record with no ratchet. The fix is not a sterner system prompt. The fix is a harness that cannot emit a commitment or a filing until a named person has seen the artefact.",[204,1090,1092],{"id":1091},"the-practice-not-the-slogan","The practice, not the slogan",[189,1094,1095,1098,1099,1102],{},[211,1096,1097],{},"1. Work backward from the behaviour you cannot afford to miss once."," Inner loop: never merge without tests; never ",[949,1100,1101],{},"git push --force"," to main. Outer loop: never PATCH Opportunity.Amount without a Hard quote. Write those as hooks, not as paragraphs.",[189,1104,1105,1000,1108,1112,1113,1115,1116,1118,1119,1121],{},[211,1106,1107],{},"2. Separate advice from invariants.",[198,1109,1111],{"href":1110},"https:\u002F\u002Fclaude.com\u002Fblog\u002Fsteering-claude-code-skills-hooks-rules-subagents-and-more","Anthropic’s steering note for Claude Code"," is unusually clear: ",[949,1114,954],{}," is always-on context; hooks fire on events and can block. If a rule must hold when the model is tired, it graduates from markdown to a hook. Enterprise equivalent: playbooks in the ",[198,1117,662],{"href":661}," versus the interceptor in ",[198,1120,422],{"href":421},". If they conflict, the interceptor wins.",[189,1123,1124,1127,1128,1131,1132,695],{},[211,1125,1126],{},"3. Put verification outside the generator."," Anthropic’s long-running harness uses incremental commits and end-to-end checks so later sessions cannot declare victory by vibes. Coding sensors: pytest, tsc, lint. Enterprise sensors: schema of the quote, identity of the signer, hash of the payload that executed, connector grant still attached. The model may ",[636,1129,1130],{},"propose"," that it is done. The harness ",[636,1133,1134],{},"decides",[189,1136,1137,1140,1141,1143,1144,1148],{},[211,1138,1139],{},"4. Version the harness."," Which ",[949,1142,951],{},", which wiki revision, which team contract, which approval tier ran. ",[198,1145,1147],{"href":1146},"\u002Fblog\u002Fwhat-is-an-agentic-workflow\u002F","What is an agentic workflow"," already treats workflow version as an input. Harness engineering extends that to tools and gates. Hot-patching production prompts without a change record is how Tuesday becomes unexplained.",[189,1150,1151,1154,1155,418,1159,1163],{},[211,1152,1153],{},"5. Budget the loop."," Max steps and a cost cap that do not depend on the model’s judgement. Seat licences hide this; metered work makes it visible. See ",[198,1156,1158],{"href":1157},"\u002Fblog\u002Fwhat-is-model-routing\u002F","What is model routing",[198,1160,1162],{"href":1161},"\u002Fblog\u002Fwhat-is-ai-token-economics\u002F","what is AI token economics",". Always-flagship is not careful. It is an unengineered harness.",[189,1165,1166,1169,1170,1173,1174,1177],{},[211,1167,1168],{},"6. Do not fork a harness per person."," User-owned bots are how mandates drift. Org-level ",[198,1171,1172],{"href":200},"agent teams"," assigned to ",[198,1175,417],{"href":1176},"\u002Fblog\u002Fwhat-is-an-ai-workstream\u002F"," is the enterprise form of “one CI config per repo, not one per intern.” Thoughtworks’ organisational harness is this ownership question: who is allowed to add a write tool.",[189,1179,1180],{},"Nimbus encodes several of these as product defaults — read-only connectors until you enable write, quoted payloads, graph on the way out — because operators should not have to re-implement ReAct to get a ratchet. You can still fail the practice: a wiki that is never updated, a Critical tier nobody uses, a graph nobody queries. The product is not the practice. The practice is whether last month’s incident produced a new gate.",[204,1182,1184],{"id":1183},"how-this-differs-from-adjacent-crafts","How this differs from adjacent crafts",[189,1186,1187,1190],{},[211,1188,1189],{},"Prompt engineering"," improves a single call. Necessary for tone, tool descriptions, and “what good looks like.” Insufficient for tool dispatch, identity, and replay.",[189,1192,1193,1196],{},[211,1194,1195],{},"Context engineering"," governs what the model sees this turn: compaction, retrieval, files. Anthropic’s initializer agent is context engineering in a harness. It is not permission to write NetSuite.",[189,1198,1199,1202,1203,1206,1207,695],{},[211,1200,1201],{},"Platform \u002F DevOps."," CI, sandboxes, secrets. Harness engineering ",[636,1204,1205],{},"reuses"," thosensors and execution environments. It adds the fact that the component in the loop is non-deterministic, so “the job returned zero” is not enough: you need independent tests of the ",[636,1208,1209],{},"claim",[189,1211,1212,1215,1216,1220],{},[211,1213,1214],{},"Governance-as-PDF."," Policy. Harness engineering is whether the tool call is reachable. ",[198,1217,1219],{"href":1218},"\u002Fblog\u002Fwhat-is-ai-governance\u002F","What is AI governance"," is the buying cousin.",[189,1222,1223,1226,1227,695],{},[211,1224,1225],{},"Framework assembly."," Writing LangGraph nodes is building a harness in code. Harness engineering is the ongoing discipline after the graph exists: sensors, ownership, eval. See ",[198,1228,1230],{"href":1229},"\u002Fblog\u002Fagent-harness-vs-agent-framework\u002F","agent harness vs agent framework",[204,1232,1234],{"id":1233},"four-layers-one-ratchet","Four layers, one ratchet",[189,1236,1237,1240],{},[198,1238,1239],{"href":1003},"Thoughtworks’ July 2026 essay"," is the organisational map most engineering blogs skip. They split enterprise AI into four harness layers. Most companies have built one, maybe two. The gap is not a smarter model.",[189,1242,1243,1246],{},[211,1244,1245],{},"Layer 1 — the model."," Substrate. Choice still matters for cost, residency, and task fit. It is the wrong unit of analysis for a programme. Teams that prototype, hit a failure, and buy the next flagship are looping on layer 1.",[189,1248,1249,1252],{},[211,1250,1251],{},"Layer 2 — the builder harness."," Frameworks, tool access, memory, where inference runs. LangChain, Claude Agent SDK, AIP-style platforms, Nimbus’s hosted loop. Without layer 3, every team invents naming and review. Without layer 4, nobody owns failure.",[189,1254,1255,1258],{},[211,1256,1257],{},"Layer 3 — the user harness."," Guides and sensors on the job. Böckeler’s taxonomy lives here. Thoughtworks add a useful matrix: feed-forward vs feedback, crossed with deterministic vs probabilistic. Deterministic feed-forward is a whitelist and a spend ceiling — cheap, auditable, default. Probabilistic feed-forward is a runbook retrieved at decision time. Deterministic feedback is schema validation after the act. Probabilistic feedback is an eval model on a rubric — expensive, use on critical paths only. A guide with no sensor is theatre.",[189,1260,1261,1264,1265,1268,1269,1272],{},[211,1262,1263],{},"Layer 4 — the organisational harness."," Who may grant which autonomy, escalation, accountability when layers 1–3 all “worked” and the company still took harm. Thoughtworks’ public cases: Parloa, where versioned rules, skills, commands, and helpers lived ",[636,1266,1267],{},"in the repo"," (they report p95 latency drops they attribute to harness architecture, not a new model); Morgan Stanley, where hygiene and CVE triage used a ",[636,1270,1271],{},"delegation tier"," instead of a yes\u002Fno “do we trust the agent.” You do not need those vendors to accept the lesson: governance that is not versioned next to the work decays.",[189,1274,1275],{},"Harness engineering is the steering loop across those layers. Sensor data reveals a miss. Guides update. Hooks graduate. Templates change. The next job is cheaper. An organisation with that loop has a compounding harness. An organisation without one has markdown that rots while models improve.",[189,1277,1278,1279,1281,1282,1284,1285,1288],{},"A concrete week: Monday the agent comments out a flaky test (inner) or proposes Amount without CloseDate (outer). Tuesday a human fixes the artefact. That is operations. Harness engineering is Tuesday’s hook or schema sensor, Wednesday’s wiki or ",[949,1280,951],{}," line, Thursday’s replay that the new control fired. Friday you run the job ten times and count refuses. Nimbus makes the outer version of that week a product surface — ",[198,1283,422],{"href":421}," queues, ",[198,1286,1287],{"href":694},"graph"," export — so operators are not waiting on a platform sprint to add the sensor. You still have to look at the refuse count. A product without a steering cadence is layer 2 with a nicer UI.",[204,1290,1292],{"id":1291},"what-good-looks-like","What good looks like",[189,1294,1295],{},"Good: a named owner for the harness (not “AI working group”), a cadence that turns incidents into controls, deterministic gates on knowable bounds, inferential checks only where judgement is required, versioned guides, exportable traces. Failure: a new system prompt after every incident; sensors the agent can skip; no owner; SWE-bench as the only score for a CRM job; layer 4 as a PDF.",[189,1297,1298,1301,1302,1306,1307,1310],{},[198,1299,1300],{"href":883},"Osmani’s ratchet"," and Thoughtworks’ steering loop are the same instinct. ",[198,1303,1305],{"href":1304},"\u002Fblog\u002Fhow-to-evaluate-an-agent-harness\u002F","How to evaluate an agent harness"," asks whether your vendor lets you ",[636,1308,1309],{},"run"," that instinct.",[204,1312,699],{"id":698},[701,1314,1316],{"id":1315},"who-coined-harness-engineering","Who coined “harness engineering”?",[189,1318,1319],{},"The phrase circulated in early 2026 across OpenAI engineering notes (Ryan Lopopolo’s line of work), LangChain’s anatomy posts, Böckeler at Thoughtworks, and Osmani’s synthesis. Treat it as a shared 2026 name for work teams were already doing, not a trademarked method.",[701,1321,1323],{"id":1322},"is-this-only-for-coding-agents","Is this only for coding agents?",[189,1325,1326,1327,1331],{},"The literature is densest there because tests already exist. The discipline is the same for RevOps and Finance: independent sensors, fail-closed writes, versioned context. An ",[198,1328,1330],{"href":1329},"\u002Fblog\u002Fwhat-is-an-enterprise-agent-harness\u002F","enterprise agent harness"," is that application.",[701,1333,1335],{"id":1334},"do-we-wait-for-a-better-model-instead","Do we wait for a better model instead?",[189,1337,1338,1339,1342],{},"You still buy better models. You do not pause the ratchet. Stronger models attempt larger jobs and fail in new ways. Anthropic’s long-running work exists ",[636,1340,1341],{},"because"," models got good enough to outlast a window.",[701,1344,1346],{"id":1345},"how-do-we-start-this-quarter","How do we start this quarter?",[189,1348,1349,1350,1353],{},"Pick one job that already has a finish line. Encode guides. Attach one deterministic sensor. Add one hook that can refuse. Run it ten times. Every failure updates the harness. That is a ",[198,1351,1352],{"href":1304},"proof of value"," for the practice, not a chat demo.",[701,1355,1357],{"id":1356},"how-does-nimbus-fit-without-becoming-the-definition","How does Nimbus fit without becoming the definition?",[189,1359,1360,1361,782,1363,782,1367,782,1370,1372,1373,1375],{},"Nimbus is an outer harness you can hire: ",[198,1362,417],{"href":416},[198,1364,1366],{"href":1365},"\u002Fproduct\u002Fagent-teams\u002F","teams",[198,1368,1369],{"href":421},"gates",[198,1371,1287],{"href":694},". Score it the way you score Claude Code: can you add a sensor, refuse a write, and replay who signed. ",[198,1374,1305],{"href":1304}," is the sheet.",[701,1377,1379],{"id":1378},"what-should-i-read-next","What should I read next?",[189,1381,1382,1386,1387,1391,1392,1396],{},[198,1383,1385],{"href":1384},"\u002Fblog\u002Finner-vs-outer-agent-harness\u002F","Inner vs outer agent harness"," for the repo\u002Fcompany cut. ",[198,1388,1390],{"href":1389},"\u002Fblog\u002Fagent-harness-architecture\u002F","Agent harness architecture"," for the parts. ",[198,1393,1395],{"href":1394},"\u002Fblog\u002Fwhat-is-an-agent-harness\u002F","What is an agent harness"," if you still need the noun.",[204,1398,775],{"id":774},[189,1400,1401,418,1405,695],{},[198,1402,1404],{"href":1403},"\u002Fblog\u002Fwhat-is-an-enterprise-ai-operating-system\u002F","What is an enterprise AI operating system",[198,1406,1407],{"href":290},"How to solve AI that cannot write back safely",[204,1409,793],{"id":792},[312,1411,1412,1417,1423,1428,1433,1438,1443,1448,1454,1459,1464,1469,1474,1479,1484],{},[315,1413,1414],{},[198,1415,1416],{"href":874},"LangChain, Agents",[315,1418,1419],{},[198,1420,1422],{"href":1421},"https:\u002F\u002Fwww.langchain.com\u002Fblog\u002Fthe-anatomy-of-an-agent-harness","LangChain, The anatomy of an agent harness",[315,1424,1425],{},[198,1426,1427],{"href":888},"Böckeler, Harness engineering for coding agent users",[315,1429,1430],{},[198,1431,1432],{"href":969},"Thoughtworks, Harness engineering and agent feedback",[315,1434,1435],{},[198,1436,1437],{"href":893},"Thoughtworks, Scaling the enterprise harness (podcast)",[315,1439,1440],{},[198,1441,1442],{"href":1003},"Thoughtworks, The operating system for enterprise AI",[315,1444,1445],{},[198,1446,1447],{"href":883},"Addy Osmani, Agent harness engineering",[315,1449,1450],{},[198,1451,1453],{"href":1452},"https:\u002F\u002Fwww.oreilly.com\u002Fradar\u002Fagent-harness-engineering\u002F","O’Reilly Radar, Agent harness engineering",[315,1455,1456],{},[198,1457,1458],{"href":916},"Anthropic, Building effective agents",[315,1460,1461],{},[198,1462,1463],{"href":921},"Anthropic, Effective harnesses for long-running agents",[315,1465,1466],{},[198,1467,1468],{"href":1110},"Anthropic, Steering Claude Code",[315,1470,1471],{},[198,1472,1473],{"href":980},"Claude Code, Hooks",[315,1475,1476],{},[198,1477,1478],{"href":262},"McKinsey, The state of AI in 2025",[315,1480,1481],{},[198,1482,1483],{"href":1031},"NIST AI RMF",[315,1485,1486],{},[198,1487,1070],{"href":1069},{"title":169,"searchDepth":170,"depth":170,"links":1489},[1490,1491,1492,1493,1494,1495,1496,1504,1505],{"id":537,"depth":170,"text":538},{"id":1024,"depth":170,"text":1025},{"id":1091,"depth":170,"text":1092},{"id":1183,"depth":170,"text":1184},{"id":1233,"depth":170,"text":1234},{"id":1291,"depth":170,"text":1292},{"id":698,"depth":170,"text":699,"children":1497},[1498,1499,1500,1501,1502,1503],{"id":1315,"depth":824,"text":1316},{"id":1322,"depth":824,"text":1323},{"id":1334,"depth":824,"text":1335},{"id":1345,"depth":824,"text":1346},{"id":1356,"depth":824,"text":1357},{"id":1378,"depth":824,"text":1379},{"id":774,"depth":170,"text":775},{"id":792,"depth":170,"text":793},"2026-08-24","Harness engineering fixes the environment when an agent fails — tools, hooks, tests, and stops — instead of rewriting the prompt.",{"eyebrow":464,"title":1509},"Change the environment, not only the prompt",[1511,1514,1517],{"question":1512,"answer":1513},"What is harness engineering?","The practice of fixing the environment when an agent fails: tools, hooks, tests, and stops, instead of rewriting the prompt and hoping.",{"question":1515,"answer":1516},"Is it the same as loop engineering?","No. Harness engineering is the runtime around a model. Loop engineering compiles the known path for work that should not need a model. The difference is in loop engineering vs harness engineering.",{"question":1518,"answer":1519},"What is the unit of improvement?","A hook, a test, or a denied tool that makes the same failure harder next time. A better prompt is not that unit.","\u002Fblog\u002Fwhat-is-harness-engineering",{"title":859,"description":1507},"blog\u002Fwhat-is-harness-engineering",[478,1524,1525,1526],"harness-engineering","agent-harness","evaluation","yqpYG2v1Q5Y8Ha8LFLJQGDWhGB57dvh8fQSoMbyWPsY",{"enabled":163,"message":1529,"linkLabel":79,"linkHref":80,"id":1530,"title":1531,"archived":163,"authors":164,"badge":164,"body":1532,"date":164,"definedTerm":164,"department":164,"description":169,"extension":172,"eyebrow":164,"faqHeader":164,"faqs":164,"footerBand":164,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":1536,"relatedHeading":164,"seo":1537,"series":164,"sitemap":163,"status":164,"stem":1538,"subhead":164,"tags":164,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":1539},"We're hiring! Join the team building the Sentient Enterprise.","content\u002Fshared\u002Fhiring.md","Hiring banner",{"type":166,"value":1533,"toc":1534},[],{"title":169,"searchDepth":170,"depth":170,"links":1535},[],"\u002Fshared\u002Fhiring",{"title":1531,"description":169},"shared\u002Fhiring","1zs3boivKda1e-b-hAyuNcmZSKjZUAXmecnwHVgcHzk",{"fold":1541,"id":1545,"title":1546,"archived":163,"authors":164,"badge":164,"body":1547,"date":164,"definedTerm":164,"department":164,"description":169,"extension":172,"eyebrow":164,"faqHeader":164,"faqs":164,"footerBand":1551,"headline":164,"image":164,"industry":164,"jobType":164,"listed":131,"location":164,"navigation":131,"openRoles":164,"pageLayout":164,"path":1555,"relatedHeading":164,"seo":1556,"series":164,"sitemap":163,"status":164,"stem":1557,"subhead":164,"tags":164,"video":164,"whyJoin":164,"workplaceType":164,"__hash__":1558},{"headline":1542,"description":1543,"primaryLabel":8,"primaryTo":1544,"secondaryLabel":499,"secondaryTo":12},"Run frontier AI your business actually owns.","Governed workstreams, 3,000+ integrations, and a proprietary knowledge graph. Start on Free.","\u002Fsignup?plan=free","content\u002Fshared\u002Fcta.md","Site CTAs",{"type":166,"value":1548,"toc":1549},[],{"title":169,"searchDepth":170,"depth":170,"links":1550},[],{"headline":1552,"description":1553,"primaryLabel":8,"primaryTo":1544,"secondaryLabel":1554,"secondaryTo":85},"See what governed AI looks like on your stack.","Connect your tools, run a workstream, and keep every decision on your ledger. Start on Free.","Talk to our team","\u002Fshared\u002Fcta",{"title":1546,"description":169},"shared\u002Fcta","eYqahyaPnbp8GKrWpoORbZdtmkWmgHr5F61ZHOnb8sY",1792999485666]