pkgq 0.3.0__tar.gz → 0.3.2__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 (33) hide show
  1. {pkgq-0.3.0 → pkgq-0.3.2}/.claude-plugin/plugin.json +4 -3
  2. {pkgq-0.3.0 → pkgq-0.3.2}/HISTORY.md +22 -0
  3. {pkgq-0.3.0 → pkgq-0.3.2}/Makefile +0 -8
  4. {pkgq-0.3.0 → pkgq-0.3.2}/PACKAGE.md +1 -1
  5. {pkgq-0.3.0 → pkgq-0.3.2}/PKG-INFO +2 -2
  6. {pkgq-0.3.0 → pkgq-0.3.2}/README.md +1 -1
  7. {pkgq-0.3.0 → pkgq-0.3.2}/pyproject.toml +2 -12
  8. {pkgq-0.3.0 → pkgq-0.3.2}/src/pkgq/__init__.py +1 -1
  9. {pkgq-0.3.0 → pkgq-0.3.2}/src/pkgq/mcp.py +1 -1
  10. pkgq-0.3.2/src/pkgq/skills/__init__.py +1 -0
  11. pkgq-0.3.2/src/pkgq/skills/create/__init__.py +1 -0
  12. pkgq-0.3.2/src/pkgq/skills/update/__init__.py +1 -0
  13. {pkgq-0.3.0 → pkgq-0.3.2}/uv.lock +1 -1
  14. pkgq-0.3.0/MANIFEST.in +0 -2
  15. pkgq-0.3.0/skills/__init__.py +0 -1
  16. pkgq-0.3.0/skills/create/SKILL.md +0 -234
  17. pkgq-0.3.0/skills/create/__init__.py +0 -1
  18. pkgq-0.3.0/skills/update/__init__.py +0 -1
  19. {pkgq-0.3.0 → pkgq-0.3.2}/.github/workflows/test.yml +0 -0
  20. {pkgq-0.3.0 → pkgq-0.3.2}/.gitignore +0 -0
  21. {pkgq-0.3.0 → pkgq-0.3.2}/CLAUDE.md +0 -0
  22. {pkgq-0.3.0 → pkgq-0.3.2}/LICENSE +0 -0
  23. {pkgq-0.3.0 → pkgq-0.3.2}/REQUIREMENTS.md +0 -0
  24. {pkgq-0.3.0 → pkgq-0.3.2}/TODO.md +0 -0
  25. {pkgq-0.3.0 → pkgq-0.3.2}/analysis/functional.md +0 -0
  26. {pkgq-0.3.0 → pkgq-0.3.2}/src/pkgq/cli.py +0 -0
  27. {pkgq-0.3.0 → pkgq-0.3.2}/src/pkgq/find.py +0 -0
  28. {pkgq-0.3.0 → pkgq-0.3.2}/src/pkgq/plugin.py +0 -0
  29. {pkgq-0.3.0/pkgq-0.3.0 → pkgq-0.3.2/src/pkgq}/skills/create/SKILL.md +0 -0
  30. {pkgq-0.3.0 → pkgq-0.3.2/src/pkgq}/skills/update/SKILL.md +0 -0
  31. {pkgq-0.3.0 → pkgq-0.3.2}/tests/__init__.py +0 -0
  32. {pkgq-0.3.0 → pkgq-0.3.2}/tests/test_find.py +0 -0
  33. {pkgq-0.3.0 → pkgq-0.3.2}/tests/test_plugin.py +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pkgq",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Package Query - Find, create, and update package documentation for AI agents",
5
5
  "author": {
6
6
  "name": "Christophe VG",
@@ -17,5 +17,6 @@
17
17
  "agents",
18
18
  "pypi",
19
19
  "mcp"
20
- ]
21
- }
20
+ ],
21
+ "skills": [ "./src/pkgq/skills" ]
22
+ }
@@ -1,5 +1,27 @@
1
1
  # pkgq Version History
2
2
 
