Skip to main content

CLI for PSA workspace

Project description

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)

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

psa_strategy_cli-0.1.3.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

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

psa_strategy_cli-0.1.3-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file psa_strategy_cli-0.1.3.tar.gz.

File metadata

  • Download URL: psa_strategy_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for psa_strategy_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 e61680c2b6d48d538fba77b706b20968895063c8e3dfb456efe3a750d81cd390
MD5 8575c35e134d36013ddf5e382c3d241f
BLAKE2b-256 ba9d49c74dec0e2efb0bfd67b8cf7583f2425dd76deef41483af47445150a8a2

See more details on using hashes here.

File details

Details for the file psa_strategy_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: psa_strategy_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 32.7 kB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for psa_strategy_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 96230f10299a54063a06ed7508efb6cf63f17c18645ed8ddedb2962b254a83a8
MD5 bffb0ca1b1e1598e168b38aa36c9b0dd
BLAKE2b-256 9df9afedc2169d39bdb70030ec9ebd2ab6445044ff88b0585efbf2c12b3a42e2

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