agent-cli-sdk 0.0.1a1__tar.gz → 0.1.0__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.
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/workflows/ci.yml +32 -1
- agent_cli_sdk-0.1.0/CHANGELOG.md +39 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/PKG-INFO +1 -1
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/pyproject.toml +21 -1
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/__init__.py +1 -1
- agent_cli_sdk-0.0.1a1/.github/workflows/publish.yml +0 -45
- agent_cli_sdk-0.0.1a1/CHANGELOG.md +0 -17
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.gitattributes +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/CODEOWNERS +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.github/pull_request_template.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.gitignore +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/.pre-commit-config.yaml +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/CODE_OF_CONDUCT.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/CONTRIBUTING.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/LICENSE +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/README.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/SECURITY.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/docs/copilot_integration_analysis.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/docs/copilot_standard_flow.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/docs/feasibility_and_plan.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/docs/universal_sdk_proposal.md +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/demo_launcher.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/custom_tools.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/error_handling.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/file_management.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/hello_world.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/multiple_sessions.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/persistence.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/tasks/pr_visualization.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/examples/utils.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/core/agent.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/core/driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/core/types.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/drivers/cli_json_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/drivers/copilot_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/drivers/gemini_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/drivers/mock_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/utils/jsonrpc.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/src/agent_sdk/utils/schema.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/__init__.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/test_copilot_e2e.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/test_copilot_session_advanced.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/test_copilot_tools_advanced.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/test_gemini_e2e.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/test_session.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/e2e/testharness.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_agent.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_cleanup.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_copilot_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_driver_config.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_event_handling.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_gemini_driver.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_jsonrpc.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_schema.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_tool_handling.py +0 -0
- {agent_cli_sdk-0.0.1a1 → agent_cli_sdk-0.1.0}/tests/test_tools_unit.py +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
name: CI
|
|
1
|
+
name: CI/CD
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
@@ -6,8 +6,12 @@ on:
|
|
|
6
6
|
pull_request:
|
|
7
7
|
branches: [ main ]
|
|
8
8
|
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
9
12
|
jobs:
|
|
10
13
|
test:
|
|
14
|
+
name: Test
|
|
11
15
|
runs-on: ubuntu-latest
|
|
12
16
|
strategy:
|
|
13
17
|
matrix:
|
|
@@ -38,3 +42,30 @@ jobs:
|
|
|
38
42
|
with:
|
|
39
43
|
name: coverage-${{ matrix.python-version }}
|
|
40
44
|
path: ./.coverage*
|
|
45
|
+
|
|
46
|
+
release:
|
|
47
|
+
name: Release
|
|
48
|
+
needs: test
|
|
49
|
+
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
|
50
|
+
runs-on: ubuntu-latest
|
|
51
|
+
concurrency: release
|
|
52
|
+
permissions:
|
|
53
|
+
contents: write
|
|
54
|
+
id-token: write
|
|
55
|
+
|
|
56
|
+
steps:
|
|
57
|
+
- uses: actions/checkout@v4
|
|
58
|
+
with:
|
|
59
|
+
fetch-depth: 0
|
|
60
|
+
|
|
61
|
+
- name: Python Semantic Release
|
|
62
|
+
id: release
|
|
63
|
+
uses: python-semantic-release/python-semantic-release@v9.15.0
|
|
64
|
+
with:
|
|
65
|
+
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
66
|
+
|
|
67
|
+
- name: Publish to PyPI
|
|
68
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
69
|
+
if: steps.release.outputs.released == 'true'
|
|
70
|
+
with:
|
|
71
|
+
password: ${{ secrets.PYPI_API_TOKEN }}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# CHANGELOG
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
## v0.1.0 (2026-02-03)
|
|
5
|
+
|
|
6
|
+
### Chores
|
|
7
|
+
|
|
8
|
+
- Bump version to 0.0.1a1 (pre-release)
|
|
9
|
+
([`f886ea2`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/f886ea21871fe32d1444bfc2a0a71c1071dced8a))
|
|
10
|
+
|
|
11
|
+
- Update semantic-release configuration
|
|
12
|
+
([`5bdeaf2`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/5bdeaf2335b8f0bfa218b58634b507133b527988))
|
|
13
|
+
|
|
14
|
+
Co-authored-by: RbBtSn0w <1135031+RbBtSn0w@users.noreply.github.com>
|
|
15
|
+
|
|
16
|
+
### Continuous Integration
|
|
17
|
+
|
|
18
|
+
- Add auto-publish workflow for tags
|
|
19
|
+
([`580b4fd`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/580b4fdbeb9fdcb9f2f2e80f22d8060b82616ad3))
|
|
20
|
+
|
|
21
|
+
- Fix pypi publish permissions and debug secret
|
|
22
|
+
([`8fe5eec`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/8fe5eec30ae4d081f1e832d5587c0d73c67b53e8))
|
|
23
|
+
|
|
24
|
+
### Features
|
|
25
|
+
|
|
26
|
+
- Introduce semantic release support
|
|
27
|
+
([`c8afa79`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/c8afa79949d8eecf1cbcdcff56c7453fb80e256c))
|
|
28
|
+
|
|
29
|
+
Co-authored-by: RbBtSn0w <1135031+RbBtSn0w@users.noreply.github.com>
|
|
30
|
+
|
|
31
|
+
- Introduce semantic release support
|
|
32
|
+
([`39c0167`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/39c0167713227c49bb3afbd87129eb23ab33ebbf))
|
|
33
|
+
|
|
34
|
+
Co-authored-by: RbBtSn0w <1135031+RbBtSn0w@users.noreply.github.com>
|
|
35
|
+
|
|
36
|
+
- Introduce semantic release support with integrated CI pipeline
|
|
37
|
+
([`35ec3db`](https://github.com/RbBtSn0w/agent-cli-sdk/commit/35ec3dbe7e2b7250a956bbf5b13addba32858ca0))
|
|
38
|
+
|
|
39
|
+
Co-authored-by: RbBtSn0w <1135031+RbBtSn0w@users.noreply.github.com>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-cli-sdk
|
|
3
|
-
Version: 0.0
|
|
3
|
+
Version: 0.1.0
|
|
4
4
|
Summary: Universal SDK for interacting with AI Agent CLIs (Gemini, Copilot, etc.)
|
|
5
5
|
Project-URL: Homepage, https://github.com/rbbtsn0w/agent-cli-sdk
|
|
6
6
|
Project-URL: Repository, https://github.com/rbbtsn0w/agent-cli-sdk
|
|
@@ -7,7 +7,7 @@ packages = ["src/agent_sdk"]
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "agent-cli-sdk"
|
|
10
|
-
version = "0.0
|
|
10
|
+
version = "0.1.0"
|
|
11
11
|
description = "Universal SDK for interacting with AI Agent CLIs (Gemini, Copilot, etc.)"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
authors = [
|
|
@@ -72,3 +72,23 @@ testpaths = ["tests"]
|
|
|
72
72
|
python_files = ["test_*.py"]
|
|
73
73
|
addopts = "-v"
|
|
74
74
|
asyncio_mode = "auto"
|
|
75
|
+
|
|
76
|
+
[tool.semantic_release]
|
|
77
|
+
version_variables = [
|
|
78
|
+
"src/agent_sdk/__init__.py:__version__",
|
|
79
|
+
]
|
|
80
|
+
version_toml = [
|
|
81
|
+
"pyproject.toml:project.version",
|
|
82
|
+
]
|
|
83
|
+
upload_to_pypi = false
|
|
84
|
+
upload_to_release = true
|
|
85
|
+
build_command = "python -m pip install build && python -m build"
|
|
86
|
+
|
|
87
|
+
[tool.semantic_release.branches.main]
|
|
88
|
+
match = "(main|master)"
|
|
89
|
+
prerelease = false
|
|
90
|
+
|
|
91
|
+
[tool.semantic_release.commit_parser_options]
|
|
92
|
+
allowed_tags = ["build", "chore", "ci", "docs", "feat", "fix", "perf", "style", "refactor", "test"]
|
|
93
|
+
minor_tags = ["feat"]
|
|
94
|
+
patch_tags = ["fix", "perf"]
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
name: Publish to PyPI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
tags:
|
|
6
|
-
- "v*" # Trigger on tags like v0.1.0, v0.0.1-pre
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
build-and-publish:
|
|
10
|
-
name: Build and publish to PyPI
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
permissions:
|
|
13
|
-
contents: read
|
|
14
|
-
id-token: write
|
|
15
|
-
|
|
16
|
-
steps:
|
|
17
|
-
- name: Checkout code
|
|
18
|
-
uses: actions/checkout@v4
|
|
19
|
-
|
|
20
|
-
- name: Check for PyPI Token Secret
|
|
21
|
-
run: |
|
|
22
|
-
if [ -z "${{ secrets.PYPI_API_TOKEN }}" ]; then
|
|
23
|
-
echo "::error::PYPI_API_TOKEN secret is NOT set or empty!"
|
|
24
|
-
else
|
|
25
|
-
echo "PYPI_API_TOKEN secret is detected (masked)."
|
|
26
|
-
fi
|
|
27
|
-
|
|
28
|
-
- name: Set up Python
|
|
29
|
-
uses: actions/setup-python@v5
|
|
30
|
-
with:
|
|
31
|
-
python-version: "3.11"
|
|
32
|
-
|
|
33
|
-
- name: Install build dependencies
|
|
34
|
-
run: |
|
|
35
|
-
python -m pip install --upgrade pip
|
|
36
|
-
pip install build
|
|
37
|
-
|
|
38
|
-
- name: Build package
|
|
39
|
-
run: python -m build
|
|
40
|
-
|
|
41
|
-
- name: Publish to PyPI
|
|
42
|
-
uses: pypa/gh-action-pypi-publish@release/v1
|
|
43
|
-
with:
|
|
44
|
-
user: __token__
|
|
45
|
-
password: ${{ secrets.PYPI_API_TOKEN }}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
|
|
5
|
-
## [0.0.1a1] - 2026-01-23
|
|
6
|
-
|
|
7
|
-
### Added
|
|
8
|
-
- Initial technical preview release.
|
|
9
|
-
- **Core:** `UniversalAgent` with ReAct loop implementation.
|
|
10
|
-
- **Drivers:**
|
|
11
|
-
- `CopilotDriver`: Support for GitHub Copilot CLI (JSON-RPC over stdio).
|
|
12
|
-
- `GeminiDriver`: Support for Google Gemini CLI (streaming JSON).
|
|
13
|
-
- `MockDriver`: For testing and simulation.
|
|
14
|
-
- **Features:**
|
|
15
|
-
- Session persistence support.
|
|
16
|
-
- Customizable tool registration.
|
|
17
|
-
- Cross-platform support (macOS/Linux).
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|