Skip to content

koryaga/persona

Repository files navigation

Persona — universal AI agent

Purpose

Persona is a simple AI agent running from cli that:

  • performs general user tasks, like document processing, internet search and data manipulation
  • supports Anthropic skills to satisfy user requests

Key features

  • Runs shell commands and executes generated Python code inside a disposable Docker Ubuntu sandbox container
  • Loads and exposes skill to the agent (see --skills-dir)
  • Exchanges files with the user via the folder (see --mnt-dir)

Prerequisites

  • Docker
  • Python 3.13+
  • uv package manager

Installation

git clone https://github.com/koryaga/persona.git
cd persona
uv sync
source .venv/bin/activate

Configuration

Copy .env.example to .env and configure:

cp .env.example .env
# Edit .env with your API keys and settings

Environment variables

Variable Description Default
OPENAI_MODEL Model to use cogito:14b
OPENAI_API_KEY API key ollama
OPENAI_API_BASE API base URL http://localhost:11434/v1

Sandbox environment variables

Create .env.sandbox to pass environment variables into the sandbox container. Variables set in this file will be available inside the Docker container for skills to use.

Example .env.sandbox:

TRAVILY_TOKEN=your-tavily-api-token
SKILLSMP_API_KEY=your-skillsmp-api-key

More configuration info

Build sandbox image

docker build -t ubuntu.sandbox .

Usage

persona [--mnt-dir PATH] [--skills-dir PATH]

Options

  • --mnt-dir: Host directory to mount inside sandbox (default: .)
  • --no-mnt: Don't mount any host directory at /mnt
  • --skills-dir: Host directory to mount at /skills inside sandbox (default: skills)
  • --container-image: Docker image to use for sandbox

Examples

# Run with default mounts (current directory)
persona

# No mount at all
persona --no-mnt

# Custom user directory
persona --mnt-dir /home/user/project

# Custom user directory and skill folder 
persona --mnt-dir /home/user/project --skills-dir /home/user/persona/skills

Skills

Persona supports Anthropic-style skills. Skills are loaded from the --skills-dir (default: skills/).

Provided OOB:

More skills on Agent Skills Marketplace

About

Universal command line AI agent

Resources

Stars

Watchers

Forks

Packages

No packages published