agentbundle 0.3.0__tar.gz → 0.3.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.
Files changed (113) hide show
  1. agentbundle-0.3.1/PKG-INFO +81 -0
  2. agentbundle-0.3.1/README.md +63 -0
  3. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/catalogue.py +3 -2
  4. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/config.py +1 -1
  5. agentbundle-0.3.1/agentbundle.egg-info/PKG-INFO +81 -0
  6. {agentbundle-0.3.0 → agentbundle-0.3.1}/pyproject.toml +2 -2
  7. agentbundle-0.3.0/PKG-INFO +0 -37
  8. agentbundle-0.3.0/README.md +0 -19
  9. agentbundle-0.3.0/agentbundle.egg-info/PKG-INFO +0 -37
  10. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/__init__.py +0 -0
  11. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/__main__.py +0 -0
  12. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/adapter.schema.json +0 -0
  13. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/adapter.toml +0 -0
  14. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/install-marker.py +0 -0
  15. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/pack.schema.json +0 -0
  16. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
  17. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/_data/plugin-manifest.schema.json +0 -0
  18. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/__init__.py +0 -0
  19. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/__main__.py +0 -0
  20. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapter_root_bins.py +0 -0
  21. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/__init__.py +0 -0
  22. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/claude_code.py +0 -0
  23. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/codex.py +0 -0
  24. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/copilot.py +0 -0
  25. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/cursor.py +0 -0
  26. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/gemini.py +0 -0
  27. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/kiro.py +0 -0
  28. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/kiro_cli.py +0 -0
  29. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/adapters/kiro_ide.py +0 -0
  30. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/contract.py +0 -0
  31. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/lint_packs.py +0 -0
  32. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/main.py +0 -0
  33. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/phase_order.py +0 -0
  34. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/__init__.py +0 -0
  35. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/codex_agent_toml.py +0 -0
  36. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/copilot_agent_md.py +0 -0
  37. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
  38. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/direct_directory.py +0 -0
  39. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/gemini_command_toml.py +0 -0
  40. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/hook_id.py +0 -0
  41. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/kiro_ide_hook.py +0 -0
  42. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/merge_into_agent_json.py +0 -0
  43. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/merge_json.py +0 -0
  44. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/projections/user_merge_json.py +0 -0
  45. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/scope_rails.py +0 -0
  46. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/self_host.py +0 -0
  47. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/shared_libs.py +0 -0
  48. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/target_resolver.py +0 -0
  49. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/__init__.py +0 -0
  50. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_claude_code.py +0 -0
  51. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_codex.py +0 -0
  52. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_copilot.py +0 -0
  53. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_cursor.py +0 -0
  54. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_gemini.py +0 -0
  55. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_kiro.py +0 -0
  56. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_kiro_alias.py +0 -0
  57. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_kiro_cli.py +0 -0
  58. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_kiro_ide.py +0 -0
  59. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_adapter_root_bins_projection.py +0 -0
  60. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_build_ships_seeds.py +0 -0
  61. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_contract.py +0 -0
  62. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_contract_scope.py +0 -0
  63. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_contract_v07.py +0 -0
  64. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_contract_v08.py +0 -0
  65. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_direct_directory_cleanup.py +0 -0
  66. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_end_to_end_build.py +0 -0
  67. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_lint_agents_md_legacy_block.py +0 -0
  68. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_lint_agents_md_risk_block.py +0 -0
  69. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_lint_packs.py +0 -0
  70. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_load_pack_hook_wiring_safely.py +0 -0
  71. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_pack_schema.py +0 -0
  72. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_pack_schema_allowed_adapters.py +0 -0
  73. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_pack_schema_install.py +0 -0
  74. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_pipeline.py +0 -0
  75. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_plugin_manifest_schema.py +0 -0
  76. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_projections_merge_json.py +0 -0
  77. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_scope_rails.py +0 -0
  78. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_security.py +0 -0
  79. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_self_host_check.py +0 -0
  80. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_shared_libs_projection.py +0 -0
  81. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_shipped_packs_v07_declarations.py +0 -0
  82. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_shipped_packs_v08_declarations.py +0 -0
  83. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_user_libs_projection.py +0 -0
  84. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/tests/test_validate.py +0 -0
  85. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/user_libs.py +0 -0
  86. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/build/validate.py +0 -0
  87. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/cli.py +0 -0
  88. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/__init__.py +0 -0
  89. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/_common.py +0 -0
  90. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/_drop_warning.py +0 -0
  91. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/adapt.py +0 -0
  92. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/config.py +0 -0
  93. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/diff.py +0 -0
  94. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/init_state.py +0 -0
  95. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/install.py +0 -0
  96. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/list_packs.py +0 -0
  97. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/list_targets.py +0 -0
  98. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/reconcile.py +0 -0
  99. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/render.py +0 -0
  100. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/scaffold.py +0 -0
  101. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/uninstall.py +0 -0
  102. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/upgrade.py +0 -0
  103. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/commands/validate.py +0 -0
  104. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/render.py +0 -0
  105. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/safety.py +0 -0
  106. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/scope.py +0 -0
  107. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/user_config.py +0 -0
  108. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle/version.py +0 -0
  109. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle.egg-info/SOURCES.txt +0 -0
  110. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle.egg-info/dependency_links.txt +0 -0
  111. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle.egg-info/entry_points.txt +0 -0
  112. {agentbundle-0.3.0 → agentbundle-0.3.1}/agentbundle.egg-info/top_level.txt +0 -0
  113. {agentbundle-0.3.0 → agentbundle-0.3.1}/setup.cfg +0 -0
@@ -0,0 +1,81 @@
1
+ Metadata-Version: 2.4
2
+ Name: agentbundle
3
+ Version: 0.3.1
4
+ Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
5
+ Author-email: eugenelim <eugenelim@users.noreply.github.com>
6
+ License: Apache-2.0 OR MIT
7
+ Project-URL: Homepage, https://github.com/eugenelim/agent-ready-repo
8
+ Project-URL: Source, https://github.com/eugenelim/agent-ready-repo
9
+ Project-URL: Documentation, https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/install-agentbundle-from-clone.md
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: License :: OSI Approved :: Apache Software License
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Requires-Python: >=3.11
17
+ Description-Content-Type: text/markdown
18
+
19
+ # agentbundle
20
+
21
+ [![PyPI](https://img.shields.io/pypi/v/agentbundle)](https://pypi.org/project/agentbundle/)
22
+ [![Python](https://img.shields.io/pypi/pyversions/agentbundle)](https://pypi.org/project/agentbundle/)
23
+ [![License](https://img.shields.io/badge/license-MIT%2FApache--2.0-blue)](https://github.com/eugenelim/agent-ready-repo#license)
24
+
25
+ **The installer for [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo).** Think npm, but for the skills, subagents, and hooks your coding agent runs on.
26
+
27
+ `agentbundle` installs packs of agent primitives into your repo or your home directory. It projects each primitive into the layout every agent expects. One pack. One command. Every major agent.
28
+
29
+ ```bash
30
+ pip install agentbundle
31
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
32
+ ```
33
+
34
+ That lands `core`, the flagship pack and the loop itself, in your repo. Claude Code, Codex, Cursor, Copilot, Gemini, and Kiro all read it.
35
+
36
+ ## Common commands
37
+
38
+ ```bash
39
+ # See what's in a catalogue
40
+ agentbundle list-packs git+https://github.com/eugenelim/agent-ready-repo
41
+
42
+ # Install the flagship loop into this repo
43
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
44
+
45
+ # Install a pack at user scope, so it follows you across every project
46
+ agentbundle install --pack research git+https://github.com/eugenelim/agent-ready-repo --scope user
47
+
48
+ # Preview an install without writing a file
49
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo --dry-run
50
+
51
+ # Upgrade a pack; it reports the .upstream files you need to reconcile
52
+ agentbundle upgrade --pack core --to 0.4.0 git+https://github.com/eugenelim/agent-ready-repo
53
+ ```
54
+
55
+ A catalogue is a git URL or a local path. Installs auto-detect your agent; pass `--adapter` to override.
56
+
57
+ ## Build your own catalogue
58
+
59
+ `agentbundle` isn't tied to the agent-ready-repo catalogue. Any repo that lays its packs out the same way can use it. A pack is a directory:
60
+
61
+ ```text
62
+ my-pack/
63
+ pack.toml # name, version, adapter-contract, install scope
64
+ .apm/
65
+ skills/<name>/SKILL.md # one folder per skill
66
+ agents/<name>.md # subagents
67
+ hooks/<name>.py # lifecycle hooks
68
+ seeds/ # files scaffolded into the adopter repo
69
+ ```
70
+
71
+ Point a catalogue URI (a git URL or a local path) at the repo that holds your packs. Then `validate` a pack against the adapter contract, `render` it to preview the projection, and `install` it into a target repo. `scaffold` drops a pack's seeds into a fresh directory to start from. The build pipeline (`agentbundle.build`) is the same engine `make build` runs.
72
+
73
+ See the [pack layout reference](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/architecture/pack-layout.md) and [authoring a skill](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/author-a-skill.md).
74
+
75
+ ## Credentials
76
+
77
+ `agentbundle` doesn't resolve secrets. Credentialed skills use [`credbroker`](https://pypi.org/project/credbroker/), a standalone resolver that keeps cleartext out of the model's reach.
78
+
79
+ ## Learn more
80
+
81
+ The full story — the loop, the reviewers, the pack catalogue — is in the [agent-ready-repo README](https://github.com/eugenelim/agent-ready-repo#readme).
@@ -0,0 +1,63 @@
1
+ # agentbundle
2
+
3
+ [![PyPI](https://img.shields.io/pypi/v/agentbundle)](https://pypi.org/project/agentbundle/)
4
+ [![Python](https://img.shields.io/pypi/pyversions/agentbundle)](https://pypi.org/project/agentbundle/)
5
+ [![License](https://img.shields.io/badge/license-MIT%2FApache--2.0-blue)](https://github.com/eugenelim/agent-ready-repo#license)
6
+
7
+ **The installer for [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo).** Think npm, but for the skills, subagents, and hooks your coding agent runs on.
8
+
9
+ `agentbundle` installs packs of agent primitives into your repo or your home directory. It projects each primitive into the layout every agent expects. One pack. One command. Every major agent.
10
+
11
+ ```bash
12
+ pip install agentbundle
13
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
14
+ ```
15
+
16
+ That lands `core`, the flagship pack and the loop itself, in your repo. Claude Code, Codex, Cursor, Copilot, Gemini, and Kiro all read it.
17
+
18
+ ## Common commands
19
+
20
+ ```bash
21
+ # See what's in a catalogue
22
+ agentbundle list-packs git+https://github.com/eugenelim/agent-ready-repo
23
+
24
+ # Install the flagship loop into this repo
25
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
26
+
27
+ # Install a pack at user scope, so it follows you across every project
28
+ agentbundle install --pack research git+https://github.com/eugenelim/agent-ready-repo --scope user
29
+
30
+ # Preview an install without writing a file
31
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo --dry-run
32
+
33
+ # Upgrade a pack; it reports the .upstream files you need to reconcile
34
+ agentbundle upgrade --pack core --to 0.4.0 git+https://github.com/eugenelim/agent-ready-repo
35
+ ```
36
+
37
+ A catalogue is a git URL or a local path. Installs auto-detect your agent; pass `--adapter` to override.
38
+
39
+ ## Build your own catalogue
40
+
41
+ `agentbundle` isn't tied to the agent-ready-repo catalogue. Any repo that lays its packs out the same way can use it. A pack is a directory:
42
+
43
+ ```text
44
+ my-pack/
45
+ pack.toml # name, version, adapter-contract, install scope
46
+ .apm/
47
+ skills/<name>/SKILL.md # one folder per skill
48
+ agents/<name>.md # subagents
49
+ hooks/<name>.py # lifecycle hooks
50
+ seeds/ # files scaffolded into the adopter repo
51
+ ```
52
+
53
+ Point a catalogue URI (a git URL or a local path) at the repo that holds your packs. Then `validate` a pack against the adapter contract, `render` it to preview the projection, and `install` it into a target repo. `scaffold` drops a pack's seeds into a fresh directory to start from. The build pipeline (`agentbundle.build`) is the same engine `make build` runs.
54
+
55
+ See the [pack layout reference](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/architecture/pack-layout.md) and [authoring a skill](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/author-a-skill.md).
56
+
57
+ ## Credentials
58
+
59
+ `agentbundle` doesn't resolve secrets. Credentialed skills use [`credbroker`](https://pypi.org/project/credbroker/), a standalone resolver that keeps cleartext out of the model's reach.
60
+
61
+ ## Learn more
62
+
63
+ The full story — the loop, the reviewers, the pack catalogue — is in the [agent-ready-repo README](https://github.com/eugenelim/agent-ready-repo#readme).
@@ -134,13 +134,14 @@ def _github_archive_url(owner: str, repo: str, ref: str) -> str:
134
134
 
135
135
  def _fetch_and_extract(url: str, dest: Path) -> None:
136
136
  try:
137
- with urllib.request.urlopen(url) as resp: # noqa: S310 url is assembled from parsed owner/repo/ref
137
+ # B310: constant github.com archive base assembled from parsed owner/repo/ref.
138
+ with urllib.request.urlopen(url) as resp: # nosec B310
138
139
  with tarfile.open(fileobj=resp, mode="r|gz") as tf:
139
140
  # filter="data" rejects unsafe members (absolute paths, ..
140
141
  # links, devices, setuid bits) — Python 3.12+ default but
141
142
  # explicit for 3.11 compatibility and to silence the 3.14
142
143
  # DeprecationWarning. Path-jail is belt; this is braces.
143
- tf.extractall(path=dest, filter="data") # noqa: S202
144
+ tf.extractall(path=dest, filter="data")
144
145
  except urllib.error.URLError as exc:
145
146
  raise CatalogueError(
146
147
  f"Failed to fetch catalogue archive: {url} — {exc.reason}"
@@ -479,7 +479,7 @@ def finding_id_for(
479
479
  contain ``/``.
480
480
  """
481
481
  raw = f"{pack}:{kind}:{':'.join(sorted(source_paths))}:{':'.join(sorted(dest_paths))}"
482
- digest = hashlib.sha1(raw.encode("utf-8")).hexdigest()[:8]
482
+ digest = hashlib.sha1(raw.encode("utf-8"), usedforsecurity=False).hexdigest()[:8]
483
483
  return f"{pack}/{kind}:{digest}"
484
484
 
485
485
 
@@ -0,0 +1,81 @@
1
+ Metadata-Version: 2.4
2
+ Name: agentbundle
3
+ Version: 0.3.1
4
+ Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
5
+ Author-email: eugenelim <eugenelim@users.noreply.github.com>
6
+ License: Apache-2.0 OR MIT
7
+ Project-URL: Homepage, https://github.com/eugenelim/agent-ready-repo
8
+ Project-URL: Source, https://github.com/eugenelim/agent-ready-repo
9
+ Project-URL: Documentation, https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/install-agentbundle-from-clone.md
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: License :: OSI Approved :: Apache Software License
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Requires-Python: >=3.11
17
+ Description-Content-Type: text/markdown
18
+
19
+ # agentbundle
20
+
21
+ [![PyPI](https://img.shields.io/pypi/v/agentbundle)](https://pypi.org/project/agentbundle/)
22
+ [![Python](https://img.shields.io/pypi/pyversions/agentbundle)](https://pypi.org/project/agentbundle/)
23
+ [![License](https://img.shields.io/badge/license-MIT%2FApache--2.0-blue)](https://github.com/eugenelim/agent-ready-repo#license)
24
+
25
+ **The installer for [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo).** Think npm, but for the skills, subagents, and hooks your coding agent runs on.
26
+
27
+ `agentbundle` installs packs of agent primitives into your repo or your home directory. It projects each primitive into the layout every agent expects. One pack. One command. Every major agent.
28
+
29
+ ```bash
30
+ pip install agentbundle
31
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
32
+ ```
33
+
34
+ That lands `core`, the flagship pack and the loop itself, in your repo. Claude Code, Codex, Cursor, Copilot, Gemini, and Kiro all read it.
35
+
36
+ ## Common commands
37
+
38
+ ```bash
39
+ # See what's in a catalogue
40
+ agentbundle list-packs git+https://github.com/eugenelim/agent-ready-repo
41
+
42
+ # Install the flagship loop into this repo
43
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo
44
+
45
+ # Install a pack at user scope, so it follows you across every project
46
+ agentbundle install --pack research git+https://github.com/eugenelim/agent-ready-repo --scope user
47
+
48
+ # Preview an install without writing a file
49
+ agentbundle install --pack core git+https://github.com/eugenelim/agent-ready-repo --dry-run
50
+
51
+ # Upgrade a pack; it reports the .upstream files you need to reconcile
52
+ agentbundle upgrade --pack core --to 0.4.0 git+https://github.com/eugenelim/agent-ready-repo
53
+ ```
54
+
55
+ A catalogue is a git URL or a local path. Installs auto-detect your agent; pass `--adapter` to override.
56
+
57
+ ## Build your own catalogue
58
+
59
+ `agentbundle` isn't tied to the agent-ready-repo catalogue. Any repo that lays its packs out the same way can use it. A pack is a directory:
60
+
61
+ ```text
62
+ my-pack/
63
+ pack.toml # name, version, adapter-contract, install scope
64
+ .apm/
65
+ skills/<name>/SKILL.md # one folder per skill
66
+ agents/<name>.md # subagents
67
+ hooks/<name>.py # lifecycle hooks
68
+ seeds/ # files scaffolded into the adopter repo
69
+ ```
70
+
71
+ Point a catalogue URI (a git URL or a local path) at the repo that holds your packs. Then `validate` a pack against the adapter contract, `render` it to preview the projection, and `install` it into a target repo. `scaffold` drops a pack's seeds into a fresh directory to start from. The build pipeline (`agentbundle.build`) is the same engine `make build` runs.
72
+
73
+ See the [pack layout reference](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/architecture/pack-layout.md) and [authoring a skill](https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/author-a-skill.md).
74
+
75
+ ## Credentials
76
+
77
+ `agentbundle` doesn't resolve secrets. Credentialed skills use [`credbroker`](https://pypi.org/project/credbroker/), a standalone resolver that keeps cleartext out of the model's reach.
78
+
79
+ ## Learn more
80
+
81
+ The full story — the loop, the reviewers, the pack catalogue — is in the [agent-ready-repo README](https://github.com/eugenelim/agent-ready-repo#readme).
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "agentbundle"
7
- version = "0.3.0"
8
- description = "Reference CLI and distribution pipeline for the agent-ready-repo adapter contract."
7
+ version = "0.3.1"
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 = []
11
11
  authors = [{ name = "eugenelim", email = "eugenelim@users.noreply.github.com" }]
@@ -1,37 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: agentbundle
3
- Version: 0.3.0
4
- Summary: Reference CLI and distribution pipeline for the agent-ready-repo adapter contract.
5
- Author-email: eugenelim <eugenelim@users.noreply.github.com>
6
- License: Apache-2.0 OR MIT
7
- Project-URL: Homepage, https://github.com/eugenelim/agent-ready-repo
8
- Project-URL: Source, https://github.com/eugenelim/agent-ready-repo
9
- Project-URL: Documentation, https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/install-agentbundle-from-clone.md
10
- Classifier: Development Status :: 4 - Beta
11
- Classifier: License :: OSI Approved :: Apache Software License
12
- Classifier: License :: OSI Approved :: MIT License
13
- Classifier: Operating System :: OS Independent
14
- Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Programming Language :: Python :: 3.12
16
- Requires-Python: >=3.11
17
- Description-Content-Type: text/markdown
18
-
19
- # agentbundle
20
-
21
- Runtime library and reference CLI for the
22
- [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo) adapter
23
- contract. Ships the `agentbundle` console script — install, validate,
24
- adapt, and inspect packs — plus the build pipeline (`agentbundle.build`)
25
- that projects pack sources into adapter-shaped trees.
26
-
27
- As of 0.2.0 the `agentbundle.credentials` module that earlier releases
28
- (0.1.x) exposed has been removed — `agentbundle` no longer ships a
29
- credential-resolution module. Since RFC-0023, `auth: creds` consumers
30
- resolve credentials through the standalone, pip-installable `credbroker`
31
- library, imported in-process (`from credbroker import …`); it replaced the
32
- build-projected `credentials_shim` sibling, which now survives only as the
33
- `sso-broker` companion. See the `credbroker` package, RFC-0023, and this
34
- package's `CHANGELOG.md` for the migration history.
35
-
36
- See the [top-level README](https://github.com/eugenelim/agent-ready-repo#readme)
37
- for install routes, the pack catalogue, and the adapter contract.
@@ -1,19 +0,0 @@
1
- # agentbundle
2
-
3
- Runtime library and reference CLI for the
4
- [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo) adapter
5
- contract. Ships the `agentbundle` console script — install, validate,
6
- adapt, and inspect packs — plus the build pipeline (`agentbundle.build`)
7
- that projects pack sources into adapter-shaped trees.
8
-
9
- As of 0.2.0 the `agentbundle.credentials` module that earlier releases
10
- (0.1.x) exposed has been removed — `agentbundle` no longer ships a
11
- credential-resolution module. Since RFC-0023, `auth: creds` consumers
12
- resolve credentials through the standalone, pip-installable `credbroker`
13
- library, imported in-process (`from credbroker import …`); it replaced the
14
- build-projected `credentials_shim` sibling, which now survives only as the
15
- `sso-broker` companion. See the `credbroker` package, RFC-0023, and this
16
- package's `CHANGELOG.md` for the migration history.
17
-
18
- See the [top-level README](https://github.com/eugenelim/agent-ready-repo#readme)
19
- for install routes, the pack catalogue, and the adapter contract.
@@ -1,37 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: agentbundle
3
- Version: 0.3.0
4
- Summary: Reference CLI and distribution pipeline for the agent-ready-repo adapter contract.
5
- Author-email: eugenelim <eugenelim@users.noreply.github.com>
6
- License: Apache-2.0 OR MIT
7
- Project-URL: Homepage, https://github.com/eugenelim/agent-ready-repo
8
- Project-URL: Source, https://github.com/eugenelim/agent-ready-repo
9
- Project-URL: Documentation, https://github.com/eugenelim/agent-ready-repo/blob/main/docs/guides/how-to/install-agentbundle-from-clone.md
10
- Classifier: Development Status :: 4 - Beta
11
- Classifier: License :: OSI Approved :: Apache Software License
12
- Classifier: License :: OSI Approved :: MIT License
13
- Classifier: Operating System :: OS Independent
14
- Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Programming Language :: Python :: 3.12
16
- Requires-Python: >=3.11
17
- Description-Content-Type: text/markdown
18
-
19
- # agentbundle
20
-
21
- Runtime library and reference CLI for the
22
- [agent-ready-repo](https://github.com/eugenelim/agent-ready-repo) adapter
23
- contract. Ships the `agentbundle` console script — install, validate,
24
- adapt, and inspect packs — plus the build pipeline (`agentbundle.build`)
25
- that projects pack sources into adapter-shaped trees.
26
-
27
- As of 0.2.0 the `agentbundle.credentials` module that earlier releases
28
- (0.1.x) exposed has been removed — `agentbundle` no longer ships a
29
- credential-resolution module. Since RFC-0023, `auth: creds` consumers
30
- resolve credentials through the standalone, pip-installable `credbroker`
31
- library, imported in-process (`from credbroker import …`); it replaced the
32
- build-projected `credentials_shim` sibling, which now survives only as the
33
- `sso-broker` companion. See the `credbroker` package, RFC-0023, and this
34
- package's `CHANGELOG.md` for the migration history.
35
-
36
- See the [top-level README](https://github.com/eugenelim/agent-ready-repo#readme)
37
- for install routes, the pack catalogue, and the adapter contract.
File without changes