A browser toolkit for reducing repetitive SAP BTP Work Zone administration work — especially when maintaining sap-ui-version across many applications and environments.
Chrome Web Store:
https://chromewebstore.google.com/detail/sap-btp-workzone-kit/kbdalgkmidoabbpcfceppheinkpljobi
GitHub:
https://github.com/leotrinh/chrome-ext-sap-btp-workzone-kit
Made with ❤️ by Leo
Disclaimer
SAP BTP Workzone Kit is an independent browser extension. It is not affiliated with, endorsed by, sponsored by, or produced by SAP SE. SAP, SAP BTP, SAPUI5, and SAP Build Work Zone are trademarks or registered trademarks of SAP SE or its affiliates.
In real SAP Build Work Zone projects, always running an application against the latest SAPUI5 version is not necessarily what you want.
An application may need to stay on a known stable UI5 version because of compatibility issues or regressions. In Work Zone, this can be controlled through the custom parameter:
sap-ui-version
Changing that parameter for one application is easy.
Doing it across many applications and customer environments is not.
For example:
20 applications
× 10 customer environments
= 200 application configurations
The manual workflow can quickly become:
Content Manager
→ search for the application
→ open the application
→ open its configuration
→ locate custom parameters
→ add/update sap-ui-version
→ save
→ repeat
The configuration change itself is small.
Navigation is the expensive part.
SAP BTP Workzone Kit turns that nested workflow into a flat administration view:
Application Current UI5 Target UI5 Status
-----------------------------------------------------------------
Sales Overview 1.120.7 1.136.17 Ready
Order Management 1.120.7 1.136.17 Ready
Warehouse Monitor N/A - Unsupported
Customer Portal Mixed 1.136.17 Review
The goal is simple:
Inspect → Select → Preview → Update → Verify
This project started as a Tampermonkey helper created to solve the repetitive Work Zone configuration workflow above.
The first version proved that the workflow could be flattened into one list and maintained much faster.
Once the script became useful beyond a single task, it was turned into a proper Chromium extension so it could provide:
The original idea remains the same:
Don’t open the same nested configuration screen hundreds of times for a change that can be represented safely in one table.
Detect supported sap-ui-version configuration from:
The extension does not silently collapse different values.
It distinguishes between:
Configured version
N/A
Mixed
Error
A mixed state can be inspected before making any changes.
Bulk changes follow:
Select
→ build update plan
→ preview exact changes
→ explicit confirmation
→ sequential update
→ verification
The extension:
A successful mutation is not automatically treated as a verified configuration.
After updating an application, the extension can re-read its configuration and report:
Updated + Verified
Updated, verification mismatch
Updated, verification unavailable
Failed
A separate utility can trigger a manual HTML5 content refresh for the current Work Zone subaccount.
This action:
The extension can be opened through:
Both entry points use the same underlying functionality.
For this particular Work Zone application-configuration workflow, the extension does not depend on a public API contract that exposes the required operation.
Instead, it operates from the already authenticated Work Zone browser session and reproduces the relevant same-origin operations used by the Work Zone UI.
Conceptually:
Authenticated SAP BTP Work Zone
│
▼
SAP BTP Workzone Kit
│
▼
Existing browser session
│
▼
Work Zone same-origin UI operations
There is:
no separate SAP login
no shared technical account
no backend proxy
no extension-managed cookie store
SAP authorization still applies.
If the currently signed-in user is not allowed to perform an operation, the extension does not provide a way around that authorization.
Security and least privilege are part of the product design.
The extension does not implement SAP authentication.
You sign in to SAP BTP Work Zone normally.
The extension does not:
cookies permission;CSRF tokens required by Work Zone are obtained temporarily for the current operation and are not persisted as extension state.
The current manifest requests only:
storage
sidePanel
There is no:
activeTab
scripting
cookies
<all_urls>
unlimitedStorage
The extension does declare content scripts scoped to:
*://*.hana.ondemand.com/*
This is the site-access boundary required for the in-page floating button and Work Zone communication.
Feature eligibility is further restricted to supported SAP Build Work Zone administration hosts/routes.
Every write operation requires explicit user action.
UI5 bulk updates require:
Preview → Confirm → Update
HTML5 refresh requires its own separate confirmation.
The current implementation intentionally differs from the first extension blueprint.
It uses two declaratively loaded page-side layers:
React Side Panel / In-Page Overlay
│
▼
MV3 Service Worker
│
▼
Isolated-world Content Script
│
▼
MAIN-world Fetch Bridge
│
▼
Current SAP Work Zone session
Responsible for:
Some Work Zone same-origin requests — especially the CSRF/GraphQL flow reproduced from the original Tampermonkey script — needed to execute from the page’s own JavaScript world.
The packaged MAIN-world bridge therefore performs the final browser fetch() operation in the same page execution context used by the proven userscript flow.
This bridge contains packaged extension code only.
No remote JavaScript is loaded.
activeTab + runtime injection?An earlier design used:
activeTab
+
chrome.scripting.executeScript()
That worked when opening the extension through a toolbar user gesture.
It did not fit the floating-button UX because clicking a button already injected into the page does not grant the same activeTab permission.
The current declarative content-script architecture allows both:
toolbar → side panel
and:
floating button → in-page overlay
without requiring activeTab or scripting permissions.
The extension is intended for SAP Build Work Zone administration pages under the current supported Work Zone host pattern.
Feature activation is restricted to routes whose URL hash contains one of:
Content-Manage
Site-Directory
Provider-Manage
SubAccount-Settings
Transport-Manager
The floating button is hidden outside eligible administration pages.
The project relies on authenticated SAP BTP Work Zone UI behavior and same-origin internal endpoints used by the Work Zone browser experience.
These are not treated as a stable public extension API contract and may change over time.
For that reason:
Before using write operations against an important production tenant, validate the current release in an appropriate DEV/QAS environment first.
See:
docs/compatibility.md
for the current compatibility and manual-verification status.
Install the published extension:
https://chromewebstore.google.com/detail/sap-btp-workzone-kit/kbdalgkmidoabbpcfceppheinkpljobi
Then:
Requirements:
pnpm install
pnpm build
Then:
chrome://extensions or edge://extensions.dist/ folder.pnpm install
pnpm dev
pnpm test
pnpm typecheck
pnpm lint
pnpm build
pnpm verify:manifest
pnpm verify:no-remote-code
pnpm ci
pnpm dev starts the UI development server. Chrome extension APIs are only fully available when running as an installed/unpacked extension.
The project includes automated coverage for the core testable logic, including areas such as:
Real SAP tenant behavior cannot be completely represented by synthetic fixtures, so manual compatibility testing remains important for operations that write to SAP.
The project follows a few simple rules:
correctness > speed
preview > surprise
least privilege > convenience
verification > optimistic success
explicit user action > background automation
When a Work Zone structure is unknown:
fail safely
The extension should never guess a mutation shape.
Contributions, bug reports, compatibility findings, and ideas are welcome.
See:
Useful contribution areas include:
For new write capabilities, please preserve:
Inspect → Preview → Confirm → Execute → Verify
When reporting compatibility problems, please avoid posting:
Prefer sanitized examples and reproduction steps.
See:
Parts of this open-source project were developed with AI-assisted development tooling.
If you are interested in the tool used during development:
Agent Kit aka Claude Kit (referral link)
This link is intentionally kept here as a small development reference rather than a product banner.
SAP BTP Workzone Kit is an independent open-source browser extension.
It is not affiliated with, endorsed by, sponsored by, or produced by SAP SE.
SAP, SAP BTP, SAPUI5, and SAP Build Work Zone are trademarks or registered trademarks of SAP SE or its affiliates.