mirror of
https://github.com/hanzoai/python-sdk.git
synced 2026-10-23 20:23:00 +00:00
Put llm and kai_decide on the default hanzo-mcp surface
Every mode disables a registered tool it does not list, and llm was listed nowhere but HEAVY_TOOLS, written when it pulled a 100 MB client. It is an HTTP call to api.hanzo.ai now, so llm and kai_decide join the essential set every personality carries, and the llm package maps to the two tools it ships. hanzo-mcp 0.15.19, on hanzo-tools 0.3.8 and hanzo-tools-llm 0.2.1. Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
@@ -86,6 +86,7 @@ _PREFIX_TO_CATEGORY: dict[str, ToolCategory] = {
|
||||
"curl": ToolCategory.net,
|
||||
"wget": ToolCategory.net,
|
||||
"llm": ToolCategory.llm,
|
||||
"kai_decide": ToolCategory.llm,
|
||||
"consensus": ToolCategory.llm,
|
||||
"api": ToolCategory.api,
|
||||
"hanzo": ToolCategory.api,
|
||||
|
||||
@@ -178,6 +178,7 @@ def register_all_tools(
|
||||
|
||||
# LLM tools
|
||||
resolved_enabled_tools["llm"] = is_tool_enabled("llm", True)
|
||||
resolved_enabled_tools["kai_decide"] = is_tool_enabled("kai_decide", True)
|
||||
resolved_enabled_tools["consensus"] = is_tool_enabled("consensus", True)
|
||||
|
||||
# Vector tools (usually disabled by default unless config provided)
|
||||
|
||||
@@ -52,7 +52,7 @@ PACKAGE_TOOL_PREFIXES: dict[str, list[str]] = {
|
||||
"agent": ["agent", "zen", "review"],
|
||||
"jupyter": ["jupyter"],
|
||||
"editor": ["neovim_edit", "neovim_command", "neovim_session"],
|
||||
"llm": ["llm", "consensus"],
|
||||
"llm": ["llm", "kai_decide"],
|
||||
"vector": ["index", "vector_index", "vector_search"],
|
||||
"config": ["config", "mode", "workspace"],
|
||||
"mcp_tools": ["mcp"],
|
||||
|
||||
@@ -32,7 +32,6 @@ ESSENTIAL_SYSTEM_TOOLS: Set[str] = {
|
||||
# Heavy tools that are disabled by default (opt-in)
|
||||
# These require large dependencies like llm
|
||||
HEAVY_TOOLS: Set[str] = {
|
||||
"llm", # Requires llm (~100MB+ deps)
|
||||
"consensus", # Requires llm
|
||||
}
|
||||
|
||||
|
||||
@@ -116,6 +116,11 @@ ESSENTIAL_TOOLS = [
|
||||
"critic",
|
||||
# Agent spawning
|
||||
"agent",
|
||||
# Models through Hanzo: completions Enso routes, the catalog with prices,
|
||||
# feedback (llm); typed questions to Kai (kai_decide). Both are HTTP calls
|
||||
# to api.hanzo.ai, with nothing heavy to install.
|
||||
"llm",
|
||||
"kai_decide",
|
||||
# Hanzo cloud — one tool projecting every service from the OpenAPI registry.
|
||||
# It is an axis like the rest: the single seam to the platform, and the tool
|
||||
# the per-service cloud tools are retired in favour of. A mode omitting it
|
||||
@@ -131,7 +136,6 @@ ESSENTIAL_TOOLS = [
|
||||
# Heavy tools (require large dependencies like llm)
|
||||
# These are opt-in only, not included by default
|
||||
HEAVY_TOOLS = [
|
||||
"llm",
|
||||
"consensus",
|
||||
]
|
||||
|
||||
|
||||
@@ -77,7 +77,8 @@ class ToolListTool(BaseTool):
|
||||
("vector", "Semantic search (search/index/stats/clear)"),
|
||||
],
|
||||
"ai": [
|
||||
("llm", "LLM interface (query/consensus/list/models/enable/disable)"),
|
||||
("llm", "Models through Hanzo: query (Enso routes), models (with prices), feedback"),
|
||||
("kai_decide", "Typed questions to Kai, Hanzo's decision model"),
|
||||
("agent", "AI agents (run/start/call/stop/list with A2A support)"),
|
||||
("swarm", "Parallel agent execution across multiple files"),
|
||||
(
|
||||
|
||||
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "hanzo-mcp"
|
||||
version = "0.15.18"
|
||||
version = "0.15.19"
|
||||
description = "The Zen of Hanzo MCP: One server to rule them all. The ultimate MCP that orchestrates all others."
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.12"
|
||||
@@ -30,7 +30,7 @@ dependencies = [
|
||||
"hanzo-async>=0.1.3",
|
||||
"uvloop>=0.22.1; sys_platform != 'win32'",
|
||||
# Hanzo tool infrastructure (all tools)
|
||||
"hanzo-tools>=0.3.6", # 0.3.6 carries capture(): downscaled inline, full-res on disk
|
||||
"hanzo-tools>=0.3.8", # 0.3.8 carries extra request headers (Enso's bounds) and DEFAULT_ACTION
|
||||
"hanzo-tools-fs>=0.3.4", # 0.3.4 returns image files as native MCP ImageContent
|
||||
"hanzo-tools-shell>=0.6.5", # 0.6.5 pairs with hanzo-tools>=0.3.0 (ToolError)
|
||||
"hanzo-tools-core>=0.3.1", # 0.3.1 is the EMPTY shim — no longer shadows canonical hanzo-tools.core
|
||||
@@ -43,7 +43,7 @@ dependencies = [
|
||||
# 0.2.1 fixes ConfigTool passing permission_manager positionally into BaseTool.__init__
|
||||
"hanzo-tools-config>=0.2.1",
|
||||
"hanzo-tools-refactor>=0.1.0",
|
||||
"hanzo-tools-llm>=0.1.0",
|
||||
"hanzo-tools-llm>=0.2.1", # 0.2.1 is llm over api.hanzo.ai (Enso) and kai_decide
|
||||
"hanzo-tools-code>=0.1.0",
|
||||
"hanzo-tools-vcs>=0.1.0",
|
||||
"hanzo-tools-net>=0.1.0",
|
||||
|
||||
Reference in New Issue
Block a user