apcore-cli 0.10.0__tar.gz → 0.10.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.
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/CHANGELOG.md +26 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/PKG-INFO +3 -3
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/pyproject.toml +3 -3
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.github/CODEOWNERS +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.github/copilot-ignore +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.github/workflows/ci.yml +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.gitignore +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.gitmessage +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/.pre-commit-config.yaml +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/CLAUDE.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/LICENSE +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/Makefile +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/README.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/README.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/math/add.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/math/multiply.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/sysutil/disk.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/sysutil/env.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/sysutil/info.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/text/reverse.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/text/upper.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/extensions/text/wordcount.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/examples/run_examples.sh +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/approval-gate.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/config-resolver.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/core-dispatcher.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/discovery.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/exposure-filtering.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/grouped-commands.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/output-formatter.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/overview.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/schema-parser.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/security-manager.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/shell-integration.md +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/planning/state.json +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/__init__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/__main__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/_sandbox_runner.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/approval.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/builtin_group.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/cli.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/config.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/discovery.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/display_helpers.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/exit_codes.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/exposure.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/factory.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/init_cmd.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/output.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/ref_resolver.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/schema_parser.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/security/__init__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/security/audit.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/security/auth.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/security/config_encryptor.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/security/sandbox.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/shell.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/strategy.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/system_cmd.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/system_usage.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/src/apcore_cli/validate.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/__init__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/conformance/__init__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/conformance/test_apcli_visibility.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/conformance/test_snake_case_kwargs.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/conftest.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/shell_test_utils.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_apcli_integration.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_approval.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_bugfixes.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_builtin_group.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_cli.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_config.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_discovery.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_discovery_fe13.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_display_helpers.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_e2e.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_exit_codes.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_exposure.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_factory_fe13.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_init_cmd.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_integration.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_list_command_filters.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_output.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_output_format_exec.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_output_format_markdown_skill.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_public_api.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_ref_resolver.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_sandbox_runner.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_schema_parser.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_security/__init__.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_security/test_audit.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_security/test_auth.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_security/test_config_encryptor.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_security/test_sandbox.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_shell.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_strategy.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_system_cmd.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_system_usage.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_toolkit_integration.py +0 -0
- {apcore_cli-0.10.0 → apcore_cli-0.10.1}/tests/test_validate.py +0 -0
|
@@ -5,6 +5,32 @@ All notable changes to apcore-cli (Python SDK) will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.10.1] - 2026-06-15
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- **Required runtime bumped to apcore 0.24.0 and apcore-toolkit 0.8.1.** Dependency
|
|
13
|
+
floors in `pyproject.toml` raised from `apcore>=0.22.0` / `apcore-toolkit>=0.8.0`
|
|
14
|
+
to `apcore>=0.24.0` / `apcore-toolkit>=0.8.1`, tracking the aligned apcore 0.24.0
|
|
15
|
+
and apcore-toolkit 0.8.1 releases. **No source changes** — the full test suite
|
|
16
|
+
passes unchanged.
|
|
17
|
+
|
|
18
|
+
The apcore 0.22.0 → 0.24.0 delta does not touch any surface the CLI consumes:
|
|
19
|
+
- **Per-instance `ToggleState` isolation (#71)** — the CLI never constructs
|
|
20
|
+
`ToggleState`/`APCore` nor calls the free `is_module_disabled()`; module
|
|
21
|
+
toggling is delegated to the `system.control.toggle_feature` module via
|
|
22
|
+
`Executor.call()`.
|
|
23
|
+
- **Default AI error-recovery metadata (#70)** and **error `details` snake_case
|
|
24
|
+
key alignment (A-D-019)** — the CLI reads error fields (`details`, `suggestion`,
|
|
25
|
+
`ai_guidance`, `retryable`, `user_fixable`) via `getattr()` and passes `details`
|
|
26
|
+
through verbatim, so it is agnostic to both new defaults and inner-key casing.
|
|
27
|
+
- **`Registry.list()` / `get_definition()` / `Executor.call()` / `call_with_trace()`
|
|
28
|
+
/ `set_approval_handler()`** signatures are unchanged across the delta; descriptor
|
|
29
|
+
fields are read defensively with fallbacks.
|
|
30
|
+
- Out of scope and unused by the CLI: `CircuitBreakerMiddleware`, `A2ASubscriber`,
|
|
31
|
+
DLQ/`original_event`, `apcore.Config.validate()`, `Context.create()`, redaction
|
|
32
|
+
utilities, `EventEmitter`.
|
|
33
|
+
|
|
8
34
|
## [0.10.0] - 2026-05-18
|
|
9
35
|
|
|
10
36
|
### Changed — BREAKING
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: apcore-cli
|
|
3
|
-
Version: 0.10.
|
|
3
|
+
Version: 0.10.1
|
|
4
4
|
Summary: Terminal adapter for apcore — execute AI-Perceivable modules from the command line
|
|
5
5
|
Project-URL: Homepage, https://aiperceivable.com
|
|
6
6
|
Project-URL: Repository, https://github.com/aiperceivable/apcore-cli-python
|
|
@@ -21,8 +21,8 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
21
21
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
22
22
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
23
23
|
Requires-Python: >=3.11
|
|
24
|
-
Requires-Dist: apcore-toolkit>=0.8.
|
|
25
|
-
Requires-Dist: apcore>=0.
|
|
24
|
+
Requires-Dist: apcore-toolkit>=0.8.1
|
|
25
|
+
Requires-Dist: apcore>=0.24.0
|
|
26
26
|
Requires-Dist: click>=8.1
|
|
27
27
|
Requires-Dist: cryptography>=41.0
|
|
28
28
|
Requires-Dist: jsonschema>=4.20
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "apcore-cli"
|
|
7
|
-
version = "0.10.
|
|
7
|
+
version = "0.10.1"
|
|
8
8
|
description = "Terminal adapter for apcore — execute AI-Perceivable modules from the command line"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "Apache-2.0"
|
|
@@ -26,8 +26,8 @@ classifiers = [
|
|
|
26
26
|
"Environment :: Console",
|
|
27
27
|
]
|
|
28
28
|
dependencies = [
|
|
29
|
-
"apcore>=0.
|
|
30
|
-
"apcore-toolkit>=0.8.
|
|
29
|
+
"apcore>=0.24.0",
|
|
30
|
+
"apcore-toolkit>=0.8.1",
|
|
31
31
|
"click>=8.1",
|
|
32
32
|
"jsonschema>=4.20",
|
|
33
33
|
"rich>=13.0",
|
|
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
|
|
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
|