OpenKite trading assistant packaged as a modular Python application.
Project description
openkite
openkite is a modular Python package for the OpenKite trading assistant. It converts the notebook-based app into a reusable installable application with a CLI and Gradio UI.
Features
- Reusable package structure for agent, MCP runtime, UI, and persistence
- Configuration from
.env(API keys, model, server URL, host, port) - Chat history persisted in SQLite
- CLI entrypoint (
openkite) - CI and PyPI publish workflows for GitHub Actions
Installation
pip install openkite
For local development:
pip install -e .[dev]
Configuration
Create a .env file in your working directory (or pass --env-file):
OPENAI_API_KEY=sk-...
FIRECRAWL_API_KEY=fc-...
OPENKITE_MODEL=gpt-5.4
OPENKITE_KITE_SSE_URL=https://mcp.kite.trade/sse
OPENKITE_DB_PATH=~/.openkite/chat_history.db
OPENKITE_HOST=127.0.0.1
OPENKITE_PORT=7860
OPENKITE_SHARE=false
Usage
Launch the chat app:
openkite chat
Show config validation summary:
openkite check
Pass custom runtime options:
openkite chat --env-file .env --host 0.0.0.0 --port 7860
Release Automation
This repository includes two workflows:
.github/workflows/ci.yml.github/workflows/publish.yml
publish.yml runs on every push to master, builds distributions, and publishes to PyPI using OIDC trusted publishing.
Version is set to 0.1.N where N is github.run_number.
One-time PyPI Setup
- Create the
openkiteproject on PyPI. - Configure a Trusted Publisher in PyPI pointing to this GitHub repository and the
masterbranch workflow. - Create a GitHub environment named
pypi. - Push to
masterto trigger automated publish.
Notes
- Node.js (
npx) is required to run the Firecrawl MCP server. - Keep
.envout of source control. openkite/_version.pyis generated at build time bysetuptools_scm.
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 Distributions
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 openkite-0.1.0-py3-none-any.whl.
File metadata
- Download URL: openkite-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01ffa9da83977b6a21eb19c6ab2fecd7add5d6ee432db3a0da440b8293d21937
|
|
| MD5 |
edf17a02a9531ba0b23cff43cac27a5b
|
|
| BLAKE2b-256 |
a06ecffae5becaee70194594e8464f65794118962d11eedbfdf1972f5e8c76c7
|