iop/README.md
toki f25eda05c3 refactor(benchmark): 전용 하네스를 폐기한다
제품 호출 안정성과 측정 경계를 다시 분리하고, 벤치 대상 경로의 최소 HTML 스모크와 초경량 단일 시도 비교만 남긴다.
2026-08-13 21:14:52 +09:00

41 lines
1.8 KiB
Markdown

# IOP
IOP is a provider and device execution platform. It exposes OpenAI- and Anthropic-compatible inference APIs, routes work through Edge provider pools, executes against Node-owned adapters, and presents fleet operations through Control Plane and the Flutter Client.
## Architecture
```text
Client -> Control Plane -> Edge -> Node -> Provider
| |
| +-- normalized inference and provider tunnels
+-- model routing, queues, leases, API compatibility
```
- Edge owns model routing, provider-pool admission, leases, external APIs, Node readiness, and reconnect fencing.
- Node owns provider adapter construction and local execution.
- Control Plane owns connected Edge views and operation relay, not Edge runtime state.
- Client consumes Control Plane fleet, Node, provider, and operation views.
- `packages/go/execution` contains transport-neutral provider primitives.
Internal provider selection uses `adapter + target`. `session_id` is opaque correlation only, and cancellation targets a non-empty `run_id`. Provider commands are limited to capabilities, transport status, and the Ollama API tunnel.
IOP does not own interactive host programs, persistent conversations, terminal emulation, arbitrary host command execution, or local filesystem execution context.
## Development
```bash
make proto
make proto-dart
go test -count=1 ./...
make client-test
make test-control-plane-edge-wire
make test-e2e
```
Start with `agent-contract/index.md` for protocol and runtime contracts, and `agent-spec/index.md` for living implementation summaries.
Operator and client setup guides:
- [Edge Local Quickstart](docs/edge-local-dev-guide.md)
- [dev OpenCode Settings Guide](docs/dev-opencode-settings-guide.md)
- [dev-corp Pi Settings Guide](docs/dev-corp-pi-settings-guide.md)