SkillAgentSearch skills...

Agent

An open and scalable video surveillance system for anyone making this world a better and more peaceful place.

Install / Use

/learn @kerberos-io/Agent

README

Kerberos Agent

<a target="_blank" href="https://kerberos.io"><img src="https://img.shields.io/badge/kerberos-website-gray.svg?longCache=true&colorB=brightgreen" alt="Kerberos Agent"></a> <a target="_blank" href="https://doc.kerberos.io"><img src="https://img.shields.io/badge/kerberos-documentation-gray.svg?longCache=true&colorB=brightgreen" alt="Kerberos Agent"></a>

<a target="_blank" href="https://circleci.com/gh/kerberos-io/agent"><img src="https://circleci.com/gh/kerberos-io/agent.svg?style=svg"/></a> <img src="https://github.com/kerberos-io/agent/workflows/Go/badge.svg"/> <img src="https://github.com/kerberos-io/agent/workflows/React/badge.svg"/> <img src="https://github.com/kerberos-io/agent/workflows/CodeQL/badge.svg"/>

<a target="_blank" href="https://pkg.go.dev/github.com/kerberos-io/agent/machinery"><img src="https://pkg.go.dev/badge/github.com/kerberos-io/agent/machinery" alt="PkgGoDev"></a> <a target="_blank" href="https://codecov.io/gh/kerberos-io/agent"><img src="https://codecov.io/gh/kerberos-io/agent/branch/master/graph/badge.svg" alt="Coverage Status"></a> <a target="_blank" href="https://goreportcard.com/report/github.com/kerberos-io/agent/machinery"><img src="https://goreportcard.com/badge/github.com/kerberos-io/agent/machinery" alt="Coverage Status"></a> <a target="_blank" href="https://app.codacy.com/gh/kerberos-io/agent?utm_source=github.com&utm_medium=referral&utm_content=kerberos-io/agent&utm_campaign=Badge_Grade"><img src="https://api.codacy.com/project/badge/Grade/83d79d3092c040acb8c51ee0dfddf4b9"/> <a target="_blank" href="https://www.figma.com/proto/msuYC6sv2cOCqZeDtBxNy7/%5BNEW%5D-Kerberos.io-Apps?node-id=1%3A1788&viewport=-490%2C191%2C0.34553584456443787&scaling=min-zoom&page-id=1%3A2%3Ffuid%3D449684443467913607" alt="Kerberos Agent"></a>

<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a> donate <a target="_blank" href="https://twitter.com/kerberosio?ref_src=twsrc%5Etfw"><img src="https://img.shields.io/twitter/url.svg?label=Follow%20%40kerberosio&style=social&url=https%3A%2F%2Ftwitter.com%2Fkerberosio" alt="Twitter Widget"></a> kerberosio

Slack invite

Docker Hub | Documentation | Website | View Demo

Before you continue, this repository discusses one of the components of the Kerberos.io stack, the Kerberos Agent, in depth. If you are looking for an end-to-end deployment guide have a look here.

Kerberos Agent is an isolated and scalable video (surveillance) management agent made available as Open Source under the MIT License. This means that all the source code is available for you or your company, and you can use, transform and distribute the source code; as long you keep a reference of the original license. Kerberos Agent can be used for commercial usage (which was not the case for v2). Read more about the license here.

Kerberos Agent go through UI

:thinking: Prerequisites

  • An IP camera which supports a RTSP H264 or H265 encoded stream,
  • Any hardware (ARMv6, ARMv7, ARM64, AMD64) that can run a binary or container, for example: a Raspberry Pi, NVidia Jetson, Intel NUC, a VM, Bare metal machine or a full blown Kubernetes cluster.

:video_camera: Is my camera working?

There are a myriad of cameras out there (USB, IP and other cameras), and it might be daunting to know if Kerberos Agent will work for your camera. Therefore we are listing all the camera models that are acknowlegded by the community. Feel free to add your camera to the list as well!

:books: Overview

Up and running in no time

  1. Quickstart - Docker
  2. Quickstart - Balena
  3. Quickstart - Snap

Introduction

  1. A world of Kerberos Agents

