agentbundle 0.20.0__tar.gz → 0.20.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.
- {agentbundle-0.20.0 → agentbundle-0.20.1}/PKG-INFO +3 -1
- {agentbundle-0.20.0 → agentbundle-0.20.1}/README.md +2 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/cli.py +7 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/_common.py +10 -2
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/install.py +10 -2
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/source_defaults.py +11 -2
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/version.py +1 -1
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/PKG-INFO +3 -1
- {agentbundle-0.20.0 → agentbundle-0.20.1}/pyproject.toml +1 -1
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/__main__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/adapter.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/adapter.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/catalogue.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/install-marker.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/pack.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/plugin-manifest.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/profile.schema.json +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/__main__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapter_root_bins.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/claude_code.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/codex.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/copilot.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/cursor.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/gemini.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/kiro.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/kiro_cli.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/adapters/kiro_ide.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/contract.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/lint_packs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/main.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/phase_order.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/codex_agent_toml.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/copilot_agent_md.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/direct_directory.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/gemini_command_toml.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/hook_id.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/kiro_ide_hook.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/merge_into_agent_json.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/merge_json.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/user_merge_json.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/composite-agents-md.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/composite-marketplace.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/marketplace.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/per-pack-apm-package.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/per-pack-claude-plugin.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/per-pack-overlay.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/self-host.toml +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/scope_rails.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/self_host.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/shared_libs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/target_resolver.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_claude_code.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_codex.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_copilot.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_cursor.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_gemini.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_kiro.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_kiro_alias.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_kiro_cli.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_kiro_ide.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_root_bins_projection.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_architect_design_reviewer_projection.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_architect_design_reviewer_rubric_parity.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_build_ships_seeds.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_contract.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_contract_scope.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_contract_v07.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_contract_v08.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_direct_directory_cleanup.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_end_to_end_build.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_lint_agents_md_diataxis_block.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_lint_agents_md_legacy_block.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_lint_agents_md_risk_block.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_lint_packs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_load_pack_hook_wiring_safely.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_pack_schema.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_pack_schema_allowed_adapters.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_pack_schema_install.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_pipeline.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_plugin_manifest_schema.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_projectable_subset.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_projections_merge_json.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_scope_rails.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_security.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_self_host_check.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_self_host_fixture_guard.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_self_host_recipe_config.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shared_libs_projection.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shared_prefix_contract.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shipped_packs_v07_declarations.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shipped_packs_v08_declarations.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_user_libs_projection.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_validate.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_writers_emit_lf.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/user_libs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/validate.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/archive.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/build.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/config.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/defaults.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/diagnostics.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/lint.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/package.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/results.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/self_host.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/skill_spec_lint.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/catalogue_tooling/verify.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/categories.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/__init__.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/_drop_warning.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/adapt.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_build.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_lint.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_package.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_self_host.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_tooling_stub.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/catalogue_verify.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/config.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/diff.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/docs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/init_state.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/list_installed.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/list_packs.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/list_profiles.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/list_targets.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/pack_evals.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/package_catalogue.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/profile.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/reconcile.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/render.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/scaffold.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/show.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/uninstall.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/upgrade.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/commands/validate.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/config.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/https_catalogue.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/pack_inventory.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/render.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/safety.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/scope.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/statelock.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/user_config.py +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/SOURCES.txt +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/dependency_links.txt +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/entry_points.txt +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/requires.txt +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle.egg-info/top_level.txt +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/setup.cfg +0 -0
- {agentbundle-0.20.0 → agentbundle-0.20.1}/tests/test_linear_primitive.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentbundle
|
|
3
|
-
Version: 0.20.
|
|
3
|
+
Version: 0.20.1
|
|
4
4
|
Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
|
|
5
5
|
Author-email: eugenelim <eugenelim@users.noreply.github.com>
|
|
6
6
|
License: Apache-2.0 OR MIT
|
|
@@ -34,6 +34,8 @@ Requires-Dist: pyyaml>=6.0; extra == "lint"
|
|
|
34
34
|
pip install agentbundle
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
+
Requires Python 3.11+. Runs on macOS, Linux, and Windows.
|
|
38
|
+
|
|
37
39
|
**Install into a repo** — so everyone who clones it gets the pack. `core` is the flagship pack, the loop itself:
|
|
38
40
|
|
|
39
41
|
```bash
|
|
@@ -936,6 +936,13 @@ def _normalise_path_separators(args: argparse.Namespace) -> None:
|
|
|
936
936
|
|
|
937
937
|
|
|
938
938
|
def main(argv: Sequence[str] | None = None) -> int:
|
|
939
|
+
# Windows cp1252 consoles can't represent non-ASCII chars (⚠, →, etc.).
|
|
940
|
+
# Reconfigure to UTF-8 with backslash-escape fallback so the process
|
|
941
|
+
# never crashes on non-ASCII output regardless of console code page.
|
|
942
|
+
if hasattr(sys.stdout, "reconfigure"):
|
|
943
|
+
sys.stdout.reconfigure(encoding="utf-8", errors="backslashreplace")
|
|
944
|
+
if hasattr(sys.stderr, "reconfigure"):
|
|
945
|
+
sys.stderr.reconfigure(encoding="utf-8", errors="backslashreplace")
|
|
939
946
|
parser = _build_parser()
|
|
940
947
|
args = parser.parse_args(argv)
|
|
941
948
|
if not getattr(args, "func", None):
|
|
@@ -100,13 +100,21 @@ def _classify_seeds(seeds_dir: Path, root: Path) -> list[SeedDelivery]:
|
|
|
100
100
|
from agentbundle import safety
|
|
101
101
|
|
|
102
102
|
footer_path = seeds_dir / "_agents-footer.md"
|
|
103
|
-
|
|
103
|
+
try:
|
|
104
|
+
footer_is_symlink = footer_path.is_symlink()
|
|
105
|
+
except OSError:
|
|
106
|
+
footer_is_symlink = True # can't determine; skip conservatively
|
|
107
|
+
footer_ok = footer_path.is_file() and not footer_is_symlink
|
|
104
108
|
|
|
105
109
|
seed_files: list[Path] = []
|
|
106
110
|
for dirpath, _dirnames, filenames in os.walk(seeds_dir, followlinks=False):
|
|
107
111
|
for fname in filenames:
|
|
108
112
|
fpath = Path(dirpath) / fname
|
|
109
|
-
|
|
113
|
+
try:
|
|
114
|
+
fpath_is_symlink = fpath.is_symlink()
|
|
115
|
+
except OSError:
|
|
116
|
+
fpath_is_symlink = True # can't determine; skip conservatively
|
|
117
|
+
if fpath_is_symlink:
|
|
110
118
|
continue
|
|
111
119
|
seed_files.append(fpath)
|
|
112
120
|
|
|
@@ -1648,7 +1648,11 @@ def _deliver_user_scope_floor(
|
|
|
1648
1648
|
# Reject a symlinked primitive dir itself (os.walk(top=symlink) enumerates
|
|
1649
1649
|
# the link target's real files, which the per-entry is_symlink() skip below
|
|
1650
1650
|
# would not catch) — see collect_pack_root_bins for the bin/ twin.
|
|
1651
|
-
|
|
1651
|
+
try:
|
|
1652
|
+
lib_src_is_symlink = lib_src_root.is_symlink()
|
|
1653
|
+
except OSError:
|
|
1654
|
+
lib_src_is_symlink = True # can't determine; skip conservatively
|
|
1655
|
+
has_lib = lib_src_root.is_dir() and not lib_src_is_symlink
|
|
1652
1656
|
if not bin_sources and not has_lib:
|
|
1653
1657
|
# No floor content in this pack — nothing to deliver, and no reason to
|
|
1654
1658
|
# gate the install on the floor dirs' modes.
|
|
@@ -1686,7 +1690,11 @@ def _deliver_user_scope_floor(
|
|
|
1686
1690
|
)
|
|
1687
1691
|
for fname in sorted(filenames):
|
|
1688
1692
|
src = Path(dirpath) / fname
|
|
1689
|
-
|
|
1693
|
+
try:
|
|
1694
|
+
src_is_symlink = src.is_symlink()
|
|
1695
|
+
except OSError:
|
|
1696
|
+
src_is_symlink = True # can't determine; skip conservatively
|
|
1697
|
+
if src_is_symlink:
|
|
1690
1698
|
continue
|
|
1691
1699
|
rel = src.relative_to(lib_src_root)
|
|
1692
1700
|
relpath = (Path(".agentbundle") / "lib" / rel).as_posix()
|
|
@@ -294,7 +294,11 @@ def _enclosing_git_root(start: Path) -> Path | None:
|
|
|
294
294
|
"""
|
|
295
295
|
cur = start
|
|
296
296
|
while True:
|
|
297
|
-
|
|
297
|
+
try:
|
|
298
|
+
exists = (cur / ".git").exists()
|
|
299
|
+
except OSError:
|
|
300
|
+
exists = False
|
|
301
|
+
if exists:
|
|
298
302
|
return cur
|
|
299
303
|
if cur.parent == cur:
|
|
300
304
|
return None
|
|
@@ -354,7 +358,12 @@ def _detect_editable_source(dist: object, *, stream: TextIO | None = None) -> st
|
|
|
354
358
|
return None
|
|
355
359
|
if parts.netloc not in ("", "localhost"):
|
|
356
360
|
return None
|
|
357
|
-
|
|
361
|
+
raw = url2pathname(unquote(parts.path))
|
|
362
|
+
# url2pathname on some Windows Python builds returns "/C:\path" with a
|
|
363
|
+
# spurious leading slash before the drive letter; strip it.
|
|
364
|
+
if sys.platform == "win32" and len(raw) >= 3 and raw[0] == "/" and raw[2] == ":":
|
|
365
|
+
raw = raw[1:]
|
|
366
|
+
pkg_path = Path(raw)
|
|
358
367
|
try:
|
|
359
368
|
pkg_root = pkg_path.resolve(strict=True)
|
|
360
369
|
except OSError:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentbundle
|
|
3
|
-
Version: 0.20.
|
|
3
|
+
Version: 0.20.1
|
|
4
4
|
Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
|
|
5
5
|
Author-email: eugenelim <eugenelim@users.noreply.github.com>
|
|
6
6
|
License: Apache-2.0 OR MIT
|
|
@@ -34,6 +34,8 @@ Requires-Dist: pyyaml>=6.0; extra == "lint"
|
|
|
34
34
|
pip install agentbundle
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
+
Requires Python 3.11+. Runs on macOS, Linux, and Windows.
|
|
38
|
+
|
|
37
39
|
**Install into a repo** — so everyone who clones it gets the pack. `core` is the flagship pack, the loop itself:
|
|
38
40
|
|
|
39
41
|
```bash
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agentbundle"
|
|
7
|
-
version = "0.20.
|
|
7
|
+
version = "0.20.1"
|
|
8
8
|
description = "npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent."
|
|
9
9
|
requires-python = ">=3.11"
|
|
10
10
|
dependencies = []
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/_data/plugin-manifest.derived.schema.json
RENAMED
|
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
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/copilot_hooks_json.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/gemini_command_toml.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/projections/merge_into_agent_json.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/composite-agents-md.toml
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/composite-marketplace.toml
RENAMED
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/per-pack-apm-package.toml
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/recipes/per-pack-claude-plugin.toml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_claude_code.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_adapter_kiro_alias.py
RENAMED
|
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
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_direct_directory_cleanup.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_lint_agents_md_risk_block.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_pack_schema_install.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_plugin_manifest_schema.py
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_projectable_subset.py
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_projections_merge_json.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_self_host_fixture_guard.py
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_self_host_recipe_config.py
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shared_libs_projection.py
RENAMED
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_shared_prefix_contract.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentbundle-0.20.0 → agentbundle-0.20.1}/agentbundle/build/tests/test_user_libs_projection.py
RENAMED
|
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
|