aetherbrowse-dev

Use when developing, extending, or debugging the AetherBrowse governed AI browser. Triggers on mentions of "aetherbrowse", "agent runtime", "perceiver", "planner", "browser worker", "hydra armor", "hydra bridge", "governance policy", "model routing", "octoarmor", or "aether://".

6 stars

Best use case

aetherbrowse-dev is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Use when developing, extending, or debugging the AetherBrowse governed AI browser. Triggers on mentions of "aetherbrowse", "agent runtime", "perceiver", "planner", "browser worker", "hydra armor", "hydra bridge", "governance policy", "model routing", "octoarmor", or "aether://".

Teams using aetherbrowse-dev should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/aetherbrowse-dev/SKILL.md --create-dirs "https://raw.githubusercontent.com/issdandavis/SCBE-AETHERMOORE/main/.agents/plugins/plugins/aetherbrowse/skills/aetherbrowse-dev/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/aetherbrowse-dev/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How aetherbrowse-dev Compares

Feature / Agentaetherbrowse-devStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Use when developing, extending, or debugging the AetherBrowse governed AI browser. Triggers on mentions of "aetherbrowse", "agent runtime", "perceiver", "planner", "browser worker", "hydra armor", "hydra bridge", "governance policy", "model routing", "octoarmor", or "aether://".

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# AetherBrowse Development Guide

Build and extend the SCBE-governed AI browser. All source lives under `aetherbrowse/` in the SCBE-AETHERMOORE repo.

## Architecture

AetherBrowse is a three-process system:

1. **Electron shell** (`aetherbrowse/electron/main.js`) — tabbed browser window with agent sidebar and governance log panel. Communicates with the runtime via WebSocket at `ws://127.0.0.1:8400/ws`.

2. **Python agent runtime** (`aetherbrowse/runtime/server.py`) — FastAPI + WebSocket server on port 8400. Hosts the agent loop and HTTP API. The central `AgentRuntime` class manages 4 named agents:
   - **Zara** (leader, tongue KO) — evaluates commands, owns the PLAN phase
   - **Kael** (executor, tongue CA) — carries out action plans, owns EXECUTE
   - **Aria** (validator, tongue AV) — reviews governance, flags risky steps
   - **Polly** (observer, tongue UM) — perceives pages, read-only

3. **Playwright browser worker** (`aetherbrowse/worker/browser_worker.py`) — drives real Chromium via Playwright. Connects to runtime at `ws://127.0.0.1:8400/ws/worker`. Supports multi-profile persistent sessions, network profile switching (clear/dark), and connector-bridge actions (Telegram, GitHub, HuggingFace).

## Agent Loop

```
PERCEIVE → PLAN → GOVERN → EXECUTE
  (Polly)   (Zara)  (Aria)   (Kael)
```

- **PERCEIVE**: `aetherbrowse/runtime/perceiver.py` — transforms accessibility tree / screenshots / DOM into `PagePerception` objects. `HydraPerceiver` runs 3-head consensus (vision + DOM + governance).
- **PLAN**: `aetherbrowse/runtime/planner.py` — takes user command + `PagePerception`, produces `ActionPlan` (list of `BrowserAction` steps). Routes through OctoArmor for LLM reasoning, falls back to rule-based planning.
- **GOVERN**: Governance policies in `aetherbrowse/config/governance_policies.yaml` define domain allow/deny lists, action-level coherence thresholds, rate limits, and agent permissions.
- **EXECUTE**: Runtime's `_execute_plan()` sends each step to the Playwright worker with retry budgets and deterministic waits.

## Key Files

| File | Purpose |
|------|---------|
| `aetherbrowse/electron/main.js` | Electron main process, tab management, IPC |
| `aetherbrowse/electron/preload.js` | Context bridge for renderer |
| `aetherbrowse/renderer/index.html` | Shell UI (sidebar, address bar, governance log) |
| `aetherbrowse/runtime/server.py` | Agent runtime, WebSocket server, HTTP API |
| `aetherbrowse/runtime/perceiver.py` | Page perception (Perceiver + HydraPerceiver) |
| `aetherbrowse/runtime/planner.py` | Action planning (rule-based + LLM) |
| `aetherbrowse/runtime/hydra_bridge.py` | Hydra Armor API routes (`/v1/armor/verify`, `/v1/hydra-armor`) |
| `aetherbrowse/runtime/env_bootstrap.py` | Environment variable alias expansion |
| `aetherbrowse/runtime/landing.html` | Browser landing page |
| `aetherbrowse/runtime/search.html` | Search results page with engine selector |
| `aetherbrowse/runtime/dashboard.html` | Kerrigan home dashboard |
| `aetherbrowse/worker/browser_worker.py` | Playwright automation worker |
| `aetherbrowse/config/model_routing.yaml` | LLM provider routing config |
| `aetherbrowse/config/governance_policies.yaml` | Governance rules and agent permissions |
| `aetherbrowse/config/hydra_armor_api.md` | Hydra Armor API documentation |

## How to Extend

### Adding a new browser action

1. Add the action handler in `browser_worker.py` inside the command dispatch (`_handle_command()` method).
2. Add a `BrowserAction` pattern in `planner.py` — either as a rule-based shortcut or in the LLM prompt template.
3. If the action needs governance review, set `governance_required=True` on the `BrowserAction` and add a policy entry in `governance_policies.yaml`.
4. Add retry budget in `AgentRuntime._retry_budget_for_action()` in `server.py`.

### Adding a new planner shortcut

Add a pattern match in `planner.py`'s `_rule_based_plan()` method. Return an `ActionPlan` with `method="rule"`.

