Agentul tău de IA controlează acum orice site web.
Cu un traseu complet de audit.
Aruncaţi o linie în.CLAUDE.md, AGENTS.md, or .cursorrulesși AI-ul tău câștigă o adevărată automatizare a browserului: Gmail, Slack, LinkedIn, GitHub și orice site web. Fiecare clic semnat, sigilat și verificabil. Serverul MCP este în direct.
Adăugați consolare la orice proiect într-un singur comandă
curl -fsSL https://solaceagi.com/agents/claude.md >> CLAUDE.md
Adăugă instrucțiuni de automatizare a browserului Solace proiectului tău Codice Claude. Lucrează imediat fără înscriere, fără SDK.
Step 0: Download & Install Solace Browser
Solace Browser is a desktop app that runs on your machine. Download it first, then your AI agent can control it via localhost:8888.
Download Solace Browser
Visit solaceagi.com/download and download the version for your operating system.
# Linux (one-line install): curl -sf https://storage.googleapis.com/solace-downloads/install.sh | bash # macOS / Windows: download the installer from # https://www.solaceagi.com/download
The download includes Solace Hub (desktop app) + Solace Runtime (local API on port 8888) + Solace Browser (Chromium fork with Yinyang sidebar).
Launch Solace Hub
# Start the Hub — it launches everything automatically ~/.solace/bin/solace-hub
The Hub sits in your system tray. It starts the local API server on port 8888 and opens the browser when ready.
Verify it's running
curl http://localhost:8888/api/v1/system/status
→ {"app_count": 22, "cloud_connected": false, "evidence_count": 0, "uptime_seconds": 5}
If you see JSON, your agent is ready to use Solace. No account needed. Free forever for local use.
Fiecare agent de codare major AI, susținut
Descărcați formatul potrivit pentru asistentul dvs. AI. Fiecare fișier îi spune AI exact cum să folosească Solace navigați, faceți clic, completați, luați o captura de ecran și captați dovezi. 21 de formate sunt suportate din cutie.
Codice Claude
Aruncaţi-vă în ţâţâţa voastră.CLAUDE.mdCodice Claude va folosi browserul Solace pentru orice sarcină de automatizare web automat.
Codexul OpenAI
Aruncaţi-vă în ţâţâţa voastră.AGENTS.mdAgenții Codexul OpenAI și ChatGPT citesc acest fișier pentru a înțelege instrumentele și capacitățile disponibile.
Puntatore
Aruncaţi-vă în ţâţâţa voastră..cursorrulesPuntatore va ajunge la Solace ori de câte ori îi ceri să interacţioneze cu un site web.
El windsurf es un deporte de surf.
Aruncaţi-vă în ţâţâţa voastră..윈드서핑 규칙El windsurf es un deporte de surf. (Codeium) preia capacităţile Solace exact ca Puntatore acelaşi format, zero fricţie.
Copilotul GitHub
Aruncaţi-vă în.github/copilot-instructions.mdCopilot va sugera Solace API apeluri pentru sarcinile browserului.
Assistente
Treci ca prompt de sistem cu--system-prompt solace-aider.mdAssistente va direcționa toate interacțiunile web prin Solace Browser automat.
Continuă.dev Continuă.dev
Adăugați la dvs..continue/config.jsonContinuă va apărea pe suprafața Solace browser automation ca un instrument nativ în VS Code și JetBrains.
克莱恩
Aruncaţi-vă în ţâţâţa voastră.دليل. يقرأ 克莱恩 قواعد المشروع عند بداية الجلسة — يتم تحميل khảیات Solace تلقائيًا لكل محادثة.克莱恩 citește regulile proiectului la începutul sesiunii Capacitățile Solace se încărcă automat pentru fiecare conversație.
根码
Locul în care am fost.roocode/Regeln/根码 (fost Roo-克莱恩) moșteneste capabilitățile browserului Solace, alături de modurile sale de codare agentică.
Gemini CLI de la Google
Adăugați laGEMINI.mdAgentul open-source al Google, CLI, colectează instrucțiunile Solace în același mod în care citește instrucțiunile lui Claude.CLAUDE.md.
Jules Jules Google Jules
Jules citeșteAGENTS.mdInstrucțiunile Solace apar automat atunci când Jules se ocupă de orice sarcină web-relatată în repo.
Editorul Zed
Pune regulile în92Panelul de IA al lui Zed le citește nativ Solace devine disponibilă instantaneu asistentului Zed AI.
Sviluppatore Amazon Q
Adăugați la.amazonq/rules/solace.mdSviluppatore Amazon Q citește fișierele de regulă de marcare din acest directory pentru fiecare sesiune de codare din proiectul dvs.
JetBrains Intelligenza Artificiale
Adăugați la.idea/ai-guidelines.mdJetBrains Intelligenza Artificiale Assistant citește acest fișier prin IntelliJ, PyCharm, WebStorm și toate IDEs-urile JetBrains.
Sourcegraf Cody
Loc în context.cody/context/solace.md.Cody include acest fișier în contextul de recuperare Instrucțiunile de recuperare apar în fiecare conversație Cody.
塔比尼
Configurați-l prin intermediul.. ملف تخصيص 塔比尼 يسمح لك بتعليم فريقك أدواته — بما في ذلك أتمتة متصفح Solace Browser.Fișierul de personalizare al 塔比尼 vă permite să-l învățați lanțul de instrumente al echipei dvs. inclusiv automatizarea browserului Solace.
Riplicare AI
Adăugați la dvs..replit をreplitする をreplitするFișierul de fișier[ai]Riplicare AI citește contextul proiectului de aici Solace devine disponibil în fiecare spațiu de lucru Replit.
Devin est un homme. est un homme.
Locul în care am fost.devin/流程书/Devin est un homme. citește cărțile de joc ale proiectului înainte de a începe sarcinile cu orizont lung Sunt disponibile instrumentele de navigare Solace pentru orice flux de lucru web.
Droid di fabbrica
Factory citeşteAGENTS.md Şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi şi .fábrica/Agenții droizi moștenesc capacitățile Solace atunci când automatizează fluxurile de lucru de dezvoltare a software-ului.
Kilo Code Kilo Kilo
Adăugați la.kilocode/rules/ . .Kilo Code Kilo urmează același model de reguli de proiect ca și 克莱恩 Solace instrucțiuni de încărcare pentru fiecare sesiune de codare agentic.
llms.txt
Jeremy Howard standard pentru descrieri de site LLM-leadable.Drop în rădăcina proiectului pentru orice LLM pentru a înțelege Solace.
Download llms.txtCeea ce este în interiorul claudei.md Snippet
Fiecare fișier de integrare îi învață agentului tău AI exact cum să folosească Solace.Aceasta este o bucată de cod Claude și îl introduce în proiectul tău, iar agentul tău înțelege imediat toate cele 14 API-uri Solace, serverul MCP, semnarea electronică și cele mai bune practici.
# Solace Browser Integration # Source: solaceagi.com/agents/claude.md ## What Solace Is Chromium fork with a native Yinyang sidebar. Solace Hub starts first and exposes Yinyang Server on port 8888. Sessions persist. Evidence is hash-chained. MCP: 8 tools live now. ## Quick Start curl http://localhost:8888/api/status # → {"running": true, "status": "ready"} ## Core API (all POST, JSON body) navigate {"url": "...", "wait_for": "networkidle"} click {"selector": "..."} fill {"selector": "...", "value": "..."} screenshot {"full_page": true} → {"filepath": "artifacts/..."} evaluate {"Expresia de exprimare": "document.title"} aria-snapshot GET → accessibility tree JSON ## YinYang YinYang Notify (alert user, non-blocking) POST /api/yinyang/notify {"type":"success","message":"...","priority":"low"} ## E-Sign (FDA Part 11 §11.100) POST /api/v1/esign/token {"user_id":"...","run_id run_id":"...","meaning":"reviewed_and_approved"} ## MCP (add to .claude/settings.json) {"mcpServers":{"solace":{"command":"python3","args":["yinyang_mcp_server.py"]}}} ## Best Practices 1. Screenshot before click (evidence of what agent saw) 2. ARIA snapshot for structure, screenshot for visual 3. Minimal OAuth3 scopes + budget_usd budget on every token 4. Notify user via YinYang YinYang (never console.log spam) 5. E-sign every user-approved action
# Solace Browser Integration
# Source: solaceagi.com/agents/claude.md
## What Solace Is
Chromium fork with a native Yinyang sidebar. Solace Hub starts first and exposes Yinyang Server on port 8888.
Sessions persist. Evidence is hash-chained. MCP: 8 tools live now.
## Quick Start
curl http://localhost:8888/api/status
# → {"running": true, "status": "ready"}
## Core API (all POST, JSON body)
navigate {"url": "...", "wait_for": "networkidle"}
click {"selector": "..."}
fill {"selector": "...", "value": "..."}
screenshot {"full_page": true} → {"filepath": "artifacts/..."}
evaluate {"Expresia de exprimare": "document.title"}
aria-snapshot GET → accessibility tree JSON
## YinYang YinYang Notify (alert user, non-blocking)
POST /api/yinyang/notify {"type":"success","message":"...","priority":"low"}
## E-Sign (FDA Part 11 §11.100)
POST /api/v1/esign/token {"user_id":"...","run_id run_id":"...","meaning":"reviewed_and_approved"}
## MCP (add to .claude/settings.json)
{"mcpServers":{"solace":{"command":"python3","args":["yinyang_mcp_server.py"]}}}
## Best Practices
1. Screenshot before click (evidence of what agent saw)
2. ARIA snapshot for structure, screenshot for visual
3. Minimal OAuth3 scopes + budget_usd budget on every token
4. Notify user via YinYang YinYang (never console.log spam)
5. E-sign every user-approved action
Fișier complet:Descărcați clipul CLAUDE.md • Vezi agenţii.json (leasă de maşină)
Ciao mondo în 3 API Calls
API-ul complet Solace este învățabil în trei comenzi.
Navigați la orice pagină
curl -X POST http://localhost:8888/api/navigate -H "Content-Type: application/json" -d '{"url": "https://example.com"}'
→ {"success": true, "status": 200, "url": "https://example.com"}
O ecrană cu ce s-a întâmplat
curl -X POST http://localhost:8888/api/screenshot -H "Content-Type: application/json" -d '{"full_page": true}'
→ {"success": true, "filename": "screenshot-20260302-120000.png", "filepath": "artifacts/screenshot-20260302-120000.png", "size": 17115}
Dovezile sunt capturate automat
→ plan.json env_snapshot.json run_log.txt behavior_hash.txt — سلسلة التشفير SHA-256 محكمة. كل إجراء يصعب تغييره.
plan.json env_snapshot.json run_log.txt behavior_hash.txt SHA-256 hash chain sealed.Every action tamper-evident.
Referința API Full Referință API Full
All local browser-control endpoints run on http://localhost:8888. Treat /agents.json as the canonical machine-readable contract for your agent runtime.
| Endpoint-ul-ul | Metoda de a face | Ce face | Scopul OAuth3 |
|---|---|---|---|
/api/navigate | POST | Încărcați un URL în browser | navegador.navegar |
/api/click | POST | Clic sul selettore CSS | navegador.hacer clic |
/api/fill | POST | Umple un câmp de formular | browser.fill browser.fill browser.fill browser.fill |
/api/screenshot | POST | Capture current page as PNG (salvat la artefacte/) | navegador.capture de pantalla |
/api/evaluate | POST | JavaScript () este un sistem de executare a JavaScript.Expresia de exprimare), return result key | evaluar navegador |
/api/snapshot | POST | Acquisisci HTML grezzo della pagina | navegador.instantánea |
/api/aria-snapshot | GET | Arborele de accesibilitate ARIA (JSON structurat) | navegador.instantánea |
/api/dom-snapshot | GET | Arborele de fotografii DOM pentru verificările de structură deterministică | navegador.instantánea |
/api/page-snapshot | GET | Imaginea combinată de pagină (ARIA + DOM + metadata) | navegador.instantánea |
/api/health | GET | Sonda de viață pentru pregătirea timpului de rulare | (n-au) |
/api/status | GET | Sănătatea browserului, pregătirea, URL-ul actual, sesiunea | (n-au) |
/api/part11/status | GET | Partea 11 capture state, session id, bytes written, last error | (n-au) |
/api/part11/config | POST | Configurează modul de capturare și directoriul de audit al Partei 11. | part11.configura |
/agents.json | GET | Capacitățile machine-readable manifest | (n-au) |
MCP Server Live Now
Modelul Context Protocol permite Codului și altor instrumente compatibile cu PH3 să se conecteze la PH1 ca un instrument nativ, fără a fi necesară nicio comandă de curl.
✅ Local MCP Disponibil acum
# Step 1: start the Serverenul MCP (stdio JSON-RPC 2.0)
python3 ~/projects/solace-browser/yinyang_mcp_server.py
# Step 2: add to Codice Claude .claude/settings.json:
{
"mcpServers": {
"solace": {
"command": "python3",
"args": ["/path/to/solace-browser/yinyang_mcp_server.py"]
}
}
}
Odată configurat, Codice Claude face apeluri detect_apps, create_schedule, record_evidenceȘi , și 5 more Hub-native MCP tools on localhost:8888Fiecare apel este OAuth3-scoped și SHA-256 evidențiat.
Remote MCP Cloud (Coming Soon)
# Remote MCP is still coming soon:
{
"mcpServers": {
"solace": {
"url": "mcp.solaceagi.com",
"apiKey": "sol_..."
}
}
}
# Paid users can already launch a cloud twin today:
POST https://solaceagi.com/api/v1/browser/twin/launch
Authorization: Bearer sw_sk_...
{
"scope": "twin:browser",
"ttl_minutes": 15,
"app_id": "solace-yinyang",
"url": "https://solaceagi.com/dashboard"
}
Conectați-vă de la orice maşină. Lucrătorii browserului funcționează în cloud. OAuth3 guvernează fiecare apel de instrument. Fiecare acțiune este lanțată cu hash și captată prin dovezi în seiful dvs. Dragon Warrior este necesar.
8 Strumento MCPs Available Today
| Strumento MCP | Mapă către API | Ce face |
|---|---|---|
detect_apps | POST /detect | Detect which Solace apps are available for a URL. |
list_apps | GET /credits | List the apps currently loaded by the Hub. |
create_schedule | POST /api/v1/browser/schedules | Create a cron-backed schedule for a local Solace app. |
list_schedules | GET /api/v1/browser/schedules | Read back all active Hub schedules. |
delete_schedule | DELETE /api/v1/browser/schedules/{schedule_id} | Remove a schedule by UUID. |
record_evidence | POST /api/v1/evidence | Append a structured audit event to the evidence chain. |
list_evidence | GET /api/v1/evidence | Paginate existing evidence records for review. |
get_hub_status | GET /health | Inspect Hub health, readinessȘi , și runtime state. |
Ce poate face agentul tău cu Solace
În afara navigării și a clicului Solace oferă agentului tău un sistem complet de senzori și memorie pentru web.
Vezi pagina
Capture DOM snapshots and ARIA accessibility trees. your agent obține structurată vizuală + semantic date nu doar HTML brut.
Extrage date structurate
Făcând alergări, fugiți. /api/evaluateExtrage tabele, prețuri, valori de formular sau orice alte date de pagină direct în contextul agentului tău.
Permisiuni scopate
Cererea este doar ceea ce ai nevoie. token-urile OAuth3 sunt scoped ()navegador.navegar, navegador.hacer clic, browser.fill browser.fill browser.fill browser.fill), limitate de timp și revocabile.
Automatic Evidence
Fiecare acțiune a agentului este înregistrată automat, închisă cu hash și sigilată, iar agentul dvs. produce o urmă de audit fără a scrie o singură linie de cod de înregistrat.
Recepte Memorie
La replay, agentul tău trece peste LLM în întregime și rulează cașul de cașare pentru 0,001 $ 99% mai ieftin decât redescoperirea.
Aplicarea bugetului
Setă limite de cheltuieli pe sesiune."presupuesto_usd": 0.05În cererea dvs. de token și în cazul în care Solace oprește agentul când bugetul este lovit, nu există costuri fugitive.
Cercetarea de dovezi
Întrebarea trecutului funcționează cu./api/evidence/search. Agentii pot căuta ce s-a întâmplat în sesiunile anterioare util pentru sarcinile incrementale precum "e-mailuri de triaj neobservate de la ultima cursă".
Persistența sesiunii
Sesiunile browserului supraviețuiesc între apelurile agentului. Loginarea o dată, reutilizarea sesiunii. Nu există cheltuieli de re-authentificare. cookie-urile, stocarea locală și jetonele de autor persistă între sarcini.
Tab-uri paralele
Agentul dvs. poate scrape 10 pagini în paralel, compara rezultatele și fuzionează rezultatele, toate cu urme independente de dovezi.
Multi-Agent Swarms
Spawn multiple instante independente de Solace Browser. agenții de scout explorează; agenții de codare acționează; agenții sceptici verifică. Fiecare instanță are propria sa sesiune, buget și lanț de dovezi. Orchestrate de la orice programator (cron, Cloud Run, GitHub Actions).
E-Sign & FDA Partea 11
Fiecare acțiune aprobată poate fi semnată electronic: utilizatorul înregistrează că am revizuit și aprobat această acțiune pe [timestamp] [PH1]. Semnătura este SHA-256 sigilat în lanțul de hash. Conform FDA 21 CFR Partea 11 §11.100 semnături electronice.
Cele mai bune practici ale agentului
Patronii care fac ca agentul dvs. să fie fiabil, auditabil și ieftin de executat.
✅ O captura de ecran înainte de a face clic
Întotdeauna sunați./api/screenshotAcest lucru creează un record de dovezi ale ceea ce a văzut agentul înainte de a acționa critică pentru căile de audit și debugging a eşuat.
POST /api/screenshot {"full_page": false}
POST /api/click {"selector": "#submit-btn"}
Snapshot pentru structură, Screenshot pentru viziune
Utilizarea /api/aria-snapshot(ARIA accesibilă tree, JSON) atunci când agentul tău are nevoie să înțeleagă structura paginii./api/snapshotPentru HTML brut.Use/api/screenshotpentru aspectul vizual şi imaginile.
GET /api/aria-snapshot # returns ARIA JSON tree POST /api/snapshot # returns raw HTML POST /api/screenshot # returns PNG filepath
Request Minimum Scopes
O sarcină de cercetare cu citire numai nu ar trebui să aibă niciodată o funcție de cercetare cu citire numai.browser.fill browser.fill browser.fill browser.fillScopul: Scopurile înguste previne efectele secundare accidentale și satisfac auditele de conformitate.
POST /oauth3/token {
"user_id": "local-agent",
"scopes": ["navegador.navegar",
"navegador.capture de pantalla"],
"ttl_seconds": 300
}
Verificați mai întâi rețetele existente
Înainte de a rula un flux de lucru cu jetonele LLM, sunați./api/recipes/matchDacă există o rețetă pentru această sarcină, replicați-o la 0,001 dolari.
POST /api/recipes/match {
"task": "gmail inbox triage"
}
# → {"hit": true, "recipe_id": "gmail-v3"}
Setă un buget pentru fiecare sesiune
Nu lăsa niciodată un agent să ruleze fără un plafon bugetar.budget_usd budget budgetSolace va opri sesiunea când va ajunge la limită, în loc să cheltuiască în tăcere.
POST https://solaceagi.com/api/v1/oauth3/token {
"api_key": "sw_sk_..."
}
# → {"access_token":"..."}
POST https://solaceagi.com/api/v1/oauth3/tokens
Authorization: Bearer sw_sk_...
{
"scopes": ["files.read", "files.write"]
}
# → {"token":"o3_..."}
# Use header: X-OAuth3-Token: o3_...
Reutilizarea sesiunilor pentru site-urile autentificate
Log in o data si stoca tokenul sesiunii."id phiên"În apelurile ulterioare API pentru a reutiliza cookie-urile și statul de autor.Eliminează fluxurile de conectare de la fiecare agent executat.
POST /api/navigate {
"url": "https://app.example.com/inbox",
"id phiên": "sess_abc123"
}
Agent-Native Matters Why
AEO: Ottimizzazione del Motore dell'Agente
La fel cum SEO este optimizat pentru crawlers de căutare, AEO se optimiză pentru agenții AI. Solace este prima platformă construită cu agenți ca utilizatori de primă clasă, nu o gândire ulterioară.
Evidența că agenții tăi nu pot falsifica
Fiecare acțiune a agentului produce un chitanță SHA-256 în lanțuri hash.CISO-ul dvs. poate audita ceea ce a făcut AI-ul.Consiliul dvs. poate vedea dovezile.Nu există cutii negre.
Reţete care fac agenţii mai deştepţi
Când un agent îndeplinește o sarcină, ea devine o rețetă. data viitoare: $0.001 replay nu au fost consumate jetoane LLM. Agentii care folosesc Solace devin mai rapizi și mai ieftini în timp.
Cum Compară Solace
Dezvoltatorii care aleg instrumentele de automatizare a browserului pun patru întrebări: persiste sesiunile? creează o trailă de audit? pot delega unei IA fără costuri scăzute? va supraviețui unui audit de conformitate? Iată răspunsul sincer pentru fiecare opțiune.
| Caracteristica | Solace Browser | Dreptare directă | utilizzo del browser / OpenClaw | 芭迪恩 / 扎皮尔 |
|---|---|---|---|---|
| Persistența sesiunii | ✅ Cookie-urile supraviețuiesc în toate cursurile. | Efemeral prin default | Nu există memorie de sesiune | ✅ Statul extensiei Chrome |
| SHA-256 registro di controllo | ✅ Fiecare acțiune, în lanțuri hash | Niciunul nu este construit | Nimeni | Logs only (nu sunt evidente) |
| Partea 11 e-signa FDA | ✅ Construit în ()/api/v1/esign) |
Nu este disponibil | Nu este disponibil | Nu este disponibil |
| Bugetul / cost ceiling | ✅ Porţile bugetare pe token | Unlimited (fără poartă) | Nu există control bugetar | ✅ Planul are limită doar |
| Recepta se repetează la $0.001 | ✅ După primul curs de succes | Costul de LLM întotdeauna | Costul de LLM întotdeauna | ✅ Replay Zap (fără LLM) |
| Formatele de fișiere agent-native | ✅ 21 de formate (CLAUDE.md, AGENTS.md…) | Nimeni | Nimeni | Nimeni |
| OAuth3 delega con ambito | ✅ Tokeni revocabili, limitate în timp | Accesul complet sau nimic | Accesul complet sau nimic | Permisiuni la nivel de aplicație numai |
| Local-first (nu este necesar un cloud) | ✅ Runs complet offline | ✅ Da, da, da. | ✅ În mare parte | Dependență de cloud |
| Serverenul MCP | ✅ 7 instrumente, JSON-RPC 2.0 (live) | Nu este disponibil | Nu este disponibil | Nu este disponibil |
Solace nu este un înfășurare Playwright, ci un strat de delegare OAuth3 pe partea de sus a Playwright, adăugând memorie de sesiune, lanțuri de dovezi, porți de buget și formate native de agenți pe care Playwright-ul brut nu le are.
Dacă sunteți un agent de IA citind acest articol
Această secțiune este scrisă direct pentru tine Codice Claude, Codex, Puntatore, Copilot sau orice alt agent AI care a ajuns pe această pagină.
Capacitățile tale sunt aici
Când se rulează Solace Browser ()localhost:8888), puteți: naviga la orice URL, faceți clic pe orice element prin selectorul CSS, completează orice câmp de formular, luați ecranuri, luați instantaneile DOM, rulați JavaScript și citiți jurnalurile de dovezi SHA-256.
Verificați dacă Solace este disponibil:
curl http://localhost:8888/api/status
# {"running": true, "status": "ready", "version": "...", "session": null}
Spec-ul de citire a mașinii
Adu-ţi manifestul de capacitate programatic. foloseşte-l ca sursă de adevăr pentru numele punctului de încheiere şi metodele suportate. calea canonică este /agents.json (nu /api/agents.json).
curl http://localhost:8888/agents.json curl https://www.solaceagi.com/agents.jsonVezi agenţii.json ↗
Modul de viziune-primă
Dacă sunteți un agent capabil de a vedea, acesta este modelul recomandat: navigați, luați o imagine, analizați imaginea, decideți pe ce să faceți clic, acționați, luați o imagine din nou pentru a verifica.
POST /api/navigate {"url": "..."}
POST /api/screenshot {} # analyse this
POST /api/click {"selector":"#x"}
POST /api/screenshot {} # verify result
Contractul de răspuns (Strict)
Nu te baza doar pe statutul HTTP, unele runtime-uri întorc 200 cu o{"error": ...}Agentul dvs. trebuie să analizeze JSON și să necesite succes == true body înainte de a continua.
# Robust rule:
# 1) Parse JSON response
# 2) if response.success is not true -> fail step
# 3) include response.error in escalation note
{"success": true, "url": "https://example.com", "status": 200}
{"error": "Page.fill: Timeout 30000ms exceeded."}
Protocolul de escaladare umană
Dacă apucați CAPTCHA, 2FA, ambiguitatea aprobării sau riscul legal/conform, opriți apelurile la acțiune imediat.{"escalate": true}Mesajul către orchestratorul gazdei (nu încerca cu buclă retries în mod orb).
{
"escalate": true,
"reason": "2FA required",
"last_step": "POST /api/click #sign-in",
"evidence": "artifacts/screenshot-20260304-131500.png"
}
Secure Execution Loop
Folosește un cerc deterministic: sănătate, navigație, inspecție, acțiune, verificare, punct de control.GET /api/page-snapshotAcţiunile cu risc ridicat înainte de a rula sunt auditabile şi se evită erorile de cascadă.
GET /api/health
POST /api/navigate {"url":"..."}
GET /api/page-snapshot
POST /api/click|fill {"selector":"..."}
POST /api/screenshot {"full_page":true}
GET /api/status
Cum să creezi un înregistrare de semnare electronică
Când un utilizator aprobă o acțiune pe care ați pregătit-o, înregistrați semnătura electronică a acestuia.Acest lucru creează un registru conform FDA 21 CFR Partea 11 §11.100: cine a aprobat, ce au aprobat și când a fost sigilat în lanțul de hash.
# After user clicks Aprovează in the bottom rail:
POST /api/v1/esign/token
{
"user_id": "phuc@example.com",
"run_id run_id": "run-abc123",
"meaning": "reviewed_and_approved",
"action_description": "Sent email reply to Li Li re: Solace",
"timestamp": "2026-03-03T15:00:00Z"
}
# → {
# "esign_hash": "sha256:abc...",
# "sealed_at": "2026-03-03T15:00:01Z",
# "chain_entry_id": 42,
# "verifiable": true
# }
Patternul multi-agent
Spawn trei agenți pentru automatizare rezistenta: Scout (naviga + ecran, doar citit, model L1) → Solver (click + complete + evaluate, model L3) → Skeptic (verifică rezultatul împotriva dovezilor, model L1).run_id run_id run_id run_id; lanțurile lor de dovezi sunt fuzionate la momentul sigiliului.
# Scout: read-only token
POST /oauth3/token {"user_id":"scout","scopes":["navegador.navegar","navegador.capture de pantalla"],"ttl_seconds":60}
# Solver: action token
POST /oauth3/token {"user_id":"solver","scopes":["navegador.navegar","navegador.hacer clic","browser.fill browser.fill"],"ttl_seconds":60}
# Skeptic: verify token
POST /oauth3/token {"user_id":"skeptic","scopes":["navegador.instantánea","evidence.read"],"ttl_seconds":60}
# All share: {"run_id run_id": "run-abc123"}
Referință de eroare pentru agenți
Fiecare eroare Solace este scrisă, greșelile retrrovabile se recuperează cu backoff, greșelile non-retrovabile au nevoie de intervenție umană sau de un redesenare al sarcinilor.
| Codul de cod | Înseamnă | Retritable | Acţiune Agenţi Acţiune |
|---|---|---|---|
SELECTOR_NOT_FOUND | Selectorul CSS nu a corespunzat nimic | No | Chiama/api/snapshotsă redescoperi structura |
NAVIGATION_TIMEOUT | Pagina a luat 30 de ani pentru a fi încărcată | Da, da | Încearcă din nou cu un back-off exponențial (maximum 3 încercări) |
BUDGET_EXCEEDED | Sesiunea cheltuielilor de petrecere a limitelor de timp a fost lovită | No | Escalate la operator uman pentru creșterea bugetului |
SCOPE_DENIED | Acţiune nu în scopurile de token OAuth3 | No | Richiedi nuovo token con ambito richiesto |
HUMAN_REQUIRED | CAPTCHA sau 2FA detectat | No | Chiama{"escalate": true}imediat imediat. |
NETWORK_ERROR | Site-ul țintă inaccesibil | Da, da | Încearcă din nou după 5 ani, apoi 30 de ani, apoi eșuează |
SESSION_EXPIRED | Cookie-urile de autor sunt vechi. | No | Re-authenticate, apoi reîntoarce de la ultimul punct de verificare a dovezilor |
ELEMENT_NOT_INTERACTABLE | Elementul ascuns sau dezactivat | Da, da | Aşteaptă 2 ani şi încearcă din nou; fotografiat de ecran pentru a verifica primul stat |
Wiki Prime Semantic Wayback Machine
Fiecare pagină pe care Solace o vizitează este comprimată într-o imagine semantică de 750 de byte, stocând structura, intenția, navigația și entitățile cheie ale paginii. Nu este nevoie de niciun server după prima descărcare.
Splitul de flux: localhost:8888Gestionă capturarea/execuția locală în Solace Browser, în timp cehttps://solaceagi.com/api/v1/prime-wiki/* Modul local-numai funcționează fără indexul cloud.
750 de byte → Pagină completă
The Wayback Machine stochează 100KB+ HTML brut pe pagină (100,000 TB total). Solace stochează un schelet semantic de 750 de bați și reconstruiește o pagină echivalentă local. 133x mai mică. Zero dependență centralizată.
# Reconstruct any indexed page locally: python3 prime_wiki_render.py \ --url https://github.com # → prime-wiki-renders/github-com.html
Indexul de concentrare a aplicațiilor
Spre deosebire de Wayback Machine (entul web), Solace se concentrează peSite-uri de magazin de aplicațiisite-urile care au rețete de automatizare Solace. GitHub, Gmail, LinkedIn, Substack, Noțiunea, și mai multe.Calitatea bate acoperirea.
GET /api/v1/prime-wiki/search?q=github
# Returns all indexed GitHub pages
GET /api/v1/prime-wiki/stats
# {"count": 7, "rtc_verified_count": 7}
Pro: Full Community Access
Fără preț:colectați fotografii din propria dvs. navigare.
Pro ($28/m):Accesarea instantanee la indexul comunității complete memoria semantică pentru fiecare site de magazin de aplicații. Skip re-discovery LLM. Save $1050/monat în jetoane.
# Download all appstore codebooks once: GET /api/v1/prime-wiki/assets?appstore_only=true # Store at ~/.solace/pzip/assets/ # Decompress locally, forever — offline capable
Render API Server-Side Reconstruction
Reconstruiește orice pagină indexată direct din API.Returnează HTML complet cu diagramă de stare FSM Prime Mermaid încorporată.Utilă pentru previzui, ecranuri și debugging de rețetă.
# Render by URL (server decompresses + reconstructs): GET /api/v1/prime-wiki/render?url=https://github.com # Render by hash: GET /api/v1/prime-wiki/render?url_hash=<sha256> # ← Returns full HTML + Prime Mermaid diagram
Contribuie la activele de pagină
Fiecare vizită a unui browser de utilizare a site-ului de aplicații crea o imagine de clipă a Wiki Prime. Opt-in pentru partajarea comunității vizita ta beneficiază de fiecare membru Pro.
# Push a snapshot (community contribution):
POST /api/v1/prime-wiki/push
{"url_hash": "<sha256(normalized_url)>",
"url_display": "https://github.com",
"snapshot_b64": "<base64(gzip(json_snapshot))>",
"original_size": 12345,
"compressed_size": 912,
"schema_version": "prime-wiki-v1",
"page_type": "landing",
"rtc_verified": true,
"sha256_original": "<sha256(raw_json_bytes)>",
"sha256_compressed": "<sha256(gzip_bytes)>"}
# Upload domain codebook (Pro):
POST /api/v1/prime-wiki/assets
{"domain": "github.com", "asset_b64": "..."}
Yinyang: Agentul tău este un partener on-page.
Fiecare pagină pe care Solace Browser o viziteaza primește o suprapunere permanentă cu duble-rail.Rail-ul superior arată în timp real starea agentului dvs. Rail-ul inferior este un panel de chat unde puteți vorbi direct cu Yinyang.Ambele șine sunt injectate prin intermediul de.añadir_init_scriptei supraviețuiesc navigării, încărcăturilor de pagini și paginii blocate de CSP, cum ar fi Gmail.
▲ Top Rail Always Visible
O bară de 32px fixată în partea de sus a fiecărei pagini.[PH0]] Solace home]→ înapoi la browserul de acasă cu un singur clic.IDLE / EXECUTING / PREVIEW_READY / DONE), numele aplicației actuale și statisticile de valoare rotativă (pagini vizitate, apeluri LLM, costuri economisite, durata sesiunii).
# Push a state update to the top rail:
POST /api/yinyang/notify
{"type": "state_update",
"state": "EXECUTING",
"app_name": "Gmail Triage"}
▼ Bottom Rail Chat & Aprovează
Un panel de chat cu 36px a colapsat la partea de jos a fiecărei pagini.PREVIEW_READY(agenta ta a pregătit o acțiune),BLOCKED(nevoia de clarificare), sauFAILEDUtilizatorul face clic pe.Aprovează or Refuzăagentul dumneavoastră primește decizia prin WebSocket.
# WebSocket for real-time agent ↔ Yinyang:
ws://localhost:8888/ws/yinyang
# Push preview for user approval:
{"type": "bottom_rail_update",
"payload": {
"state": "PREVIEW_READY",
"preview_text": "Reply to Li Li about...",
"show_approve_reject": true,
"run_id run_id": "run-abc123"
}}
Push Alerts 3 canale
Agenții pot împinge notificările către utilizator fără a-și întrerupe pagina actuală.brindisi.(3-s popup popup din partea de jos-dreapta),popup popup popup popup(modal cu butoane de acțiune),Preluarea controluluiToate canalele sunt FSM-gated fără alarmă pentru incendii fără o tranziție validă.
POST /api/yinyang/notify
{"type": "push_alert",
"channel": "brindisi.",
"message": "Gmail triage complete: 12 sorted",
"priority": "low"}
# channel: "brindisi." | "popup popup" | "Preluarea controlului"
# priority: "low" | "high" | "critical"
Functioneaza pe toate paginile, inclusiv Gmail.
Raile sunt injectate caActriz adi_init_scriptacestea persistă în fiecare navigare pe același context de browser, inclusiv pe paginile blocate CSP, cum ar fiGmail, Los documentos de GoogleȘi , șiNoțiuneaJS foloseşte doar metode DOM (nu.HTML interiorYinyang este întotdeauna vizibil, întotdeauna accesibil.
Yinyang Chat API
Utilizatorii pot să scrie direct la Yinyang de pe linia de jos.Agentul tău primește mesaje prin WebSocket și poate răspunde.Foloseste acest lucru pentru cereri de clarificare, aprobări ambigue sau schimbări de configurare la mijlocul sarcinii.Fiecare mesaj este înregistrat în urma probelor Partea 11.
POST /api/yinyang/chat
Authorization: Bearer <api_key>
{"message": "User says: skip newsletters",
"context": {"run_id run_id": "run-abc123"}}
# → {"reply": "Got it. Skipping newsletters..."}
Rezultatele agenților: Inbox-ul, Outbox-ul și dovezile.
Fiecare sarcină pe care agentul dvs. o execută produce rezultate accesibile de pe pagina de pornire a browserului Solace.Proiectat conform principiului Jony Ive: întotdeauna prezent, niciodată intrus, exact ceea ce aveți nevoie.
Cutia de intrare Proiecte care așteaptă un comentariu
Fiecare proiect pregătit de agentul dvs. (respundere la e-mail, post Substack, comentariu LinkedIn) aterizează aici înainte de a fi trimis.Cursa de intrare arată: contextul expeditorului, proiectul scris de agent, scorul de încredere, timpul estimat de trimitere.Revizuiește și aprobă cu un singur clic sau editează înainte de a aproba
GET /api/v1/inbox
# {"items": [{
# "id": "draft-abc",
# "app": "gmail-inbox-triage",
# "type": "email_reply",
# "to": "li.li@...",
# "subject": "Re: Solace user case",
# "preview": "Hi Li Li, thanks for...",
# "confidence": 0.91,
# "status": "awaiting_approval"
# }]}
Outbox trimis și programat
Obiectele aprobate curg în cutia de ieșire. Vezi ce a fost trimis, când, prin ce aplicație și cu ce probe hash. Obiectele programate arată ora următoare de declanșare.
GET /api/v1/outbox
# {"items": [{
# "id": "sent-xyz",
# "app": "gmail-inbox-triage",
# "sent_at": "2026-03-03T14:30:00Z",
# "to": "li.li@...",
# "evidence_hash": "sha256:abc...",
# "status": "sent"
# }]}
📅 Orarul şi Calendarul
Sarcinile recurente (săptămâna dimineață, digestul săptămânal, arhiva de noapte) apar pe program.Vezi următorul timp de rulare, rezultatul ultimului rulare și bugetul consumat în această perioadă.Agenții pot adăuga la program prin intermediul API-ului; utilizatorii pot să facă pauză, sări sau să reprogramăm din pagina de origine.
GET /api/v1/schedule
# {"items": [{
# "app": "morning-brief",
# "cron": "0 7 * * *",
# "next_run": "2026-03-04T07:00:00Z",
# "last_status": "DONE",
# "budget_used_7d": "$0.12"
# }]}
Istoria Receptul de alergare Log
Fiecare curs de rețetă este înregistrat: numele aplicației, durata, jetonele utilizate, costul, rezultatul.Runurile de succes construiesc cașul de rețetă pentru viitoarele replaceri de $0.001 de dolari.Runurile de eşec arată unde au rupt și de ce perfect pentru debugging de rețete de aplicație.
GET /api/v1/history?limit=20
# {"runs": [{
# "run_id run_id": "run-abc",
# "app": "gmail-inbox-triage",
# "started": "2026-03-03T14:00:00Z",
# "duration_s": 18,
# "tokens": 1247,
# "cost_usd": 0.00073,
# "outcome": "DONE",
# "recipe_replayed": false
# }]}
FDA Partea 11 Evidența
Fiecare acțiune aprobată generează o secvență de ecran de fotografii, care este evidentă prin manipulare.Accesibilă din panoul de istoric: vedeți exact ce a arătat browserul înainte ca agentul dvs. să acționeze, ce a propus agentul și ce a fost executat. SHA-256 cu lanțuri hash.
GET /api/v1/evidence/{run_id run_id}
# {"run_id run_id": "run-abc",
# "screenshots": [
# {"step": 1, "url": "...", "sha256": "..."},
# {"step": 2, "url": "...", "sha256": "..."}
# ],
# "seal": {"hash": "sha256:...",
# "signed_at": "..."}}
Wiki Prime Snapshots
Când agentul dvs. vizitează un nou site, acesta creează o imagine de clip de pe Wiki Prime: o hartă indexată a tuturor elementelor interactive (selectori DOM, roluri ARIA, căi de acțiune).
GET /api/v1/prime-wiki/list
# {"snapshots": [{
# "domain": "mail.google.com",
# "captured_at": "2026-03-03",
# "selectors": 847,
# "recipes": 3,
# "mermaid_url": "/prime-wiki/gmail.md"
# }]}
Aprenderea din editările umane
Când un utilizator editează un proiect scris de agent înainte de a-l aproba, Solace captează delta-ul ca fiind un .Semnalul de preferințăCu timpul, agentul învață vocea, tonul și stilul utilizatorului fără a fi instruit explicit.
Cum funcționează
- Agentul scrie un proiect.→ atterra nella casella di posta con
În aşteptarea statutului de aprobare. - Utilizatorul editează proiectul→ Solace diffs original vs text editat, extrage delta
- Utilizatorul aprobă→ delta este stocat ca opreferința stilului preferatla aplicatia + destinatarul
- Următorul alergător→ agentul primește preferințe de stil în promptul său de sistem:
User prefers: semnarea mai scurtă, fără semne de exclamație, menționează întotdeauna numărul de referință - Scorul se îmbunătățește→ mai puţine modificări necesare în timp. Convergenţa a fost urmărită în panelul de istorie.
API preferențială
Agentii pot citi preferințele de stil înainte de a genera proiecte.Preferințele sunt stocate pe aplicație, pe beneficiar și la nivel global.Capturate automat atunci când utilizatorii edită sau instruibile manual prin API.
# Read preferences before drafting:
GET /api/v1/preferences?app=gmail-inbox-triage
# {"global": ["concise, 3 sentences max"],
# "recipient:li.li@...": [
# "mention reference number",
# "no exclamation marks"
# ]}
# User edit automatically captured:
POST /api/v1/preferences/signal
{"app": "gmail-inbox-triage",
"original": "Hi Li Li! Thanks for...",
"edited": "Hi Li Li, thanks for...",
"recipient": "li.li@..."}
Patrul potrivit: aprobă, editează, învață
Legea anti-Clippy:Niciodată nu auto-aprobă, niciodată nu trimite.Omul vede întotdeauna primul proiect. Aceasta nu este o limitare. Fiecare aprobare este un semnal de antrenament. Fiecare modificare este o corecție. După 510 run-uri, agentul creează un proiect cu vocea ta. După 50 run-uri, rar are nevoie de modificare. Urmele de dovezi dovedesc că fiecare decizie a fost aprobată de om. Productivitatea ta se compune
Inspector de Soluție sfârșitul manualului QA așa cum îl cunoaștem
Fiecare echipă de dezvoltare fără un pod QA structurat este o orbă de zbor. Solace Inspector este primul și singurul instrument care oferă agenților de codare AI un protocol QA standardizat, sigilat de dovezi, aprobat de om.
Dacă agentul tău de IA nu foloseşte Inspectorul Solace, are o calificare de calificare de rahat.
Protocolul de agent agent
Orice agent de codare scade un spec JSON în.buzón/Se ridica un raport sigilat de la.en la caja de salida/Nu există integrare personalizată, nici un SDK, nici un limbaj, nici un model.
Lanțul de dovezi
Fiecare inspecție este SHA-256 sigilată cu dovezi arhitectate FDA 21 CFR Partea 11 Probabilitate de judecată.
Aprobarea semnului electronic uman.
AI propune soluții, omul aprobă cu un singur clic, anti-Clippy: niciodată nu aproba automat, fiecare soluție este o decizie a omului înregistrată, aceasta este caracteristica de crimă, nimic altceva nu o are.
Il Loop HITL (Human-in-the-Loop)
test-spec.json to buzón/
# Step 1: Agent writes test spec to buzón/ (any format, any language)
cat > buzón/test-spec-001.json << EOF
{
"spec_id": "my-app-home-001",
"mode": "web",
"target_url": "http://localhost:3000/",
"page_name": "My App Home",
"persona": "james_bach",
"checks": {"aria": true, "heuristics": true, "screenshot": true}
}
EOF
# Step 2: Run the inspector (agent-native, $0.00 LLM cost)
python3 scripts/run_solace_inspector.py --inbox
# Step 3: Agent reads sealed report from en la caja de salida/
cat en la caja de salida/report-my-app-home-001-*.json
# {
# "qa_score": 74,
# "belt": "Yellow",
# "heuristic_issues": [{"type": "accessibility", "msg": "3 images missing alt", "heuristic": "ARIA-1"}],
# "agent_analysis_request": { "system_prompt": "You are James Bach è un uomo di talento....", "evidence_summary": {...} },
# "agent_analysis_response": null, ← YOU fill this in with your model
# "fix_proposals": [], ← YOU add proposals here
# "evidence_hash": "sha256:a4f3...", ← cryptographic seal
# "human_approved": false
# }
Modul Web
Orice aplicație de browser. Navigă + ARIA tree + DOM snapshot + HICCUPPS heuristics + full-page screenshot. Lucrează pe localhost, staging, producție sau URL-uri publice.
Modul: "web"
Modul CLI
Orice instrument de linie de comandă. Executarea subprocesului + aserțiunea codului de ieșire + captarea stdout/stderr. Kent Beck Kent Beck: Test ce te temi. Functionează pe orice CLI în orice limbă.
Modul: "cli"
Modul API
Request + response schema validation + timing + security headers. Cem Kaner Cem Kaner: Care este riscul de calitate în acest context?
Modul: "api"
În curând, Sprint 3
Comitetul de experți (injectat ca solicitări de analiză)
Confirmat: Zero Competitors Are Toți Trei
| Instrumentul de lucru | Protocolul de agent agent En la caja de entrada/en la caja de salida JSON |
Lanțul de dovezi SHA-256 sigilat |
Semn electronic uman. aprovizionarea fixurilor |
Costo/per corsa |
|---|---|---|---|---|
| Inspectorul de Solasie | ✅ | ✅ | ✅ | $0.00 |
| Scriitorul MCP | ✅ | ❌ | ❌ | variază |
| Ketryx (doar pentru medicamente) | ❌ | ✅ | ✅ | $$$ |
| 卡沃尔夫 | ❌ | ❌ | ❌ | $2,000/mo |
| Mabl Mabl | ❌ | ❌ | ❌ | $800/mo |
| 测试Rigor | ❌ | parţial | parţial | $1,200/mo |
| 德文2.0 | ❌ | ❌ | ❌ | 500/mon + $5/run |
Cercetările au verificat martie 2026 în 15 instrumente.Guidarea FDA s 2026 AI împinge industria spre exact ceea ce am construit deja.Reglementarea ne prinde.612 de luni înainte de teren.
Instalarea în 30 de secunde
# Solace Inspector is built into Solace Browser. # It is the default app — always present, cannot be uninstalled. # If you have Solace Browser: python3 scripts/run_solace_inspector.py --self-diagnostic # First time? Install Solace Browser: git clone https://github.com/solaceagi/solace-browser cd solace-browser python3 -m pip install -r requirements.txt python3 web/server.py # http://localhost:8791 # Then drop any test spec in buzón/ and run: python3 scripts/run_solace_inspector.py --inbox
Capacități de citire a mașinii
Il /agents.jsonEndpoint-ul returns structurate capabilities for programmatic agent discovery.