8gent Code.Docs
Device Kit (8DK), Preview

Status and roadmap

What exists today, what does not, and what has to ship before a real device can pair with a running vessel.

No device works with 8gent today

8DK v1 is a library, merged to 8gent-code main but not yet in a release, and not on npm. No running vessel can pair a device until slice 2 ships the /device route.

v1: the library

Issue #3362, closed. Merged to main on 2 October 2026 by #3364, in packages/8dk, as the private workspace package @8gent/8dk 0.1.0. Status: merged to main, not yet in a release.

What it has:

  • defineDevice and manifest validation
  • DeviceRegistry: consent-first pairing with a 6-digit code, device tokens, grant, revoke, unpair
  • DeviceToolAdapter: allowed capabilities as tools, and the call checks
  • device_use in the permission engine, with shadow runs always refused
  • Frames, a frame parser and call matching (CallCorrelator, serveDevice)
  • Tests in packages/8dk/__tests__, with a pretend desk lamp used only as a test fixture

What it does not have: a way for a real device to reach a running vessel.

Slice 2: a person pairs a real device

Issue #3363. Open. Scope, from the issue:

  • A /device WebSocket route in the daemon that runs pairing and the link
  • Allowed capabilities wired into the agent's tools, through the existing approval surface
  • Pairings and grants kept across restarts, token stored only as a hash
  • One real device end to end
  • A consent prompt in plain words: Can read and Can do
  • A fallback for devices with no screen, so the code check does not silently disappear
  • Plain copy that the code proves "this is the device on this socket", not interception resistance

Done when a person pairs a real device, sees a plain-language prompt, allows one capability, and the agent uses it in a session.

Later

Named in the issues as not in slice 2: paired devices in the TUI, device decisions in the audit log, a result format for camera and screen capture (#972), and firmware that runs on devices.

These pages follow 8gent-code main. When the code changes, they change.