PERSONAL R&D · APR 2026 — PRESENT

AIKO — Personal OS Agent

Aiko is the agent layer I am building over my own machine: a local daemon, mobile app, Telegram bridge, embodied desktop stage, tool runtime, and memory system wired into one loop. It gives me one interface for files, shell, Git, Docker, calendar, web, voice, reading, image generation, and long-running build work.

Under the hood — the brain can move between local Ollama, MiniMax through OpenRouter, Kimi through Moonshot, and a CLI-agent bench. A single persisted identity sits above the model, while 88 manifest-backed skills provide the hands.
System shape Daemon, memory, tool runtime, phone surface, Telegram bridge, and factory orchestration are one loop. The mothership layer is the Skill Graph below: the part that turns scattered builds into callable capability, regardless of which model is active.
Aiko — character portrait
A · I · K · O
88
Callable Skills (DAG)
5
Memory Tiers
6
Limbic Dimensions
4
Brain Routes
79
Retargeted Motion Clips

Four bodies.
One mothership.

Aiko is not a single binary. A TypeScript daemon holds the identity; a React Native phone app, Telegram bridge, and desktop stage expose different ways to reach the same system. The body changes. The conversation and tools do not.

⌬ Core

aiko-core daemon

The brain. A Linux background process that can hot-swap Ollama, OpenRouter / MiniMax, Moonshot / Kimi, and CLI-agent providers without changing Aiko's identity. It owns memory, tools, proactive work, and event delivery.

TypeScriptNodeSQLite WALMoonshotOpenRouter
📱 Mobile

aiko-app

Android (Expo / React Native) client. Reaches the daemon's 100.x.y.z:8080 Tailscale IP and opens a long-lived WebSocket — zero public internet, zero cloud, encrypted end-to-end by WireGuard.

React NativeExpoTailscaleWebSocketMMKV
Aiko mobile app — intro screen
✉ Bridge

Telegram bridge

A persistent Telegram bot for casual contact and on-the-go control. Destructive actions are gated behind a TOTP challenge; the same shared logger streams ACK events back into the unified pipeline.

Telegram Bot APITOTPAuth GatePersistent Session
◈ Presence

Desktop stage

A movable VRM stage driven by Aiko's own stage directions. It connects live chat, Qwen3-TTS voice sync, swappable skins, and 79 retargeted motion clips into a visible PC presence.

Three.jsVRMQwen3-TTSKimodo MotionX11

The conscious pipeline.

Every inbound message — Telegram or mobile — runs through the same six-stage pipeline. Two of those stages are fast pattern matchers that never touch the LLM. Two background ticks run in parallel: a 60-second decay loop and a 3 AM distiller that compresses yesterday's diary into long-term facts.

01 / FAST

Appraisal

Pattern matcher reads the user message and emits a limbic delta — no LLM call.

02 / STATEFUL

Limbic Update

Delta applied to persisted state. Mood overlay derived for the system prompt.

03 / LLM

Brain Turn

Dynamic 8-section system prompt assembled per turn; reply streamed back.

04 / AGENTIC

Tool Loop

Structured tool calls are validated against skill manifests, executed, and fed back into the same turn.

05 / COST

Response Appraisal

Energy spent. Annoyance updated. Trust adjusted.

06 / PERSIST

Episodic Write

Turn appended to today's diary. Event mirrored to mobile + dashboard.

60s

Background tick — limbic decay applied, queued proactive messages delivered to whichever surface is connected.

3 AM

Nightly distillation — yesterday's diary read, compressed into a summary, relationship facts extracted and persisted to facts.json.

Five tiers, five lifetimes.

Memory in Aiko is not one bucket — it is a layered store, each tier with its own lifetime, write cadence, and access pattern. Identity is permanent and read every session; relationship facts are extracted nightly; episodic diaries grow append-only; working memory is per-session; world-state is live.

Identity

Lifetime · Permanent

Who Aiko is, who the user is, the relationship contract. persona.md, style doctrine, hard rules. Loaded every session.

Relationship

Lifetime · Long-Term

Preferences, habits, opinions, triggers. JSON key-value store extracted nightly by the distiller from raw diary text.

Episodic

Lifetime · Append-Only

Daily diary files at episodic/YYYY/MM/DD.md. Every turn appended. Summarized and compressed at 3 AM the following night.

Working

Lifetime · Session

Last 20 turns. What was just said. Cleared when the daemon restarts; reseeded from the diary on warm boot.

World State

Lifetime · Live

Machine state, time, environment, connected surfaces, currently-running skill jobs. JSON, rewritten on every tick.

The limbic layer.

Six dimensions. Each one persisted across restarts, mutated by the appraisal engine on every message, decayed on a 60-second tick, and overlaid onto the system prompt as a mood directive. Baseline-locking means that if affection and trust stay high for enough consecutive turns, the resting floor permanently rises.

AFFECTION
−100 … +100
Decay starts 48 h · 1 pt/hr
TRUST
−100 … +100
Decay starts 72 h · 0.5 pt/hr
ANNOYANCE
−100 … +100
Decay starts 30 m · 10 pt/hr
PROTECTIVENESS
−100 … +100
Decay starts 24 h · 2 pt/hr
CURIOSITY
−100 … +100
Decay starts 15 m · 15 pt/hr
ENERGY
0 … 100
Recovers from 2 h · 5 pt/hr
Proactive engine. Aiko can queue messages of its own. Four tiers — silent (A), queued (B), immediate push (C), and check-in (D) — are gated by current annoyance and focus mode. The 60-second tick decides which queued messages fire, and which surface they fire on. Late-night softness, post-silence check-ins, and focus-mode lockouts are tactical shifts derived from this layer alone.

