hatch-xclam 0.7.0.dev11__py3-none-any.whl → 0.7.0.dev13__py3-none-any.whl
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.
- hatch_xclam-0.7.0.dev13.dist-info/METADATA +150 -0
- {hatch_xclam-0.7.0.dev11.dist-info → hatch_xclam-0.7.0.dev13.dist-info}/RECORD +6 -65
- hatch_xclam-0.7.0.dev13.dist-info/top_level.txt +2 -0
- hatch_xclam-0.7.0.dev11.dist-info/METADATA +0 -103
- hatch_xclam-0.7.0.dev11.dist-info/top_level.txt +0 -3
- node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py +0 -45
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +0 -365
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +0 -206
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +0 -1272
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +0 -1547
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +0 -59
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +0 -152
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +0 -270
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +0 -574
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +0 -704
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/common.py +0 -709
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +0 -173
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +0 -169
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +0 -113
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +0 -55
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +0 -805
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +0 -1172
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +0 -1319
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +0 -128
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +0 -104
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +0 -462
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +0 -89
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +0 -56
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +0 -2745
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +0 -3976
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +0 -44
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +0 -2965
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +0 -67
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +0 -1391
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +0 -26
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py +0 -3112
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +0 -99
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +0 -767
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +0 -1260
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +0 -174
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +0 -61
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +0 -373
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +0 -1939
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py +0 -54
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +0 -303
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +0 -3196
- node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +0 -65
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/__init__.py +0 -15
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py +0 -108
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py +0 -252
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py +0 -83
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_parser.py +0 -359
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_structures.py +0 -61
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py +0 -192
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/markers.py +0 -252
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +0 -825
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/py.typed +0 -0
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/requirements.py +0 -90
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py +0 -1030
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/tags.py +0 -553
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/utils.py +0 -172
- node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/version.py +0 -563
- node_modules/npm/node_modules/node-gyp/gyp/test_gyp.py +0 -261
- {hatch_xclam-0.7.0.dev11.dist-info → hatch_xclam-0.7.0.dev13.dist-info}/WHEEL +0 -0
- {hatch_xclam-0.7.0.dev11.dist-info → hatch_xclam-0.7.0.dev13.dist-info}/entry_points.txt +0 -0
- {hatch_xclam-0.7.0.dev11.dist-info → hatch_xclam-0.7.0.dev13.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: hatch-xclam
|
|
3
|
+
Version: 0.7.0.dev13
|
|
4
|
+
Summary: Package manager for the Cracking Shells ecosystem
|
|
5
|
+
Author: Cracking Shells Team
|
|
6
|
+
Project-URL: Homepage, https://github.com/CrackingShells/Hatch
|
|
7
|
+
Project-URL: Bug Tracker, https://github.com/CrackingShells/Hatch/issues
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
9
|
+
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Requires-Python: >=3.12
|
|
12
|
+
Description-Content-Type: text/markdown
|
|
13
|
+
License-File: LICENSE
|
|
14
|
+
Requires-Dist: jsonschema>=4.0.0
|
|
15
|
+
Requires-Dist: requests>=2.25.0
|
|
16
|
+
Requires-Dist: packaging>=20.0
|
|
17
|
+
Requires-Dist: docker>=7.1.0
|
|
18
|
+
Requires-Dist: pydantic>=2.0.0
|
|
19
|
+
Requires-Dist: hatch-validator>=0.8.0
|
|
20
|
+
Provides-Extra: docs
|
|
21
|
+
Requires-Dist: mkdocs>=1.4.0; extra == "docs"
|
|
22
|
+
Requires-Dist: mkdocstrings[python]>=0.20.0; extra == "docs"
|
|
23
|
+
Provides-Extra: dev
|
|
24
|
+
Requires-Dist: wobble>=0.2.0; extra == "dev"
|
|
25
|
+
Dynamic: license-file
|
|
26
|
+
|
|
27
|
+
# Hatch
|
|
28
|
+
|
|
29
|
+

|
|
30
|
+
|
|
31
|
+
## Introduction
|
|
32
|
+
|
|
33
|
+
Hatch is the package manager for managing Model Context Protocol (MCP) servers with environment isolation, multi-type dependency resolution, and multi-host deployment. Deploy MCP servers to Claude Desktop, VS Code, Cursor, and other platforms with automatic dependency management.
|
|
34
|
+
|
|
35
|
+
The canonical documentation is at `docs/index.md` and published at <https://hatch.readthedocs.io/en/latest/>.
|
|
36
|
+
|
|
37
|
+
## Key Features
|
|
38
|
+
|
|
39
|
+
- **Environment Isolation** — Create separate, isolated workspaces for different projects without conflicts
|
|
40
|
+
- **Multi-Type Dependency Resolution** — Automatically resolve and install system packages, Python packages, Docker containers, and Hatch packages
|
|
41
|
+
- **Multi-Host Deployment** — Deploy MCP servers to Claude Desktop, Claude Code, VS Code, Cursor, LM Studio, and Google Gemini CLI
|
|
42
|
+
- **Package Validation** — Ensure packages meet schema requirements before distribution
|
|
43
|
+
- **Development-Focused** — Optimized for rapid development and testing of MCP server ecosystems
|
|
44
|
+
|
|
45
|
+
## Supported MCP Hosts
|
|
46
|
+
|
|
47
|
+
Hatch supports deployment to the following MCP host platforms:
|
|
48
|
+
|
|
49
|
+
- **Claude Desktop** — Anthropic's desktop application for Claude with native MCP support
|
|
50
|
+
- **Claude Code** — Claude integration for VS Code with MCP capabilities
|
|
51
|
+
- **VS Code** — Visual Studio Code with the MCP extension for tool integration
|
|
52
|
+
- **Cursor** — AI-first code editor with built-in MCP server support
|
|
53
|
+
- **LM Studio** — Local LLM inference platform with MCP server integration
|
|
54
|
+
- **Google Gemini CLI** — Command-line interface for Google's Gemini model with MCP support
|
|
55
|
+
|
|
56
|
+
## Quick Start
|
|
57
|
+
|
|
58
|
+
### Install from PyPI
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
pip install hatch-xclam
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Verify installation:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
hatch --version
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Install from source
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
git clone https://github.com/CrackingShells/Hatch.git
|
|
74
|
+
cd Hatch
|
|
75
|
+
pip install -e .
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Create your first environment and *Hatch!* MCP server package
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Create an isolated environment
|
|
82
|
+
hatch env create my_project
|
|
83
|
+
|
|
84
|
+
# Switch to it
|
|
85
|
+
hatch env use my_project
|
|
86
|
+
|
|
87
|
+
# Create a package template
|
|
88
|
+
hatch create my_mcp_server --description "My MCP server"
|
|
89
|
+
|
|
90
|
+
# Validate the package
|
|
91
|
+
hatch validate ./my_mcp_server
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Deploy MCP servers to your tools
|
|
95
|
+
|
|
96
|
+
**Package-First Deployment (Recommended)** — Add a Hatch package and automatically configure it on Claude Desktop and Cursor:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
hatch package add ./my_mcp_server --host claude-desktop,cursor
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Direct Configuration (Advanced)** — Configure arbitrary MCP servers on your hosts:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# Remote server example: GitHub MCP Server with authentication
|
|
106
|
+
export GIT_PAT_TOKEN=your_github_personal_access_token
|
|
107
|
+
hatch mcp configure github-mcp --host gemini \
|
|
108
|
+
--httpUrl https://api.github.com/mcp \
|
|
109
|
+
--header Authorization="Bearer $GIT_PAT_TOKEN"
|
|
110
|
+
|
|
111
|
+
# Local server example: Context7 via npx
|
|
112
|
+
hatch mcp configure context7 --host vscode \
|
|
113
|
+
--command npx --args "-y @upstash/context7-mcp"
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Documentation
|
|
117
|
+
|
|
118
|
+
- **[Full Documentation](https://hatch.readthedocs.io/en/latest/)** — Complete reference and guides
|
|
119
|
+
- **[Getting Started](./docs/articles/users/GettingStarted.md)** — Quick start for users
|
|
120
|
+
- **[CLI Reference](./docs/articles/users/CLIReference.md)** — All commands and options
|
|
121
|
+
- **[Tutorials](./docs/articles/users/tutorials/)** — Step-by-step guides from installation to package authoring
|
|
122
|
+
- **[MCP Host Configuration](./docs/articles/users/MCPHostConfiguration.md)** — Deploy to multiple platforms
|
|
123
|
+
- **[Developer Docs](./docs/articles/devs/)** — Architecture, implementation guides, and contribution guidelines
|
|
124
|
+
- **[Troubleshooting](./docs/articles/users/Troubleshooting/ReportIssues.md)** — Common issues and solutions
|
|
125
|
+
|
|
126
|
+
## Contributing
|
|
127
|
+
|
|
128
|
+
We welcome contributions! See the [How to Contribute](./docs/articles/devs/contribution_guides/how_to_contribute.md) guide for details.
|
|
129
|
+
|
|
130
|
+
### Quick start for developers
|
|
131
|
+
|
|
132
|
+
1. **Fork and clone** the repository
|
|
133
|
+
2. **Install dependencies**: `pip install -e .` and `npm install`
|
|
134
|
+
3. **Create a feature branch**: `git checkout -b feat/your-feature`
|
|
135
|
+
4. **Make changes** and add tests
|
|
136
|
+
5. **Use conventional commits**: `npm run commit` for guided commits
|
|
137
|
+
6. **Run tests**: `wobble`
|
|
138
|
+
7. **Create a pull request**
|
|
139
|
+
|
|
140
|
+
We use [Conventional Commits](https://www.conventionalcommits.org/) for automated versioning. Use `npm run commit` for guided commit messages.
|
|
141
|
+
|
|
142
|
+
## Getting Help
|
|
143
|
+
|
|
144
|
+
- Search existing [GitHub Issues](https://github.com/CrackingShells/Hatch/issues)
|
|
145
|
+
- Read [Troubleshooting](./docs/articles/users/Troubleshooting/ReportIssues.md) for common problems
|
|
146
|
+
- Check [Developer Onboarding](./docs/articles/devs/development_processes/developer_onboarding.md) for setup help
|
|
147
|
+
|
|
148
|
+
## License
|
|
149
|
+
|
|
150
|
+
This project is licensed under the GNU Affero General Public License v3 — see `LICENSE` for details.
|
|
@@ -21,66 +21,7 @@ hatch/mcp_host_config/host_management.py,sha256=sXyGluFQpfXKggxAVvV9riGRis29JnoE
|
|
|
21
21
|
hatch/mcp_host_config/models.py,sha256=WLAdeJc-t4zyiiHByQHYGpC55t6ViggBAs4N1ksJ6W8,24548
|
|
22
22
|
hatch/mcp_host_config/reporting.py,sha256=Q8UKBJRfvJTbb5PM9xwLEOh3OJjf19AKpWKxs-2622k,6889
|
|
23
23
|
hatch/mcp_host_config/strategies.py,sha256=deFdAbj8G6Mzs7W8fBlPMPnijxzSnQ2SS5AAx0JR6oY,20293
|
|
24
|
-
hatch_xclam-0.7.0.
|
|
25
|
-
node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py,sha256=gOsKGUgjDIMvF7-Z8xqHKdVARNgEac_g_srOaeerZqY,1250
|
|
26
|
-
node_modules/npm/node_modules/node-gyp/gyp/test_gyp.py,sha256=7PWZav30J2V-o0h5VFmqEyxmhPpjUPH9xYBJQnhcF8k,7691
|
|
27
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py,sha256=mzNxGJv3xJz8NLNfPaj1V9Yv1BH38PktL9i7hYphDOo,13029
|
|
28
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py,sha256=6i0lB7o_XoITED062iStKzkGvjAa9dOR8i144Aax4Ls,6732
|
|
29
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py,sha256=nLWtz6P0eyRyYOBO_S-WGKgQ7xXWNUYX2ZcsyYVY1l0,45452
|
|
30
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py,sha256=02XqIF-1lTV0fAb0zoJPA7hSNVMjyfw7hAVEobLF8pA,74286
|
|
31
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py,sha256=iMp0oiweW12S02CpXXFurd9omUPEfxMuVcSlT_PtlOQ,1782
|
|
32
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py,sha256=1WnQrXCQWH4ohj4Y4bfLzZl2Pdy2UJ6gO1wF74wh4Fg,5325
|
|
33
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py,sha256=OkSDMtL1zZQE-epLNBUdrjgQCeDUNaTcwzl__xIL7c8,10230
|
|
34
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py,sha256=cRWt9bqH-3GffwLXUHyJiwRP2ink-4LwJl3iH1xc5J4,19744
|
|
35
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py,sha256=aRZB6y6u3NDYEJvWmpCZ7v37lkBegdKrJ4tncBZReA4,24562
|
|
36
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/common.py,sha256=QGWO-e1zBGF1QFs4LbscBlpbrn7GZ9z9oZVpaQVYgAQ,24582
|
|
37
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/common_test.py,sha256=-emUJeGyMl2bN687KNEyfdX0uDxWDslILAgD0H04wXM,5716
|
|
38
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py,sha256=GICY6cjlHnVJ_QkRBy3rljPTvy-Ykkgr2Vy-4Ti0KHs,5425
|
|
39
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py,sha256=3oc9BPr9cXuGo7erwwTCUNvcaR20Qwku-HqwdBgZ5Y8,3943
|
|
40
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py,sha256=NqP4clxE-6pVXVfDnDiW0XAoPhZMU_8-vlnLQ9s5PBo,1886
|
|
41
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py,sha256=Jyv6gTGKlz1f7Jbw1Ja8iLzG5k-veW8o0OLLbimIXXY,126396
|
|
42
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input_test.py,sha256=nCv7azVvSS-vF9Eui11qu_RVT2vPG-_Erj-oUmgazqs,3426
|
|
43
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py,sha256=hXtJTTBcn2oWevCHEOVRMLUobrZDOCfbn6CDOTRVABk,30123
|
|
44
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py,sha256=jzNVLumqNttq4byaADi1PdPJIWMYrqWuw9hthAsWfvk,54122
|
|
45
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py,sha256=zMHkB8l0O7oRkuYFoaN9dotnbATBHZgErQztwE_W648,5640
|
|
46
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py,sha256=2V-wVMJ9TQ94aAQ9Omph4w_4DFCm_UGmG_L4alylB80,1293
|
|
47
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py,sha256=XKY-2mqlBEfXsGjf6ozAboN64RYWPK7ytI4emK6-CDw,15131
|
|
48
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py,sha256=2Wl7sy6DHlC843kjRCrEb2ZwkYbrusiV5jV4AACMr_A,81981
|
|
49
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py,sha256=eEphiO1QEl5qdNcuW1e7ogdtDVaTxSN3ZUKlUwCRyrc,1489
|
|
50
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py,sha256=GP1JKt30Xf3g1PF3-F5VjCbCXTwhGDIkrJqkQPGSyw0,12125
|
|
51
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py,sha256=zCvgZdHSGCax46mFdZjUnGlQXZzrDsSeRQbepj0n0kE,135596
|
|
52
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py,sha256=-z0nf3UnZa7vNw0uwxYYhISHrN6eSHIEVsGjiEaAuBg,2245
|
|
53
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py,sha256=Xm-S8jZHwD8FpxKkSypH_7khjm1THgfGSkXgHKr32uI,31540
|
|
55
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py,sha256=kZWeETJ3fmFKhBzLoNDwhYOagI7BFwQ6pnVoSeAxbAs,49815
|
|
56
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py,sha256=A9J1FnkYf6StVzWU0Qn9ynonSDC0F-AJJdNmJL1-z1g,49203
|
|
57
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py,sha256=rnoSt5dZZlDWKFUZInaX5Yx2lVJRl4vb790Zt_Ax59g,4849
|
|
58
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py,sha256=GEzwTkRQ8dQJfo_AzFeSKyP-uVBbfd1PBKXjgFc23vs,3102
|
|
59
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py,sha256=v3MaKUMkGRam8aDZKtF-Et8UmTpEwfbWXlW9IRlYuvM,17502
|
|
60
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py,sha256=wVdr3hEBg-mBbJ5ciQb6KlpTmXTbFNJmGrsI4GnNMhw,3505
|
|
61
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py,sha256=0GIUNSBx_z3M5gI8QnW6SPz08TyhgqunM9FtCs9A4LM,1693
|
|
62
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py,sha256=5FVgKqu4lkuTDcRwY_Y3ZMh7MbQTp4BL-YVvVcOm8QI,111590
|
|
63
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py,sha256=gvDPjImXGMPT80l4aQs18MUuv8-zCW-rPyEYEhtn8nw,150686
|
|
64
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py,sha256=GXwx0VN6YW9UEknU48egK8975dePLagBeEJoEpEtvFU,1263
|
|
65
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py,sha256=0vT2fWyk8vQ4kTXeHUaA4zhxhVoqA1Y-FAdASltrJTY,119547
|
|
66
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py,sha256=Iwe3AvH0ZDjGXhJoNCAIkJprR5mQb9uTfIu0UwbQn0U,2416
|
|
67
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py,sha256=wCOq2RCCIG72DYcDZVz0ChSRQw3tItvWSnGAkVn8DPw,66017
|
|
68
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py,sha256=PmjE1ka3d8g44YYw16_f1eDJR9wsfYIBCniDp2gm-wY,669
|
|
69
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/__init__.py,sha256=KgBCfHz9vghN9DtyaCUxyewfe5VrjVDtiatA1m6Ch7Q,501
|
|
70
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py,sha256=hbmK8OD6Z7fY6hwinHEUcD1by7czkGiNYu7ShnFEk2k,3266
|
|
71
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py,sha256=Rq6ppXAxH8XFtNf6tC-B-1SKuvCODPBvcCoSulMtbtk,9526
|
|
72
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py,sha256=kgmBGLFybpy8609-KTvzmt2zChCPWYvhp5BWP4JX7dE,2676
|
|
73
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_parser.py,sha256=5DhK_zYJE4U4yzSkgEBT4F7tT2xZ6Pkx4gSRKyvXneQ,10382
|
|
74
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_structures.py,sha256=q3eVNmbWJGG_S0Dit_S3Ao8qQqz_5PYTXFAKBZe5yr4,1431
|
|
75
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py,sha256=alCtbwXhOFAmFGZ6BQ-wCTSFoRAJ2z-ysIf7__MTJ_k,5292
|
|
76
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/markers.py,sha256=eH-txS2zq1HdNpTd9LcZUcVIwewAiNU0grmq5wjKnOk,8208
|
|
77
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/metadata.py,sha256=BX-cG2W29bcNHLKK9M8N62HBnTGfEXepszVl0rhF-HM,33030
|
|
78
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
79
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/requirements.py,sha256=wswG4mXHSgE9w4NjNnlSvgLGo6yYvfHVEFnWhuEmXxg,2952
|
|
80
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py,sha256=fmOSyM6_1KuFHLXQsRfIg6KiqAa5NyRPeXuxyooPL5A,39969
|
|
81
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/tags.py,sha256=pkG6gQ28RlhS09VzymVhVpGrWF5doHXfK1VxG9cdhoY,18355
|
|
82
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/utils.py,sha256=XgdmP3yx9-wQEFjO7OvMj9RjEf5JlR5HFFR69v7SQ9E,5268
|
|
83
|
-
node_modules/npm/node_modules/node-gyp/gyp/pylib/packaging/version.py,sha256=XjRBLNK17UMDgLeP8UHnqwiY3TdSi03xFQURtec211A,16236
|
|
24
|
+
hatch_xclam-0.7.0.dev13.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
84
25
|
tests/__init__.py,sha256=4I3aQWv143Y1QY_nRIBWnY9MIL-aoQOJuVlpoPQz24E,53
|
|
85
26
|
tests/run_environment_tests.py,sha256=bWCr8UsPgU80SM8f_VSi0TCwDI6JNqZpvZ2W9-b2Lqk,7302
|
|
86
27
|
tests/test_cli_version.py,sha256=lU8TBZfzn_8AenFNXYrLMARht91fI5twBN13L-iJebc,4778
|
|
@@ -145,8 +86,8 @@ tests/test_data/packages/schema_versions/schema_v1_1_0_pkg/main.py,sha256=_B5aqX
|
|
|
145
86
|
tests/test_data/packages/schema_versions/schema_v1_2_0_pkg/main.py,sha256=rinhVySJpjXKd2sRCS0ps7xTrVqImWcZ8l4aYbidYR8,238
|
|
146
87
|
tests/test_data/packages/schema_versions/schema_v1_2_1_pkg/hatch_mcp_server.py,sha256=FT14llzHlA4i8I__8GugzBRowhg_CbLmsOwjq0IWFsY,368
|
|
147
88
|
tests/test_data/packages/schema_versions/schema_v1_2_1_pkg/mcp_server.py,sha256=BRPAyyAseE2CGR3W647SwjlluYfi7ejhZck0An5581I,467
|
|
148
|
-
hatch_xclam-0.7.0.
|
|
149
|
-
hatch_xclam-0.7.0.
|
|
150
|
-
hatch_xclam-0.7.0.
|
|
151
|
-
hatch_xclam-0.7.0.
|
|
152
|
-
hatch_xclam-0.7.0.
|
|
89
|
+
hatch_xclam-0.7.0.dev13.dist-info/METADATA,sha256=kPUoyD_oOKbFW6zIP8iepiZ217Tk9LG13Vv3pgnt0Vw,5849
|
|
90
|
+
hatch_xclam-0.7.0.dev13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
91
|
+
hatch_xclam-0.7.0.dev13.dist-info/entry_points.txt,sha256=6xbkwFUtr7nRa56vUFMyJk2wjwFQ_XVaU53ruecWKI0,47
|
|
92
|
+
hatch_xclam-0.7.0.dev13.dist-info/top_level.txt,sha256=GZP3Ivciwal8jVITQkQr7dSNlLJRzfNOhA76VN7Jp4Y,12
|
|
93
|
+
hatch_xclam-0.7.0.dev13.dist-info/RECORD,,
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: hatch-xclam
|
|
3
|
-
Version: 0.7.0.dev11
|
|
4
|
-
Summary: Package manager for the Cracking Shells ecosystem
|
|
5
|
-
Author: Cracking Shells Team
|
|
6
|
-
Project-URL: Homepage, https://github.com/CrackingShells/Hatch
|
|
7
|
-
Project-URL: Bug Tracker, https://github.com/CrackingShells/Hatch/issues
|
|
8
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
9
|
-
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
|
|
10
|
-
Classifier: Operating System :: OS Independent
|
|
11
|
-
Requires-Python: >=3.12
|
|
12
|
-
Description-Content-Type: text/markdown
|
|
13
|
-
License-File: LICENSE
|
|
14
|
-
Requires-Dist: jsonschema>=4.0.0
|
|
15
|
-
Requires-Dist: requests>=2.25.0
|
|
16
|
-
Requires-Dist: packaging>=20.0
|
|
17
|
-
Requires-Dist: docker>=7.1.0
|
|
18
|
-
Requires-Dist: pydantic>=2.0.0
|
|
19
|
-
Requires-Dist: hatch-validator>=0.8.0
|
|
20
|
-
Provides-Extra: docs
|
|
21
|
-
Requires-Dist: mkdocs>=1.4.0; extra == "docs"
|
|
22
|
-
Requires-Dist: mkdocstrings[python]>=0.20.0; extra == "docs"
|
|
23
|
-
Provides-Extra: dev
|
|
24
|
-
Requires-Dist: wobble>=0.2.0; extra == "dev"
|
|
25
|
-
Dynamic: license-file
|
|
26
|
-
|
|
27
|
-
# Hatch
|
|
28
|
-
|
|
29
|
-

|
|
30
|
-
|
|
31
|
-
Hatch is the package manager for the Cracking Shells ecosystem. The documentation in `docs/index.md` is the canonical, up-to-date entry point for users and contributors — this README is a short pointer to those resources.
|
|
32
|
-
|
|
33
|
-
## Quick links
|
|
34
|
-
|
|
35
|
-
The major documentation entry points are:
|
|
36
|
-
|
|
37
|
-
- Documentation (canonical): `docs/index.md`
|
|
38
|
-
- Getting started (users): `docs/articles/users/GettingStarted.md`
|
|
39
|
-
- CLI reference: `docs/articles/users/CLIReference.md`
|
|
40
|
-
- Developer docs and architecture: `docs/articles/devs/index.md`
|
|
41
|
-
|
|
42
|
-
But, really, just look at the site: <https://crackingshells.github.io/Hatch/>
|
|
43
|
-
|
|
44
|
-
## Quick start
|
|
45
|
-
|
|
46
|
-
### Install from source
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
git clone https://github.com/CrackingShells/Hatch.git
|
|
50
|
-
cd Hatch
|
|
51
|
-
pip install -e .
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
Verify installation:
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
hatch --version
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### Create a package template
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
hatch create my_package --description "My MCP server package"
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
## Contributing
|
|
67
|
-
|
|
68
|
-
We welcome contributions! Please see our [Contributing Guide](./CONTRIBUTING.md) for details.
|
|
69
|
-
|
|
70
|
-
### Quick Start
|
|
71
|
-
|
|
72
|
-
1. **Fork and clone** the repository
|
|
73
|
-
2. **Install dependencies**: `pip install -e .` and `npm install`
|
|
74
|
-
3. **Create a feature branch**: `git checkout -b feat/your-feature`
|
|
75
|
-
4. **Make changes** and add tests
|
|
76
|
-
5. **Use conventional commits**: `npm run commit` for guided commits
|
|
77
|
-
6. **Run tests**: `python -c "import hatch; print('Hatch package imports successfully')"`
|
|
78
|
-
7. **Create a pull request**
|
|
79
|
-
|
|
80
|
-
### Commit Messages
|
|
81
|
-
|
|
82
|
-
We use [Conventional Commits](https://www.conventionalcommits.org/) for automated versioning:
|
|
83
|
-
|
|
84
|
-
```bash
|
|
85
|
-
feat: add new feature
|
|
86
|
-
fix: resolve bug
|
|
87
|
-
docs: update documentation
|
|
88
|
-
test: add tests
|
|
89
|
-
chore: maintenance tasks
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Use `npm run commit` for guided commit messages.
|
|
93
|
-
|
|
94
|
-
For detailed guidelines, see [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|
95
|
-
|
|
96
|
-
## Getting Help
|
|
97
|
-
|
|
98
|
-
- Read developer onboarding and contribution guides in `docs/articles/devs/`
|
|
99
|
-
- Report issues or feature requests on the GitHub repository: <https://github.com/CrackingShells/Hatch/issues>
|
|
100
|
-
|
|
101
|
-
## License
|
|
102
|
-
|
|
103
|
-
This project is licensed under the GNU Affero General Public License v3 — see `LICENSE` for details.
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python3
|
|
2
|
-
|
|
3
|
-
# Copyright (c) 2009 Google Inc. All rights reserved.
|
|
4
|
-
# Use of this source code is governed by a BSD-style license that can be
|
|
5
|
-
# found in the LICENSE file.
|
|
6
|
-
|
|
7
|
-
import os
|
|
8
|
-
import subprocess
|
|
9
|
-
import sys
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def IsCygwin():
|
|
13
|
-
# Function copied from pylib/gyp/common.py
|
|
14
|
-
try:
|
|
15
|
-
out = subprocess.Popen(
|
|
16
|
-
"uname", stdout=subprocess.PIPE, stderr=subprocess.STDOUT
|
|
17
|
-
)
|
|
18
|
-
stdout, _ = out.communicate()
|
|
19
|
-
return "CYGWIN" in stdout.decode("utf-8")
|
|
20
|
-
except Exception:
|
|
21
|
-
return False
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
def UnixifyPath(path):
|
|
25
|
-
try:
|
|
26
|
-
if not IsCygwin():
|
|
27
|
-
return path
|
|
28
|
-
out = subprocess.Popen(
|
|
29
|
-
["cygpath", "-u", path], stdout=subprocess.PIPE, stderr=subprocess.STDOUT
|
|
30
|
-
)
|
|
31
|
-
stdout, _ = out.communicate()
|
|
32
|
-
return stdout.decode("utf-8")
|
|
33
|
-
except Exception:
|
|
34
|
-
return path
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
# Make sure we're using the version of pylib in this repo, not one installed
|
|
38
|
-
# elsewhere on the system. Also convert to Unix style path on Cygwin systems,
|
|
39
|
-
# else the 'gyp' library will not be found
|
|
40
|
-
path = UnixifyPath(sys.argv[0])
|
|
41
|
-
sys.path.insert(0, os.path.join(os.path.dirname(path), "pylib"))
|
|
42
|
-
import gyp # noqa: E402
|
|
43
|
-
|
|
44
|
-
if __name__ == "__main__":
|
|
45
|
-
sys.exit(gyp.script_main())
|