Running and automation

  1. How to run and deploy a Kerberos Agent
  2. Access the Kerberos Agent
  3. Configure and persist with volume mounts
  4. Configure with environment variables

Insights

  1. Encryption
  2. H264 vs H265

Contributing

  1. Contribute with Codespaces
  2. Develop and build
  3. Building from source
  4. Building for Docker

Varia

  1. Support our project
  2. What is new?
  3. Contributors

Quickstart - Docker

The easiest way to get your Kerberos Agent up and running is to use our public image on Docker hub. Once you have selected a specific tag, run docker command below, which will open the web interface of your Kerberos agent on port 80, and off you go. For a more configurable and persistent deployment have a look at Running and automating a Kerberos Agent.

docker run -p 80:80 --name mycamera -d --restart=always kerberos/agent:latest

If you want to connect to a USB or Raspberry Pi camera, you'll need to run our side car container which proxies the camera to an RTSP stream. In that case you'll want to configure the Kerberos Agent container to run in the host network, so it can connect directly to the RTSP sidecar.

docker run --network=host --name mycamera -d --restart=always kerberos/agent:latest

Quickstart - Balena

Run Kerberos Agent with Balena Cloud super powers. Monitor your Kerberos Agent with seamless remote access, over the air updates, an encrypted public https endpoint and much more. Checkout our application video-surveillance on Balena Hub, and create your first or fleet of Kerberos Agent(s).

deploy with balena

Quickstart - Snap

Run Kerberos Agent with our Snapcraft package.

 snap install kerberosio

Once installed you can find your Kerberos Agent configration at /var/snap/kerberosio/common. Run the Kerberos Agent as following

sudo kerberosio.agent -action=run -port=80

A world of Kerberos Agents

The Kerberos Agent is an isolated and scalable video (surveillance) management agent with a strong focus on user experience, scalability, resilience, extension and integration. Next to the Kerberos Agent, Kerberos.io provides many other tools such as Kerberos Factory, Kerberos Vault, and Kerberos Hub to provide additional capabilities: bring your own cloud, bring your own storage, central overview, live streaming, machine learning, etc.

Deployment Agent

As mentioned above Kerberos.io applies the concept of agents. An agent is running next to (or on) your camera, and is processing a single camera feed. It applies motion based or continuous recording and makes those recordings available through a user friendly web interface. A Kerberos Agent allows you to connect to other cloud services or integrate with custom applications. Kerberos Agent is used for personal applications and scales to enterprise production level deployments. Learn more about the deployment strategies here.

This repository contains everything you'll need to know about our core product, Kerberos Agent. Below you'll find a brief list of features and functions.

  • Low memory and CPU usage.
  • Simplified and modern user interface.
  • Multi architecture (ARMv6, ARMv7, ARM64, AMD64)
  • Multi stream, for example recording in H265, live streaming and motion detection in H264.
  • Multi camera support: IP Cameras (H264 and H265), USB cameras and Raspberry Pi Cameras through a RTSP proxy.
  • Single camera per instance (e.g. one container per camera).
  • Low resolution streaming through MQTT and high resolution streaming through WebRTC (only supports H264/PCM).
  • Backchannel audio from Kerberos Hub to IP camera (requires PCM ULAW codec)
  • Audio (AAC) and video (H264/H265) recording in MP4 container.
  • End-to-end encryption through MQTT using RSA and AES (livestreaming, ONVIF, remote configuration, etc)
  • Conditional recording: offline mode, motion region, time table, continuous recording, webhook condition etc.
  • Post- and pre-recording for motion detection.
  • Encryption at rest using AES-256-CBC.
  • Ability to create fragmented recordings, and streaming through HLS fMP4.
  • Deploy where you want with the tools you use: docker, docker compose, ansible, terraform, kubernetes, etc.
  • Cloud storage/persistance: Kerberos Hub, Kerberos Vault and Dropbox. [(WIP: Minio, Storj, Google Drive,

Related Skills

View on GitHub
GitHub Stars997
CategoryDevelopment
Updated4h ago
Forks140

Languages

Go

Security Score

100/100

Audited on Mar 24, 2026

No findings