Skip to main content

psa-strategy-cli

AI-first command-line interface for PSA strategy storage, logs, and evaluation.

Package/install name: psa-strategy-cli
Command name: psa

Quick start (published package)

Run without installing:

uvx --from psa-strategy-cli psa --version

Install as a tool:

uv tool install psa-strategy-cli
psa --version

Workspace development mode

Run commands from the cli/ directory:

cd cli

Storage model

The CLI persists state inside the current working directory:

  • .psa/strategies/<strategy_id>/strategy.json
  • .psa/strategies/<strategy_id>/log.ndjson

Directories are created automatically on first write.

JSON mode

All operational commands require --json.

  • Success: JSON payload in output stream.
  • Error: JSON payload in stderr with:
    • error.code
    • error.message
    • error.details

Commands

Strategy

  • psa strategy upsert --strategy-id <id> --input <path|-> --json
  • psa strategy list --json
  • psa strategy show --strategy-id <id> --json
  • psa strategy exists --strategy-id <id> --json

Log

  • psa log append --strategy-id <id> --input <path|-> --json
  • psa log list --strategy-id <id> [--limit <n>] [--from-ts <ts>] [--to-ts <ts>] --json
  • psa log show --strategy-id <id> --log-id <id> --json
  • psa log tail --strategy-id <id> --limit <n> --json

Evaluate (strategy loaded from storage)

  • psa evaluate-point --strategy-id <id> --input <path|-> --output <path|-> --json [--pretty]
  • psa evaluate-rows --strategy-id <id> --input <path|-> --output <path|-> --json [--pretty]
  • psa evaluate-ranges --strategy-id <id> --input <path|-> --output <path|-> --json [--pretty]

Skill install

  • psa install-skill <runtime> [--skills-dir /path/to/skills-dir] [--agents-dir /path/to/agents-dir] --json
  • unknown runtime fallback: psa install-skill any-runtime --skills-dir /path/to/skills-dir --json

- means standard stream (stdin for --input, stdout for --output).

Examples

Create strategy

cat strategy.json | uv run --package psa-strategy-cli psa strategy upsert \
  --strategy-id main --input - --json

Append log entry

echo '{"event":"thesis_updated","note":"reduced risk"}' | \
uv run --package psa-strategy-cli psa log append \
  --strategy-id main --input - --json

Evaluate point using persisted strategy

echo '{"timestamp":"2026-01-01T00:00:00Z","price":45000}' | \
uv run --package psa-strategy-cli psa evaluate-point \
  --strategy-id main --input - --output - --json

Exit codes

  • 0: success
  • 2: CLI argument error
  • 3: I/O or JSON parsing error
  • 4: validation/domain/storage error
  • 1: unexpected internal error

Schema loading

CLI searches request schemas in this order:

  1. PSA_SCHEMA_DIR (if set)
  2. packaged schemas bundled inside the installed psa-strategy-cli distribution
  3. repository schemas/ directory (development fallback)

Release files for psa-strategy-cli 0.1.3

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

Source distribution (sdist)

Source distribution for psa-strategy-cli 0.1.3
File Size Uploaded
psa_strategy_cli-0.1.3.tar.gz 25.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for psa-strategy-cli 0.1.3
File Interpreter ABI Platform
psa_strategy_cli-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 57.9 kB

Release files / psa_strategy_cli-0.1.3.tar.gz

Download URL psa_strategy_cli-0.1.3.tar.gz
Size 25.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e61680c2b6d48d538fba77b706b20968895063c8e3dfb456efe3a750d81cd390
BLAKE2b-256 checksum
How to use checksums
ba9d49c74dec0e2efb0bfd67b8cf7583f2425dd76deef41483af47445150a8a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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 / psa_strategy_cli-0.1.3-py3-none-any.whl

Download URL psa_strategy_cli-0.1.3-py3-none-any.whl
Size 32.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
96230f10299a54063a06ed7508efb6cf63f17c18645ed8ddedb2962b254a83a8
BLAKE2b-256 checksum
How to use checksums
9df9afedc2169d39bdb70030ec9ebd2ab6445044ff88b0585efbf2c12b3a42e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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 history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

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