Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
acnext → OrcaSlicer
Firefox-Extension, die acnext://-Links auf Anycubic Maker World abfängt, die
3MF-Datei über die Anycubic-Cloud-API herunterlädt und sie in OrcaSlicer öffnet.
Browser blockieren das acnext://-Schema, wenn der Anycubic Slicer Next nicht
installiert ist. Diese Extension ersetzt diesen Slicer durch OrcaSlicer.
Architektur
Maker World (acnext://-Link)
│ Klick abgefangen
▼
content.js ──► background.js ──► Native Messaging Host (Python)
│ Download via Cloud-API (JWT aus Payload)
│ ~/Downloads/<datei>.3mf
▼
OrcaSlicer (AppImage)
Der Native Host erledigt Download + Öffnen — eine Extension kann keinen lokalen Dateipfad an einen externen Slicer übergeben, und CORS verhindert den direkten Download im Browser.
Installation
1. Native Host installieren
bash native-host/install.sh
Schreibt das Host-Manifest nach ~/.mozilla/native-messaging-hosts/. Pfad zur
OrcaSlicer-AppImage ist in native-host/acnext_orca_host.py
hartkodiert (Default: /home/coding/OrcaSlicer_Linux_V2.4.0-dev.AppImage) und per
ORCA_APPIMAGE-Env überschreibbar.
2. Extension in Firefox laden
about:debugging → „Dieses Firefox" → „Temporäres Add-on laden" →
extension/manifest.json auswählen.
Payload (acnext://open?jsonvalue=<base64>)
{
"accessToken": "<JWT>", "fileId": 49184, "fileName": "X.3mf",
"regionCn": "0", "hash": "<MD5>", "userId": "<UUID>"
}
regionCn "0" → Global-Server, "1" → China-Server.
Offene Punkte
- Download-Endpunkt ist noch via DevTools zu verifizieren (siehe Plan, Schritt 1).
Aktuell vermutet:
GET {base}/file/download?fileId={id}mitAuthorization: Bearer. - AppImage-Pfad später konfigurierbar machen (aktuell Env-Override).