Python CLI for scaffolding and managing Terse projects.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
terse-cli
Python CLI for scaffolding, generating, testing, and deploying Terse jobs.
Installation
python -m pip install terse-cli
The CLI installs the published terse-sdk automatically.
Requirements
- Python
>=3.11 uvfor working with scaffolded projects
The CLI itself can be installed with pip, but the generated project scaffold uses uv sync and uv run.
Quick Start
terse init my-terse-job
cd my-terse-job
uv sync
terse test
If you connect integrations later, regenerate the project helpers:
terse generate
Commands
terse init [PROJECT_NAME]terse generateterse integrateterse run [JOB_NAME] --event ... --event-file ...terse test [JOB_NAME]terse deploy
Supported Generated Helpers
The current Python codegen surface is intentionally small:
Schedule.cron(...)Attio.skill(...)Snowflake.skill(...)- deterministic wrappers on
agent.tools.attioandagent.tools.snowflake
terse generate writes these helpers into src/terse_generated.py inside your project.
For example, after generating Snowflake helpers and registering skills=[Snowflake.skill()], a job can call:
from terse_sdk import CronJobInputEvent
from terse_generated import TerseAgent
def handle(event: CronJobInputEvent, agent: TerseAgent) -> None:
result = agent.tools.snowflake.execute_query(query="select current_date()")
print(result.rowCount)
Environment Variables
TERSE_API_KEY: required forterse generate,terse deploy, and any agent/tool calls made by your jobTERSE_BACKEND_URL: optional backend override for local developmentTERSE_FRONTEND_URL: optional frontend override for local development
Typical Workflow
terse init my-terse-job
cd my-terse-job
uv sync
terse test
terse deploy
To run a job against a serialized event:
terse run --event '{"integrationType":"cron_job","eventType":"manual","formattedContent":"Manual trigger","debugLog":"Manual trigger"}'
Source
- Homepage: useterse.ai
- Repository: github.com/TerseAI/Terse
- Issues: github.com/TerseAI/Terse/issues
Development
If you are working on the CLI itself from the monorepo:
npm run python:setup
npm run python:check
npm run python:build
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 terse_cli-0.1.1.tar.gz.
File metadata
- Download URL: terse_cli-0.1.1.tar.gz
- Upload date:
- Size: 52.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a7c0d0ecd0bdb90329a94689e1e6a964bfea4cb6ccd0fced07a032e642ce2b9
|
|
| MD5 |
2fc9dfafbe1adc025e2086aba5fb0e50
|
|
| BLAKE2b-256 |
8f9d28593fc00da3b6ccc9527c3af03929dac9b9e7128e8b986b5cf75bbe5efa
|
File details
Details for the file terse_cli-0.1.1-py3-none-any.whl.
File metadata
- Download URL: terse_cli-0.1.1-py3-none-any.whl
- Upload date:
- Size: 29.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32f38291a1d3816f89e54437d4b3f7477f7a998d7f3ce7d6e423631f55eb6eab
|
|
| MD5 |
d217f3cbe3dfc0c3cd5275c56e0154b3
|
|
| BLAKE2b-256 |
34eabe7d34cb4f5000fa220c7ebe321683a50d38192598a7c94af41d7530155a
|