3
+ ## 0.3.2 (2026-06-26)
4
+
5
+ ### Bug Fixes
6
+
7
+ - **Package structure**: Fixed skills directory location for proper distribution
8
+ - Removed symlink that broke hatchling build process
9
+ - Configured skills path in plugin.json for local development
10
+ - Skills now properly included in installed package at `pkgq/skills/`
11
+
12
+ ---
13
+
14
+ ## 0.3.1 (2026-06-26)
15
+
16
+ ### Bug Fixes
17
+
18
+ - **Package structure**: Fixed skills directory location in package
19
+ - Skills now correctly packaged as `pkgq/skills/` instead of root level
20
+ - Skills directory now properly included in distribution
21
+ - Removed symlink confusion that caused incorrect package structure
22
+
23
+ ---
24
+
3
25
  ## 0.3.0 (2026-06-26)
4
26
 
5
27
  ### New Features
@@ -73,11 +73,3 @@ clean: ## Remove build artifacts
73
73
 
74
74
  clean-all: clean ## Remove virtualenv and lock file
75
75
  rm -rf .venv uv.lock
76
-
77
- ## Help
78
-
79
- help: ## Show this help message
80
- @echo "Usage: make [target]"
81
- @echo ""
82
- @echo "Targets:"
83
- @grep -E '^[a-zA-Z_-]+:.*?## .*$$' Makefile | grep -v "install-pythons\|sync" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-15s\033[0m %s\n", $$1, $$2}'
@@ -201,7 +201,7 @@ The plugin manifest is automatically discovered when pkgq is loaded as a yoker p
201
201
 
202
202
  ## Version Notes
203
203
 
204
- **Current Version:** 0.3.0
204
+ **Current Version:** 0.3.2
205
205
 
206
206
  ### Recent Features
207
207
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pkgq
3
- Version: 0.3.0
3
+ Version: 0.3.2
4
4
  Summary: Package Query - Find API information for Python packages
5
5
  Project-URL: Homepage, https://github.com/christophevg/pkgq
6
6
  Project-URL: Documentation, https://github.com/christophevg/pkgq#readme
@@ -136,7 +136,7 @@ visibility into agent operations.
136
136
 
137
137
  % pkgq cache --list
138
138
  Cached packages (3):
139
- pkgq 0.3.0 (pypi)
139
+ pkgq 0.3.2 (pypi)
140
140
  roomz 0.2.0 (github:christophevg/roomz)
141
141
  yoker 0.5.0 (github:christophevg/yoker)
142
142
  ```
@@ -96,7 +96,7 @@ visibility into agent operations.
96
96
 
97
97
  % pkgq cache --list
98
98
  Cached packages (3):
99
- pkgq 0.3.0 (pypi)
99
+ pkgq 0.3.2 (pypi)
100
100
  roomz 0.2.0 (github:christophevg/roomz)
101
101
  yoker 0.5.0 (github:christophevg/yoker)
102
102
  ```
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "pkgq"
7
- version = "0.3.0"
7
+ version = "0.3.2"
8
8
  description = "Package Query - Find API information for Python packages"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -57,16 +57,6 @@ Documentation = "https://github.com/christophevg/pkgq#readme"
57
57
  Repository = "https://github.com/christophevg/pkgq"
58
58
  Issues = "https://github.com/christophevg/pkgq/issues"
59
59
 
60
- [tool.hatch.build.targets.wheel]
61
- packages = ["src/pkgq", "skills"]
62
-
63
- [tool.hatch.build.targets.sdist]
64
- exclude = [
65
- "*.pyc",
66
- "__pycache__",
67
- "*.egg-info",
68
- ]
69
-
70
60
  [tool.pytest.ini_options]
71
61
  testpaths = ["tests"]
72
62
  asyncio_mode = "auto"
@@ -129,4 +119,4 @@ commands_pre = [
129
119
  ["uv", "pip", "install", "-e", "."],
130
120
  ["uv", "pip", "install", "pytest", "pytest-cov", "pytest-asyncio"],
131
121
  ]
132
- commands = [["pytest", "tests", "-v", "--cov=pkgq", "--cov-report=term-missing"]]
122
+ commands = [["pytest", "tests", "-v", "--cov=pkgq", "--cov-report=term-missing"]]
@@ -4,7 +4,7 @@ pkgq - Package Query
4
4
  Find API information for Python packages.
5
5
  """
6
6
 
7
- __version__ = "0.3.0"
7
+ __version__ = "0.3.2"
8
8
 
9
9
  from pkgq.find import FindResult, find
10
10
  from pkgq.plugin import __YOKER_MANIFEST__
@@ -13,7 +13,7 @@ from pkgq import find
13
13
  # Create MCP server
14
14
  mcp = FastMCP(
15
15
  name="pkgq",
16
- version="0.3.0",
16
+ version="0.3.2",
17
17
  )
18
18
 
19
19
 
@@ -0,0 +1 @@
1
+ """Yoker plugin skills for pkgq."""
@@ -0,0 +1 @@
1
+ """Create skill for generating PACKAGE.md files."""
@@ -0,0 +1 @@
1
+ """Update skill for updating package documentation."""
@@ -1327,7 +1327,7 @@ wheels = [
1327
1327
 
1328
1328
  [[package]]
1329
1329
  name = "pkgq"
1330
- version = "0.3.0"
1330
+ version = "0.3.2"
1331
1331
  source = { editable = "." }
1332
1332
  dependencies = [
1333
1333
  { name = "httpx" },
pkgq-0.3.0/MANIFEST.in DELETED
@@ -1,2 +0,0 @@
1
- recursive-include src/pkgq/skills *.md
2
- graft src/pkgq/skills
@@ -1 +0,0 @@
1
- """Yoker plugin skills for pkgq."""
@@ -1,234 +0,0 @@
1
- ---
2
- name: create
3
- description: |
4
- Generate a PACKAGE.md file for a Python project. Analyzes the project structure,
5
- extracts key components, patterns, and creates agent-ready documentation.
6
- Use when creating documentation for your own packages.
7
- ---
8
-
9
- # Package Documentation Generator
10
-
11
- Creates PACKAGE.md files for Python packages, following the PACKAGE.md specification.
12
-
13
- ## When to Use
14
-
15
- - You've created a new Python package
16
- - You want to document your package for AI agents
17
- - You're preparing a release and documentation needs updating
18
-
19
- ## Input
20
-
21
- | Parameter | Required | Description |
22
- |-----------|----------|-------------|
23
- | path | No | Project path (defaults to current directory) |
24
- | output | No | Output path (defaults to PACKAGE.md in project root) |
25
-
26
- ## Process
27
-
28
- ### 1. Gather Project Metadata
29
-
30
- Read project configuration:
31
-
32
- ```
33
- pyproject.toml
34
- ├── [project]
35
- │ ├── name
36
- │ ├── version
37
- │ ├── description
38
- │ ├── dependencies
39
- │ └── urls
40
- ├── [project.optional-dependencies]
41
- └── [project.readme]
42
- ```
43
-
44
- If `pyproject.toml` missing, check:
45
- - `setup.py` (legacy)
46
- - `setup.cfg` (legacy)
47
- - `requirements.txt` (minimal)
48
-
49
- ### 2. Analyze Source Structure
50
-
51
- Scan the package source:
52
-
53
- ```
54
- src/{package}/
55
- ├── __init__.py # Exports, version
56
- ├── {module}.py # Key functions, classes
57
- └── {submodule}/ # Nested modules
58
- ```
59
-
60
- Or:
61
-
62
- ```
63
- {package}/
64
- ├── __init__.py
65
- ├── {module}.py
66
- └── ...
67
- ```
68
-
69
- **Extract:**
70
- - Package name from `__init__.py` or `pyproject.toml`
71
- - Key classes (look for `class` definitions)
72
- - Key functions (look for `def` at module level)
73
- - Entry points (`__all__`, `__main__.py`)
74
-
75
- ### 3. Extract Patterns from Tests
76
-
77
- Scan test files for usage patterns:
78
-
79
- ```
80
- tests/
81
- ├── test_{module}.py
82
- └── ...
83
- ```
84
-
85
- **Extract:**
86
- - Import patterns
87
- - Initialization patterns
88
- - Common usage sequences
89
- - Configuration examples
90
-
91
- ### 4. Read Existing Documentation
92
-
93
- Read for context:
94
-
95
- - `README.md` - Human documentation
96
- - `AGENTS.md` / `CLAUDE.md` - Development instructions
97
- - `docs/` - Full documentation (if exists)
98
-
99
- **Extract:**
100
- - Purpose statement
101
- - Quick start example
102
- - Configuration options
103
- - Known issues/limitations
104
-
105
- ### 5. Check for Changelog
106
-
107
- Look for version history:
108
-
109
- - `CHANGELOG.md`
110
- - `HISTORY.md`
111
- - `NEWS.md`
112
- - GitHub releases
113
- - Git tags
114
-
115
- ### 6. Generate PACKAGE.md
116
-
117
- Create the documentation file:
118
-
119
- ```markdown
120
- # {Package Name}
121
-
122
- > {One-line description from pyproject.toml or README}
123
-
124
- ## Overview
125
-
126
- {Extended description from README}
127
-
128
- ## Installation
129
-
130
- \`\`\`
131
- pip install {package}
132
- \`\`\`
133
-
134
- ## Quick Start
135
-
136
- {Minimal example from tests or README}
137
-
138
- ## Key Components
139
-
140
- {Extracted from source analysis}
141
-
142
- ### Classes
143
-
144
- #### `{ClassName}`
145
-
146
- {Purpose inferred from docstring or usage}
147
-
148
- \`\`\`python
149
- {Usage example from tests}
150
- \`\`\`
151
-
152
- ## Common Patterns
153
-
154
- {Extracted from tests}
155
-
156
- ## Dependencies
157
-
158
- {From pyproject.toml}
159
-
160
- ## Version Notes
161
-
162
- {Current version from pyproject.toml}
163
-
164
- ## References
165
-
166
- {Links from pyproject.toml project.urls}
167
- ```
168
-
169
- ### 7. Generate HISTORY.md
170
-
171
- If changelog information available:
172
-
173
- ```markdown
174
- # {Package} Version History
175
-
176
- ## {Current Version} ({Date})
177
-
178
- ### New Features
179
- - {From changelog}
180
-
181
- ### Breaking Changes
182
- - {From changelog}
183
-
184
- ---
185
-
186
- {Previous versions}
187
- ```
188
-
189
- ## Output
190
-
191
- Creates two files:
192
-
193
- 1. **PACKAGE.md** - Agent-ready documentation
194
- 2. **HISTORY.md** - Version history (if version info available)
195
-
196
- ## Example Usage
197
-
198
- ```bash
199
- # Generate for current project
200
- /pkgq:create
201
-
202
- # Generate for specific project
203
- /pkgq:create path=~/projects/my-package
204
-
205
- # Specify output location
206
- /pkgq:create output=docs/PACKAGE.md
207
- ```
208
-
209
- ## Quality Checks
210
-
211
- After generation, verify:
212
-
213
- - [ ] Purpose statement is clear
214
- - [ ] Quick Start example works
215
- - [ ] Key components are documented
216
- - [ ] Common patterns cover 80% use cases
217
- - [ ] Dependencies are accurate
218
- - [ ] References links are correct
219
-
220
- ## Customization
221
-
222
- The generated PACKAGE.md may need manual refinement:
223
-
224
- 1. **Review purpose** - Is it accurate?
225
- 2. **Refine Quick Start** - Is it minimal and working?
226
- 3. **Add patterns** - Are common use cases covered?
227
- 4. **Update migration guides** - Are breaking changes documented?
228
-
229
- ## Notes
230
-
231
- - Works best with well-structured Python packages
232
- - Legacy packages (setup.py only) have limited metadata extraction
233
- - Private packages (not on PyPI) should use this skill
234
- - Always review generated documentation before publishing
@@ -1 +0,0 @@
1
- """Create skill for generating PACKAGE.md files."""
@@ -1 +0,0 @@
1
- """Update skill for updating package documentation."""
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