agentix-cli 0.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- agentix_cli-0.1.1/.github/workflows/publish.yml +43 -0
- agentix_cli-0.1.1/.gitignore +78 -0
- agentix_cli-0.1.1/.python-version +1 -0
- agentix_cli-0.1.1/CLAUDE.md +109 -0
- agentix_cli-0.1.1/LICENSE +21 -0
- agentix_cli-0.1.1/PKG-INFO +63 -0
- agentix_cli-0.1.1/README.md +41 -0
- agentix_cli-0.1.1/pyproject.toml +40 -0
- agentix_cli-0.1.1/src/agentix/__init__.py +3 -0
- agentix_cli-0.1.1/src/agentix/__main__.py +6 -0
- agentix_cli-0.1.1/src/agentix/cli.py +12 -0
- agentix_cli-0.1.1/tests/__init__.py +1 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
build:
|
|
9
|
+
name: Build distribution
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- name: Install uv
|
|
14
|
+
uses: astral-sh/setup-uv@v5
|
|
15
|
+
with:
|
|
16
|
+
enable-cache: true
|
|
17
|
+
- name: Set up Python
|
|
18
|
+
run: uv python install
|
|
19
|
+
- name: Build package
|
|
20
|
+
run: uv build
|
|
21
|
+
- name: Store the distribution packages
|
|
22
|
+
uses: actions/upload-artifact@v4
|
|
23
|
+
with:
|
|
24
|
+
name: python-package-distributions
|
|
25
|
+
path: dist/
|
|
26
|
+
|
|
27
|
+
publish-to-pypi:
|
|
28
|
+
name: Publish to PyPI
|
|
29
|
+
needs: [build]
|
|
30
|
+
runs-on: ubuntu-latest
|
|
31
|
+
environment:
|
|
32
|
+
name: pypi
|
|
33
|
+
url: https://pypi.org/p/agentix
|
|
34
|
+
permissions:
|
|
35
|
+
id-token: write # IMPORTANT: mandatory for trusted publishing
|
|
36
|
+
steps:
|
|
37
|
+
- name: Download all the dists
|
|
38
|
+
uses: actions/download-artifact@v4
|
|
39
|
+
with:
|
|
40
|
+
name: python-package-distributions
|
|
41
|
+
path: dist/
|
|
42
|
+
- name: Publish distribution to PyPI
|
|
43
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
build/
|
|
12
|
+
develop-eggs/
|
|
13
|
+
dist/
|
|
14
|
+
downloads/
|
|
15
|
+
eggs/
|
|
16
|
+
.eggs/
|
|
17
|
+
lib/
|
|
18
|
+
lib64/
|
|
19
|
+
parts/
|
|
20
|
+
sdist/
|
|
21
|
+
var/
|
|
22
|
+
wheels/
|
|
23
|
+
pip-wheel-metadata/
|
|
24
|
+
share/python-wheels/
|
|
25
|
+
*.egg-info/
|
|
26
|
+
.installed.cfg
|
|
27
|
+
*.egg
|
|
28
|
+
MANIFEST
|
|
29
|
+
|
|
30
|
+
# PyInstaller
|
|
31
|
+
*.manifest
|
|
32
|
+
*.spec
|
|
33
|
+
|
|
34
|
+
# Installer logs
|
|
35
|
+
pip-log.txt
|
|
36
|
+
pip-delete-this-directory.txt
|
|
37
|
+
|
|
38
|
+
# Unit test / coverage reports
|
|
39
|
+
htmlcov/
|
|
40
|
+
.tox/
|
|
41
|
+
.nox/
|
|
42
|
+
.coverage
|
|
43
|
+
.coverage.*
|
|
44
|
+
.cache
|
|
45
|
+
nosetests.xml
|
|
46
|
+
coverage.xml
|
|
47
|
+
*.cover
|
|
48
|
+
*.py,cover
|
|
49
|
+
.hypothesis/
|
|
50
|
+
.pytest_cache/
|
|
51
|
+
|
|
52
|
+
# Virtual environments
|
|
53
|
+
venv/
|
|
54
|
+
ENV/
|
|
55
|
+
env/
|
|
56
|
+
.venv
|
|
57
|
+
|
|
58
|
+
# IDEs
|
|
59
|
+
.vscode/
|
|
60
|
+
.idea/
|
|
61
|
+
*.swp
|
|
62
|
+
*.swo
|
|
63
|
+
*~
|
|
64
|
+
.DS_Store
|
|
65
|
+
|
|
66
|
+
# mypy
|
|
67
|
+
.mypy_cache/
|
|
68
|
+
.dmypy.json
|
|
69
|
+
dmypy.json
|
|
70
|
+
|
|
71
|
+
# Pyre type checker
|
|
72
|
+
.pyre/
|
|
73
|
+
|
|
74
|
+
# pytype static type analyzer
|
|
75
|
+
.pytype/
|
|
76
|
+
|
|
77
|
+
# uv
|
|
78
|
+
.uv/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.9
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# agentix - Claude Code Instructions
|
|
2
|
+
|
|
3
|
+
## Project Overview
|
|
4
|
+
|
|
5
|
+
agentix is a Python CLI tool distributed via PyPI. This project uses modern Python packaging practices with `uv` for package management.
|
|
6
|
+
|
|
7
|
+
## Development Workflow
|
|
8
|
+
|
|
9
|
+
### Package Management
|
|
10
|
+
|
|
11
|
+
- **Always use `uv`** for package management operations
|
|
12
|
+
- Install dependencies: `uv pip install -e .`
|
|
13
|
+
- Add new dependencies: Add to `pyproject.toml` dependencies array, then `uv pip install -e .`
|
|
14
|
+
- Build package: `uv build`
|
|
15
|
+
- Run commands: `uv run <command>`
|
|
16
|
+
|
|
17
|
+
### Code Organization
|
|
18
|
+
|
|
19
|
+
- Source code lives in `src/agentix/`
|
|
20
|
+
- Tests live in `tests/`
|
|
21
|
+
- Use the `src/` layout (prevents accidental imports from repo root)
|
|
22
|
+
|
|
23
|
+
### Version Management
|
|
24
|
+
|
|
25
|
+
- Version is defined in TWO places: `src/agentix/__init__.py` and `pyproject.toml`
|
|
26
|
+
- When bumping version, update BOTH files to keep them in sync
|
|
27
|
+
- Follow semantic versioning (MAJOR.MINOR.PATCH)
|
|
28
|
+
|
|
29
|
+
### Publishing to PyPI
|
|
30
|
+
|
|
31
|
+
This project uses **Trusted Publishing** (OIDC-based, no API tokens needed):
|
|
32
|
+
|
|
33
|
+
1. Ensure version is bumped in both files
|
|
34
|
+
2. Commit all changes
|
|
35
|
+
3. Create and push a git tag: `git tag vX.Y.Z && git push origin vX.Y.Z`
|
|
36
|
+
4. Create a GitHub release from the tag (via web UI or `gh release create`)
|
|
37
|
+
5. GitHub Actions will automatically build and publish to PyPI
|
|
38
|
+
|
|
39
|
+
**Never manually publish to PyPI** - always use the GitHub Actions workflow.
|
|
40
|
+
|
|
41
|
+
### Python Version
|
|
42
|
+
|
|
43
|
+
- Minimum supported: Python 3.9
|
|
44
|
+
- `.python-version` file specifies the version `uv` should use
|
|
45
|
+
- CI/CD uses `uv python install` to install the correct version
|
|
46
|
+
|
|
47
|
+
## Code Style
|
|
48
|
+
|
|
49
|
+
- Follow PEP 8
|
|
50
|
+
- Use type hints where appropriate
|
|
51
|
+
- Keep CLI code modular and testable
|
|
52
|
+
|
|
53
|
+
## Testing
|
|
54
|
+
|
|
55
|
+
- Write tests in `tests/` directory
|
|
56
|
+
- Run tests with: `uv run pytest`
|
|
57
|
+
- Aim for good coverage of CLI functionality
|
|
58
|
+
|
|
59
|
+
## Common Tasks
|
|
60
|
+
|
|
61
|
+
### Local development and testing
|
|
62
|
+
```bash
|
|
63
|
+
uv pip install -e .
|
|
64
|
+
agentix # Test the CLI
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Building for distribution
|
|
68
|
+
```bash
|
|
69
|
+
uv build
|
|
70
|
+
ls -la dist/ # Check outputs
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Adding a new dependency
|
|
74
|
+
1. Add to `dependencies` array in `pyproject.toml`
|
|
75
|
+
2. Run `uv pip install -e .`
|
|
76
|
+
3. Test that it works
|
|
77
|
+
|
|
78
|
+
### Version bump and release
|
|
79
|
+
```bash
|
|
80
|
+
# 1. Update version in __init__.py and pyproject.toml
|
|
81
|
+
# 2. Commit changes
|
|
82
|
+
git add .
|
|
83
|
+
git commit -m "Bump version to X.Y.Z"
|
|
84
|
+
git push
|
|
85
|
+
|
|
86
|
+
# 3. Create and push tag
|
|
87
|
+
git tag vX.Y.Z
|
|
88
|
+
git push origin vX.Y.Z
|
|
89
|
+
|
|
90
|
+
# 4. Create GitHub release
|
|
91
|
+
gh release create vX.Y.Z --title "vX.Y.Z" --notes "Release notes here"
|
|
92
|
+
|
|
93
|
+
# GitHub Actions will handle the rest
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Project Structure
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
agentix/
|
|
100
|
+
├── src/agentix/ # Main package code
|
|
101
|
+
│ ├── __init__.py # Version and package init
|
|
102
|
+
│ ├── __main__.py # Entry point
|
|
103
|
+
│ └── cli.py # CLI implementation
|
|
104
|
+
├── tests/ # Test files
|
|
105
|
+
├── .github/workflows/ # CI/CD workflows
|
|
106
|
+
├── pyproject.toml # Package configuration
|
|
107
|
+
├── .python-version # Python version for uv
|
|
108
|
+
└── CLAUDE.md # This file
|
|
109
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Christian Sagstetter
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agentix-cli
|
|
3
|
+
Version: 0.1.1
|
|
4
|
+
Summary: A CLI tool for [description TBD]
|
|
5
|
+
Project-URL: Homepage, https://github.com/saggl/agentix
|
|
6
|
+
Project-URL: Repository, https://github.com/saggl/agentix.git
|
|
7
|
+
Project-URL: Issues, https://github.com/saggl/agentix/issues
|
|
8
|
+
Author-email: Christian Sagstetter <christian.sagstetter@gmail.com>
|
|
9
|
+
License: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Classifier: Development Status :: 3 - Alpha
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Requires-Python: >=3.9
|
|
21
|
+
Description-Content-Type: text/markdown
|
|
22
|
+
|
|
23
|
+
# agentix
|
|
24
|
+
|
|
25
|
+
[Description of what agentix does - to be filled in]
|
|
26
|
+
|
|
27
|
+
## Installation
|
|
28
|
+
|
|
29
|
+
### Using uv (recommended)
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
uv pip install agentix-cli
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Using pip
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
pip install agentix-cli
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Usage
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
agentix
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Development
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Clone the repository
|
|
51
|
+
git clone https://github.com/saggl/agentix.git
|
|
52
|
+
cd agentix
|
|
53
|
+
|
|
54
|
+
# Install in development mode
|
|
55
|
+
uv pip install -e .
|
|
56
|
+
|
|
57
|
+
# Run tests (when available)
|
|
58
|
+
uv run pytest
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## License
|
|
62
|
+
|
|
63
|
+
MIT
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# agentix
|
|
2
|
+
|
|
3
|
+
[Description of what agentix does - to be filled in]
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
### Using uv (recommended)
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
uv pip install agentix-cli
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
### Using pip
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pip install agentix-cli
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
agentix
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Development
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Clone the repository
|
|
29
|
+
git clone https://github.com/saggl/agentix.git
|
|
30
|
+
cd agentix
|
|
31
|
+
|
|
32
|
+
# Install in development mode
|
|
33
|
+
uv pip install -e .
|
|
34
|
+
|
|
35
|
+
# Run tests (when available)
|
|
36
|
+
uv run pytest
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## License
|
|
40
|
+
|
|
41
|
+
MIT
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["hatchling"]
|
|
3
|
+
build-backend = "hatchling.build"
|
|
4
|
+
|
|
5
|
+
[dependency-groups]
|
|
6
|
+
dev = []
|
|
7
|
+
|
|
8
|
+
[project]
|
|
9
|
+
name = "agentix-cli"
|
|
10
|
+
version = "0.1.1"
|
|
11
|
+
description = "A CLI tool for [description TBD]"
|
|
12
|
+
readme = "README.md"
|
|
13
|
+
requires-python = ">=3.9"
|
|
14
|
+
license = {text = "MIT"}
|
|
15
|
+
authors = [
|
|
16
|
+
{name = "Christian Sagstetter", email = "christian.sagstetter@gmail.com"}
|
|
17
|
+
]
|
|
18
|
+
classifiers = [
|
|
19
|
+
"Development Status :: 3 - Alpha",
|
|
20
|
+
"Intended Audience :: Developers",
|
|
21
|
+
"License :: OSI Approved :: MIT License",
|
|
22
|
+
"Programming Language :: Python :: 3",
|
|
23
|
+
"Programming Language :: Python :: 3.9",
|
|
24
|
+
"Programming Language :: Python :: 3.10",
|
|
25
|
+
"Programming Language :: Python :: 3.11",
|
|
26
|
+
"Programming Language :: Python :: 3.12",
|
|
27
|
+
"Programming Language :: Python :: 3.13",
|
|
28
|
+
]
|
|
29
|
+
dependencies = []
|
|
30
|
+
|
|
31
|
+
[project.scripts]
|
|
32
|
+
agentix = "agentix.__main__:main"
|
|
33
|
+
|
|
34
|
+
[project.urls]
|
|
35
|
+
Homepage = "https://github.com/saggl/agentix"
|
|
36
|
+
Repository = "https://github.com/saggl/agentix.git"
|
|
37
|
+
Issues = "https://github.com/saggl/agentix/issues"
|
|
38
|
+
|
|
39
|
+
[tool.hatch.build.targets.wheel]
|
|
40
|
+
packages = ["src/agentix"]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for agentix"""
|