Enterprise AI agents compared: harness depth in 2026
Wisp, SAP Joule and Palantir AIP checked against the harness features Claude Code and Codex made standard: tool search, skills, compaction, delegation, budgets, sandboxes, permissions and MCP. Vendor claims link to vendor docs.
Short answer: Most enterprise agents now run on the same handful of frontier models. What differs is the harness around the model: how the agent finds the right tool among hundreds, keeps a long thread inside its context window, hands work to other agents, stops at a budget, runs code safely and asks before it changes something. Claude Code and Codex set the public reference for those features. Palantir AIP documents most of them and has the most mature model for governed writes. SAP Joule is strongest when the work is an SAP transaction under existing SAP authorizations, and its agent tooling has moved quickly in 2026. Wisp, the agent layer in Geist, covers the full list inside one workspace, with one gap we state plainly: access for outside agents over MCP is in private qualification and not generally available yet.
We build Geist, so this is a vendor’s comparison. Every claim about SAP and Palantir links to the vendor’s own public material. Where we write “not documented publicly”, we could not find documentation; it does not mean the feature is absent. Palantir renamed AIP Agent Studio to AIP Chatbot Studio, and we use the current name.
Why compare against Claude Code and Codex
Coding agents work on repositories, not on ERP data, so they are not competitors here. They are useful as a yardstick because their harness is documented in detail. Claude Code defers MCP tool definitions and loads them through tool search, and the OpenAI API has an equivalent tool_search. Both products keep only a skill’s name and description in context and load the body when it is used (Claude Code, Codex). Both summarize long threads with /compact (Claude Code, Codex), run subagents in parallel (Claude Code, Codex) and keep working toward a /goal (Claude Code, Codex). The Claude Agent SDK stops a run at max_turns or max_budget_usd. Codex ships sandbox modes from read-only to full access, and Claude Code has permission modes that range from asking before edits to an auto mode where a classifier reviews actions.
An enterprise agent faces the same mechanical problems with higher stakes: more tools, longer threads, real money and writes into systems of record. So we asked of each vendor which of these mechanics are documented.
The matrix
Strong documented, native Partial documented, narrower scope Announced announced by the vendor, availability not confirmed Not documented publicly we found no public documentation Beta usable today, before general availability
Ratings are our reading of public vendor documentation and of the Geist product as of October 2026.
| Capability | Claude Code / Codex (reference) | SAP Joule | Palantir AIP | Wisp (Geist) |
|---|---|---|---|---|
| Tools and instructions | ||||
| On-demand tool discovery at scale | StrongMCP tool search; OpenAI tool_search | Partialorchestrator loads needed tools; mechanism not public | Partialopt-in tool search in Palantir MCP | Strong370+ tools, deferred |
| Skills loaded on demand | Strong | Strong2,500+ Joule Skills; API-backed | StrongAIP skills, group-level | Strong55 built-in + org skills |
| Long work | ||||
| Context management (compaction, caching) | Strong | Not documented publicly | Partialcontext cleanup in AIP Analyst | Strongcompaction, caching, overflow recovery |
| Multi-agent delegation, parallel branches | Strong | Strongorchestrator routing, n8n flows; parallelism not documented | StrongAIP Evolve, parallel native tool calls | Stronglead agent + specialists |
| Long-running goals with budgets | Strong/goal; SDK turn and spend caps | Partialbackground agents; budgets not documented | PartialAIP Evolve iteration limits | Strong/goal with six budget types |
| Memory | StrongCLAUDE.md, AGENTS.md, memories | AnnouncedJoule Studio runtime | Not documented publiclyper-chatbot application state | Strongorg + personal, with provenance |
| Work products and evidence | ||||
| Code execution sandbox, document generation | Strongsandboxed shell; document skills via API | Partialagents run sandboxed; file output not documented | PartialSQL, charts, Notepad documents | StrongPython container; PPTX/XLSX/DOCX/PDF |
| Web and document retrieval with citations | Strongweb search citations via APIs | Partialdocument grounding; citations not documented | Strongobject, PDF and URL citations; web search not documented | Strongweb, knowledge spaces, SharePoint |
| Control and access | ||||
| Model choice, BYO keys, reasoning effort | Partialown vendor's models; effort control | Strong70+ models; BYO keys and effort not documented | Strongmany providers, bring your own model | Strong10 providers, BYO keys, effort |
| Human review and permission modes | Strong | Stronguser and agent permissions intersect | Strongaction confirmation, proposals | Strong3 modes, Keep/Undo, Stop |
| External agent access (MCP, WebMCP, A2A, APIs) | StrongMCP clients | Stronggenerated MCP servers, A2A client | StrongPalantir MCP, Ontology MCP | BetaWebMCP; hosted MCP endpoint next; skills over MCP, own MCP servers and A2A planned |
SAP Joule: closest to the transaction
SAP describes the Joule Orchestrator, which it also calls the Agent Harness, as the engine that “routes requests to agents and loads the tools and skills needed to execute them”. The catalog is large: SAP reports over 30 specialized agents and more than 2,500 Joule Skills, with Joule live in 35 solutions. An SAP skill is a different object from a Claude Code skill. In Joule Studio, skills automate rule-based tasks through APIs, while agents plan and reason. That makes a Joule skill closer to a typed tool than to a file of instructions.
The governance model is the part to copy. SAP documents that the effective permission at runtime is the intersection of user permissions and agent permissions, enforced by the Agent Gateway at every hop, and that a user cannot access information or adjust processes they couldn’t directly. Joule Studio has a human-in-the-loop tool type. Joule is also grounded in the SAP Knowledge Graph, which SAP says maps more than 7 million data fields.
2026 brought the pieces of a broader harness. The new Joule Studio runtime gives agents persistent long-term memory on SAP HANA Cloud and runs each agent in an isolated sandbox with configurable policies; teams can orchestrate multi-agent systems with n8n. SAP lists more than 70 models in Joule Studio, and the generative AI hub reaches Azure OpenAI, AWS Bedrock and Google Vertex AI. Agents can run in the background, triggered by a business event, a schedule or a system signal.
On interoperability, SAP can generate MCP servers from its semantic API catalog and expose SAP and non-SAP APIs through MCP Gateway in SAP Integration Suite. Joule acts as an A2A client, expects an answer within 60 seconds and uses push notifications for long tasks. The same page says bidirectional communication with third-party agents through Agent Gateway is not yet supported; SAP has announced bidirectional A2A for Q4.
Not documented publicly: compaction or context handling for long threads, token or cost budgets per goal, citations in Joule answers, web search, customer API keys, reasoning-effort controls, and generation of PPTX or XLSX files.
Palantir AIP: governed actions on the Ontology
Palantir documents more of the harness than any other enterprise vendor we checked. AIP Chatbot Studio agents get typed tools: actions that edit the Ontology automatically or after user confirmation, object queries, functions (including published AIP Logic), application-variable updates, commands into other Palantir apps and a tool that pauses to ask the user for clarification. Native tool calling runs several tools in parallel on a subset of models. Retrieval uses Ontology, document and function-backed context, and answers can cite objects, PDF pages and URLs.
Skills work the way they do in Claude Code. In AIP Analyst the agent loads a skill’s full instructions only when it decides the skill is relevant, skills can be assigned to user groups, and a conversation can be exported as a new skill. The same page describes a context cleanup tool, and hidden tool results are no longer resent to the model. AI FDE, Palantir’s builder agent, can tidy its own working memory and load enabled skills. For multi-agent work, AIP Evolve coordinates fleets of AI FDE agents toward a goal, with limits you set such as a maximum number of iterations.
Review is where Palantir sets the bar. AI FDE acts under your own Foundry session, cannot write without your consent (per action or pre-approved per session) and logs everything to standard audit logs. AIP Logic edits run from Automate can be staged as proposals that a reviewer accepts. For model choice, AIP supports models from xAI, OpenAI, Anthropic, Meta, Google and others, plus bring your own model with native tool calling and reasoning. External access is mature: Palantir MCP and Ontology MCP became generally available in June 2026, every Ontology MCP call runs under the user’s Foundry permissions, and Palantir MCP gained opt-in tool search. Palantir MCP itself is aimed at AI IDEs and agents that build applications.
Not documented publicly: a general code-execution sandbox for chatbots, web search, memory that persists across chatbot sessions, and a reasoning-effort setting. The tradeoff is structural: the agent is as useful as the part of your operation that is modeled in the Ontology.
Wisp: the full list, one gap
Wisp is the agent layer in Geist, where the AI Team works. Here is what it ships today.
Tools and skills. More than 370 typed tools across 19 domains. The agent finds them through tool search and loads only what the task needs, on every supported model. 55 built-in skills load on demand, admins can author org skills, and each turn records which skills it used.
Long threads. Automatic compaction, manual /compact, recovery from context overflow, prompt caching, and model switching inside a thread without losing history.
Delegation and goals. A lead agent delegates to specialists with parallel plan branches, passes each one a brief and replans after failures. The agent can stop mid-turn to ask you a question. /goal runs durable multi-round goals with budgets for rounds, tokens, cost, time, tool calls and mutations, and completion has to be backed by evidence. There are 40+ slash commands.
Work products and sources. Python runs in an isolated container (no network, read-only filesystem, non-root, resource limits) that admins enable per org, and it produces PPTX, XLSX, DOCX and PDF files. Managed web search and fetch return citations, knowledge spaces answer with citations, and a SharePoint connector reads files. Memory exists at org and personal level, each entry with provenance.
Models and control. 10 model providers behind pro, standard and fast tiers, admin routing, BYO keys and per-model reasoning effort. Three permission modes (Read only, Review changes, Apply directly), Keep or Undo per change batch, fail-closed confirmation for destructive actions, role-scoped tools, a spend ledger, and a single Stop with an org-wide emergency pause.
Dated evidence and change memory. Two things the reference list does not cover. Every piece of evidence keeps its own observed, published and verified dates, reading a fact never makes it look newer, and evidence is rated current, stale, unknown or conflicted. Proposals show the date their evidence is based on. Before an agent changes a process, it can read what changed recently, diff versions and query the model as it was at a past revision. Chat answers can switch between Focus, Detail and Audit views, so an auditor sees every tool call, failed ones included, while everyone else sees the answer.
The gap. WebMCP in the browser is in beta, and a hosted MCP endpoint with OAuth sign-in follows; there is no public endpoint yet. Geist has no MCP client for servers you run, and A2A is planned. If your architecture needs outside agents to call into the platform now, Palantir and SAP document more here. And if agents must post SAP transactions under SAP authorizations today, Joule is the native path.
The Wisp agent harness page shows how these parts fit together.
How to test any of them in a demo
Feature tables flatter everyone, including us. Six tests separate a deep harness from a thin one:
- Connect a few hundred tools and ask something that needs an obscure one. Watch how much context the tool definitions use before the agent starts.
- Run a thread past the context window. Check which decisions and numbers survive compaction.
- Set a goal with a token and time budget. See what the agent reports when it hits the limit.
- In review mode, ask for a destructive change. It should stop for confirmation, and you should be able to undo the batch.
- Ask for a sourced answer and open every citation.
- Connect your own agent over MCP or A2A and confirm it inherits the calling user’s permissions, not a service account’s.
Sources
- Anthropic: Claude Code MCP and tool search, skills, costs and /compact, subagents, /goal, Agent SDK loop, budgets and permission modes, permission modes, tool search tool, web search tool
- OpenAI: tool search, web search, Codex skills, Codex slash commands, Codex subagents, Codex sandboxing
- SAP: Agentic AI on SAP Business AI Platform, Business AI release highlights Q1 2026, Extend Joule with Joule Studio, Integrating and extending Joule, Building agents with Joule Studio, New Joule Studio, SAP Connect, October 2026, Build low-code and pro-code agents on SAP BTP, Getting to know Joule Agents, Third-party MCP server access, Low-code and pro-code agents with Joule (A2A), The future of the enterprise is autonomous
- Palantir: AIP Chatbot Studio overview, tools, retrieval context, citations, using AIP Analyst, AI FDE modes and capabilities, AI FDE security and governance, AIP Evolve, Automate AIP Logic, supported LLMs, bring your own model, June 2026 announcements, Palantir MCP overview
- Related reading: Why AI agents need process intelligence before they act
Vendor capabilities are summarized from the public materials linked above as of October 2026. “Not documented publicly” means we could not find public documentation, not that the capability is absent. Products change quickly; verify current details with each vendor.
Answers
Quick answers
Short buyer answers linked to this article.FAQ
Frequently asked questions
Common buyer questions, answered directly.
01What is an agent harness?
The harness is everything around the model that turns it into a working agent: how it finds tools, which instructions it loads, how it keeps long threads inside the context window, how it delegates to other agents, which budgets stop it, where its code runs, and which actions need a person's approval. Claude Code and Codex are the clearest public reference for these features in 2026.
02How does SAP Joule compare to Palantir AIP for AI agents?
Joule is strongest when the agent's job is an SAP transaction: SAP documents that the effective permission is the intersection of user and agent permissions, and Joule reports over 30 agents and more than 2,500 Joule Skills. Palantir AIP documents more of the harness itself, including on-demand skills, parallel native tool calls, citations, proposals for human review and two generally available MCP servers. Both have strengths the other lacks.
03Does SAP Joule support MCP and A2A?
SAP documents that it can generate MCP servers from its semantic API catalog and run them through MCP Gateway in SAP Integration Suite. Joule acts as an A2A client toward other agents. SAP's own reference architecture says bidirectional communication with third-party agents through Agent Gateway is not yet supported, and SAP has announced bidirectional A2A for Q4 2026.
04Can external agents call Wisp over MCP?
Partly. WebMCP in the browser is in beta: browser agents use Geist's typed tools with the user's permissions and stay in Review mode unless the organization allows more. A hosted MCP endpoint with OAuth sign-in follows, and there is no public endpoint yet. Geist has no MCP client for customer-run servers yet, and A2A is planned. If external agent access is a hard requirement now, Palantir and SAP document more in this area.
05Which enterprise agent platform should I evaluate first?
Start from where the work lives. If agents must change SAP transactions under SAP authorizations, evaluate Joule. If your operation is modeled in a Palantir Ontology, evaluate AIP. If you want a broad harness (tool search, skills, compaction, budgets, a code sandbox and review modes) on top of process models, org data and outside signals, evaluate Wisp in Geist.