Claude ee4b8c052f Implement aios initial direction: AI-managed OS with shared memory
This commit implements the new direction for aios:
- AI conversation interface replaces traditional shell
- aigpt integration for shared memory across containers
- systemd-nspawn for environment isolation

Changes:
- Added aios-install.sh: Complete installer script
- Added cfg/mcp.json: MCP server configuration for aigpt
- Added cfg/config.toml: aios configuration with permission system
- Added cfg/nspawn/aios.nspawn: systemd-nspawn configuration
- Updated build.zsh: Integrated aigpt installation and setup
- Updated README.md: Documented new architecture and philosophy

Architecture:
User → AI Chat → Commands → Execution
         ↓
     aigpt (shared memory)
         ↓
  systemd-nspawn (isolated environment)

Philosophy:
Simply insert AI into existing flows (shell → AI chat)
2025-11-06 12:36:50 +00:00
2025-04-12 02:51:15 +09:00
2025-04-12 02:51:16 +09:00
2024-02-13 10:35:51 +09:00
2024-02-12 09:28:34 +09:00
2025-08-10 07:56:31 +09:00
2024-03-05 23:32:36 +09:00

ai os

aios = AI-managed OS with shared memory

An ArchLinux-based OS where AI conversation interface replaces the traditional shell.

User → AI Chat → Commands → Execution
          ↓
      aigpt (shared memory)
          ↓
    systemd-nspawn (isolated environment)

Philosophy

Insert AI into existing flows

  • Traditional: User → Shell → Commands
  • aios: User → AI Chat → Commands

Simply insert AI layer into the existing workflow.

Core Features

1. AI-First Interface

Default interface is AI conversation, not shell.

> Install rust development environment
✓ Installing rust, rust-analyzer, neovim
✓ Done

> What did I install yesterday?
Yesterday you installed Python with poetry.

2. Shared Memory (aigpt)

All containers share the same memory database.

Host: ~/.config/syui/ai/gpt/memory.db (shared)
  ↓
aios-dev  → bind mount → same DB
aios-prod → bind mount → same DB

AI learns from all environments and remembers your preferences.

3. Environment Isolation

Execution environments are isolated using systemd-nspawn.

# Development environment
$ systemd-nspawn --machine=aios-dev

# Production environment
$ systemd-nspawn --machine=aios-prod

Memory is shared, but environments are separated.

Architecture

aios (ArchLinux base)
├── aigpt (memory system)
│   ├── SQLite with WAL mode
│   ├── Layer 3: Personality analysis
│   └── Layer 4: Relationship inference
├── MCP (AI connection standard)
│   └── Claude Code / ChatGPT / Custom AI
├── systemd-nspawn (container runtime)
│   └── Shared memory bind mount
└── Permission system
    ├── Auto-allow
    ├── Notify
    ├── Require approval
    └── Deny

Quick Start

Installation

# Clone repository
$ git clone https://github.com/syui/aios
$ cd aios

# Run installer
$ sudo ./aios-install.sh

Usage

# Start aios container
$ sudo systemctl start systemd-nspawn@aios

# Enter aios shell
$ sudo machinectl shell aios

# Inside aios, AI chat interface starts
[aios] >

Container Distribution

Pre-built containers are available:

# Docker
$ docker run -it git.syui.ai/ai/os
$ docker run -it ghcr.io/syui/aios

# Podman
$ podman pull aios  # using shortname alias

Configuration

Directory Structure

~/.config/syui/ai/
├── gpt/
│   ├── memory.db       # Shared memory (SQLite WAL)
│   ├── memory.db-wal
│   └── memory.db-shm
├── mcp.json           # MCP server configuration
└── config.toml        # aios configuration

MCP Configuration

~/.config/syui/ai/mcp.json:

{
  "mcpServers": {
    "aigpt": {
      "command": "aigpt",
      "args": ["server", "--enable-layer4"]
    }
  }
}

Permission System

~/.config/syui/ai/config.toml:

[permissions]
# Auto-allow (no approval)
auto_allow = ["pacman -Q*", "ls", "cat"]

# Notify (log only)
notify = ["pacman -S*", "git clone*"]

# Require approval
require_approval = ["rm -rf*", "systemctl stop*"]

# Deny
deny = ["rm -rf /", "mkfs*"]

Building from Source

# Install dependencies
$ pacman -S base-devel archiso docker git rust

# Build bootstrap image
$ ./build.zsh

# Result: aios-bootstrap.tar.gz

Integration with aigpt

aios is designed to work with aigpt (AI memory system).

aigpt provides:

  • Layer 1: Memory storage
  • Layer 2: Priority scoring
  • Layer 3: Personality analysis (Big Five)
  • Layer 4: Relationship inference

All memories are shared across containers through bind-mounted SQLite database.

Comparison

Aspect Traditional OS aios
Interface Shell (bash/zsh) AI Chat
Command Memorize syntax Natural language
Configuration Manual editing AI executes
Learning No Yes (aigpt)
Memory No Shared (SQLite)
Isolation Docker/Podman systemd-nspawn

Philosophy Detail

From conversation with AI about aigpt:

"What is the essence of this design?" "Simply insert AI into existing flows"

  • aigpt: Insert AI between conversation and memory
  • aios: Insert AI between user and commands

Not building something entirely new. Just adding an AI layer to existing workflows. And prepare the environment for that.

This is aios.


© syui

Description
No description provided
https://github.com/syui/aios
Readme 1.1 GiB
latest Latest
2024-03-05 04:27:29 +00:00
Languages
Shell 100%