Joule skill tool execution
A Joule agent supplied by SAP uses LLM-based reasoning to interpret a request, plan where applicable, select an appropriate Joule skill tool and populate its inputs; the selected Joule skill then executes its configured deterministic actions, which can cause persistent state changes. The skill itself is not an AI reasoning system. MCP tool execution is excluded.
Recorded characteristics
- Function
- AI vs deterministic execution: the Joule agent (LLM-based) interprets the request, plans where applicable, selects a tool based on its name, description and input fields, and supplies/populates the tool inputs; it can ask the user for missing inputs. Optional Agent Execution Steps add pre- and post-processing to support decomposition and planning (supporting reasoning configuration only). The selected Joule skill executes configured, deterministic steps: actions (API calls via destinations), conditions, formulas, calls to other skills and SAP Build processes. The skill execution chain is not autonomous reasoning. Persistent-action evidence (SAP CodeJam tutorials 5-7): an agent instructed to "Select and execute the appropriate tool autonomously" selects the "Create Shipment" Joule skill; the skill sends a POST request through the gttwriteservice destination and a shipment is created in the GTT system; the same agent/skill mechanism later updates the shipment carrier (to DHL). Only POST is recorded as established HTTP behaviour. Builders can turn off "Allow skill to be started directly by a user" so only the agent calls the skill. Supporting architecture: Joule agents can be added as subagents (no callback to the parent, maximum 5 direct and 25 total subagents, run synchronously and sequentially, same project only). Joule skills can also start SAP Build Process Automation processes (supporting functionality only; not core evidence here); SAP's page labels the non-waiting mode synchronous (15-second timeout) and the "Wait for Output Result" mode asynchronous (5-minute timeout) - recorded as SAP's own terminology without resolution.
- Data access
- Determined by the actions in each skill and the destination authentication they use; see permission basis under limitations.
- Actions
- Can take actions
- External actions
- Yes
- Human confirmation
- Conditional
- Permission basis
- Mixed
- Administrative control
- Runtime confirmation: a Joule skill added as an agent tool has an optional "Require user confirmation before running" setting; when enabled the user is shown Yes, proceed / No, cancel quick replies. A separate LLM call may compose the confirmation explanation shown to the user (Prompt for Generated Response); this wording call is not recorded as changing arguments, granting authority, performing the action or deciding whether approval is required. Kept distinct: Confirmation Message inside a Joule skill, SAP Build workflow approval, deployment/release approval, and authentication. Documentation tension (unresolved): an SAP tutorial says a skill containing a confirmation message causes Joule to fail when triggered from an agent, while SAP Help says messages defined in a skill do not run when it is used as an agent tool; this mechanism is not the basis for the confirmation classification. Governance: Joule roles extensibility_developer (develop, compile, deploy) and end_user; access controlled by deploying to shared environments shared with users or groups (maximum 10 user groups or 5 users, not combined); AI Agent Builder Activation must be enabled in the Control Tower before testing agents; environment-level orchestration profiles for content filtering and data masking; release and deployment of projects. SAP Build Process Automation roles apply to process functionality. Builder/admin permissions are separate from downstream action authority. Logging: the test Timeline shows nested events with traces (thoughts, inputs, outputs), planning/execution steps, request logs and time per step; Joule request-log access requires extensibility_developer. Complete auditability, production audit-log coverage and Monitor AI Capabilities coverage are not claimed.
- Default state
- Conditional
- Availability
- Default is conditional: requires subscriptions/setup, roles, AI Agent Builder Activation, a project, agent configuration, tools added, destinations, deployment and environment/user access; confirmation is configured per tool. Active; no GA date recorded for this capability. SAP reported general availability of the agent builder in December 2025 (supporting context only; not every component shares that lifecycle). Plan and regional availability not established.
- Licensing
- Plan requirements not established.
- External model or provider
- No fixed model or provider. Joule agents support configurable LLM selection (provider, base and advanced model, optional backup provider). The CodeJam's OpenAI GPT-4o setting is an example configuration only.
- Limitations and uncertainty
- External action = yes relative to the Joule Studio product boundary: the agent/skill mechanism creates and updates shipments in the GTT system; not every Joule skill performs an external action. Permission basis = mixed, from skill execution alone: (A) individual-user authority - SAP documents that the principal propagates automatically for PrincipalPropagation, OAuth2SAMLBearerAssertion and OAuth2UserTokenExchange destinations; that downstream applications then apply that user's permissions is SAP's own statement, not independently verified; (B) stored/configured account authority - destinations can use BasicAuthentication or OAuth2Password. Not every skill preserves user identity and not every skill uses a shared account. MCP excluded: MCP servers use a different authentication model and no concrete write example or runtime confirmation control is established; MCP evidence is not used for any classification. Unresolved: (1) default state of tool confirmation; (2) whether administrators can universally require confirmation; (3) whether tool inputs are locked before approval; (4) behaviour after "No, cancel"; (5) Confirmation Message documentation contradiction; (6) SAP Build process execution identity; (7) confirmation inheritance through subagents; (8) identity inheritance through subagents; (9) AI Agent Builder Activation scope; (10) its default; (11) administrator role controlling it; (12) production audit-logging coverage; (13) Monitor AI Capabilities coverage; (14) status/migration path of the new managed Joule Studio; (15) lifecycle of subagent support; (16) lifecycle of MCP support; (17) plan availability; (18) regional availability; (19) reliability of SAP Help monitoring (SAP Help pages returned no substantive text to automated retrieval).
Evidence
- Send a Response
Supports: Limitations · Primary source
Skill-level Confirmation Message is a separate mechanism inside skills.
- Add a Tool
Supports: Function · Human confirmation · Limitations · Primary source
Four agent tools: Calculator, Documents, Joule skill, Joule agent; Joule skills can be added as tools.
Optional "Require user confirmation before running"; Yes, proceed / No, cancel; separate LLM call composes the approval message.
Messages defined in a skill do not run when it is used as an agent tool; subagent limits (no callback, 5 direct, 25 total, sequential, same project).
- Create AI Capabilities
Supports: Function · Primary source
Skills are deterministic task components; Joule agents are LLM-driven, multi-tool systems.
- Best Practices for Creating Joule Agents
Supports: Function · Primary source
Agent behaviour driven by the prompt of instructions, context and tool definitions sent to the LLM.
- Configuring Your Agent's Tools and Resources
Supports: Function · Primary source
Tool name, description and input fields are the agent's instructions for using a tool.
- Governance and Safety Controls
Supports: Admin controls · Primary source
Restrict access by deploying to shared environments for specific users or groups.
- Orchestration Configuration for Your Agent
Supports: Admin controls · Primary source
Environment-level content filtering and data masking profiles.
- Add an Action
Supports: Actions · Permission basis · Primary source
Skills call APIs through actions and destination variables.
Principal propagates automatically for PrincipalPropagation, OAuth2SAMLBearerAssertion and OAuth2UserTokenExchange destinations.
- Add a Process
Supports: Function · Primary source
Skills can start SAP Build processes; SAP's synchronous/asynchronous labels recorded as stated.
- Managing Destinations for the Action Project
Supports: Permission basis · Primary source
Destinations can use stored accounts such as BasicAuthentication or OAuth2Password.
- Assign Users to Roles
Supports: Admin controls · Primary source
extensibility_developer and end_user roles; skills visible only via shared environments.
- Test Your Joule Agent
Supports: Admin controls · Default state · Primary source
Test Timeline traces (thoughts, inputs, outputs), request logs, time per step.
AI Agent Builder Activation must be enabled in the Control Tower.
- Troubleshooting
Supports: Admin controls · Primary source
Request logs require extensibility_developer; Planning/Executing plan steps visible.
- Known Limitations
Supports: Admin controls · Primary source
Projects shared with up to 10 user groups or 5 users, not combined.
- What is Joule Studio, classic edition?
Supports: General · Primary source
Classic edition is part of SAP Build for building skills and agents.
- CodeJam 5 - Create Skill to Create / Update Shipment
Supports: Actions · External actions · Primary source
Create Shipment skill sends POST via PostToGTT/gttwriteservice destination to create or update a shipment in GTT.
Shipment created in the GTT system.
- CodeJam 6 - Create Agent to Coordinate Skills
Supports: Function · Limitations · External model · Primary source
Agent instructed to select and execute the appropriate tool autonomously; skills added as tools; LLM settings configurable.
States a skill with a confirmation message makes Joule fail when triggered from an agent.
Example configuration OpenAI GPT-4o; provider and models selectable.
- CodeJam 7 - Test Agent
Supports: Actions · External actions · Primary source
Agent creates a shipment and updates its carrier to DHL.
Shipment creation and carrier update in GTT via the agent.
- Use Joule Studio, Classic Edition to Create an Agent
Supports: Function · Primary source
Agent Execution Steps add pre- and post-processing to support planning.
- Announcing New Joule Studio for Enterprise Scale Agentic Development
Supports: Availability · Primary source
SAP announced a new fully managed Joule Studio (May 13, 2026).
- How to Get Started with Joule Studio, Classic Edition (SAP product managers)
Supports: Availability · Primary source
SAP reports agent builder general availability (December 2025).