PyPI-first scaffold for a dual Codex and Claude science workspace.
Project description
Planetary atmosphere research, organized for fast science and reliable AI collaboration.
scix builds a reproducible dual-agent workspace for planetary-atmosphere research, so scientists and developers can focus on science instead of setup, and collaborate with AI agents that understand the shared context and tools of the stack.
Introduction • Who This Is For • Quick Start • Workflow Options • Contributing
Introduction
scix is the workspace layer for the planetary-atmosphere modeling stack. It assembles domain libraries into one working environment with shared AI policies and skills, so you have both the tools and the agent context to do your science faster, and collaborate with AI agents more effectively.
It is designed to work alongside:
- pydisort for DISORT-based radiative transfer workflows
- kintera for thermodynamics, equation of state, and chemistry
- pyharp for radiation infrastructure and opacity handling
- snapy for atmospheric dynamics and coupled workflow composition
- paddle for higher-level examples, tutorials, and exploratory modeling patterns
With scix, a fresh workspace gives you:
- a
repos/directory for the reference scientific packages - a
workspace/directory for your own scripts, models, and outputs - generated
AGENTS.md,CLAUDE.md, skills, hooks, and editor/tool configs - one setup path for both research users (
scix up) and contributors (scix dev)
You can also turn /workspace or any folder in repos/ into a git managed directory:
- just
cdinto the folder and rungit init scixwill ignore these directories in its own git version control so it does not interfere withscix's workspace management
Requirements
- macOS or Linux
- Python
>= 3.9
Quick Start
For a new research workspace:
mkdir my-scix-work
cd my-scix-work
python3 -m venv xenv
source xenv/bin/activate
pip install --upgrade pip
pip install scix paddle
scix up
If the short scix command is not on PATH in the current shell yet, run:
python -m scix up
For contributor setup, see the Contributing section below.
scix up will:
- create the workspace files and folders
- clone the reference repositories into
repos/ - generate Codex and Claude config, policy, and skills
- try to install missing
nvm, user-local Node.js/npm, Codex CLI, and Claude Code
The commands you will use most often are:
| Command | Use it when |
|---|---|
scix --help |
You want to see the list of available commands and options. |
scix up |
You are creating or refreshing a research workspace in the current directory. |
scix doctor |
You want a quick health check on the current workspace. |
scix sync |
You changed the AI canon and need to regenerate Codex/Claude outputs. |
scix install-repos |
One or more reference repositories are missing and need to be cloned again. |
scix dev |
You are working on the scix source repository itself. |
Whenever you return to the workspace, reactivate the local environment:
source xenv/bin/activate
Agent CLI Setup
scix up and scix dev try to install missing nvm, user-local Node.js/npm, Codex CLI, and Claude Code automatically.
If that automatic step fails, run this fallback sequence exactly:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.4/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
nvm install --lts
nvm use --lts
nvm alias default lts/*
npm install -g @openai/codex
npm install -g @anthropic-ai/claude-code
If codex or claude is still unavailable, start a new shell or load your shell profile with:
source ~/.bashrc
# or if you use zsh (Mac default):
source ~/.zshrc
Official references:
Authenticate Codex
codex login
Alternative auth flows:
codex login --device-auth
printenv OPENAI_API_KEY | codex login --with-api-key
If your installed Codex CLI uses a different login syntax, check:
codex --help
Authenticate Claude
claude auth login
If you use a token-based flow:
claude setup-token
Workflow Options
Terminal Workflow
From the workspace root:
source xenv/bin/activate
codex
or:
source xenv/bin/activate
claude
Workspace Layout
repos/: cloned reference repositories such aspydisort,kintera,pyharp,snapy, andpaddleworkspace/: your own analyses, experiments, prototypes, and notesxenv/: your manually created local Python environmentai/: the shared AI canon that generates Codex and Claude files
Contributing
If you are developing scix itself, clone the source repository instead of starting from pip install scix:
git clone https://github.com/zoeyzyhu/scix.git
cd scix
python3 -m venv xenv
source xenv/bin/activate
pip install --upgrade pip
pip install -e .[dev]
scix dev
scix dev bootstraps a contributor checkout in place. It keeps the existing source tree, creates any missing workspace files, optionally clones missing reference repositories, regenerates generated Codex and Claude files, and tries to install missing agent CLIs if needed.
Before changing shared agent behavior, read docs/AI_FOLDER_GUIDE.md. That guide explains whatthe repo-root ai/ folder controls, how it maps to generated agent files, and which files are safe to edit.
Install contributor hooks with:
pre-commit install
Run the main contributor checks with:
pre-commit run --all-files
pytest
python -m build
scix sync --check
When you change the AI canon:
- edit the repo-root
ai/files, not generated files under.codex/,.claude/,.agents/, or repo overlays - run
scix syncafter each logical change so generated files and the packaged template stay aligned - inspect both the generated agent diff and the template diff before you commit
- keep hooks portable and auditable, and never place secrets in prompts or scripts
- follow the
implementer -> tester -> reviewerworkflow
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scix-0.1.15.post0.tar.gz.
File metadata
- Download URL: scix-0.1.15.post0.tar.gz
- Upload date:
- Size: 888.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97554b368fe55d77ffa52af97684485a98bca0db07ad9f128a40568bbfad2f62
|
|
| MD5 |
314692818943110ef07978c537ea6e78
|
|
| BLAKE2b-256 |
10a881e0536832854dce07c04b1f6a66785d1c110e0e3d4776f442799cf29c3b
|
File details
Details for the file scix-0.1.15.post0-py3-none-any.whl.
File metadata
- Download URL: scix-0.1.15.post0-py3-none-any.whl
- Upload date:
- Size: 450.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a606ec109c5486da70240dee00d74b1eb1abd0c05a496af875c55eda98a5435f
|
|
| MD5 |
c7bc2ccdf8162e63b5ee6513cb1c8079
|
|
| BLAKE2b-256 |
551c9c44bafa11e2d34e0e34afbb4cbf2d7dec95b1f61379ec0bb8410f9e093c
|