Go below the surface.
An extensible toolkit for coding agents to debug, understand, and verify real web applications.
Agent entry point: Divebell Skill
Divebell is an extensible toolkit for coding agents to debug, understand, and verify real web applications.
Divebell makes the web page the coding agent's point of entry. It connects page context, browser capabilities, and the team's existing development and debugging tools so the agent can reproduce, diagnose, and verify issues directly in real web scenarios.
Starting from the current page, an agent can call existing SDKs, OpenAPIs, CLIs, and diagnostic capabilities without requiring a person to extract page information and connect the tools first.
The coding agent reads and modifies code. Divebell prepares reusable browser context and exposes page operations, browser diagnostics, and result verification as directly callable capabilities. Teams can use Extensions to connect their own accounts, environments, internal platforms, focused diagnostics, and verification workflows.
Install the Divebell CLI globally once:
npm install --global @divebell/cli
divebell setup
divebell --helpdivebell setup checks the environment and repairs browser startup only when
needed. Its browser probe runs in a temporary session and cleans that session up
when setup finishes.
In a coding-agent sandbox, Divebell automatically moves its own files and the
bundled browser's files to private temporary directories when the normal user
directories are read-only. Set DIVEBELL_HOME and AGENT_BROWSER_HOME only
when those files need specific durable writable locations.
Install the Divebell Skill in your agent.
Then ask:
Use divebell to visit https://module-federation.io/playground/index.html,
replace the manifest with
https://unpkg.com/@divebell/mf-playground-remote@0.1.0/dist/mf/mf-manifest.json,
and run the preview. If the Playground reports an error, use the divebell CLI
to analyze and resolve it.
Coding agents can already read and modify code, and they can call many development tools. But real web development issues usually happen in the page itself: users see a page, while diagnosing the problem requires its state, runtime environment, business context, and the team's existing diagnostic capabilities.
That information and those capabilities are usually scattered across:
- User actions and runtime state on the page
- Browser diagnostics such as Console and Network
- Existing SDKs, OpenAPIs, CLIs, and internal platforms
An agent often still needs a person to explain what the current page represents and which capability to call next.
Divebell makes the web page the agent's point of entry, connecting page context, browser diagnostics, and the team's existing tools so the agent can reproduce, diagnose, and verify issues directly in the real scenario.
Teams can use Extensions to bring existing capabilities into the current page scenario without rebuilding a separate tool system for agents. Once a workflow works, other agents and CI can keep using it as a durable team asset.
| Module | Responsibility | Entry point | Page integration required |
|---|---|---|---|
| Web Context & Diagnostics | Make a real web page the agent's point of entry and provide page context, browser diagnostics, and same-scenario verification | Divebell CLI | No |
| Extensions | Connect the web page with the team's existing development and debugging capabilities | CLI commands, Extension API | No |
| Runtime SDK | Expose application-internal facts that cannot be observed from the page without polluting the runtime environment | @divebell/core, framework plugins |
Yes |
Divebell makes a real web page the agent's point of entry, providing page context, page operations, browser diagnostics, and same-scenario verification after a code change.
These capabilities include the current page and user journey, page operations such as click, fill, and eval, and diagnostic evidence from Console, Network, Screenshot, and Coverage. Agents can call them directly through the Divebell CLI without Runtime SDK.
For protected pages, Divebell can reuse an existing Chrome profile, browser state, or encrypted credentials explicitly supplied by the user, and work within the account's existing permissions.
Browser Authentication and State
When a script must manage the complete browser flow, see Automating with Divebell CLI.
Extensions are the mechanism for connecting a web page with the team's existing development capabilities.
An Extension can identify applications, environments, and resources from the current page, call existing SDKs, OpenAPIs, CLIs, or internal platforms, and expose diagnostic and verification workflows that previously required a person to connect them.
Using Extensions · CLI Extension Development · Extension API Reference
Focused CLI capabilities are published as optional packages and installed only when needed.
These packages are installed into Divebell and add top-level commands:
| Package | Entry | Purpose | Guide |
|---|---|---|---|
@divebell/extension-memory |
divebell memory |
Repeat a real page journey and check memory, DOM-node, and listener growth. | Memory Analysis |
@divebell/extension-code-usage |
divebell code-usage |
Map recorded code execution back to chunks, source files, and dependencies. | Code-Usage Analysis |
@divebell/extension-imitate |
divebell record |
Record a browser walkthrough and generate an executable, verified JavaScript replay. | Record Browser Workflows |
@divebell/extension-mf |
divebell mf |
Inspect Module Federation instances, remotes, shared dependencies, Bridge operations, and loading traces. | MF Extension |
Install a CLI Extension with:
divebell extensions add @divebell/extension-memoryInstalled Extension commands appear in divebell --help and run through the same CLI, browser sessions, and login state as the built-in commands.
Runtime SDK is an optional page-side API. When the DOM, Console, Network, and other browser information cannot represent application state reliably, Runtime SDK can expose more granular application-internal facts to the agent.
It supports registering Targets, updating Snapshots, recording Events, declaring Actions, and running waitFor. Divebell works without Runtime SDK, and regular pages do not need to integrate it.
Please read the contributing guide and let's build Divebell together.
Divebell uses agent-browser as its default browser execution layer. Thanks to the agent-browser authors and contributors.
Extensions execute local code. Install and load only trusted content. Login-state files contain sensitive data and should remain in trusted environments.
Divebell is MIT licensed.
