hanzo-mcp 0.6.12__py3-none-any.whl → 0.6.13__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.

Potentially problematic release.


This version of hanzo-mcp might be problematic. Click here for more details.

Files changed (77) hide show
  1. hanzo_mcp/__init__.py +2 -2
  2. hanzo_mcp/cli.py +2 -2
  3. hanzo_mcp/cli_enhanced.py +4 -4
  4. hanzo_mcp/cli_plugin.py +91 -0
  5. hanzo_mcp/config/__init__.py +1 -1
  6. hanzo_mcp/config/settings.py +69 -6
  7. hanzo_mcp/config/tool_config.py +2 -2
  8. hanzo_mcp/dev_server.py +3 -3
  9. hanzo_mcp/prompts/project_system.py +1 -1
  10. hanzo_mcp/server.py +6 -2
  11. hanzo_mcp/server_enhanced.py +69 -0
  12. hanzo_mcp/tools/__init__.py +75 -29
  13. hanzo_mcp/tools/agent/__init__.py +1 -1
  14. hanzo_mcp/tools/agent/agent_tool.py +2 -2
  15. hanzo_mcp/tools/common/__init__.py +15 -1
  16. hanzo_mcp/tools/common/base.py +4 -4
  17. hanzo_mcp/tools/common/batch_tool.py +1 -1
  18. hanzo_mcp/tools/common/config_tool.py +2 -2
  19. hanzo_mcp/tools/common/context.py +2 -2
  20. hanzo_mcp/tools/common/context_fix.py +26 -0
  21. hanzo_mcp/tools/common/critic_tool.py +196 -0
  22. hanzo_mcp/tools/common/decorators.py +208 -0
  23. hanzo_mcp/tools/common/enhanced_base.py +106 -0
  24. hanzo_mcp/tools/common/mode.py +116 -0
  25. hanzo_mcp/tools/common/mode_loader.py +105 -0
  26. hanzo_mcp/tools/common/permissions.py +1 -1
  27. hanzo_mcp/tools/common/personality.py +936 -0
  28. hanzo_mcp/tools/common/plugin_loader.py +287 -0
  29. hanzo_mcp/tools/common/stats.py +4 -4
  30. hanzo_mcp/tools/common/tool_list.py +1 -1
  31. hanzo_mcp/tools/common/validation.py +1 -1
  32. hanzo_mcp/tools/config/__init__.py +3 -1
  33. hanzo_mcp/tools/config/config_tool.py +1 -1
  34. hanzo_mcp/tools/config/mode_tool.py +209 -0
  35. hanzo_mcp/tools/database/__init__.py +1 -1
  36. hanzo_mcp/tools/editor/__init__.py +1 -1
  37. hanzo_mcp/tools/filesystem/__init__.py +19 -14
  38. hanzo_mcp/tools/filesystem/batch_search.py +3 -3
  39. hanzo_mcp/tools/filesystem/diff.py +2 -2
  40. hanzo_mcp/tools/filesystem/rules_tool.py +235 -0
  41. hanzo_mcp/tools/filesystem/{unified_search.py → search_tool.py} +12 -12
  42. hanzo_mcp/tools/filesystem/{symbols_unified.py → symbols_tool.py} +104 -5
  43. hanzo_mcp/tools/filesystem/watch.py +3 -2
  44. hanzo_mcp/tools/jupyter/__init__.py +2 -2
  45. hanzo_mcp/tools/jupyter/jupyter.py +1 -1
  46. hanzo_mcp/tools/llm/__init__.py +3 -3
  47. hanzo_mcp/tools/llm/llm_tool.py +648 -143
  48. hanzo_mcp/tools/mcp/__init__.py +2 -2
  49. hanzo_mcp/tools/mcp/{mcp_unified.py → mcp_tool.py} +3 -3
  50. hanzo_mcp/tools/shell/__init__.py +6 -6
  51. hanzo_mcp/tools/shell/base_process.py +4 -2
  52. hanzo_mcp/tools/shell/bash_session_executor.py +1 -1
  53. hanzo_mcp/tools/shell/{bash_unified.py → bash_tool.py} +1 -1
  54. hanzo_mcp/tools/shell/command_executor.py +2 -2
  55. hanzo_mcp/tools/shell/{npx_unified.py → npx_tool.py} +1 -1
  56. hanzo_mcp/tools/shell/open.py +2 -2
  57. hanzo_mcp/tools/shell/{process_unified.py → process_tool.py} +1 -1
  58. hanzo_mcp/tools/shell/run_command_windows.py +1 -1
  59. hanzo_mcp/tools/shell/uvx.py +47 -2
  60. hanzo_mcp/tools/shell/uvx_background.py +47 -2
  61. hanzo_mcp/tools/shell/{uvx_unified.py → uvx_tool.py} +1 -1
  62. hanzo_mcp/tools/todo/__init__.py +14 -19
  63. hanzo_mcp/tools/todo/todo.py +22 -1
  64. hanzo_mcp/tools/vector/__init__.py +1 -1
  65. hanzo_mcp/tools/vector/infinity_store.py +2 -2
  66. hanzo_mcp/tools/vector/project_manager.py +1 -1
  67. hanzo_mcp-0.6.13.dist-info/METADATA +359 -0
  68. {hanzo_mcp-0.6.12.dist-info → hanzo_mcp-0.6.13.dist-info}/RECORD +72 -64
  69. {hanzo_mcp-0.6.12.dist-info → hanzo_mcp-0.6.13.dist-info}/entry_points.txt +1 -0
  70. hanzo_mcp/tools/common/palette.py +0 -344
  71. hanzo_mcp/tools/common/palette_loader.py +0 -108
  72. hanzo_mcp/tools/config/palette_tool.py +0 -179
  73. hanzo_mcp/tools/llm/llm_unified.py +0 -851
  74. hanzo_mcp-0.6.12.dist-info/METADATA +0 -339
  75. {hanzo_mcp-0.6.12.dist-info → hanzo_mcp-0.6.13.dist-info}/WHEEL +0 -0
  76. {hanzo_mcp-0.6.12.dist-info → hanzo_mcp-0.6.13.dist-info}/licenses/LICENSE +0 -0
  77. {hanzo_mcp-0.6.12.dist-info → hanzo_mcp-0.6.13.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,359 @@
1
+ Metadata-Version: 2.4
2
+ Name: hanzo-mcp
3
+ Version: 0.6.13
4
+ Summary: The Zen of Hanzo MCP: One server to rule them all. The ultimate MCP that orchestrates all others.
5
+ Author-email: Hanzo Industries Inc <dev@hanzo.ai>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/hanzoai/mcp
8
+ Project-URL: Bug Tracker, https://github.com/hanzoai/mcp/issues
9
+ Project-URL: Documentation, https://mcp.hanzo.ai
10
+ Keywords: mcp,claude,hanzo,code,agent
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Python: >=3.12
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ Requires-Dist: mcp>=1.9.4
18
+ Requires-Dist: fastmcp>=2.9.2
19
+ Requires-Dist: httpx>=0.28.1
20
+ Requires-Dist: uvicorn>=0.34.0
21
+ Requires-Dist: openai>=1.62.0
22
+ Requires-Dist: python-dotenv>=1.0.1
23
+ Requires-Dist: litellm>=1.73.2
24
+ Requires-Dist: grep-ast>=0.8.1
25
+ Requires-Dist: bashlex>=0.18
26
+ Requires-Dist: libtmux>=0.39.0
27
+ Requires-Dist: nbformat>=5.10.4
28
+ Requires-Dist: psutil>=6.1.1
29
+ Requires-Dist: pydantic>=2.11.1
30
+ Requires-Dist: pydantic-settings>=2.7.0
31
+ Requires-Dist: typing-extensions>=4.13.0
32
+ Requires-Dist: watchdog>=6.0.0
33
+ Provides-Extra: dev
34
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
35
+ Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
36
+ Requires-Dist: ruff>=0.1.0; extra == "dev"
37
+ Requires-Dist: black>=23.3.0; extra == "dev"
38
+ Requires-Dist: sphinx>=8.0.0; extra == "dev"
39
+ Requires-Dist: sphinx-rtd-theme>=3.0.0; extra == "dev"
40
+ Requires-Dist: myst-parser>=4.0.0; extra == "dev"
41
+ Requires-Dist: sphinx-copybutton>=0.5.0; extra == "dev"
42
+ Provides-Extra: docs
43
+ Requires-Dist: sphinx>=8.0.0; extra == "docs"
44
+ Requires-Dist: sphinx-rtd-theme>=3.0.0; extra == "docs"
45
+ Requires-Dist: myst-parser>=4.0.0; extra == "docs"
46
+ Requires-Dist: sphinx-copybutton>=0.5.0; extra == "docs"
47
+ Provides-Extra: test
48
+ Requires-Dist: pytest>=7.0.0; extra == "test"
49
+ Requires-Dist: pytest-cov>=4.1.0; extra == "test"
50
+ Requires-Dist: pytest-mock>=3.10.0; extra == "test"
51
+ Requires-Dist: pytest-asyncio>=0.25.3; extra == "test"
52
+ Requires-Dist: twisted; extra == "test"
53
+ Provides-Extra: performance
54
+ Requires-Dist: ujson>=5.7.0; extra == "performance"
55
+ Requires-Dist: orjson>=3.9.0; extra == "performance"
56
+ Provides-Extra: publish
57
+ Requires-Dist: twine>=4.0.2; extra == "publish"
58
+ Requires-Dist: build>=1.0.3; extra == "publish"
59
+ Dynamic: license-file
60
+
61
+ # Hanzo AI - The Zen of Model Context Protocol
62
+
63
+ [![Documentation](https://img.shields.io/badge/docs-mcp.hanzo.ai-blue?style=for-the-badge)](https://mcp.hanzo.ai)
64
+ [![PyPI](https://img.shields.io/pypi/v/hanzo-mcp?style=for-the-badge)](https://pypi.org/project/hanzo-mcp/)
65
+ [![Download DXT](https://img.shields.io/github/v/release/hanzoai/mcp?label=Download%20DXT&style=for-the-badge)](https://github.com/hanzoai/mcp/releases/latest/download/hanzo-mcp.dxt)
66
+ [![License](https://img.shields.io/github/license/hanzoai/mcp?style=for-the-badge)](https://github.com/hanzoai/mcp/blob/main/LICENSE)
67
+ [![Join our Discord](https://img.shields.io/discord/YOUR_DISCORD_ID?style=for-the-badge&logo=discord)](https://discord.gg/hanzoai)
68
+
69
+ ## 🥷 One MCP to Rule Them All
70
+
71
+ **Start here. Add other MCPs later. Control everything through one opinionated interface.**
72
+
73
+ Hanzo AI isn't just another Model Context Protocol server—it's **THE** MCP server. While others give you fragments, we give you the complete toolkit. One server that orchestrates all others, with the power to add, remove, and control any MCP server dynamically.
74
+
75
+ ```bash
76
+ # Install and rule your development world
77
+ uvx hanzo-mcp
78
+
79
+ # Or use our one-click Desktop Extension
80
+ # Download from releases and double-click to install
81
+ ```
82
+
83
+ > **Note on Installation**: If uvx is not installed, Hanzo will automatically install it for you in your home directory. No manual setup required!
84
+
85
+ ## 🎯 Why Hanzo AI?
86
+
87
+ ### The Problem with Other MCPs
88
+ - **Fragmented Experience**: Install 10 different MCPs for 10 different tasks
89
+ - **Inconsistent Interfaces**: Each MCP has its own conventions and quirks
90
+ - **Limited Scope**: Most MCPs do one thing, leaving you to juggle multiple servers
91
+ - **No Orchestration**: No way to coordinate between different MCP servers
92
+ - **Missing Quality Control**: No built-in code review or quality assurance
93
+
94
+ ### The Hanzo Way
95
+ - **One Installation**: 70+ professional tools out of the box
96
+ - **Consistent Philosophy**: Unix-inspired principles with modern AI capabilities
97
+ - **MCP Orchestration**: Install and control other MCP servers through Hanzo
98
+ - **Built-in Quality**: Critic tool ensures high standards automatically
99
+ - **Smart Defaults**: Auto-installs dependencies, reads project rules, just works
100
+
101
+ ## 🚀 Modern AI-Powered Features
102
+
103
+ ### 🧠 Advanced AI Tools
104
+
105
+ #### Multi-Agent Workflows
106
+ ```python
107
+ # Delegate complex tasks to specialized agents
108
+ agent(
109
+ prompts=["Find all API endpoints", "Document each endpoint", "Generate OpenAPI spec"],
110
+ parallel=True # Run agents concurrently
111
+ )
112
+
113
+ # Get consensus from multiple LLMs
114
+ consensus(
115
+ prompt="Review this architecture decision",
116
+ providers=["openai", "anthropic", "google"],
117
+ threshold=0.8 # Require 80% agreement
118
+ )
119
+ ```
120
+
121
+ #### Built-in Code Critic
122
+ ```python
123
+ # Force high-quality standards with the critic tool
124
+ critic(
125
+ analysis="Review authentication implementation for security issues"
126
+ )
127
+ # The critic will:
128
+ # - Find potential bugs and edge cases
129
+ # - Ensure proper error handling
130
+ # - Verify test coverage
131
+ # - Check security implications
132
+ # - Suggest improvements
133
+ # - Enforce best practices
134
+ ```
135
+
136
+ ### 📝 Project Intelligence
137
+
138
+ #### Automatic Rules Discovery
139
+ ```python
140
+ # Reads your project preferences automatically
141
+ rules() # Finds .cursorrules, .claude/code.md, etc.
142
+ # Understands your:
143
+ # - Coding standards
144
+ # - Project conventions
145
+ # - AI assistant preferences
146
+ # - Team guidelines
147
+ ```
148
+
149
+ #### Unified Todo Management
150
+ ```python
151
+ # Single tool for all task management
152
+ todo("Add authentication to API")
153
+ todo --action update --id abc123 --status in_progress
154
+ todo --action list --filter pending
155
+ ```
156
+
157
+ ### 🔍 Next-Gen Search
158
+
159
+ #### Unified Search Engine
160
+ ```python
161
+ # One search to rule them all - automatically runs:
162
+ # - Grep for patterns
163
+ # - AST analysis for code structure
164
+ # - Vector search for semantic meaning
165
+ # - Git history search
166
+ # - Symbol search for definitions
167
+ search("authentication flow")
168
+ ```
169
+
170
+ #### AST-Powered Code Navigation
171
+ ```python
172
+ # Find code with structural understanding
173
+ symbols --action grep_ast --pattern "TODO" --path ./src
174
+ # Shows TODO comments with full code context:
175
+ # - What function they're in
176
+ # - What class they belong to
177
+ # - Related code structure
178
+ ```
179
+
180
+ ### 🎨 Palette System - Opinions Are Just Configurations
181
+ ```python
182
+ # Don't like our defaults? Switch instantly
183
+ palette --action activate python # Python development focused
184
+ palette --action activate javascript # Node.js/React optimized
185
+ palette --action activate devops # Infrastructure tools
186
+ palette --action activate academic # Research & documentation
187
+
188
+ # Create your own workflow
189
+ palette_create(
190
+ name="my-workflow",
191
+ tools=["read", "write", "edit", "search", "critic", "agent"],
192
+ env_vars={"EDITOR": "nvim", "SEARCH": "ripgrep"}
193
+ )
194
+ ```
195
+
196
+ ### 🔌 MCP Server Orchestration
197
+ ```python
198
+ # Add any MCP server dynamically
199
+ mcp --action add --url "github.com/someone/their-mcp" --alias "their"
200
+
201
+ # Use their tools seamlessly
202
+ their_tool(action="whatever", params=...)
203
+
204
+ # Remove when done
205
+ mcp --action remove --alias "their"
206
+ ```
207
+
208
+ ## 🛠️ Complete Tool Suite
209
+
210
+ ### Core Development (Always Available)
211
+ - **read/write/edit/multi_edit** - Intelligent file operations
212
+ - **search** - Multi-modal parallel search
213
+ - **symbols** - AST-aware code navigation with grep_ast
214
+ - **tree** - Visual directory structures
215
+ - **grep** - Fast pattern matching
216
+ - **rules** - Read project preferences
217
+
218
+ ### AI & Automation
219
+ - **agent** - Delegate complex multi-step tasks
220
+ - **consensus** - Multi-LLM agreement
221
+ - **think** - Structured reasoning
222
+ - **critic** - Code review and quality enforcement
223
+ - **batch** - Parallel tool execution
224
+
225
+ ### Process & System
226
+ - **bash** - Secure command execution
227
+ - **npx/uvx** - Package runners with auto-install
228
+ - **process** - Background process management
229
+ - **watch** - File monitoring
230
+ - **diff** - Visual comparisons
231
+
232
+ ### Data & Analytics
233
+ - **vector_index/vector_search** - Semantic search
234
+ - **sql_query/sql_search** - Database operations
235
+ - **graph_add/graph_query** - Graph database
236
+ - **jupyter** - Notebook integration
237
+ - **stats** - Performance analytics
238
+
239
+ ### Collaboration
240
+ - **todo** - Unified task management
241
+ - **palette** - Tool configuration sets
242
+ - **mcp** - Server orchestration
243
+ - **git_search** - Repository mining
244
+
245
+ ## 🚀 Quick Start
246
+
247
+ ### Installation Methods
248
+
249
+ #### 1. Via pip/uv (Recommended)
250
+ ```bash
251
+ # Installs globally
252
+ uvx hanzo-mcp
253
+
254
+ # Don't have uv? No problem - we'll install it for you!
255
+ curl -LsSf https://pypi.org/simple/hanzo-mcp | python3
256
+ ```
257
+
258
+ #### 2. Desktop Extension (One-Click)
259
+ 1. Download `hanzo-mcp.dxt` from [latest release](https://github.com/hanzoai/mcp/releases/latest)
260
+ 2. Double-click to install in Claude Desktop
261
+ 3. Restart Claude Desktop
262
+
263
+ #### 3. Manual Configuration
264
+ ```json
265
+ // Add to Claude Desktop config
266
+ {
267
+ "mcpServers": {
268
+ "hanzo": {
269
+ "command": "uvx",
270
+ "args": ["hanzo-mcp"],
271
+ "env": {
272
+ "HANZO_ALLOWED_PATHS": "/Users/you/projects"
273
+ }
274
+ }
275
+ }
276
+ }
277
+ ```
278
+
279
+ ## 🏆 Why Developers Love Hanzo
280
+
281
+ ### Smart Defaults
282
+ - **Auto-installs** missing dependencies (uvx, uv, etc.)
283
+ - **Discovers** project rules and preferences automatically
284
+ - **Parallel** operations by default
285
+ - **Intelligent** fallbacks when tools aren't available
286
+
287
+ ### Quality First
288
+ - **Built-in critic** for code review
289
+ - **Test enforcement** in workflows
290
+ - **Security scanning** in operations
291
+ - **Best practices** baked in
292
+
293
+ ### Extensible
294
+ - **Palette system** for instant context switching
295
+ - **MCP orchestration** to add any capability
296
+ - **Plugin architecture** for custom tools
297
+ - **API-first** design
298
+
299
+ ## 📊 Performance
300
+
301
+ - **65-70 tools** available instantly
302
+ - **Parallel execution** reduces wait times by 80%
303
+ - **Smart caching** for repeated operations
304
+ - **Minimal dependencies** for fast startup
305
+
306
+ ## 🤝 Contributing
307
+
308
+ We welcome contributions! The codebase is designed for extensibility:
309
+
310
+ 1. **Add a Tool**: Drop a file in `hanzo_mcp/tools/`
311
+ 2. **Create a Palette**: Define tool collections
312
+ 3. **Share Workflows**: Contribute your configurations
313
+
314
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
315
+
316
+ ## 📚 Documentation
317
+
318
+ - **[Installation Guide](https://mcp.hanzo.ai/install)** - All installation methods
319
+ - **[Tool Reference](https://mcp.hanzo.ai/tools)** - Complete tool documentation
320
+ - **[Palette System](https://mcp.hanzo.ai/palettes)** - Customize your workflow
321
+ - **[MCP Orchestration](https://mcp.hanzo.ai/orchestration)** - Extend with any MCP
322
+ - **[Best Practices](https://mcp.hanzo.ai/best-practices)** - Pro tips
323
+
324
+ ## 🌟 Testimonials
325
+
326
+ > "The critic tool alone is worth it. My code quality improved overnight." - *Sr. Engineer at Fortune 500*
327
+
328
+ > "Finally, search that actually works. It knows what I mean, not just what I type." - *AI Researcher*
329
+
330
+ > "I threw away 15 different tools and just use Hanzo now. The palette system means I can switch from Python to DevOps to writing in seconds." - *Tech Lead*
331
+
332
+ ## 📈 Project Status
333
+
334
+ - **Version**: 0.6.x (Stable)
335
+ - **Tools**: 70+ and growing
336
+ - **Palettes**: 10 built-in, unlimited custom
337
+ - **Community**: Active and helpful
338
+ - **Updates**: Weekly improvements
339
+
340
+ ## 🛡️ Security
341
+
342
+ - **Sandboxed execution** for all operations
343
+ - **Permission system** for file access
344
+ - **Audit trails** for compliance
345
+ - **No telemetry** without consent
346
+
347
+ ## 🎯 The Zen of Hanzo
348
+
349
+ 1. **One Tool, One Purpose** - Each tool masters one thing
350
+ 2. **Quality Over Quantity** - Better to do it right
351
+ 3. **Parallel When Possible** - Time is precious
352
+ 4. **Smart Defaults** - It should just work
353
+ 5. **Extensible Always** - Your workflow, your way
354
+
355
+ ---
356
+
357
+ *Built with ❤️ by developers, for developers. Because life's too short for bad tools.*
358
+
359
+ **[Get Started Now →](https://mcp.hanzo.ai)**
@@ -1,43 +1,51 @@
1
- hanzo_mcp/__init__.py,sha256=YvzSKP7uAofDDoy2Yj36r8eSZjOJfiyZevQqHRET8Ew,362
1
+ hanzo_mcp/__init__.py,sha256=u_sq1RxXsMYSHcKa9iuMSjVhooegJyiHbPhVIc9O4oE,361
2
2
  hanzo_mcp/__main__.py,sha256=TY-sUBg0MJozJws4-e3_kT8mJVoYGKCk6G3gPGxjIBI,129
3
- hanzo_mcp/cli.py,sha256=f9O-O4kfFGhJlWZFUs2PNnBKBt1Xv8teKaIhKDFFK3g,13297
4
- hanzo_mcp/cli_enhanced.py,sha256=_YirFtkOT-hlu1OqHslgivafWxs6RQ1VJKfowywVoQY,15970
5
- hanzo_mcp/dev_server.py,sha256=bmgVwIUQH_VoD15iyyldVkFl7Co7A4BcrkHnKq55Bbs,8137
6
- hanzo_mcp/server.py,sha256=FoJWaDY0LRgtsO1gq6NBKGWy7urwkXuR30tA0KJCAR8,8874
7
- hanzo_mcp/config/__init__.py,sha256=iZYGSJMsC1c97gRFqgyowfP4XW480BBVRAQq1r-Dp7g,506
8
- hanzo_mcp/config/settings.py,sha256=ctzcQa3Yk_3ACN8i8B_Hnvc_8aVad4GrKmdIQEEo0lA,16411
9
- hanzo_mcp/config/tool_config.py,sha256=AT5eJRZAL8VTLu5DCdoC_MkDxtufVE_QOj7Yp_Fyi8k,6317
3
+ hanzo_mcp/cli.py,sha256=0sX3kr-l1VJZTw144pF_Oufg4UL29DR4_8tsXP-3KBY,13295
4
+ hanzo_mcp/cli_enhanced.py,sha256=DZzYEYa6Xx0nUtFnGYmBSKsEuLzNQ7DV1qV7vlSQUtk,15966
5
+ hanzo_mcp/cli_plugin.py,sha256=FjBklPtpIbpgSNq5QfIeeWCO3otjOJPFXcpfKP8bGBw,3181
6
+ hanzo_mcp/dev_server.py,sha256=Ie1egLSmzu2i_kRLorIIlpfHyS-hZBv9P9yUjjAEVVc,8134
7
+ hanzo_mcp/server.py,sha256=-ZT94LnOtDGu6pJoC1jQKKzQQrAKVrJNlI9Gk6yblvo,9031
8
+ hanzo_mcp/server_enhanced.py,sha256=6GK5IiDE2NTXnT_UnGi_HPV-gTn0ZT-D-rOToMmE394,2166
9
+ hanzo_mcp/config/__init__.py,sha256=E3GQ0EMerdJI8mbTL2uhlBPiJYykNOnAoPorIpP2QKM,505
10
+ hanzo_mcp/config/settings.py,sha256=3WUtWTr9A0H0FCsCwF7lDr8o8iw0DjGpopfxqj1upB8,18508
11
+ hanzo_mcp/config/tool_config.py,sha256=2FP1ZSrN3IA838WG7fn-0nLrYSFOPgReNH3Wz3xQwRs,6315
10
12
  hanzo_mcp/prompts/__init__.py,sha256=Fp2Jr6SmUd6QmasOclgkTIb4qCzRSqtu3i-0d98XKEg,3992
11
13
  hanzo_mcp/prompts/compact_conversation.py,sha256=nvD068KEesiMcevxxMBeIJh6AqT7YHOqyH6RepRFFfA,4206
12
14
  hanzo_mcp/prompts/create_release.py,sha256=1Z8xSTtz5vAm0rWFnERpFu7wIYExT4iXhM6nGmQaM-s,1374
13
- hanzo_mcp/prompts/project_system.py,sha256=-W-PN-h-wW2F41-FM_OnLkX__4i40JpvF6lvW-3rjoM,8231
15
+ hanzo_mcp/prompts/project_system.py,sha256=FgWxRaX7rPQwDZT3n69yBwLkQv4uJ4jcUZjKzikjR9A,8230
14
16
  hanzo_mcp/prompts/project_todo_reminder.py,sha256=otiBdmzxssBSb3MZZSQsjYDGLBqi1bM0HgraELP_Nf4,3645
15
17
  hanzo_mcp/prompts/utils.py,sha256=IwxIhzZfYJ2anToPulbrpcc07u4Dozo9ok6VE3BC_4A,9963
16
- hanzo_mcp/tools/__init__.py,sha256=KRHS8ijzc1NDqfPYJ0ZO-vwLlYzRtt0z8OXII4kf9Zw,14318
17
- hanzo_mcp/tools/agent/__init__.py,sha256=U4nchBrzKAnCn0ffbzOnN00zg-ZmXR6J8ZrdaBIWKQ8,1900
18
+ hanzo_mcp/tools/__init__.py,sha256=OgXr3sz_PMcjG9WWfZ3MAkCzES-eWw-Ts8VBThrYmiw,16135
19
+ hanzo_mcp/tools/agent/__init__.py,sha256=MJQttDLh2Pr_NXyMremlLg6yKInUHHxOF0zH_KtSBrc,1899
18
20
  hanzo_mcp/tools/agent/agent.py,sha256=xWYV6-ACIut_u2yiaobmN5szvoBOs8vre0opNKcKkmY,13541
19
- hanzo_mcp/tools/agent/agent_tool.py,sha256=A46xrkXGNBbNhSoZYfWyujswKDcIM04bZUKQPwlbAVw,21376
21
+ hanzo_mcp/tools/agent/agent_tool.py,sha256=VxiY63eEbaWaoKEiytbnok8Rtlc0efmWC2Fb9YLCSKc,21366
20
22
  hanzo_mcp/tools/agent/prompt.py,sha256=Wi9Z45hmQ92eUNZbOWzj9ZVCCr-fM1K9iyaRvTCAgrQ,4529
21
23
  hanzo_mcp/tools/agent/tool_adapter.py,sha256=HbuCOuj21hdNlUu0vLQq2QRupi7vCDhMPj2MH-oTwKE,2302
22
- hanzo_mcp/tools/common/__init__.py,sha256=pnKbCbAl0HrwaLpy_f4NJaX5_O7rVCTxZhnyPYpoyFQ,924
23
- hanzo_mcp/tools/common/base.py,sha256=o5_vIsQjmYD_wfJYofP7cLn1SY6hCVo3OAT23MFJOfQ,5888
24
- hanzo_mcp/tools/common/batch_tool.py,sha256=RsypKEaKPf4NgOpWjiLe1_KAYid_oqPDMti3xMsOdoY,12002
25
- hanzo_mcp/tools/common/config_tool.py,sha256=BgkXG5W2_g7lnrVbYWKkeCWA4cxUtdZTFzhFApmUT7c,16252
26
- hanzo_mcp/tools/common/context.py,sha256=e6ZCiMRK4RFPW5oi5zqLdVt-hhQndTUtyinpf-nPOUo,5186
27
- hanzo_mcp/tools/common/palette.py,sha256=I-DBp1tKzpQfHj1M5Bzj-mvOobz_3AlgKz25wvfv6oI,11251
28
- hanzo_mcp/tools/common/palette_loader.py,sha256=wOFQpfw2TCIc78StibfdQksHZAE4g8vqZMAWhTYhqmY,3671
29
- hanzo_mcp/tools/common/permissions.py,sha256=LR1tuQAPMoaKvqNtHPRaiB0ZUb0Tbsg3e9L6vvd4FLU,7562
30
- hanzo_mcp/tools/common/stats.py,sha256=QqtEoz_kWC7sNM5EQxTMqCmOxHJwoPLKyNrGIDWDf2Y,9769
24
+ hanzo_mcp/tools/common/__init__.py,sha256=QQqwCAtOEvWlQ48O-8s_vayY58peGSfk1AgmWJSuQus,1283
25
+ hanzo_mcp/tools/common/base.py,sha256=_FyIlHstFvGaOmPzBkt5LLO8CZ0PpXi1G6ArPcSeDh8,5884
26
+ hanzo_mcp/tools/common/batch_tool.py,sha256=1AT-KU2lBdUX5dMs-6KD7J-F_UoGVVfxX3O1x57HMyk,12001
27
+ hanzo_mcp/tools/common/config_tool.py,sha256=X2TaITRcYemyD-V2w-Jwpv3DpFdSp65Dk_QTHfYzgF8,16250
28
+ hanzo_mcp/tools/common/context.py,sha256=by0twroTbcQwTJ552HgzhG67GXHCPyEsBXQ18jueLho,5184
29
+ hanzo_mcp/tools/common/context_fix.py,sha256=T0VUJpz-8SQE-h3MiWYiLaZFyF7s-rfTpYVUP6ax2TU,764
30
+ hanzo_mcp/tools/common/critic_tool.py,sha256=0wj9in66AmLQs8bTCiuNxnSSYyUZUursIIXl_6gRZhw,6292
31
+ hanzo_mcp/tools/common/decorators.py,sha256=4CIpYTrcTKSM1zGKFGGjDwgxJXKKKthavzz_cLGqw2U,6806
32
+ hanzo_mcp/tools/common/enhanced_base.py,sha256=8jF7QNFmS1owhqJLzdClpDkbS3INj49DQ_Rn_yvdIoY,3781
33
+ hanzo_mcp/tools/common/mode.py,sha256=3tHBnhR-N6fxmEJPelLMyeHIUqXx-q0lSGU5BWCPw14,3320
34
+ hanzo_mcp/tools/common/mode_loader.py,sha256=341MxmYmJHwM5WAfQnULbfoypEAnyME-tEu69_8J44Y,3340
35
+ hanzo_mcp/tools/common/permissions.py,sha256=D6oK5eWqkAZt-tUeL717-NnmYLzcX22wsq86zzhOdfc,7561
36
+ hanzo_mcp/tools/common/personality.py,sha256=8Ly46Ui95t-KbaMz5k6gVQG87Acz7p32sU4Cz-RwtuM,36884
37
+ hanzo_mcp/tools/common/plugin_loader.py,sha256=XUEmxkdteOSejoTnRMeEMXdCOrDPRTt0BvvrvrBA4is,9191
38
+ hanzo_mcp/tools/common/stats.py,sha256=Idv5lkJjx6PUbpgLkifwrrd09bigzLKgpZHGZFJT5qQ,9765
31
39
  hanzo_mcp/tools/common/thinking_tool.py,sha256=-jNKGS9V9qkl2Y7Zl8QK6HJmJ4XE2EOWyeA-dg3Fg-o,5071
32
40
  hanzo_mcp/tools/common/tool_disable.py,sha256=JFXQsA08WzCHYSuEETjmcUzk1RhABZljRD0d4N8PkSI,4257
33
41
  hanzo_mcp/tools/common/tool_enable.py,sha256=CD9ioFVVcnAFtrhKKsuLuKhMh31qMBSVdLSldDbTBmE,5044
34
- hanzo_mcp/tools/common/tool_list.py,sha256=QmFmBkEh4oP26X_4zCW-Xc4mFtv77nboPpO6cqw_5-I,9311
35
- hanzo_mcp/tools/common/validation.py,sha256=VV3VbDvYlAYl2Bi98xE7gFo0xnmqHHUGJGNPswm97qo,1694
36
- hanzo_mcp/tools/config/__init__.py,sha256=UfpEzxNmysTz4U8r0HS4xlaABDzf3H7DqFBxUwBd17w,242
37
- hanzo_mcp/tools/config/config_tool.py,sha256=lWs4HVzZcsIfFn_G_7zUgngKPk1by3bHPvYTyDmAJ5U,6877
42
+ hanzo_mcp/tools/common/tool_list.py,sha256=8qHKYgaZTlzM1mkwL9npsQ0cF5KGRgjQPr9dpL_MyAA,9303
43
+ hanzo_mcp/tools/common/validation.py,sha256=cBA4sqDapIAXUj9mVQVzM3lS_KovDrI5Ct66muxy538,1693
44
+ hanzo_mcp/tools/config/__init__.py,sha256=7yZQLhF40U9F7Xddb4uMwhg-76owkOEOax94xw6Ip-o,313
45
+ hanzo_mcp/tools/config/config_tool.py,sha256=FHtKsXEGwWFLQkrgWQHmzg6-OO3M7HQY30mJjEnXeHM,6876
38
46
  hanzo_mcp/tools/config/index_config.py,sha256=VNxCrFyBFLAjoial5pZlRNZgrF1iDVl5yy-_czEyfGo,6332
39
- hanzo_mcp/tools/config/palette_tool.py,sha256=bbSAfTBD7on0aXWU9Mgm75-gOkxn0q9dWd1iTk9USzk,6512
40
- hanzo_mcp/tools/database/__init__.py,sha256=RXHXDyD79a8MbJ5AOuQOgCbCL7cO5yxVH2LbA3lEyGA,2167
47
+ hanzo_mcp/tools/config/mode_tool.py,sha256=GawuLeQ9pc0ExPAcYqaw82zs7UYb4a2R6DWQmZtASY8,8851
48
+ hanzo_mcp/tools/database/__init__.py,sha256=dTZj2QLelJpJouYmgP2vAyf1eU62ZoND0xZ7OC0dmiM,2166
41
49
  hanzo_mcp/tools/database/database_manager.py,sha256=urbP3T4QpTPBOH7JKjgjRbgMZAZxGm5Q_skZnZ9aHXQ,8807
42
50
  hanzo_mcp/tools/database/graph.py,sha256=i4yufKM8KNlb4NgsHkZSZ2kLICuJsQfl9m13sTfTZZ4,16964
43
51
  hanzo_mcp/tools/database/graph_add.py,sha256=gxFG-OHkvJhLUUW-xQMvNiQ_iQDt7vJ1k9rWdBd7dEg,7741
@@ -49,15 +57,15 @@ hanzo_mcp/tools/database/sql.py,sha256=I7mDodvYwt5jqS0qMid2JcJatQ5Q0yabyTPi9X59D
49
57
  hanzo_mcp/tools/database/sql_query.py,sha256=MsZ9XQ-KIMOMeqIxUnbKpd4_CN8Nt6zIN6vB9V6xkik,7290
50
58
  hanzo_mcp/tools/database/sql_search.py,sha256=KEG7DBcBvMy0CGRoxxanOYmwKL9GVN4vNPQvjxhlxkg,9831
51
59
  hanzo_mcp/tools/database/sql_stats.py,sha256=9aumwENMo-9DOfcLBg8zQ6khIdxVIQLVh_kNYE4MbZA,9008
52
- hanzo_mcp/tools/editor/__init__.py,sha256=RZKbXadNnh5fZ0-Wow-A5gAYCEfEuV_GapaR4mdjzW0,332
60
+ hanzo_mcp/tools/editor/__init__.py,sha256=UfwWP23OUFmd6dYRwm2fKfaYDlignQ2gfi32yRson08,331
53
61
  hanzo_mcp/tools/editor/neovim_command.py,sha256=R4OtUia7WKdzOK8AHDrNpHii5GDJmHWwZigFy9ATycs,8283
54
62
  hanzo_mcp/tools/editor/neovim_edit.py,sha256=Hq10p1LIHBM_jGIyvjQYtJr8NR5pAeLRM6GfnGHFzTg,8816
55
63
  hanzo_mcp/tools/editor/neovim_session.py,sha256=H1AhXBod9HzcYv4fQu4pOlBcyfwgjUo24lzenDZfqRU,11962
56
- hanzo_mcp/tools/filesystem/__init__.py,sha256=wX3GTjevm-aON_RHs58WawgIn3LRxz4lN1AcqPHW6OI,6735
64
+ hanzo_mcp/tools/filesystem/__init__.py,sha256=LHKPzbMzjmYGJN4J3nHfPuXw30iKUPPzf93fcMuPegY,6837
57
65
  hanzo_mcp/tools/filesystem/base.py,sha256=0_6PBU1yqGRIQ8ggQNMEA2rB4DXTFg7sMJRAoocN9do,3818
58
- hanzo_mcp/tools/filesystem/batch_search.py,sha256=03Ile8x9F5ySW_8YtLYMw7zyWf8eUhTW1wjZ3iqMN00,34302
66
+ hanzo_mcp/tools/filesystem/batch_search.py,sha256=nnl72e-HzkjrGCcnyn-2E8VkKBNRx7-0NxxiYFznbhc,34278
59
67
  hanzo_mcp/tools/filesystem/content_replace.py,sha256=9GvQhJP1yBJsLQZPHs1UJZ6hxLBh1gCmZaU_CI4kbsA,9958
60
- hanzo_mcp/tools/filesystem/diff.py,sha256=7ZpVkSy_CjEu3dVfULXQ9Wn8IPKYLlS77fIGHvRQ3wg,7626
68
+ hanzo_mcp/tools/filesystem/diff.py,sha256=0ukeGSvkf4PosKhlvQltMuFKA7and_H5T8c632LEX6U,7618
61
69
  hanzo_mcp/tools/filesystem/directory_tree.py,sha256=H_fuqNot8Qx3eJQXBsFGIUVyASGFjXgnO_viT_gCLwU,10696
62
70
  hanzo_mcp/tools/filesystem/edit.py,sha256=jqn1ae3tL5JrHQYm-uWHbXZSuAtw8o2Nj2yYJ1CGg8k,10632
63
71
  hanzo_mcp/tools/filesystem/find.py,sha256=897Lnd2507979hBzkskU5gEj1XDJdr7Gr9hTZIAWkUU,15337
@@ -66,70 +74,70 @@ hanzo_mcp/tools/filesystem/git_search.py,sha256=qOOIxuATu6UPdlWokJaifaKLphj1Y3uM
66
74
  hanzo_mcp/tools/filesystem/grep.py,sha256=LDBGEpN2dj5xW1VvfgDxlkx4QqofWeztqwdyf_pSup0,16832
67
75
  hanzo_mcp/tools/filesystem/multi_edit.py,sha256=p6_OJNBn9uzCxVcLJrL88gze_P4O8j2Lm0-DZAESwpY,14242
68
76
  hanzo_mcp/tools/filesystem/read.py,sha256=y8FV9S4GZZLNMplrIZrz5FrqQ0xT3OiIHav-a2uDBzs,9342
77
+ hanzo_mcp/tools/filesystem/rules_tool.py,sha256=QBm2FnuN3HlIHC5M5vkAE8fvMrtebQskb31KJ_R1mec,8311
78
+ hanzo_mcp/tools/filesystem/search_tool.py,sha256=m2i8A-iC9oyL6KR0fsPXbD7QXDORJksb2iB_xqNLz8s,26580
69
79
  hanzo_mcp/tools/filesystem/symbols.py,sha256=gwLwA2PA6YuT7hojjFVHq2xVPuB2xlyTYyVbBow7AXY,7290
70
- hanzo_mcp/tools/filesystem/symbols_unified.py,sha256=UETAT3ofVVTFRuyrgKLehigV937cL5CCEbGaysmwXhE,12258
80
+ hanzo_mcp/tools/filesystem/symbols_tool.py,sha256=oCS734s17Q2KjGGw0vXcKOzJclrLvuHPE0NXCS_BN-U,15993
71
81
  hanzo_mcp/tools/filesystem/tree.py,sha256=MPBb3jHWa09DezDILP3FP7S_XCY2dJYQM-zUVYUloQQ,7497
72
- hanzo_mcp/tools/filesystem/unified_search.py,sha256=hmLGNWPiLrap7sJdTxJv-UM7A93qoo_cutrFlD_SAHc,26675
73
82
  hanzo_mcp/tools/filesystem/unix_aliases.py,sha256=jagrJbDo97Kpt3Zu3LQcuw_z28MQlADrNPbWgk6_cA0,3162
74
- hanzo_mcp/tools/filesystem/watch.py,sha256=hbqDUqlIlWXW4-2S8Z4ui-JSNgcWXxn_YOcZLo44ddc,7073
83
+ hanzo_mcp/tools/filesystem/watch.py,sha256=in8vDAaInagg5gWT5hOcgioN7hs5nuEDeln3yaxrW5c,7100
75
84
  hanzo_mcp/tools/filesystem/write.py,sha256=FwumcJX9RW_Xy8noKh-S3p95KRyOUG59Nl4w5lznV40,4762
76
- hanzo_mcp/tools/jupyter/__init__.py,sha256=JVCoHVUkBMvkN_JmfOs63lF7q31bGyPLscHXfqknbOw,2425
85
+ hanzo_mcp/tools/jupyter/__init__.py,sha256=QQV3Vq13L5TicBWaSHtgg7HNteGjkmj67PXfWbrvcqY,2416
77
86
  hanzo_mcp/tools/jupyter/base.py,sha256=cK190wDExYyUFu7qrT-s5sHglPd9k6SrlpA60sLwFFE,10101
78
- hanzo_mcp/tools/jupyter/jupyter.py,sha256=0mUNu_Q0jnmiQip9Y2naAF0tJ71hy4mMmUMoWnuCBYU,11757
87
+ hanzo_mcp/tools/jupyter/jupyter.py,sha256=48QgVTgoHmlKRk2D1oxMckIDr92CzZmKuWyzpdagceo,11749
79
88
  hanzo_mcp/tools/jupyter/notebook_edit.py,sha256=MeaeUgvPnc5EmvgzbtJGIqKqFuUFt_8RE-XzBouYU4Q,11806
80
89
  hanzo_mcp/tools/jupyter/notebook_read.py,sha256=Au6Ad3N1Z5cYq2yIbu5y9H4oF6SwOj6SdHQeBwP7Gus,5222
81
- hanzo_mcp/tools/llm/__init__.py,sha256=kY8OJVsM8qRb0eVRjF7kuWJsrrlIxcUQntJS_FYXt8M,721
90
+ hanzo_mcp/tools/llm/__init__.py,sha256=7bb3oAPAGkv_jFmGNXK6RSTFqjbty9Iklp1WqQXsM2s,703
82
91
  hanzo_mcp/tools/llm/consensus_tool.py,sha256=5Rjs9TS0jeNkSH12AQK3fSvy7yo6tJRdmfYZLrR6NgU,11622
83
92
  hanzo_mcp/tools/llm/llm_manage.py,sha256=SCgmiO_cjQnCFdpsGzIPMluN1s8FA-Nj5-3AJZLvIUg,15666
84
- hanzo_mcp/tools/llm/llm_tool.py,sha256=cEzZKORFzdu4KcYJ8KB105m_xHLaMGTz5owPjbjPx-8,11158
85
- hanzo_mcp/tools/llm/llm_unified.py,sha256=BxSmXkJpD8QA-RQN_-L1G9zbZrP6gCQGuUegLtlafww,29804
93
+ hanzo_mcp/tools/llm/llm_tool.py,sha256=PJpPG8st-kd7Yc21udAZsvfzvkauhhauojvJ-b8ZnJc,29796
86
94
  hanzo_mcp/tools/llm/provider_tools.py,sha256=mtjGdAPX3XFc_22fMNYNQbeU49opduQPO9h7DoN5IQo,11546
87
- hanzo_mcp/tools/mcp/__init__.py,sha256=0-7s3m51wXMt56X1hgUBEjadvLpu64OGcjjJWFOI058,365
95
+ hanzo_mcp/tools/mcp/__init__.py,sha256=OJ9WHtzG3J8sHGSAdckortCR-m6DiyS01YPQMao7E2g,348
88
96
  hanzo_mcp/tools/mcp/mcp_add.py,sha256=e66tk-OoV8R5x020sDHWgmJw_QLncfA7_RAi2Mr3ZDc,7924
89
97
  hanzo_mcp/tools/mcp/mcp_remove.py,sha256=cI_C6xjaHrQ0jnlqRZvrtjDi4CR6V0mTDLynOlrcAiA,3266
90
98
  hanzo_mcp/tools/mcp/mcp_stats.py,sha256=nka8zAJEEfqlA3tO5IamuIwOnmIZzLDW52kOxPTCDZc,5478
91
- hanzo_mcp/tools/mcp/mcp_unified.py,sha256=xZPKDqhBEMsUKFrKS9nRcl0n2YWZU_6DK3lvl2PYBQ4,16871
92
- hanzo_mcp/tools/shell/__init__.py,sha256=d66Jo8BIA6Re__b3r9V_e8uGm8psplQ2SGf0XRSGBzM,1733
99
+ hanzo_mcp/tools/mcp/mcp_tool.py,sha256=kx-HEK1PQaLrWi4wff73HgGpY6x0m0J-CaNAD84uQwU,16855
100
+ hanzo_mcp/tools/shell/__init__.py,sha256=61Vf2_uYJv8Y4lb3nB8LZPY8A0i75DUj4Jo0t5sXT0M,1712
93
101
  hanzo_mcp/tools/shell/base.py,sha256=Nx9rAE7CO9-Hr5k_qYKUtNFq4twI6Z-lOt0fpkS57i4,5832
94
- hanzo_mcp/tools/shell/base_process.py,sha256=KgXA98hFsbU5Y9E6mGLTTwQZowgHGpk5HSALxRICqDI,9495
102
+ hanzo_mcp/tools/shell/base_process.py,sha256=ExcVkVtFEy8BjQ0Cu1vED9KEjKLRqEwZweQgeKYn_kE,9661
95
103
  hanzo_mcp/tools/shell/bash_session.py,sha256=YPtdtC0pc6Q04RJqKUy0u0RPTbiT2IGtsvFqejK5Hu4,27271
96
- hanzo_mcp/tools/shell/bash_session_executor.py,sha256=xqvnFZSdlRKuuQx7HKsS6axasZa6Lr8YnIlny2qwr1Q,10892
97
- hanzo_mcp/tools/shell/bash_unified.py,sha256=vWQbTCgZS9ucD3cMr_ZYlLuGCnmQljRITYKUI-qrJek,4883
98
- hanzo_mcp/tools/shell/command_executor.py,sha256=Tw0UGRHBYxizkr7UaB148gmUwthc0D6pI92aPFIqc4I,36509
104
+ hanzo_mcp/tools/shell/bash_session_executor.py,sha256=BcR6aJgluRdj0lepV8MrIkeYo3S9MrbuIqIjtV12WHQ,10891
105
+ hanzo_mcp/tools/shell/bash_tool.py,sha256=z6QsQatDQQSSX8SY-IYHVrt7xRsR8O3uj_fzJs8FQQU,4882
106
+ hanzo_mcp/tools/shell/command_executor.py,sha256=171GoLjIvbnV4F0kqxs30BgLBQC4I1Gi4jEOZJ9N5FA,36507
99
107
  hanzo_mcp/tools/shell/logs.py,sha256=RahjkEHNwsKbnJ7cTAie70BSb9bV6T9Vf4JJluoZXYo,8468
100
108
  hanzo_mcp/tools/shell/npx.py,sha256=Bs5tKpyJMm6Yfrmuph0btbvSQGbDczR_YToP2iRqhHY,5083
101
109
  hanzo_mcp/tools/shell/npx_background.py,sha256=GNZOYV_jjA9pa7w-ZNy_oX7iSA_VfZRzVUr7dKunfjo,7120
102
- hanzo_mcp/tools/shell/npx_unified.py,sha256=O6mYTwPQCNAR4ICmP3DNJcaNvfAcl0yOhaf26npmwfg,3520
103
- hanzo_mcp/tools/shell/open.py,sha256=Fo21N-XIosKDfGDIiROTUb8QxaqSddIY44YJgthGQ68,3686
110
+ hanzo_mcp/tools/shell/npx_tool.py,sha256=r-kwJYaDf9HeRKA7j0tXkWE8X0_FkTmroLwgzA8Eblc,3519
111
+ hanzo_mcp/tools/shell/open.py,sha256=h8SWEtHKUBevSt-be51MS1No2srIT6ptuySNexMYn58,3686
104
112
  hanzo_mcp/tools/shell/pkill.py,sha256=PStKLEhuZhCZAXnn-Wwlut2xjV7GIc7PozuF8y8b7gI,8676
105
- hanzo_mcp/tools/shell/process_unified.py,sha256=XEFhyR9dc9vbmNEZUkNzlwytVeL8bKiCGK6PYbTmOVo,5008
113
+ hanzo_mcp/tools/shell/process_tool.py,sha256=DvSQfP-X0TzJS8JFa5wmihkfHVnW1J_9Hi7q-H1f_AM,5007
106
114
  hanzo_mcp/tools/shell/processes.py,sha256=q2TCVpftV1HJaoEOEWzTOOUvyRemZiG0v8hK9VGM94A,9395
107
115
  hanzo_mcp/tools/shell/run_background.py,sha256=K2SxCF9sDcVxcwzAA77plZMb3wjYTOoSqS6MVyuBFBE,9713
108
116
  hanzo_mcp/tools/shell/run_command.py,sha256=AEH3waGpjbaSxBxSfmDW6hF7aL4pzwEwgUojOEsSNOY,16095
109
- hanzo_mcp/tools/shell/run_command_windows.py,sha256=ccicQHYJVfqowKxyUIpXYDoIvZl6jpgJDubPuDUpC5A,15321
117
+ hanzo_mcp/tools/shell/run_command_windows.py,sha256=FZ8fUjqvsdGvzyyvagNiQ6ot_isHvVtvCt39MZ5FNks,15320
110
118
  hanzo_mcp/tools/shell/session_manager.py,sha256=o8iS4PFCnq28vPqYtdtH9M8lfGyzyhtNL0hmNI13Uuc,6509
111
119
  hanzo_mcp/tools/shell/session_storage.py,sha256=elnyFgn0FwsmVvoWAoJFAqiEeNaK4_yByT8-zXa6r-o,10141
112
- hanzo_mcp/tools/shell/uvx.py,sha256=Y74SmbYHYlEoXXMzc9wh405-MD7zKAgFyWDBKastBHI,5034
113
- hanzo_mcp/tools/shell/uvx_background.py,sha256=uXeSJ_hjbpWyo2Zm75KJTZI2h_ZV5nEb_rAF7Gl954U,7105
114
- hanzo_mcp/tools/shell/uvx_unified.py,sha256=UBuhiiqsfdLML2Y86Av8Wmqh7lB6NVPBIUI5Yc3utAA,3556
115
- hanzo_mcp/tools/todo/__init__.py,sha256=p0flShq4Kw9saGQ5NXjTjwFa8BeukACaEJBTqG34H2M,1723
120
+ hanzo_mcp/tools/shell/uvx.py,sha256=f8Lmn35epWmvEfhzWbKju1KMRotLyqT8VmZ-vXeOL1Y,6749
121
+ hanzo_mcp/tools/shell/uvx_background.py,sha256=sgUSPbDavgnREePVBl0eSe8UhekPHnSVBc2YDHHUo2c,8820
122
+ hanzo_mcp/tools/shell/uvx_tool.py,sha256=5AKrjEYFWyT2v-iNrk3SDcWOsFkvEwnoqm273tXwAGU,3555
123
+ hanzo_mcp/tools/todo/__init__.py,sha256=gLYj2u9TxvFt_EBSAzQywdUUeuUP6TD620KeoibQoV8,1531
116
124
  hanzo_mcp/tools/todo/base.py,sha256=k0CFZy59YlLAJBVzVA4tr-qGkQ1l5yF04kcmziwQWec,10666
117
- hanzo_mcp/tools/todo/todo.py,sha256=y4LM8CIb94tK-lURnVer2WzctKPx_EWS0kEIM1Ut0Os,8218
125
+ hanzo_mcp/tools/todo/todo.py,sha256=o3rKo8-JziG_42oX6YXNSpveH13pp14hF4Q68KavFsg,8921
118
126
  hanzo_mcp/tools/todo/todo_read.py,sha256=EWqXOeQANGQOJXKyMv-0GeJdq-d0HnslRM__LW6Jydg,4688
119
127
  hanzo_mcp/tools/todo/todo_write.py,sha256=nJG2By4FXHZm7NNreEfVYb3wPJbraVWjrdv_TqXqYFo,15394
120
- hanzo_mcp/tools/vector/__init__.py,sha256=7n7mUYruIINPtUdniy45qU0qI11dLvt07PqfEbNb_D0,4011
128
+ hanzo_mcp/tools/vector/__init__.py,sha256=JCO2BX_2TJW1ZtBq6arWY9RFg5PEJuWQ_Ceaqs2v6bI,4010
121
129
  hanzo_mcp/tools/vector/ast_analyzer.py,sha256=0MraKxFbZqaPns0CUacCG84IX_DW_RxSfi7fvXT-MEY,15986
122
130
  hanzo_mcp/tools/vector/git_ingester.py,sha256=pR4_HRMT7trGhr1kGHASvhgm7Vjwh6UY-UVdXCNj07s,16367
123
131
  hanzo_mcp/tools/vector/index_tool.py,sha256=rMqv1WQMt18eikXdOzUNYyvWdR1gK_rIy4P769gGTak,12769
124
- hanzo_mcp/tools/vector/infinity_store.py,sha256=yKiPVitpkk3Ud1Zb0O_q6IlsB0diVIvFxqKCZ2Pw8IY,28631
132
+ hanzo_mcp/tools/vector/infinity_store.py,sha256=gBEl21kYX1PVJhEqoEMljSnBOWoVzBC3kpNLW51PBWw,28622
125
133
  hanzo_mcp/tools/vector/mock_infinity.py,sha256=QyU7FM2eTCP0BeuX8xhRe0En7hG9EFt-XzgDu-BefrI,4990
126
- hanzo_mcp/tools/vector/project_manager.py,sha256=ML-ZeZTb1Pb5m-T0jF2LH0myTmG688uMR0nHRQBSNDY,13625
134
+ hanzo_mcp/tools/vector/project_manager.py,sha256=PBaO5WMT5SJRM6wENMZXCCG86P2p5PfHaj8nw1JaPEI,13624
127
135
  hanzo_mcp/tools/vector/vector.py,sha256=EpKEDkRfSHsDfPewqRwNAulX0BndlK48p-sFSMtt3js,10179
128
136
  hanzo_mcp/tools/vector/vector_index.py,sha256=IqXoEfEk6TOOEThXw4obePZqfvBRiYL_LCrx8z35-h8,4403
129
137
  hanzo_mcp/tools/vector/vector_search.py,sha256=jwX1azf4V4seqJ2CIDloX3lJ5_hkUl7X5e2OOgGXQNk,9647
130
- hanzo_mcp-0.6.12.dist-info/licenses/LICENSE,sha256=mf1qZGFsPGskoPgytp9B-RsahfKvXsBpmaAbTLGTt8Y,1063
131
- hanzo_mcp-0.6.12.dist-info/METADATA,sha256=mWECTG9AjK-tKztANkIijYLOgxeCVl1zR25f4WEx_w0,11291
132
- hanzo_mcp-0.6.12.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
133
- hanzo_mcp-0.6.12.dist-info/entry_points.txt,sha256=Q_g5SzWk47z2b_rE_RgonVqk4-d8VQ6pqwMveYiXJuU,101
134
- hanzo_mcp-0.6.12.dist-info/top_level.txt,sha256=eGFANatA0MHWiVlpS56fTYRIShtibrSom1uXI6XU0GU,10
135
- hanzo_mcp-0.6.12.dist-info/RECORD,,
138
+ hanzo_mcp-0.6.13.dist-info/licenses/LICENSE,sha256=mf1qZGFsPGskoPgytp9B-RsahfKvXsBpmaAbTLGTt8Y,1063
139
+ hanzo_mcp-0.6.13.dist-info/METADATA,sha256=OmuSECF9-mVeePXW3mG7b1jFXatmRF9rSiYW6XIYAR8,12030
140
+ hanzo_mcp-0.6.13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
141
+ hanzo_mcp-0.6.13.dist-info/entry_points.txt,sha256=ML30pedHV5wjthfztzMMz3uYhNdR_6inzYY5pSqNME4,142
142
+ hanzo_mcp-0.6.13.dist-info/top_level.txt,sha256=eGFANatA0MHWiVlpS56fTYRIShtibrSom1uXI6XU0GU,10
143
+ hanzo_mcp-0.6.13.dist-info/RECORD,,
@@ -1,3 +1,4 @@
1
1
  [console_scripts]
2
2
  hanzo-mcp = hanzo_mcp.cli:main
3
3
  hanzo-mcp-dev = hanzo_mcp.dev_server:run_dev_server
4
+ hanzo-plugin = hanzo_mcp.cli_plugin:main