Skip to main content

ConnectOnion Studio — local test cockpit for ConnectOnion agents: create, run, QR, live logs, Copy-for-Claude diagnostics.

Project description


ConnectOnion Studio

A local test cockpit for ConnectOnion agents.

Click toolkits to build an agent · scan its QR from the iOS app · watch live logs

PyPI Python Platform


Install

pipx install connectonion-studio      # or: pip install connectonion-studio
co-studio                             # opens http://127.0.0.1:9900

That's it. The first launch auto-creates your identity and activates your managed model key (needs internet — it's your own key, one per user). Offline on first run? Just run co auth once you're back online.

Desktop app (macOS)

A native macOS app (SwiftUI + WKWebView) lives in macos/ — the same cockpit in a real window with the traffic-light chrome and app icon. Build and run it from Xcode (macos/ConnectOnionStudio/); a signed .dmg for one-click install is on the way.

What it does

🧩 Create Form: name · model · toolkit checkboxes → identity + QR ready instantly
▶️ Run One process per agent, health-polled every 5 s, live state over WebSocket
📱 QR Bare 0x address — scan it in the iOS "Add agent" flow
📜 Logs Live stdout + framework-logger streams, per agent
🩺 Copy for Claude Paste-ready markdown diagnostics bundle, one click
🗑️ Delete Two-step confirm, then a permanent delete — identity, keys, and logs are removed for good

Toolkits: utility · web · files · shell (approval-gated) · image

Requirements

Python 3.11+ · macOS, Linux, or Windows (WSL recommended)

API reference
Method Path Returns
GET /api/agents {"agents": [AgentSummary]}
POST /api/agents AgentDetail — body {name, model, toolkits, trust}
GET /api/agents/{slug} AgentDetail
POST /api/agents/{slug}/start · /stop · /restart {"state": …}
POST /api/agents/{slug}/rename AgentSummary — body {name}
DELETE /api/agents/{slug} 204 (stops the agent, then permanently deletes it)
GET /api/agents/{slug}/qr.svg SVG QR
GET /api/agents/{slug}/diagnostics Markdown bundle
GET /api/setup/status Doctor checks
WS /ws/status Status frames (each change + every 5 s)
WS /ws/agents/{slug}/logs {"source": "stdout" | "logger", "line": …}
Storage & internals
~/.co-studio/agents/<slug>/   meta.json · agent.py · .env · .co/ · studio-stdout.log
  • Agent ports 8000–8099, allocated by socket probe (busy ports skipped, re-probed at start).
  • agent.py is standalone — eject it anywhere and python agent.py still works (the announce IP-trim patch is inlined).
Development (from source)
git clone https://github.com/EvanYifanYang/connectonion-studio && cd connectonion-studio
./install.sh
.venv/bin/co-studio
Env Effect
CONNECTONION_PATH=~/repo/connectonion ./install.sh Install the framework from a local checkout instead of PyPI
PYTHON=python3.12 ./install.sh Pick the interpreter

Security

  • The manager binds 127.0.0.1:9900 only.
  • Agent ports are unauthenticated and exposed on your LAN by host() — that is how the phone connects. Don't run on hostile networks.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

connectonion_studio-0.1.2.tar.gz (221.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

connectonion_studio-0.1.2-py3-none-any.whl (230.8 kB view details)

Uploaded Python 3

File details

Details for the file connectonion_studio-0.1.2.tar.gz.

File metadata

  • Download URL: connectonion_studio-0.1.2.tar.gz
  • Upload date:
  • Size: 221.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for connectonion_studio-0.1.2.tar.gz
Algorithm Hash digest
SHA256 fffa7351d9a33b1a057d06603ded2dce6db1a265e97010cd7aef5c48cdaccae3
MD5 340453d32971c2c324acad2252b2a7fe
BLAKE2b-256 efc814c0d5b44ad4e68b6293397f68324d3ecb0f96858087dfd55d4fb84f9915

See more details on using hashes here.

File details

Details for the file connectonion_studio-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for connectonion_studio-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a9dd6a0820c25b89ad9acef514bdf90093c7f9761c1f64d7732aca9e0d29288f
MD5 27045accd433e92da36ea7ab611cbe84
BLAKE2b-256 bf5138c69ad441efd8e840bf160faf35e29b2cc7a7a0bcc7bdb78d549d0d78fb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page