NewSAP Cloud Application Programming Model
Origin SAPDomain Process & WorkflowDomain AI & Agents

Sun 18
5 changes
CAP in the age of AI #4 - more on agentspublishedAsking a human first, and telling the agent how to behave. Ordering a book through @cap-js/agents happens without a question being asked; the human-in-the-loop annotation on the action turns the same request into an approve-or-reject step, which the episode follows down to the A2A status update that stores the task in an input-required state in the database — A2A itself being JSON-RPC 2.0 over HTTP with server-sent events for the stream. The rest is instructions on disk: an agents.md in the service's own folder removes the question about how many copies to order, a skill under a skills folder is advertised by its description and read only when the agent decides the case applies, and either file makes the plugin build a deep agent instead of the plain one.Video,
CAP in the age of AI #6 - vector embeddingspublishedVector embeddings put to work in the incident management sample, answering whether this problem has been seen before. An embedding element of type Vector is calculated and stored from the vector_embedding function, so the database refreshes it whenever the text behind it changes, and cosine_similarity compares it with a freshly embedded string; because a title says little, a scheduled action first summarises each incident's conversation through a model on SAP AI Core and the embedding is taken from that summary. The similar-incidents list is a view joining incidents to themselves, with order and limit set in a before handler on the expanded query, and the vector element excluded from the service, since OData knows nothing about vectors — on SAP HANA Cloud the function is native, while SQLite needs packages added to the project.Video,
CAP in the age of AI #7 - vector embeddings wrap-uppublishedThe same embeddings model taken from SQLite to SAP HANA Cloud, then handed to an agent. Locally it is @cap-js/ai that adds the vector functions SQLite lacks and downloads an all-MiniLM L6v2 ONNX model on first start; on HANA natural language processing has to be switched on, the model name is a mandatory argument, the vectors it returns are 768 dimensions, and dimensions must match on both sides of a comparison. HANA itself can be given SAP AI Core as a remote source for other embedding models, which a CDS.ql expression has to inject because the postfix notation only takes what the CDS model holds, and the hour ends with a search function over cosine similarity exposed over @cap-js/mcp, so an agent asked about low output from solar panels calls semantic search instead of writing the query itself.Video,
SAP Developers MCPadded to the atlasHosted MCP server of developers.sap.com tutorials and missionsMCP server,
Show 1 more
SAP Developers MCPentry revisedNEIGHBOURS §5.1 named the hosted MCP as a companion to index as an artifact, and the graph had no entry for it. ecosystem: umbrella because its content covers SAP technologies across stacks (llms.txt names ABAP Cloud, CAP, Fiori, HANA Cloud and integration) and no single door holds it. No read_only: the anonymous mounts are read-only, but the signed-in tier writes progress (complete_step). No tool_count: the quickstart and the API page list different tools per mount. The site also serves a GraphQL API, not recorded as an interface here for want of a page read. /mcp/homepage is left out of the description: the quickstart lists it as anonymous and the API page as signed-in.MCP server,
Sat 17
7 changes
AI-native North Star architecture — Platform Layerexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Reference architecture,
Building an LLM Agent in CAP Java with Spring AIexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Blog,
Building an LLM Agent using CAPexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Blog,
Document Groundingexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Doc,
Show 3 more
Generative AI on SAP BTPexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Reference architecture,
Integrating and Extending Jouleexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Reference architecture,
SAP Document AIexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Reference architecture,
Thu 15
10 changes
Joule Studioadded to the atlasSAP's managed environment for building custom agents and workflowsWeb tool,
@cap-js/agentsdescription, provides, requires revisedHow the agent reaches a model was nowhere on the entry, while the Java module of the same plugin already carried the edge. capire's configuration table states that aicore is the default for the production and hybrid profiles and connects to SAP AI Core, with auto and mock as the development kinds, so the requirement is conditional and the condition names the alternatives.CDS plugin,
@cap-js/aiprovides[llm-integration] revisedRe-read for the capability's impact assessment. The page still carries the claim, now in a longer sentence that also names the automatic service-binding resolution and the tenant-aware resource groups and deployments the coverage paragraph leans on, so the quote is the full sentence and the date is today's.CDS plugin,
@sap-ai-sdk/foundation-modelsprovides[llm-integration] revisedcapability:llm-integration declared model_access and response_streaming on 2026-10-15. The package's own chat-completion page, read the same day, states that its chat client streams over server-sent events, which is the fact that decides whether a chat surface can show an answer as it is written; the edge rested on the repository README alone before.Package,
Show 6 more
@sap-ai-sdk/orchestrationprovides[llm-integration] revisedcapability:llm-integration declared model_access and response_streaming on 2026-10-15. The orchestration chat-completion page, read the same day, states that the model is the name property of the promptTemplating configuration and that the harmonised API behind it lets a different model be used without the client code changing, and that the client streams over server-sent events. Both facts decide something for a reader and neither was on the edge.Package,
@sap/joule-studio-clidescription, provides, links revisedCurrent npm README for 2.0.4, published 2026-10-07, says "Installing @sap/joule-studio-cli gives you two commands:" and lists joule and jl. SAP Help now installs this package for the new Studio workflow. The historical alpha package stays separately indexed; no unverified rename or lineage relationship is inferred.CLI,
cap-java/cds-aiprovides[llm-integration], description revisedThe 0.0.2-alpha coordinates are a fact about Maven Central and not a statement by the maintainer. capire's plugin list, read on 2026-10-15, says in SAP's own words that the Java version of the AI plugin is currently in alpha, which is the declaration a reader choosing between the two runtimes needs; it is quoted rather than paraphrased and the coordinates stay beside it.Package,
capire/skillsflavors, provides revisedThe edge carried one source and no quote. Re-read both eval files on 2026-10-15: the fixture path, the expected-output field, the named assertions and the stack marker are now quoted, and the capability's two comparison properties are answered from the same sentences.Skill,
com.sap.cds:cds-adapter-agentdescription, provides revisedcapability:agent-tooling declared four comparison properties on 2026-10-15. All four values are scoped to the java flavor, the only one this module states, and the last two are stated negatives rather than absences: capire states that conversation history sits in volatile memory and that @agent.hitl is not yet supported by CAP Java. The harness property is left out: neither page names an agent framework underneath the Java adapter.Package,
Joule Studioecosystem, artifact type, links revisedThe browser builder and managed runtime do not establish a separately subscribed and bound BTP service. Keep CAP and BTP as served views: the product overview names CAP development, and the current SAP Help tutorial requires "An SAP S/4HANA system configured with an SAP BTP destination." The architecture chapter is titled "Building AI Agents with SAP Joule Studio on SAP BTP" while distinguishing the SAP-managed runtime from Bring Your Own Agent in a customer subaccount. The CLI link is backed by the current npm README, which now ships both joule and jl; its atlas record is revised in the same batch. The positive basis for web-tool is SAP’s description of a visual browser-based builder with no local setup. It identifies the hosted development interface, including provisioned access; it does not classify the runtime as an unbound or customer-hosted service.Web tool,
Fri 9
3 changes
AI-native North Star architecture — Platform Layerparts revisedFilled from SAP's own pages at the maintainer's request (docs/concepts/product-doors.md was the occasion; the AI-native door reads these designs). Every part names what the graph holds; what it lacks is listed as candidates in the curation note.Reference architecture,
Generative AI on SAP BTPparts, roles, paths revisedThe readme names the place for plugins and SDKs by example and leaves it open, and the RAG page names SAP's standardized services or a custom-built approach as the choice (docs/concepts/design-roles-and-interfaces.md §3). The three scenario pages are overlapping flows over the same parts, so they are not ways; the two runtimes are.Reference architecture,
Integrating and Extending Jouleparts revisedFilled from SAP's own readmes at the maintainer's request; the AI-native door reads these designs. Every part names what the graph holds; what it lacks is listed as candidates in the curation note.Reference architecture,

Sun 27
3 changes
@cap-js/processadded to the atlasStarts and manages SAP Build Process Automation processes from CAPCDS plugin,
SAP Document AIinterfaces revisedAn interface may be named and stays a field (docs/concepts/design-roles-and-interfaces.md §3.2, P7): the hub's catalogue states the two APIs' titles, versions and states, and SAP's Help pages name the channels and the workspace, so a design's arrow can say which surface it lands on and a reader has the page to open. The inbound channels read mail: SAP's Help page names mail as the only channel type, so the SharePoint folders the reference architecture mentions are its claim and not the maker's. No status is entered: the hub's state is a crawled claim reported beside the interface.Service,
SAP Document AIparts, areas, edges, roles, edges[client to docai] revisedThe ingestion page links the upload operation of document_information_extraction_api_v2 as the API-based integration, and the service now names that surface (docs/concepts/design-roles-and-interfaces.md §3.2, P7), so the arrow says which API it lands on and wears its protocol.Reference architecture,
The last 30 days. Older changes stay in each entry's history.