Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

psi-agent

中文 | English

A portable and componentized agent framework.

Introduction

psi-agent is built on two core principles:

  • Portability: Copy just the workspace directory to migrate your agent completely.
  • Componentization: Agents are assembled from independent components that communicate via Unix sockets, ensuring loose coupling.

Installation

Using uvx (Recommended)

For quick one-off usage without cloning the repository:

uvx psi-agent <component> <subcommand> [options...]
# e.g., uvx psi-agent session --workspace ./workspace ...

Using pip

pip install psi-agent

Using uv

uv add psi-agent

Quick Start

  1. Create a workspace directory with your tools and skills (or use an example from examples/):
mkdir -p workspace/{tools,skills,systems}

See examples/a-simple-bash-only-workspace/ for a minimal example, or examples/an-openclaw-like-workspace/ for a more complete setup.

  1. Start the session:
psi-agent session \
  --workspace ./workspace \
  --channel-socket ./channel.sock \
  --ai-socket ./ai.sock
  1. Start an AI provider (e.g., OpenAI-compatible):
psi-agent ai openai-completions \
  --session-socket ./ai.sock \
  --model <model-name> \
  --api-key <your-api-key> \
  --base-url <provider-api-url>  # e.g., https://openrouter.ai/api/v1
  1. Start a channel to interact with your agent session:
psi-agent channel repl --session-socket ./channel.sock

CLI Interfaces

psi-agent provides two CLI interfaces:

  1. Subcommand interface (preferred): psi-agent <component> <subcommand>

    • Works with uvx without cloning the repository
    • Single entry point, easier to discover
    • Examples: psi-agent ai openai-completions, psi-agent channel repl
  2. Standalone commands: psi-<component>-<subcommand>

    • Shorter to type
    • Useful in scripts
    • Examples: psi-ai-openai-completions, psi-channel-repl

Both interfaces are functionally identical. The subcommand interface is recommended for general use.

Components

psi-agent consists of four component types:

Component Purpose
psi-ai-* LLM provider adapters (OpenAI, Anthropic, etc.)
psi-session Agent runtime loop, handles messages and tool calls
psi-channel-* Message channels (REPL, Telegram, Feishu, etc.)
psi-workspace-* Workspace packaging and mounting tools

Available Commands

After installation, these commands are available:

Subcommand format (preferred):

  • psi-agent ai openai-completions - OpenAI-compatible completion server
  • psi-agent ai anthropic-messages - Anthropic messages server
  • psi-agent session - Agent session runtime
  • psi-agent channel repl - Interactive REPL interface
  • psi-agent channel cli - CLI channel interface
  • psi-agent channel telegram - Telegram bot channel
  • psi-agent workspace pack - Package workspace to squashfs
  • psi-agent workspace unpack - Extract squashfs to directory
  • psi-agent workspace mount - Mount squashfs as overlayfs
  • psi-agent workspace umount - Unmount workspace
  • psi-agent workspace snapshot - Create workspace snapshot

Standalone format (also available):

  • psi-ai-openai-completions
  • psi-ai-anthropic-messages
  • psi-session
  • psi-channel-repl
  • psi-channel-cli
  • psi-channel-telegram
  • psi-workspace-pack
  • psi-workspace-unpack
  • psi-workspace-mount
  • psi-workspace-umount
  • psi-workspace-snapshot

Documentation

For detailed documentation including workspace structure, tool development, and configuration, see CLAUDE.md.

License

GNU Affero General Public License v3.0 - see LICENSE.md for details.

Metadata

Release files for psi-agent 0.0.1a20260509

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for psi-agent 0.0.1a20260509
File Size Uploaded Provenance Actions
psi_agent-0.0.1a20260509.tar.gz 617.5 kB Without provenance Details for psi_agent-0.0.1a20260509.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for psi-agent 0.0.1a20260509
File Interpreter ABI Platform Actions
psi_agent-0.0.1a20260509-py3-none-any.whl Python 3 none any Details for psi_agent-0.0.1a20260509-py3-none-any.whl

Total release size: 736.5 kB

Release files / psi_agent-0.0.1a20260509.tar.gz

Download URL psi_agent-0.0.1a20260509.tar.gz
Size 617.5 kB
Tags Source
SHA-256 checksum
How to use checksums
945088a2586e42512a5878e62ab74863f00bed981fcb11e0e38f32b11c53a783
BLAKE2b-256 checksum
How to use checksums
aaad456e4c5ce7e51693afb61e82cb07bc00bc6013f6ccb2741eebbc452bf4cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / psi_agent-0.0.1a20260509-py3-none-any.whl

Download URL psi_agent-0.0.1a20260509-py3-none-any.whl
Size 119.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
24ece918f2016d8833a00617b39d4b6d1987c63c545917fae0525afb72c91973
BLAKE2b-256 checksum
How to use checksums
7a734e207eb34533a23c1d04641410a0cdbf0a727f853a503b38018c01e2f4f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for psi-agent 0.0.1a20260509

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page