88 hands. One system.

The active registry has grown from 54 to 88 manifest-backed skills. Foundations such as file, shell, and process access compose upward into library work, avatar control, diagnostics, media pipelines, and multi-agent pilots. The nodes below are a selected map of the current registry, not a frozen catalogue.

Mothership Definition

Where abandoned projects become working limbs.

This is the mothership: not a folder of old repos, but a core that can wrap them, validate them, route them, and let Aiko use them. A hackathon bot, a CLI utility, a media script, a model pipeline, or a weekend automation stops being a dead project once it ships as a manifest-backed skill. The graph records its dependencies, inputs, outputs, permissions, safety rules, and tier placement, so Aiko can compose it with everything else instead of treating it as another isolated codebase.

repo -> manifest script -> skill skill -> graph node graph node -> callable by Aiko skills -> composable workflows
FOUNDATIONSPrimitives
shell-exec file-read file-write file-find file-move file-delete dir-list process-list network-status-get system-info-get power-set service-set log-read totp-verify
SYSTEMControl & State
git-run docker-run docker-manage deps-install dependency-set package-set health-check job-schedule task-schedule task-control calendar-set sandbox-run
MIND + MEDIARecall & Creation
memory-save memory-search memory-decay diary-write knowledge-fetch text-extract text-summarize generate-image upscale-image passport-photo transcribe-audio speech-say deliver-media reaction-gif get-media-info watch-video weather-get url-fetch web-content-fetch web-act web-drive consult-gemmy cascade-bridge code-analyze problem-analyze zoltraak-scan self-bucket-list
GROWTHRecent Active Work
⌬ pilot diagnose self-diagnose app-launch monitor-control power-usage library-engine library-acquire library-operate library-sync-plan avatar avatar-control avatar-overlay avatar-pilot screen-record audio-cleaning comic-analyzer read-manhwa record-inner-audio usb-vault-backup media-validate grok-image-gen grok-video-gen

From three lanes to a pilot bench.

Aiko's first long-running build system used three Gemini lanes: Architect, Executor, and Auditor. The current runner is broader: it can hand bounded work to Codex, Claude, Antigravity / Gemini, or Cursor, while Aiko stays the front door and keeps each friend or pilot session separate from her own memory.

⌬ v1 Lane · Planner

Architect

The only agent that talks to me. Source code is read-only. Owns the canonical task plan (CSOT.md). Drives BRIEFING → ALIGNING → REVIEW phases.

Phase: BRIEFING / ALIGNING / REVIEW Time budget: Untimed Source role: blueprints.ts (~12 KB)
⚙ v1 Lane · Implementer

Executor

Pure code implementer. Never plans, never talks to me. Full CRUD on source + tests. Stages clean commits in the [AIKO:TASK] format. Never touches node_modules, .aiko/, or Aiko.md.

Phase: CODING Time budget: 15 min wall clock Source role: blueprints.ts (~3.7 KB)
⚖ v1 Lane · Gatekeeper

Auditor

Verification gatekeeper. Read-only on source code, full write on tests. Never rewrites production code. Routes the FSM forward, back, or to BLOCKED.

Phase: AUDITING Time budget: 5 min wall clock Source role: blueprints.ts (~4.6 KB)
$build BRIEFING CODING AUDITING ALIGNING REVIEW DONE

The first checkpoint.

This first recording captures the mobile surface as it existed at the end of April. It stays here as the original checkpoint, with the newer growth video below it.

▶ Aiko v1 · Mobile Surface Walk-Through

Recorded 29 April 2026 — portrait capture from the React Native phone app over Tailscale.

v1 checkpoint · 29 Apr 2026 — continue below for the current growth video

Not a redesign. A growth record.

The project started as a private mobile interface to a Linux agent. Each checkpoint added another kind of continuity: a place to read, a body on the desktop, more capable hands, and model-independent identity.

A phone surface for one local agent

The first version connected an Expo / React Native app to the Linux daemon over Tailscale, with Telegram as a second way to reach the same conversation, tools, and memory.

React NativeWebSocketTailscale

The Library grew beyond a tab

Source browsing, chapter downloads, comic and EPUB reading, resume state, narration, voice packs, and a navigable pixel room turned the app into a lived-in space rather than a chat client with extra screens.

SuwayomiOffline readingVoice packsPixel room

From a sprite to a desktop presence

The Agent Forge build connected Aiko's stage directions to a movable VRM stage, 79 retargeted motion clips, swappable skins, a read-only live chat tap, and Qwen3-TTS voice synchronization.

Three.jsVRMKimodo motionQwen3-TTS

PC and phone started sharing the same moment

The embodied experiment moved from isolated demos toward a live shared session: desktop presence, phone control, model and skin switching, and the motion pipeline shown as one evolving system.

PC + phoneLive sessionSkinsMotion research

Identity separated from the brain underneath

Aiko now has 88 active skills and can route between local Ollama, OpenRouter / MiniMax, Moonshot / Kimi, and CLI agents. Provider tags and isolated friend sessions make the system easier to inspect without fragmenting the one identity the user talks to.

88 skillsKimiCLI pilotsProvider attribution

Aiko, then and becoming.

A 93-second build diary: the pixel Library room, the first humanoid / VRM experiments, one live PC-and-phone session, swappable model skins, and the motion research that is shaping the next body.

9:16 portrait01:33H.264 + AAC

Welcome.

Holo