agentpack-cli 0.3.5__tar.gz → 0.3.9__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.
- agentpack_cli-0.3.5/README.md → agentpack_cli-0.3.9/PKG-INFO +107 -3
- agentpack_cli-0.3.5/PKG-INFO → agentpack_cli-0.3.9/README.md +68 -42
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/pyproject.toml +2 -2
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/__init__.py +1 -1
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/ranking.py +565 -36
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/application/pack_service.py +298 -24
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/cli.py +2 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/doctor.py +18 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/explain.py +106 -4
- agentpack_cli-0.3.9/src/agentpack/commands/ignore_cmd.py +51 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/init.py +31 -8
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/install.py +42 -4
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/pack.py +8 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/stats.py +8 -3
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/context_pack.py +48 -0
- agentpack_cli-0.3.9/src/agentpack/core/ignore.py +448 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/global_install.py +61 -34
- agentpack_cli-0.3.5/src/agentpack/core/ignore.py +0 -90
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/.gitignore +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/LICENSE +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/antigravity.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/base.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/claude.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/codex.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/cursor.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/detect.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/generic.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/adapters/windsurf.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/dependency_graph.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/go_imports.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/java_imports.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/js_ts_imports.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/monorepo.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/naming_signals.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/python_imports.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/repo_map.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/role_inference.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/rust_imports.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/symbols.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/task_classifier.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/analysis/tests.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/application/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/_shared.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/benchmark.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/claude_cmd.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/diff.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/guard.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/hook_cmd.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/mcp_cmd.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/migrate.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/monitor.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/quickstart.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/repair.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/scan.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/status.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/summarize.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/tune.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/commands/watch.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/bootstrap.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/cache.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/config.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/diff.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/git.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/git_hooks.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/global_install.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/merkle.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/models.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/redactor.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/scanner.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/snapshot.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/task_freshness.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/token_estimator.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/core/vscode_tasks.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/data/agentpack.md +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/antigravity.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/claude.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/codex.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/cursor.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/installers/windsurf.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/agents.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/git_hooks.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/platform.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/integrations/vscode_tasks.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/mcp_server.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/renderers/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/renderers/compact.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/renderers/markdown.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/renderers/receipts.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/session/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/session/state.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/summaries/__init__.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/summaries/base.py +0 -0
- {agentpack_cli-0.3.5 → agentpack_cli-0.3.9}/src/agentpack/summaries/offline.py +0 -0
|
@@ -1,3 +1,42 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agentpack-cli
|
|
3
|
+
Version: 0.3.9
|
|
4
|
+
Summary: Local context engine for AI coding agents that ranks relevant files and builds task-focused context packs.
|
|
5
|
+
License: MIT
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
Keywords: ai,ai-coding-agents,antigravity,ci,codex,context,context-engine,context-packing,cursor,developer-tools,llm,mcp,packing,prompt-context,repo-analysis,windsurf
|
|
8
|
+
Classifier: Development Status :: 3 - Alpha
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
16
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
17
|
+
Requires-Python: >=3.10
|
|
18
|
+
Requires-Dist: pathspec>=0.12.1
|
|
19
|
+
Requires-Dist: pydantic>=2.0.0
|
|
20
|
+
Requires-Dist: rich>=13.0.0
|
|
21
|
+
Requires-Dist: tiktoken>=0.7.0
|
|
22
|
+
Requires-Dist: tomli-w>=1.0.0
|
|
23
|
+
Requires-Dist: tomli>=2.0.0; python_version < '3.11'
|
|
24
|
+
Requires-Dist: typer>=0.12.0
|
|
25
|
+
Provides-Extra: all
|
|
26
|
+
Requires-Dist: mcp>=1.0.0; extra == 'all'
|
|
27
|
+
Requires-Dist: watchdog>=4.0.0; extra == 'all'
|
|
28
|
+
Provides-Extra: dev
|
|
29
|
+
Requires-Dist: mypy; extra == 'dev'
|
|
30
|
+
Requires-Dist: pytest; extra == 'dev'
|
|
31
|
+
Requires-Dist: pytest-cov; extra == 'dev'
|
|
32
|
+
Requires-Dist: ruff; extra == 'dev'
|
|
33
|
+
Requires-Dist: tomli>=2.0.0; (python_version < '3.11') and extra == 'dev'
|
|
34
|
+
Provides-Extra: mcp
|
|
35
|
+
Requires-Dist: mcp>=1.0.0; extra == 'mcp'
|
|
36
|
+
Provides-Extra: watch
|
|
37
|
+
Requires-Dist: watchdog>=4.0.0; extra == 'watch'
|
|
38
|
+
Description-Content-Type: text/markdown
|
|
39
|
+
|
|
1
40
|
# AgentPack
|
|
2
41
|
|
|
3
42
|
[](https://pypi.org/project/agentpack-cli/)
|
|
@@ -7,7 +46,7 @@
|
|
|
7
46
|
[](https://opensource.org/licenses/MIT)
|
|
8
47
|
[](https://github.com/vishal2612200/agentpack/actions/workflows/ci.yml)
|
|
9
48
|
|
|
10
|
-
> **Status: alpha (v0.3.
|
|
49
|
+
> **Status: alpha (v0.3.9).** Works, tested, used in real sessions. Python and JavaScript/TypeScript are the best-supported languages. Public benchmark proof exists for the current suite, but broader repo coverage is still growing. API may change before 1.0.
|
|
11
50
|
>
|
|
12
51
|
> **Platform note:** macOS, Linux, and Windows are supported. Windows support targets PowerShell plus Git for Windows. `cmd.exe` and bare Git setups are not a supported path yet.
|
|
13
52
|
|
|
@@ -109,7 +148,19 @@ printf '%s\n' "fix auth token expiry" > .agentpack/task.md
|
|
|
109
148
|
agentpack pack
|
|
110
149
|
```
|
|
111
150
|
|
|
112
|
-
This creates `.agentpack/` state, installs the requested agent integration, generates a ranked context pack, and writes the adapter output for that agent.
|
|
151
|
+
This creates `.agentpack/` state, installs the requested agent integration, seeds `.agentignore` with safe defaults, imports obvious generated/noisy rules from git ignore sources, generates a ranked context pack, and writes the adapter output for that agent.
|
|
152
|
+
|
|
153
|
+
Task text matters. Good task text names the concrete feature, route, service, or file you are about to change. Bad task text uses repo-meta words like `improve context`, `pack quality`, `stats`, or `ignore`, which can pull README or tool internals by keyword.
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
# good
|
|
157
|
+
printf '%s\n' "fix billing webhook retry handling in app/api/billing/route.ts" > .agentpack/task.md
|
|
158
|
+
|
|
159
|
+
# too broad
|
|
160
|
+
printf '%s\n' "improve context pack quality from stats" > .agentpack/task.md
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
For active local work, keep context fresh with:
|
|
113
164
|
|
|
114
165
|
```bash
|
|
115
166
|
agentpack watch
|
|
@@ -202,6 +253,23 @@ agentpack explain --task "fix billing webhook" --budget-plan
|
|
|
202
253
|
|
|
203
254
|
This is the core reliability loop: pack, measure recall, inspect misses, then tune task wording, `.agentignore`, or scoring weights.
|
|
204
255
|
|
|
256
|
+
If top includes look noisy:
|
|
257
|
+
|
|
258
|
+
1. Rewrite `.agentpack/task.md` with concrete domain nouns, entrypoints, or filenames.
|
|
259
|
+
2. Re-pack and re-check `agentpack stats`.
|
|
260
|
+
3. If generated output still dominates, add that path to `.agentignore` or run `agentpack ignore sync`.
|
|
261
|
+
4. Use `agentpack explain --file <path>` on repeat offenders before changing scoring.
|
|
262
|
+
|
|
263
|
+
`.agentignore` is for AgentPack ranking noise, not general git hygiene. `agentpack init` seeds it with safe defaults and imports obvious generated/noisy entries from the root `.gitignore`, nested `.gitignore` files, `.git/info/exclude`, and your global git ignore when they look safe to carry over. You should still add repo-specific outputs such as deploy artifacts, exports, or generated SDK folders when they are not useful context.
|
|
264
|
+
|
|
265
|
+
When ignore sources change later, re-sync with:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
agentpack ignore sync
|
|
269
|
+
agentpack ignore sync --dry-run
|
|
270
|
+
agentpack ignore sync --check
|
|
271
|
+
```
|
|
272
|
+
|
|
205
273
|
## MCP-First Workflow
|
|
206
274
|
|
|
207
275
|
For MCP-capable agents, the preferred workflow is pull-based:
|
|
@@ -539,6 +607,7 @@ Command map:
|
|
|
539
607
|
| `agentpack monitor` | Review recent pack runs and quality signals |
|
|
540
608
|
| `agentpack scan` | Inspect packable, ignored, binary, and largest files |
|
|
541
609
|
| `agentpack global-install` | Install opt-in global hooks for initialized repos |
|
|
610
|
+
| `agentpack global-repair-hooks` | Repair stale global template hooks and current repo git hooks |
|
|
542
611
|
|
|
543
612
|
### `agentpack global-install`
|
|
544
613
|
|
|
@@ -554,7 +623,7 @@ agentpack global-install --agent antigravity # Antigravity
|
|
|
554
623
|
```
|
|
555
624
|
|
|
556
625
|
What it does:
|
|
557
|
-
- **Git template hooks** (`~/.git-templates/hooks/`) — git copies these into every repo on `git init` / `git clone`. On `post-commit`, `post-merge`, `post-checkout
|
|
626
|
+
- **Git template hooks** (`~/.git-templates/hooks/`) — git copies these into every repo on `git init` / `git clone`. On `post-commit`, `post-merge`, `post-checkout` they call AgentPack's cross-platform `GitAutoRepack` hook runner and always exit cleanly. Repacking still happens only in opted-in repos; fresh clones without `.agentpack/config.toml` remain a safe no-op.
|
|
558
627
|
- **Shell cd hook** (`~/.zshrc`, `~/.bashrc`, or the PowerShell profile on Windows) — on `cd` or prompt refresh, repacks if stale **only in opted-in repos**. Never touches repos without `.agentpack/config.toml`. Never auto-inits.
|
|
559
628
|
- **Agent config** — same agent-specific files that `agentpack init --agent <x>` or `agentpack install --agent <x>` writes for the current project.
|
|
560
629
|
|
|
@@ -576,6 +645,27 @@ Preview before committing:
|
|
|
576
645
|
agentpack global-install --dry-run
|
|
577
646
|
```
|
|
578
647
|
|
|
648
|
+
If you installed an older AgentPack build and want to refresh copied git hooks after an upgrade, run:
|
|
649
|
+
|
|
650
|
+
```bash
|
|
651
|
+
agentpack global-repair-hooks
|
|
652
|
+
```
|
|
653
|
+
|
|
654
|
+
That repairs `~/.git-templates/hooks/`, reasserts `git config --global init.templateDir`, and updates the current repo's `.git/hooks/` to the safe `GitAutoRepack` path.
|
|
655
|
+
|
|
656
|
+
### `agentpack global-repair-hooks`
|
|
657
|
+
|
|
658
|
+
Refresh AgentPack's global git template hooks and the current repo's local git hooks after an upgrade.
|
|
659
|
+
|
|
660
|
+
```bash
|
|
661
|
+
agentpack global-repair-hooks
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
Use this when:
|
|
665
|
+
- old template hooks were copied before the `GitAutoRepack` runner existed
|
|
666
|
+
- a stale hook script still shells out directly instead of calling `agentpack hook`
|
|
667
|
+
- you want new clones and the current repo to pick up the latest non-destructive hook behavior immediately
|
|
668
|
+
|
|
579
669
|
---
|
|
580
670
|
|
|
581
671
|
### `agentpack global-uninstall`
|
|
@@ -817,6 +907,20 @@ agentpack quickstart --task "fix auth token expiry" --write
|
|
|
817
907
|
|
|
818
908
|
---
|
|
819
909
|
|
|
910
|
+
### `agentpack ignore sync`
|
|
911
|
+
|
|
912
|
+
Refresh imported generated/noisy rules inside `.agentignore` without touching your manual entries.
|
|
913
|
+
|
|
914
|
+
```bash
|
|
915
|
+
agentpack ignore sync
|
|
916
|
+
agentpack ignore sync --dry-run
|
|
917
|
+
agentpack ignore sync --check
|
|
918
|
+
```
|
|
919
|
+
|
|
920
|
+
Use this after editing `.gitignore`, nested workspace ignores, or `.git/info/exclude`. `doctor` also warns when the imported `.agentignore` block is stale.
|
|
921
|
+
|
|
922
|
+
---
|
|
923
|
+
|
|
820
924
|
### `agentpack watch`
|
|
821
925
|
|
|
822
926
|
Watch for file and task changes, refresh context automatically.
|
|
@@ -1,42 +1,3 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: agentpack-cli
|
|
3
|
-
Version: 0.3.5
|
|
4
|
-
Summary: Local context engine for AI coding agents that ranks relevant files and builds task-focused context packs.
|
|
5
|
-
License: MIT
|
|
6
|
-
License-File: LICENSE
|
|
7
|
-
Keywords: ai,ai-coding-agents,antigravity,ci,claude,claude-code,codex,context,context-engine,context-packing,cursor,developer-tools,llm,mcp,packing,prompt-context,repo-analysis,windsurf
|
|
8
|
-
Classifier: Development Status :: 3 - Alpha
|
|
9
|
-
Classifier: Intended Audience :: Developers
|
|
10
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
-
Classifier: Topic :: Software Development :: Build Tools
|
|
16
|
-
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
17
|
-
Requires-Python: >=3.10
|
|
18
|
-
Requires-Dist: pathspec>=0.12.1
|
|
19
|
-
Requires-Dist: pydantic>=2.0.0
|
|
20
|
-
Requires-Dist: rich>=13.0.0
|
|
21
|
-
Requires-Dist: tiktoken>=0.7.0
|
|
22
|
-
Requires-Dist: tomli-w>=1.0.0
|
|
23
|
-
Requires-Dist: tomli>=2.0.0; python_version < '3.11'
|
|
24
|
-
Requires-Dist: typer>=0.12.0
|
|
25
|
-
Provides-Extra: all
|
|
26
|
-
Requires-Dist: mcp>=1.0.0; extra == 'all'
|
|
27
|
-
Requires-Dist: watchdog>=4.0.0; extra == 'all'
|
|
28
|
-
Provides-Extra: dev
|
|
29
|
-
Requires-Dist: mypy; extra == 'dev'
|
|
30
|
-
Requires-Dist: pytest; extra == 'dev'
|
|
31
|
-
Requires-Dist: pytest-cov; extra == 'dev'
|
|
32
|
-
Requires-Dist: ruff; extra == 'dev'
|
|
33
|
-
Requires-Dist: tomli>=2.0.0; (python_version < '3.11') and extra == 'dev'
|
|
34
|
-
Provides-Extra: mcp
|
|
35
|
-
Requires-Dist: mcp>=1.0.0; extra == 'mcp'
|
|
36
|
-
Provides-Extra: watch
|
|
37
|
-
Requires-Dist: watchdog>=4.0.0; extra == 'watch'
|
|
38
|
-
Description-Content-Type: text/markdown
|
|
39
|
-
|
|
40
1
|
# AgentPack
|
|
41
2
|
|
|
42
3
|
[](https://pypi.org/project/agentpack-cli/)
|
|
@@ -46,7 +7,7 @@ Description-Content-Type: text/markdown
|
|
|
46
7
|
[](https://opensource.org/licenses/MIT)
|
|
47
8
|
[](https://github.com/vishal2612200/agentpack/actions/workflows/ci.yml)
|
|
48
9
|
|
|
49
|
-
> **Status: alpha (v0.3.
|
|
10
|
+
> **Status: alpha (v0.3.9).** Works, tested, used in real sessions. Python and JavaScript/TypeScript are the best-supported languages. Public benchmark proof exists for the current suite, but broader repo coverage is still growing. API may change before 1.0.
|
|
50
11
|
>
|
|
51
12
|
> **Platform note:** macOS, Linux, and Windows are supported. Windows support targets PowerShell plus Git for Windows. `cmd.exe` and bare Git setups are not a supported path yet.
|
|
52
13
|
|
|
@@ -148,7 +109,19 @@ printf '%s\n' "fix auth token expiry" > .agentpack/task.md
|
|
|
148
109
|
agentpack pack
|
|
149
110
|
```
|
|
150
111
|
|
|
151
|
-
This creates `.agentpack/` state, installs the requested agent integration, generates a ranked context pack, and writes the adapter output for that agent.
|
|
112
|
+
This creates `.agentpack/` state, installs the requested agent integration, seeds `.agentignore` with safe defaults, imports obvious generated/noisy rules from git ignore sources, generates a ranked context pack, and writes the adapter output for that agent.
|
|
113
|
+
|
|
114
|
+
Task text matters. Good task text names the concrete feature, route, service, or file you are about to change. Bad task text uses repo-meta words like `improve context`, `pack quality`, `stats`, or `ignore`, which can pull README or tool internals by keyword.
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# good
|
|
118
|
+
printf '%s\n' "fix billing webhook retry handling in app/api/billing/route.ts" > .agentpack/task.md
|
|
119
|
+
|
|
120
|
+
# too broad
|
|
121
|
+
printf '%s\n' "improve context pack quality from stats" > .agentpack/task.md
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
For active local work, keep context fresh with:
|
|
152
125
|
|
|
153
126
|
```bash
|
|
154
127
|
agentpack watch
|
|
@@ -241,6 +214,23 @@ agentpack explain --task "fix billing webhook" --budget-plan
|
|
|
241
214
|
|
|
242
215
|
This is the core reliability loop: pack, measure recall, inspect misses, then tune task wording, `.agentignore`, or scoring weights.
|
|
243
216
|
|
|
217
|
+
If top includes look noisy:
|
|
218
|
+
|
|
219
|
+
1. Rewrite `.agentpack/task.md` with concrete domain nouns, entrypoints, or filenames.
|
|
220
|
+
2. Re-pack and re-check `agentpack stats`.
|
|
221
|
+
3. If generated output still dominates, add that path to `.agentignore` or run `agentpack ignore sync`.
|
|
222
|
+
4. Use `agentpack explain --file <path>` on repeat offenders before changing scoring.
|
|
223
|
+
|
|
224
|
+
`.agentignore` is for AgentPack ranking noise, not general git hygiene. `agentpack init` seeds it with safe defaults and imports obvious generated/noisy entries from the root `.gitignore`, nested `.gitignore` files, `.git/info/exclude`, and your global git ignore when they look safe to carry over. You should still add repo-specific outputs such as deploy artifacts, exports, or generated SDK folders when they are not useful context.
|
|
225
|
+
|
|
226
|
+
When ignore sources change later, re-sync with:
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
agentpack ignore sync
|
|
230
|
+
agentpack ignore sync --dry-run
|
|
231
|
+
agentpack ignore sync --check
|
|
232
|
+
```
|
|
233
|
+
|
|
244
234
|
## MCP-First Workflow
|
|
245
235
|
|
|
246
236
|
For MCP-capable agents, the preferred workflow is pull-based:
|
|
@@ -578,6 +568,7 @@ Command map:
|
|
|
578
568
|
| `agentpack monitor` | Review recent pack runs and quality signals |
|
|
579
569
|
| `agentpack scan` | Inspect packable, ignored, binary, and largest files |
|
|
580
570
|
| `agentpack global-install` | Install opt-in global hooks for initialized repos |
|
|
571
|
+
| `agentpack global-repair-hooks` | Repair stale global template hooks and current repo git hooks |
|
|
581
572
|
|
|
582
573
|
### `agentpack global-install`
|
|
583
574
|
|
|
@@ -593,7 +584,7 @@ agentpack global-install --agent antigravity # Antigravity
|
|
|
593
584
|
```
|
|
594
585
|
|
|
595
586
|
What it does:
|
|
596
|
-
- **Git template hooks** (`~/.git-templates/hooks/`) — git copies these into every repo on `git init` / `git clone`. On `post-commit`, `post-merge`, `post-checkout
|
|
587
|
+
- **Git template hooks** (`~/.git-templates/hooks/`) — git copies these into every repo on `git init` / `git clone`. On `post-commit`, `post-merge`, `post-checkout` they call AgentPack's cross-platform `GitAutoRepack` hook runner and always exit cleanly. Repacking still happens only in opted-in repos; fresh clones without `.agentpack/config.toml` remain a safe no-op.
|
|
597
588
|
- **Shell cd hook** (`~/.zshrc`, `~/.bashrc`, or the PowerShell profile on Windows) — on `cd` or prompt refresh, repacks if stale **only in opted-in repos**. Never touches repos without `.agentpack/config.toml`. Never auto-inits.
|
|
598
589
|
- **Agent config** — same agent-specific files that `agentpack init --agent <x>` or `agentpack install --agent <x>` writes for the current project.
|
|
599
590
|
|
|
@@ -615,6 +606,27 @@ Preview before committing:
|
|
|
615
606
|
agentpack global-install --dry-run
|
|
616
607
|
```
|
|
617
608
|
|
|
609
|
+
If you installed an older AgentPack build and want to refresh copied git hooks after an upgrade, run:
|
|
610
|
+
|
|
611
|
+
```bash
|
|
612
|
+
agentpack global-repair-hooks
|
|
613
|
+
```
|
|
614
|
+
|
|
615
|
+
That repairs `~/.git-templates/hooks/`, reasserts `git config --global init.templateDir`, and updates the current repo's `.git/hooks/` to the safe `GitAutoRepack` path.
|
|
616
|
+
|
|
617
|
+
### `agentpack global-repair-hooks`
|
|
618
|
+
|
|
619
|
+
Refresh AgentPack's global git template hooks and the current repo's local git hooks after an upgrade.
|
|
620
|
+
|
|
621
|
+
```bash
|
|
622
|
+
agentpack global-repair-hooks
|
|
623
|
+
```
|
|
624
|
+
|
|
625
|
+
Use this when:
|
|
626
|
+
- old template hooks were copied before the `GitAutoRepack` runner existed
|
|
627
|
+
- a stale hook script still shells out directly instead of calling `agentpack hook`
|
|
628
|
+
- you want new clones and the current repo to pick up the latest non-destructive hook behavior immediately
|
|
629
|
+
|
|
618
630
|
---
|
|
619
631
|
|
|
620
632
|
### `agentpack global-uninstall`
|
|
@@ -856,6 +868,20 @@ agentpack quickstart --task "fix auth token expiry" --write
|
|
|
856
868
|
|
|
857
869
|
---
|
|
858
870
|
|
|
871
|
+
### `agentpack ignore sync`
|
|
872
|
+
|
|
873
|
+
Refresh imported generated/noisy rules inside `.agentignore` without touching your manual entries.
|
|
874
|
+
|
|
875
|
+
```bash
|
|
876
|
+
agentpack ignore sync
|
|
877
|
+
agentpack ignore sync --dry-run
|
|
878
|
+
agentpack ignore sync --check
|
|
879
|
+
```
|
|
880
|
+
|
|
881
|
+
Use this after editing `.gitignore`, nested workspace ignores, or `.git/info/exclude`. `doctor` also warns when the imported `.agentignore` block is stale.
|
|
882
|
+
|
|
883
|
+
---
|
|
884
|
+
|
|
859
885
|
### `agentpack watch`
|
|
860
886
|
|
|
861
887
|
Watch for file and task changes, refresh context automatically.
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "agentpack-cli"
|
|
3
|
-
version = "0.3.
|
|
3
|
+
version = "0.3.9"
|
|
4
4
|
description = "Local context engine for AI coding agents that ranks relevant files and builds task-focused context packs."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
7
7
|
license = {text = "MIT"}
|
|
8
|
-
keywords = ["ai-coding-agents", "developer-tools", "repo-analysis", "context-engine", "context-packing", "prompt-context", "mcp", "ci", "
|
|
8
|
+
keywords = ["ai-coding-agents", "developer-tools", "repo-analysis", "context-engine", "context-packing", "prompt-context", "mcp", "ci", "codex", "cursor", "windsurf", "antigravity", "ai", "llm", "context", "packing"]
|
|
9
9
|
classifiers = [
|
|
10
10
|
"Development Status :: 3 - Alpha",
|
|
11
11
|
"Intended Audience :: Developers",
|