Skip to main content

SpielOS — AI Company Operating System (Open Source)

SpielOS is an open-source AI company operating system: a local harness for running your company with AI agents — durable goals, supervised runs, evidence, approvals, and AI departments that do real business work under one Director loop:

GOAL -> OBSERVE -> DECIDE -> ACT -> EVALUATE
          ^                            |
          +----------------------------+

The runtime owns every Goal, Run, approval, evidence record, and notification. Departments are Lego packages: self-contained folders that supply business behavior and never create another loop. Codex, OpenCode, Claude Code, and humans are all clients of the same persisted state. Nothing lives in chat memory — close the session, the company keeps its state on disk.

Install (one line)

pipx install spielos && spielos init

spielos init scaffolds a verified, self-contained harness home into your current folder — with OpenCode-style progress, an optional starter-department picker, host detection, and a runtime verification before it reports success.

Update (one line)

pipx upgrade spielos && spielos refresh

pipx upgrade fetches the newest release; spielos refresh re-vendors the runtime spine and host adapters into every home on this machine while keeping your strategy, assets, departments, installed agents, and .spielos/ state.

No pipx yet? The bootstrap installer sets everything up (Python check, pipx, spielos) and runs init in an empty folder automatically:

curl -fsSL https://raw.githubusercontent.com/ShayanSpiel/SpielOS/main/install.sh | sh

spielos init scaffolds a fresh home into your current folder — with OpenCode-style progress, an optional starter-department picker, host detection, and a runtime verification before it reports success.

Other install methods

spielos is also published to npm, Homebrew, and as a Docker image. Pick whichever fits your environment — all of them expose the same spielos CLI (python3 -m company under the hood), so spielos --version works everywhere:

# npm (global)
npm install -g spielos && spielos --version

# Homebrew
brew install shayanspiel/spielos/spielos && spielos --version

# Docker (ephemeral home mounted from the current directory)
docker run --rm -v "$PWD:/work" -w /work ghcr.io/shayanspiel/spielos:latest --version

The npm package and Homebrew formula are thin shims over the Python runtime, so Python 3.11+ with the spielos package available is still required on the host for the npm/Homebrew commands to run.

Fresh means: the spine only — runtime, company skills, OpenCode/Codex adapters, empty .spielos/ state, opencode.json, AGENTS.md. Zero departments, zero strategy content. Your company starts empty; the Director onboards you and capabilities are added when goals need them:

spielos add outbound                 # install a built-in department
spielos add ./team.sdep              # or your own exported bundle
spielos init --department seo        # or vendor starters at scaffold time

Scripted and CI runs stay deterministic: add -y/--yes to skip prompts, --json for a machine-readable receipt; exit code 0 means verified, 1 means failed with an actionable message.

Departments as products

Every department is one extractable folder: behavior (department.py), workflows, evals, skills, templates, and tooling live together.

spielos department export outbound --out ./dist   # portable .sdep bundle
spielos add ./outbound.sdep                        # install into a home
spielos add ./outbound.sdep --force                # upgrade in place
spielos init --department outbound                  # scaffold with one starter department

Bundles carry a checksummed manifest plus the department's skills. They never carry strategy, assets, credentials, or run state.

First-class workers

Any workflow compiles into a bounded agent worker (no Director, no routing):

spielos agent compile outbound --workflow social-lead-research --name lead-researcher

Emits the OpenCode agent, Codex TOML, and roster entry from one WorkflowSpec. The worker runs only that workflow, produces only its declared evidence kinds, never edits files; approvals still park in the runtime.

Extracted workers you can run today

The same worker pattern is published standalone — install once into Claude Code, OpenCode, or Codex CLI with one pasted command, and it works immediately:

Worker Keyword it owns Repo Guide
Lead Researcher AI lead research agent Lead-Researcher Guide
AI Keyword Research Agent AI keyword research automation skill AI-Keyword-Research-Agent Guide
Social Lead Researcher LinkedIn lead research agent Social-Lead-Researcher Guide
Email Outreach Agent Cold email automation agent Email-Outreach-Agent Guide: see repo
SEO Audit Agent Technical SEO audit agent SEO-Audit-Agent Guide: see repo
Content Production Agent AI article pipeline agent Content-Production-Agent Guide: see repo
Analytics Agent Marketing analytics agent Analytics-Agent Guide: see repo
SpielOS Workers 22 automation playbook recipes SpielOS-Workers Catalog

More workers and agent skills: Skills library · Prompt-cache audit tool · full ecosystem on the profile hub.

How a SpielOS-run company is organized

Concept Meaning Docs
Director One loop that owns goals, routing, approvals, evidence How it works
Departments Outbound, Content, Design, Analytics, SEO — Lego packages Departments
Workflows Repeatable playbooks inside a department Workflows
Agents Bounded executors — one job each Agents
Skills Reusable methods an agent follows Skills
Evals Deterministic rubric evaluation of produced work Evals
Artifacts Evidence-backed outputs of every run Artifacts
Connections Access to external systems (Buffer, PostHog, Search Console…) Connections

See it running live — the public record of a company operated by this system: spielos.xyz/live

Layout

company/            Python package: runtime spine, evals, connections, CLI
  skills/           operator methods (director, department-runner, …)
  departments/      LEGO SHELF — each folder is an extractable product
    _shared/        cross-department contract + shared methods
    <id>/skills/    department-owned methods
    design/tools/   render/TTS tooling · design/tokens/ brand tokens
hosts/              adapter sources vendored into homes by init
tests/              → company/tests/ (in-package)
docs/               architecture notes
.spielos/           private runtime state (gitignored; exists only when this
                    checkout itself operates as a live company home)

Authority for architecture, vocabulary, pursuit semantics, safety rules, and the owner doctrine: company/README.md.


SpielOS is built in the open by Shayan Spiel. Want these AI departments built, supervised, and measured for your business? Apply — free review · free review · no required call.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spielos-6.3.0.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spielos-6.3.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file spielos-6.3.0.tar.gz.

File metadata

  • Download URL: spielos-6.3.0.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for spielos-6.3.0.tar.gz
Algorithm Hash digest
SHA256 f969c23dbfe00354c0635495816a1aa0e8a2039bacfc1e731330a930368386d1
MD5 3a3978258dce62257175013693a0801c
BLAKE2b-256 b5626d3988941c772f6712262349f08ba1879ddddb6f830fdb8a7d8f572235fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for spielos-6.3.0.tar.gz:

Publisher: publish.yml on ShayanSpiel/SpielOS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file spielos-6.3.0-py3-none-any.whl.

File metadata

  • Download URL: spielos-6.3.0-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for spielos-6.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72029dd1f6d56c8ae8c19c2ac6e00c9714f969c48db16748ec096613809aaea9
MD5 adfdb4c7830221d4efcbc7680526a210
BLAKE2b-256 2951749a85c4b769573e78fb4e927bc4cf5956721eeff4429f339aa9cbd308c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for spielos-6.3.0-py3-none-any.whl:

Publisher: publish.yml on ShayanSpiel/SpielOS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

6.3.0 This release

2 files

6.2.7

2 files

6.2.6

2 files

6.2.5

2 files

6.2.4

2 files

6.2.3

2 files

6.2.2

2 files

6.2.1

2 files

6.2.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page