In this tutorial, you'll set up your first OctoMY™ Agent - the node that runs on your robot.
Open a terminal and run:
./agent --personality MyFirstRobot
The --personality flag gives your Agent a name. This creates a separate Node Identity (NID) with its own data, sitting underneath your Sentient Identity (SID) — the human-operator identity that owns this and any other Nodes you create.
Pro Tip
Use descriptive personality names like "KitchenBot" or "GardenRover". You can run many Agents on the same machine, each with its own NID — and all of them owned by your single Sentient. You can switch between them without restarting the app.
When you start an Agent for the first time, it goes through a "birth" process:
Key Generation: A unique RSA key pair is created. This is your Agent's Node Identity (NID) — distinct from your Sentient Identity (SID), which represents you. Your SID owns this NID, and can own others.
Personality Creation: From the NID key, OctoMY™ derives:
Service Initialization: Core services start up in sequence.
Did You Know?
The identicon is mathematically derived from the NID's public key. The same key always produces the same identicon — useful for visually verifying identity across devices. Your Sentient has its own identicon too (a face); this one is the Agent's.
After birth, you'll see the main Agent window:
The large face display shows your robot's "expression." This is purely decorative but makes your robot feel more alive.
Tap the menu icon (☰) to access:
| Menu Item | Purpose |
|---|---|
| Settings | Configuration options |
| Hardware | Actuator/sensor setup |
| Pairing | Connect with Remotes |
| Utilities | Debug and testing tools |
If your Agent has attached hardware (motors, sensors), configure it now.
| Controller | Connection | Use Case |
|---|---|---|
| ArduMY | Serial USB | Arduino-based robots |
| Servotor32 | Serial USB | 32-channel servo controller |
| Virtual | None | Testing without hardware |
/dev/ttyUSB0)
Pro Tip
Don't have hardware yet? Select "Virtual" controller to continue learning. You can add real hardware later without losing your Agent's identity.
For the Remote to find your Agent, enable discovery:
The Agent will now broadcast its presence on the local network.
Check that your Agent is ready:
Look at the status bar at the bottom of the window:
| Status | Meaning |
|---|---|
| "Waiting for connections" | Ready, no Remotes connected |
| "1 Remote connected" | A Remote is controlling you |
| "Discovery active" | Broadcasting presence |
Go to ☰ Menu → Utilities → Identity to see:
"Could not bind to port 8124"
Another process is using the port. Either stop the other process or use a different port:
./agent --personality MyRobot --port 8125
"No serial ports found"
ls -la /dev/ttyUSB*sudo usermod -a -G dialout $USER"No Remotes can find me"
You now have a running Agent with:
This is one Agent out of potentially many your Sentient can own. When you want to add another (a workshop bot, a garden bot, a sandbox for testing), repeat this tutorial with a different --personality name and you'll have a second Node under the same Sentient. The Identity Switching page covers how to move between them.
Your first Remote - Set up a controller for your Agent