KONSEP DAN PENGEMBANGANOLAHRAGA TANPA AWAK · #bezpiLOTa · KAIROS DRONE AGENTDokumentasi
#bezpiLOTa→Drone Agent→Ekstensi
KairOS / DRONE AGENT / 06

Paket bertanda tangan menerima kumpulan kemampuan perangkat keras, MAVLink, telemetri, misi, dan jaringan yang terbatas, berjalan sebagai proses terpisah, dan berkomunikasi dengan host melalui IPC yang dapat diverifikasi. Kegagalan ekstensi tidak boleh menghentikan layanan kritis penerbangan.

BELUM DIRILIS

Model ekstensi dan CLI dijelaskan sebagai kontrak yang ditargetkan; registri, akar penandatanganan, dan SDK publik KairOS belum dirilis.

Repositori KairOS ↗
29izin kemampuan
ED25519tanda tangan paket
03plugin bawaan
CGROUPisolasi sumber daya
01
SISTEM EKSTENSI BERTANDA TANGAN

Lima batas perlindungan

01

Paket

Ekstensi dikemas sebagai .kairosplug dengan manifes, versi, titik masuk, kemampuan yang diminta, dan tanda tangan.

02

Kepercayaan

Tanda tangan Ed25519 diverifikasi sebelum ekstraksi; daftar pencabutan diterapkan saat boot. Paket tanpa tanda tangan hanya diizinkan dalam mode pengembang.

03

Pemberian izin operator

Izin ditampilkan kepada pengguna sebelum instalasi; izin sensitif memerlukan konfirmasi tambahan yang terpisah.

04

Batas proses

Setiap plugin berjalan dalam subproses/cgroup sendiri dengan batas CPU, memori, dan PID.

05

IPC kemampuan

RPC msgpack melalui soket Unix memverifikasi token kemampuan pada setiap panggilan API host.

02
IZIN

Izin dikelompokkan berdasarkan sumber daya sebenarnya

KelompokContoh kemampuan
Perangkat kerasUART, I²C, SPI, GPIO, USB serial/UVC, CSI
MAVLinkBaca, tulis, dan pendaftaran komponen mandiri
TelemetriBerlangganan, memperluas, dan memublikasikan peristiwa
Sensor / muatanMendaftarkan antarmuka sensor atau muatan
MisiBaca, tulis, dan rekam data misi
JaringanAkses HTTPS keluar hanya ke daftar izin dalam manifes

Izin tidak memberikan akses langsung ke seluruh sistem. Sebagai contoh, izin UART harus memberikan akses ke perangkat tertentu atau handle yang diperantarai, sedangkan akses jaringan keluar hanya mencakup domain yang dideklarasikan sebelumnya. Operator dapat mencabut izin dari Mission Control.

03
PENGEMBANGAN

Manifes dan konteks plugin minimal

yamlManifes KairOS minimal
name: cell-balance-monitor
version: 0.1.0
agent:
  entry: cell_balance:run
  capabilities:
    - telemetry.read
    - event.publish
Antarmuka yang ditargetkan KairOS: perintah baru dapat dijalankan setelah komponen terkait dirilis.
pythonContoh ekstensi agen
from kairos_sdk import PluginContext

async def run(ctx: PluginContext):
    async for battery in ctx.telemetry.subscribe("telemetry.battery"):
        cells = battery.get("cells", [])
        if cells and max(cells) - min(cells) > 0.15:
            await ctx.events.publish(
                "alert.cell_imbalance",
                {"spread_v": max(cells) - min(cells)},
            )
Antarmuka yang ditargetkan KairOS: perintah baru dapat dijalankan setelah komponen terkait dirilis.
04
CLI PLUGIN

Instalasi, izin, log, dan pengujian

bashCLI KairOS yang ditargetkan
kairos plugin install ./thermal-cam.kairosplug
kairos plugin enable thermal-cam
kairos plugin list
kairos plugin disable <name>
kairos plugin remove <name>
kairos plugin info <name>
kairos plugin perms <name>
kairos plugin logs <name>
kairos plugin test <path>
Antarmuka yang ditargetkan KairOS: perintah baru dapat dijalankan setelah komponen terkait dirilis.

install memverifikasi paket dan tanda tangan, lalu menampilkan izin yang diminta. enable menjalankan proses hanya setelah izin diberikan. info dan perms mendukung audit, logs mendukung diagnosis, dan test mendukung pengembangan lokal. Penghapusan harus menghentikan proses dan membersihkan keadaan dalam lingkupnya tanpa menyentuh ekstensi lain.

05
BAWAAN

Tiga plugin bawaan dan ekstensi perangkat

01

geofence

Memeriksa posisi terhadap zona yang diizinkan dan memublikasikan peristiwa yang dapat dipantau.

02

telemetry-logger

Merekam aliran telemetri terpilih dengan batas penyimpanan dan siklus hidup eksplisit.

03

mavlink-inspector

Menampilkan bingkai untuk diagnosis tanpa mengubah keadaan penerbangan secara bawaan.

04

Kamera termal

FLIR Lepton USB UVC, Y16 radiometrik, Celsius, palet/isoterm, dan antarmuka kamera MAVLink.

05

MAVLink Gimbal v2

Jembatan pengendali eksternal, perintah/status sikap, dan komponen 154.

06
YANG DIRILIS / YANG MENYUSUL

Memisahkan rilis pertama dari tahap berikutnya

Rilis pertama yang ditargetkanTahap berikutnya
Instalasi lokal bertanda tanganRegistri terhosting yang dapat dicari
Penegakan kemampuan pada setiap panggilan IPCPaket kairos_sdk publik mandiri
Komponen bawaan dan CLIPembuat kerangka proyek dan templat
Peninjauan dan pencabutan izinInstalasi dari URL Git
Pelaksana pengujianLapisan driver bersama dan dokumentasi pengembangan lengkap