CLI for Expedait project management — download specs, post comments
Project description
Expedait CLI
CLI for Expedait — lets AI coding agents download project specs and post comments via the Expedait API.
Usage
Run with uvx (recommended)
No installation needed — run directly:
uvx expedait-cli auth login
uvx expedait-cli projects list
uvx expedait-cli projects download 1
Add as a dev dependency
If your AI agent needs it available in the project environment:
uv add --group dev expedait-cli
Then reference it in your agent configuration (e.g. CLAUDE.md, .cursor/rules, etc.).
Project Setup
After authenticating, run init inside your project directory to store your tenant and project settings locally:
uvx expedait-cli init
This creates .expedait/settings.json with your tenant_id and project_id. Add .expedait/ to your .gitignore.
Once initialized, commands that need a project ID will resolve it automatically. Downloads default to .expedait/context/:
expedait projects download # downloads to .expedait/context/
expedait pages list # no --project-id needed
expedait pages download 42 # downloads to .expedait/context/
Resolution order for tenant/project: CLI flag > env var > .expedait/settings.json > ~/.expedait/config.json.
Authentication
Interactive login
uvx expedait-cli auth login
Prompts for login method (SSO or email/password). Stores credentials in ~/.expedait/config.json.
Environment variables (CI / agents)
export EXPEDAIT_TOKEN="your-jwt-token"
export EXPEDAIT_API_URL="https://your-instance.expedait.org"
export EXPEDAIT_TENANT_ID=1
Token resolution order: EXPEDAIT_TOKEN env var > ~/.expedait/config.json > error.
Commands
Auth
expedait auth login # Interactive login
expedait auth status # Show current user and tenant
expedait auth logout # Clear stored credentials
Projects
expedait projects list # List all projects
expedait projects get PROJECT_ID # Get project details
expedait projects download PROJECT_ID # Extract markdown to .expedait/context/
expedait projects download PROJECT_ID --download-format json # Download as JSON
expedait projects download PROJECT_ID --output-dir ./specs # Extract to custom directory
Pages
expedait pages list --project-id PROJECT_ID # List pages in a project
expedait pages get PAGE_ID # Print page markdown content
expedait pages full PAGE_ID # Full context (content + comments + deps)
expedait pages download PAGE_ID # Extract markdown to .expedait/context/
expedait pages download PAGE_ID --download-format json # Download as JSON
Comments
expedait comments list PAGE_ID # List comments on a page
expedait comments create PAGE_ID \ # Create a comment
--text "Comment content" \
--selected-text "text from page" \
--start-offset 100 \
--end-offset 120 \
--source-page-id 5 # Optional: agent's source page
expedait comments resolve PAGE_ID COMMENT_ID # Mark as resolved
expedait comments delete PAGE_ID COMMENT_ID # Delete a comment
Global Options
expedait --api-url https://host:8000 ... # Override API URL
expedait --tenant-id 2 ... # Override tenant
expedait --format json ... # Force JSON output
expedait --format text ... # Force human-readable output
expedait --version # Show version
Output format defaults to text when connected to a terminal, json when piped.
Agent Skills
For step-by-step guides on using the CLI from AI coding agents, see expedait-skills.
Development
git clone https://github.com/Expedait/expedait-cli.git
cd expedait-cli
uv sync --group dev
uv run python -m pytest
License
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
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 expedait_cli-0.2.2.tar.gz.
File metadata
- Download URL: expedait_cli-0.2.2.tar.gz
- Upload date:
- Size: 23.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5350472f51535529af2c5a9c0f6ee2ccd075e533fed06f497f49bb7ea011bc0
|
|
| MD5 |
c15a150ede32245f4b154fc38c7e229c
|
|
| BLAKE2b-256 |
f2a6724df99667e4d43dfbdaa9cf0fda6e94f07e7b6b7a1b42368f0f429f29e1
|
Provenance
The following attestation bundles were made for expedait_cli-0.2.2.tar.gz:
Publisher:
publish.yml on Expedait/expedait-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
expedait_cli-0.2.2.tar.gz -
Subject digest:
b5350472f51535529af2c5a9c0f6ee2ccd075e533fed06f497f49bb7ea011bc0 - Sigstore transparency entry: 1180244735
- Sigstore integration time:
-
Permalink:
Expedait/expedait-cli@811dfc953c5b8c189daa7350c243896bd320baee -
Branch / Tag:
refs/tags/v0.2.2 - Owner: https://github.com/Expedait
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@811dfc953c5b8c189daa7350c243896bd320baee -
Trigger Event:
push
-
Statement type:
File details
Details for the file expedait_cli-0.2.2-py3-none-any.whl.
File metadata
- Download URL: expedait_cli-0.2.2-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d06bd09bf8ac2213ca5a34348fb5c9370df3f8c6239328c193a130cde0e588f
|
|
| MD5 |
56d19bab78defbd6c7e790dcf048cf27
|
|
| BLAKE2b-256 |
d43aa5cf37089d7ae34c0132770c15fe4166f62e4f40618e4c947b96f8d439c4
|
Provenance
The following attestation bundles were made for expedait_cli-0.2.2-py3-none-any.whl:
Publisher:
publish.yml on Expedait/expedait-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
expedait_cli-0.2.2-py3-none-any.whl -
Subject digest:
5d06bd09bf8ac2213ca5a34348fb5c9370df3f8c6239328c193a130cde0e588f - Sigstore transparency entry: 1180244741
- Sigstore integration time:
-
Permalink:
Expedait/expedait-cli@811dfc953c5b8c189daa7350c243896bd320baee -
Branch / Tag:
refs/tags/v0.2.2 - Owner: https://github.com/Expedait
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@811dfc953c5b8c189daa7350c243896bd320baee -
Trigger Event:
push
-
Statement type: