Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
195 changes: 98 additions & 97 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,100 +1,101 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "shell_gpt"
description = "A command-line productivity tool powered by large language models, will help you accomplish your tasks faster and more efficiently."
keywords = ["shell", "gpt", "openai", "ollama", "cli", "productivity", "cheet-sheet"]
readme = "README.md"
license = "MIT"
requires-python = ">=3.10"
authors = [{ name = "Farkhod Sadykov", email = "farkhod@sadykov.dev" }]
dynamic = ["version"]
classifiers = [
"Operating System :: OS Independent",
"Topic :: Software Development",
"License :: OSI Approved :: MIT License",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "shell_gpt"
description = "A command-line productivity tool powered by large language models, will help you accomplish your tasks faster and more efficiently."
keywords = ["shell", "gpt", "openai", "ollama", "cli", "productivity", "cheet-sheet"]
readme = "README.md"
license = "MIT"
requires-python = ">=3.10"
authors = [{ name = "Farkhod Sadykov", email = "farkhod@sadykov.dev" }]
dynamic = ["version"]
classifiers = [
"Operating System :: OS Independent",
"Topic :: Software Development",
"License :: OSI Approved :: MIT License",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
"click >= 8.1.0, < 9.0.0",
"openai >= 2.0.0, < 3.0.0",
"typer >= 0.7.0, < 1.0.0",
"rich >= 13.1.0, < 14.0.0",
"distro >= 1.8.0, < 2.0.0",
'pyreadline3 >= 3.4.1, < 4.0.0; sys_platform == "win32"',
"prompt_toolkit >= 3.0.51",
]

[project.optional-dependencies]
litellm = [
"litellm == 1.83.4"
]
test = [
"pytest >= 7.2.2, < 8.0.0",
"requests-mock[fixture] >= 1.10.0, < 2.0.0",
"isort >= 5.12.0, < 6.0.0",
"black == 23.1.0",
"mypy == 1.1.1",
"types-requests == 2.28.11.17",
"codespell >= 2.2.5, < 3.0.0"
]
dev = [
"ruff == 0.0.256",
"pre-commit >= 3.1.1, < 4.0.0",
]

[project.scripts]
sgpt = "sgpt:cli"

[project.urls]
homepage = "https://github.com/ther1d/shell_gpt"
repository = "https://github.com/ther1d/shell_gpt"
documentation = "https://github.com/TheR1D/shell_gpt/blob/main/README.md"

[tool.hatch.version]
path = "sgpt/__version__.py"

[tool.hatch.build.targets.wheel]
only-include = ["sgpt"]

[tool.hatch.build.targets.sdist]
only-include = [
"sgpt",
"tests",
"README.md",
"LICENSE",
"pyproject.toml",
]

[tool.isort]
profile = "black"
skip = "__init__.py"

[tool.mypy]
strict = true
exclude = ["llm_functions"]

[tool.ruff]
select = [
"E", # pycodestyle errors.
"W", # pycodestyle warnings.
"F", # pyflakes.
"C", # flake8-comprehensions.
"B", # flake8-bugbear.
]
ignore = [
"E501", # line too long, handled by black.
"C901", # too complex.
"B008", # do not perform function calls in argument defaults.
"E731", # do not assign a lambda expression, use a def.
]

[tool.codespell]
skip = '.git,venv'
"rich >= 13.1.0, < 14.0.0",
"distro >= 1.8.0, < 2.0.0",
'pyreadline3 >= 3.4.1, < 4.0.0; sys_platform == "win32"',
"prompt_toolkit >= 3.0.51",
]
[project.optional-dependencies]
litellm = [
"litellm == 1.83.4"
]
test = [
"pytest >= 7.2.2, < 8.0.0",
"requests-mock[fixture] >= 1.10.0, < 2.0.0",
"isort >= 5.12.0, < 6.0.0",
"black == 23.1.0",
"mypy == 1.1.1",
"types-requests == 2.28.11.17",
"codespell >= 2.2.5, < 3.0.0"
]
dev = [
"ruff == 0.0.256",
"pre-commit >= 3.1.1, < 4.0.0",
]
[project.scripts]
sgpt = "sgpt:cli"
[project.urls]
homepage = "https://github.com/ther1d/shell_gpt"
repository = "https://github.com/ther1d/shell_gpt"
documentation = "https://github.com/TheR1D/shell_gpt/blob/main/README.md"
[tool.hatch.version]
path = "sgpt/__version__.py"
[tool.hatch.build.targets.wheel]
only-include = ["sgpt"]
[tool.hatch.build.targets.sdist]
only-include = [
"sgpt",
"tests",
"README.md",
"LICENSE",
"pyproject.toml",
]
[tool.isort]
profile = "black"
skip = "__init__.py"
[tool.mypy]
strict = true
exclude = ["llm_functions"]
[tool.ruff]
select = [
"E", # pycodestyle errors.
"W", # pycodestyle warnings.
"F", # pyflakes.
"C", # flake8-comprehensions.
"B", # flake8-bugbear.
]
ignore = [
"E501", # line too long, handled by black.
"C901", # too complex.
"B008", # do not perform function calls in argument defaults.
"E731", # do not assign a lambda expression, use a def.
]
[tool.codespell]
skip = '.git,venv'