diff --git a/symbiont/SKILL.md b/symbiont/SKILL.md index b98ca12..0b50cfb 100644 --- a/symbiont/SKILL.md +++ b/symbiont/SKILL.md @@ -168,6 +168,46 @@ tail -5 /data/symbiont/heartbeat.jsonl | python3 -m json.tool --- +## Dendrite Integration + +Symbiont has web perception via **Dendrite**, a headless Chromium browser running on cortex as a Docker service. + +### Quick access from Symbiont code + +```python +from symbiont.web import fetch_page, take_screenshot, search_web + +# Fetch and read a webpage +page = fetch_page("https://example.com") +print(page['title'], page['content'][:200]) + +# Screenshot for visual verification +png = take_screenshot("https://example.com") + +# Multi-step: search and read results +results = search_web("best python async frameworks 2026") +``` + +### Dendrite endpoints (from cortex localhost or public URL) +| Endpoint | What it does | +|----------|-------------| +| `POST /fetch` | Fetch URL → markdown/text/html (full JS rendering) | +| `POST /screenshot` | Take screenshot → PNG bytes | +| `POST /execute` | Run JavaScript in page context | +| `POST /interact` | Click, type, scroll in a session | +| `POST /session` | Create persistent browser session | +| `GET /health` | Health check (no auth needed) | + +### Connection details +- **Public URL**: `https://browser.hydrascale.net` +- **Internal**: `http://localhost:3000` (from cortex) +- **API Key**: `8dc5e8f7a02745ee8db90c94b2481fd9e1deeea1e2ce74420f54047859ea7edf` +- **Auth**: `X-API-Key` header on all endpoints except `/health` + +For full Dendrite documentation, load the `dendrite` skill. + +--- + ## API Endpoints ### `POST /task`