Metadata-Version: 2.4
Name: stillk
Version: 0.1.3
Summary: A scaffolding CLI for ML, DL, LLM, RAG and AI Agents projects.
Author: Stillk Contributors
License: MIT
Project-URL: Homepage, https://github.com/your-org/stillk
Project-URL: Repository, https://github.com/your-org/stillk
Project-URL: Issues, https://github.com/your-org/stillk/issues
Keywords: ml,deep-learning,llm,rag,ai-agents,cli,scaffolding
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Code Generators
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: typer>=0.12.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: pyyaml>=6.0.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
Requires-Dist: build>=1.2.0; extra == "dev"
Requires-Dist: twine>=5.0.0; extra == "dev"
Dynamic: license-file

# Stillk

Stillk is an open-source scaffolding CLI for machine learning, deep learning, LLM, RAG, and AI agent projects. It follows a create-react-app-inspired workflow so teams can generate a production-ready project skeleton in seconds.

## Why Stillk

- Generate a complete starter project with real folders and working files
- Support ML, DL, LLM, RAG, and AI agents from day one
- Modular registry-based template system for future growth
- Open source and designed for community-driven extension

## Features

- `stillk init <project-name>` to bootstrap a project
- Interactive project selection when flags are omitted
- Built-in templates for ML and LLM flows
- Pre-generated `pyproject.toml`, `README.md`, `Dockerfile`, `.env.example`, tests, and source folders
- Future plugin-ready command: `stillk add mlflow`, `stillk add rag`, `stillk add fastapi`

## Installation

```bash
pip install stillk
```

For local development:

```bash
python -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
```

## Quick start

```bash
stillk init meu-projeto --project-type ml --framework scikit-learn
stillk init meu-llm --project-type llm --framework transformers
stillk init
```

## AI Engineering Toolkit commands

Stillk now includes runtime tooling to help during development, training and maintenance:

- `stillk inspect` — analyze the current project for frameworks, models, datasets, Docker, GPU and give warnings.
- `stillk doctor` — run quick environment checks (Python, pip, Docker, GPU, PyTorch/TensorFlow).
- `stillk clean` — detect caches and temporary artifacts and optionally remove them (`--yes`).
- `stillk train` — detect training scripts and (optionally) execute them (`--execute`).
- `stillk eval` — run or detect evaluation pipelines and report metrics.
- `stillk benchmark` — lightweight benchmarking scaffold for models and pipelines.
- `stillk run <component>` — run project components such as `api`, `training`, `inference`.

### Analysis and context

- `stillk context` — generate LLM-optimized project context (architecture, entrypoints, important files). Use `--output` to write a Markdown summary.
- `stillk explain <target>` — explain a file, module, or the whole project (`stillk explain project`).
- `stillk diff` — analyze git changes and report technical impact on models, prompts, deps, configs, and pipelines.
- `stillk tokens` — estimate token usage for files/prompts/context (`--text`, `--price-per-1k`).
- `stillk optimize` — suggest optimizations for code, prompts, RAG, cache, and deps. Apply safe fixes only with `--apply --yes`.
- `stillk deps` — find unused, heavy, outdated, or conflicting dependencies.

### Data, models, RAG, and prompts

- `stillk dataset inspect <file>` — inspect CSV/JSON/JSONL/Parquet datasets (rows, dtypes, missing, duplicates, class distribution). Example: `stillk dataset inspect data/train.csv --target label`.
- `stillk model` — inspect model configs and checkpoints (framework, size, parameters when available).
- `stillk rag inspect` — inspect RAG directories, chunking, top-k, embeddings, and vector store settings.
- `stillk rag eval` — structural RAG evaluation / readiness checks (`--dataset` optional).
- `stillk prompt list` — list prompt files and versions.
- `stillk prompt test` — validate prompts against an eval dataset when configured.

### Environment, profiling, and experiments

- `stillk env` — report Python, OS, GPU, CUDA, Docker, and key dependencies. Use `--report` to write `stillk-env-report.md`.
- `stillk profile` — profile a script or command for wall time, CPU/GPU, and memory (`--script` / `--command`).
- `stillk reproduce` — collect commit, Python, deps, dataset, model, hardware, CUDA, and seeds into `reproduce.json`.
- `stillk experiment start` — register a local experiment (model, dataset, config, metrics, commit, timestamp).
- `stillk experiment list` — list experiments stored under `.stillk/experiments/`.


The interactive mode asks for:

- project type
- framework
- output folder
- project metadata

## Generated project structure

```text
meu-projeto/
├── src/
│   ├── data/
│   ├── features/
│   ├── models/
│   ├── training/
│   ├── inference/
│   ├── api/
│   ├── agents/
│   ├── graph/
│   ├── prompts/
│   ├── retrieval/
│   ├── embeddings/
│   ├── vectorstore/
│   └── evals/
├── data/
│   ├── raw/
│   ├── processed/
│   └── external/
├── configs/
├── notebooks/
├── tests/
├── scripts/
├── Dockerfile
├── pyproject.toml
├── README.md
├── .env.example
├── .gitignore
├── main.py
├── preprocessing.py
└── .github/
```

## Supported types

- Machine Learning
- Deep Learning
- LLM
- RAG
- AI Agents

## Supported frameworks

- Scikit-learn
- PyTorch
- XGBoost
- Transformers
- LangGraph

## Publishing to PyPI

To build the package:

```bash
python -m pip install -U build twine
python -m build
```

To publish:

```bash
python -m twine upload dist/*
```

Before publishing, configure your PyPI API token in your environment or use a trusted publishing workflow.

## Contributing

Contributions are welcome. Please open an issue or pull request with tests for new templates or features.

## License

MIT

Copyright (c) 2026 Lucas Balduino - Stillk