### Adding a new agent

1. Add the agent entry in `AgentRuntime.__init__()` agents dict in `server.py`.
2. Define its role, tongue, and allowed actions in `governance_policies.yaml` under `agent_permissions`.
3. Add message handling for the new agent's events.

### Adding a Hydra Armor endpoint

Add a new route in `hydra_bridge.py`'s `register_hydra_routes()` function. Follow the pattern of `/v1/armor/verify`.

### Modifying search routing

Search engines are configured in `server.py`. The `_aether_search()` function handles DuckDuckGo HTML scraping. Multi-engine routing (roundtable, DDG, Bing, fallback) is in `_multi_engine_search()`. The search UI engine selector is in `search.html`.

## Environment Variables

| Variable | Default | Purpose |
|----------|---------|---------|
| `AETHERBROWSE_RUNTIME_HOST` | `127.0.0.1` | Runtime server host |
| `AETHERBROWSE_RUNTIME_PORT` | `8400` | Runtime server port |
| `AETHERBROWSE_HOME_URL` | `http://127.0.0.1:8400/landing` | Browser home page |
| `AETHERBROWSE_APP_ICON` | (auto-detect) | Window icon path |
| `AETHERSCREEN_MOBILE` | `false` | Enable mobile viewport |
| `GOOGLE_AI_API_KEY` | — | Gemini API key for planning |
| `GROQ_API_KEY` | — | Groq API key for governance |

## Testing

```bash
# Unit tests
pytest -q tests/test_aetherbrowse_search_routing.py tests/test_aetherbrowse_planner_workspace.py

# Cross-browser smoke test (requires runtime running)
python scripts/system/aetherbrowse_competitive_smoke.py --base-url http://127.0.0.1:8400

# Install additional browsers
python -m playwright install firefox webkit
```

## Training Data Flywheel

Every governance decision generates SFT/DPO training pairs:
- `training-data/aetherbrowse/governance_pairs.jsonl` — from Hydra Armor API calls
- `training-data/aetherbrowse/planning_pairs.jsonl` — from planner decisions
- Run logs: `artifacts/agent_comm/aetherbrowse/runs.jsonl`
- Search logs: `artifacts/agent_comm/aetherbrowse/search_queries.jsonl`

Related Skills

aetherbrowser-shopify-nav

6
from issdandavis/SCBE-AETHERMOORE

Navigate Shopify admin and storefront pages through AetherBrowser for merchandising and operations tasks. Use when working on products, collections, orders, settings, or marketing surfaces in browser mode.

aetherbrowser-operator

6
from issdandavis/SCBE-AETHERMOORE

Operate AetherBrowser as the primary online task surface across search, GitHub, Codespaces, research, Notion, Hugging Face, Shopify, and general web work. Use when Codex should drive a real browser session first, coordinate with built-in search or fetch tools second, capture page-state proof, and keep online work inside the SCBE browser lane instead of defaulting to generic web automation.

aetherbrowser-notion-nav

6
from issdandavis/SCBE-AETHERMOORE

Navigate Notion workspace pages in AetherBrowser for knowledge retrieval and workspace coordination tasks. Use when locating pages, databases, or section paths in browser mode before API operations.

aetherbrowser-huggingface-nav

6
from issdandavis/SCBE-AETHERMOORE

Navigate Hugging Face models, datasets, and spaces through AetherBrowser for research, validation, and publishing workflows. Use when inspecting repo cards, files, docs, and leaderboard surfaces in browser mode.

aetherbrowser-github-nav

6
from issdandavis/SCBE-AETHERMOORE

Navigate GitHub repositories, pull requests, issues, and settings through AetherBrowser tentacle routing. Use when tasks require browser-based GitHub movement, page evidence capture, or coordinated lane assignment with playwriter or playwright.

aetherbrowser-arxiv-nav

6
from issdandavis/SCBE-AETHERMOORE

Navigate arXiv papers and topic searches through AetherBrowser for research extraction workflows. Use when collecting abstracts, paper metadata, and evidence snapshots from arxiv.org.

aetherbrowse-ops

6
from issdandavis/SCBE-AETHERMOORE

Use when starting, stopping, monitoring, or managing the AetherBrowse browser stack. Triggers on "start aetherbrowse", "launch browser", "aetherbrowse health", "browser profiles", "governance logs", "hydra armor usage", "aetherbrowse status", or "runtime health".

scbe-training-pair-authoring

6
from issdandavis/SCBE-AETHERMOORE

Create prompt and response and metadata training pairs from SCBE documents, repair traces, terminal sessions, and operational workflows using the repository's canonical dataset contract and provenance rules.

scbe-spin-conversation-engine

6
from issdandavis/SCBE-AETHERMOORE

Generate SFT training data via radial matrix conversation pivots with D&D-style combat research mode. Produces diverse, cost-effective training pairs with Sacred Tongue encoding, golden spiral problem distribution, and harmonic re-attunement.

scbe-research-training-bridge

6
from issdandavis/SCBE-AETHERMOORE

Stage arXiv evidence and Obsidian markdown into source-grounded Hugging Face training bundles for research, review, and later SFT runs.

scbe-document-management

6
from issdandavis/SCBE-AETHERMOORE

Consolidate overlapping docs, classify files by authority, and keep SCBE repo documents aligned with runtime truth. Use when the repo has drift between canonical docs, public docs, proposal notes, research branches, and generated evidence.

scbe-colab-bridge

6
from issdandavis/SCBE-AETHERMOORE

Control Google Colab notebooks from Claude Code via Chrome extension. Execute cells, run terminal commands, read outputs, and manage GPU compute remotely.