Skip to main content

A framework for running persistent AI agents.

Project description

Cousins

Working name - see naming. A framework for running persistent AI agents ("cousins").

Status: 0.1.0, pre-release. This repository is the product cut of an existing household framework, being rebuilt clean - free of any household, personal, or employer-specific material (see docs/PERIMETER.md).

What this is

A cousin is a long-lived AI agent with its own memory, identity, and chat surface. The framework provides the machinery to spawn, run, and maintain them. The original lives as a private household deployment; this repo is the distributable, general-purpose extraction of it.

Layout

src/cousins/      the package
tests/unit/       fast, isolated tests
tests/auto/       integration / end-to-end tests
docs/             architecture, contribution, perimeter policy
.github/workflows growth: CI

Getting started

cousins init                 # lay out the runtime tree at a default root
cousins init --root ./demo   # ...or at a path you choose
cousins onboard --root ./demo/cousins   # guided setup for a new cousin

cousins init is idempotent - safe to re-run. cousins onboard asks a handful of questions and scaffolds a cousin home with a validated cousin.toml.

With Nix:

nix build          # build the package
nix develop        # dev shell
nix flake check    # run the test suite in a sandbox

Running the tests

No dependencies, no pytest - stdlib only:

python3 -m tests._runner            # everything
python3 -m tests._runner unit       # only unit tests
python3 -m tests._runner --filter version -v

Exit code is 0 when every test passes, 1 otherwise. CI runs the same command across Python 3.11-3.13.

Naming

"Cousins" is a working title carried over from the origin framework's vocabulary. It is referenced only in README.md, pyproject.toml, and src/cousins/__init__.py, so a rename is a three-file change.

Roadmap

Tracked as the product-track items in the origin framework's backlog: cross-platform installer, onboarding wizard, external chat channels, provider abstraction, versioned releases, a sandbox run-mode toggle, and public + internal documentation.

Project details


Download files

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

Source Distribution

cousins-0.2.0.tar.gz (50.5 kB view details)

Uploaded Source

Built Distribution

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

cousins-0.2.0-py3-none-any.whl (60.2 kB view details)

Uploaded Python 3

File details

Details for the file cousins-0.2.0.tar.gz.

File metadata

  • Download URL: cousins-0.2.0.tar.gz
  • Upload date:
  • Size: 50.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for cousins-0.2.0.tar.gz
Algorithm Hash digest
SHA256 26bc513bbba90b99cd5fea51ad2f79aa36182b73bd410b37bc822433a5970b27
MD5 702fd685953fbaf6a51d0f323dcf55e2
BLAKE2b-256 6176f373748f29f7aa762204d78d6aa316238fb75db49d9ad8cd987587805e4d

See more details on using hashes here.

File details

Details for the file cousins-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: cousins-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 60.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for cousins-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 798d2050397316cf7aff8e8afac5d3462f1b517a3d1eb111927c06f411da7f7c
MD5 692e24b56260d66c4e3d4e8d7db2f6ac
BLAKE2b-256 b9b1e125ee4a0509598355b7e7f1c8b977ed62a4cf9217d87e5b5fc34a97b57f

See more details on using hashes here.

Supported by

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