Skip to main content

Castform

Castform is the SDK and small companion CLI for the Castform training platform. It depends on the platform-independent benchmax runtime and adds authentication, validation, uploads, launches, run inspection, hosted corpus/RAG libraries, trace processing and project scaffolding.

Python 3.12 is required.

Login profiles

Production is the built-in default, so normal users only run castform login. Internal and self-hosted deployments use named profiles:

castform login --profile staging --domain castform.dev
castform profile activate staging
castform profile list

Use castform --profile prod <command> for a one-command override. Self-hosted profiles can pass --api-url, --auth-url, --llm-url, and --app-url to castform login when their services do not follow the standard subdomain layout. Profile routing is stored in ~/.castform/config.toml; login sessions remain in the protected ~/.castform/credentials.json.

Start a standalone project

uv tool install -U castform
castform login
castform setup --dir my-environment
cd my-environment
uv sync
uv run python main.py

castform setup writes a pyproject.toml, a runnable main.py, small seed datasets and script-focused agent skills. Bare main.py prepares data and runs local validation with two siblings; it never launches training. After reviewing the result, launch explicitly:

uv run python main.py launch

The generated script makes every boundary visible:

  1. prepare or reference data with normal Python library calls;
  2. materialize an example through Environment.create_dataset, then call validate_environment for the real two-sibling environment contract;
  3. call dump_bundle(..., pip_dependencies=[...]) with explicit remote deps;
  4. call upload_assets(bundle=...) with that exact bundle and only the dataset splits that should be uploaded;
  5. ask for cost confirmation, then call TrainerClient.launch_training_run.

The CLI does not duplicate that orchestration. Use it for login, setup, doctor, guide, runs inspection and cancelling a run with castform stop. castform whoami and castform logout manage the active session.

Optional libraries

Add only the optional features the project uses:

uv add 'castform[rag]'

Trace adapters and castform.traces.TracesPipeline ship with the base castform package; no trace-specific extra is required.

Vector-store integrations ship as their own extras: castform[chroma], castform[pinecone], castform[turbopuffer].

Corpus ingestion, QA generation and trace preparation are Python library workflows. Keep their calls in the project's data stage so the preparation is reviewable and reproducible. Remote rollout imports must also be listed explicitly in the bundle's pip_dependencies; project dependencies and rollout dependencies are related but serve different runtimes.

Dataset upload is optional. Omit train_dataset and/or eval_dataset when the environment resolves that split at runtime, such as through Harbor or Git. Passing an empty list is explicit and uploads an empty JSONL; it does not mean “omit.”

License

Apache 2.0 © 2026 CGFT Inc.

Download files

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

Source Distribution

castform-0.2.4.tar.gz (450.5 kB view details)

Uploaded Source

Built Distribution

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

castform-0.2.4-py3-none-any.whl (385.6 kB view details)

Uploaded Python 3

File details

Details for the file castform-0.2.4.tar.gz.

File metadata

  • Download URL: castform-0.2.4.tar.gz
  • Upload date:
  • Size: 450.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for castform-0.2.4.tar.gz
Algorithm Hash digest
SHA256 dc83a4e6cc9efe6fa0008fcbee8737893937ad46e03c4423dda4ded90ad5c3de
MD5 dbf1bded362cd35062ef092ced769297
BLAKE2b-256 5929bc0a51bc8505b76c75085f5c7bfb958c1a7cb19e7493f888556613c7dbc8

See more details on using hashes here.

File details

Details for the file castform-0.2.4-py3-none-any.whl.

File metadata

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

File hashes

Hashes for castform-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 ca757aa2622e7f76708d43f40fae197cd318f7cfc683b9ce7ad82802539d7237
MD5 804a5979e7005fe7f862044fff30cc4d
BLAKE2b-256 8f59d7651e916711a3f137cdae172c12b0abae559bd1c6f257737c56f7030a41

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.5

2 files

This release

0.2.4 This release

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1

2 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