Files
extension/package.json
T
Hanzo Dev 40d8709d6e feat: Transform Hanzo AI into ultimate AI engineering toolkit
Major Updates:
- Position as unified platform for building AI-powered companies
- Add 200+ LLMs support (OpenRouter/LiteLLM compatible)
- Implement 45+ legendary programmer modes (carmack, norvig, pike, etc)
- Add browser automation via Playwright MCP integration
- Create multi-platform build system (VS Code, Cursor, Windsurf, Claude Code)
- Implement VS Code Chat Participant as @hanzo
- Update branding: "Ultimate toolkit for AI engineers"

New Features:
- Unlimited memory with vector/graph/relational search
- Browser control tool with auto-Playwright installation
- Smart LLM routing with Hanzo AI fallback
- Support for O3, O3-Pro, Claude 4, and latest models
- Team collaboration with shared context/credits

Build System:
- Unified build script for all platforms
- Versioned output files (hanzoai-1.5.4.vsix/dxt)
- NPM package for CLI installation via npx
- Platform-specific VSIX for Cursor/Windsurf

Documentation:
- Short punchy README focused on benefits
- Comprehensive HANZO_MODES.md for legendary modes
- Updated HANZO_AI.md with complete feature set
- Links to docs.hanzo.ai for full documentation
2025-07-04 22:04:15 -04:00

341 lines
9.4 KiB
JSON

{
"name": "hanzoai",
"displayName": "Hanzo AI Context Manager",
"description": "The ultimate toolkit for AI engineers. Access 200+ LLMs (OpenRouter/LiteLLM compatible), 4000+ MCP servers, and powerful development tools. Features unified API, shared context, intelligent routing, and VS Code native integration.",
"version": "1.5.4",
"publisher": "hanzo-ai",
"private": false,
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/hanzoai/extension.git"
},
"engines": {
"vscode": "^1.85.0"
},
"categories": [
"Other"
],
"keywords": [
"productivity",
"AI",
"IDE",
"project management",
"context management",
"change tracking",
"knowledge base",
"documentation",
"specification",
"analysis"
],
"icon": "images/icon.png",
"galleryBanner": {
"color": "#C80000",
"theme": "dark"
},
"activationEvents": [
"onStartupFinished",
"onCommand:hanzo.openManager",
"onCommand:hanzo.openWelcomeGuide",
"onCommand:hanzo.reanalyzeProject",
"onCommand:hanzo.triggerReminder",
"onCommand:hanzo.login",
"onCommand:hanzo.logout",
"onCommand:hanzo.debug.authState",
"onCommand:hanzo.debug.clearAuth",
"onCommand:hanzo.checkMetrics",
"onCommand:hanzo.resetMetrics"
],
"main": "./out/extension.js",
"contributes": {
"chatParticipants": [
{
"id": "hanzo",
"name": "Hanzo",
"description": "Ultimate AI engineering toolkit: 200+ LLMs, 4000+ MCP servers, 53+ dev tools",
"isSticky": true
}
],
"commands": [
{
"command": "hanzo.openManager",
"title": "Hanzo: Open Project Manager"
},
{
"command": "hanzo.openWelcomeGuide",
"title": "Hanzo: View Getting Started Guide"
},
{
"command": "hanzo.reanalyzeProject",
"title": "Hanzo: Analyze Project",
"icon": "$(refresh)"
},
{
"command": "hanzo.triggerReminder",
"title": "Hanzo: Show Reminder",
"icon": "$(bell)"
},
{
"command": "hanzo.checkMetrics",
"title": "Hanzo Debug: Check Impact Metrics",
"icon": "$(graph)"
},
{
"command": "hanzo.resetMetrics",
"title": "Hanzo Debug: Reset Impact Metrics",
"icon": "$(trash)"
},
{
"command": "hanzo.login",
"title": "Hanzo: Login"
},
{
"command": "hanzo.logout",
"title": "Hanzo: Logout"
},
{
"command": "hanzo.debug.authState",
"title": "Hanzo Debug: Check Auth State",
"enablement": "isDevelopment"
},
{
"command": "hanzo.debug.clearAuth",
"title": "Hanzo Debug: Clear Auth Data",
"enablement": "isDevelopment"
}
],
"configuration": {
"title": "Hanzo AI Context Manager",
"properties": {
"hanzo.ide": {
"type": "string",
"enum": [
"cursor",
"copilot",
"continue",
"codium"
],
"enumDescriptions": [
"Using Cursor IDE (.cursorrules)",
"Using GitHub Copilot (.github/copilot-instructions.md)",
"Using Continue (.continuerules)",
"Using Codium (.windsurfrules)"
],
"default": "cursor",
"description": "Select which IDE to generate rules for"
},
"hanzo.mcp.enabled": {
"type": "boolean",
"default": true,
"description": "Enable Model Context Protocol (MCP) server integration"
},
"hanzo.mcp.transport": {
"type": "string",
"enum": [
"stdio",
"tcp"
],
"default": "stdio",
"description": "Transport method for MCP server communication"
},
"hanzo.mcp.port": {
"type": "number",
"default": 3000,
"description": "Port for MCP server when using TCP transport"
},
"hanzo.mcp.allowedPaths": {
"type": "array",
"items": {
"type": "string"
},
"default": [],
"description": "Paths that MCP tools are allowed to access"
},
"hanzo.mcp.disableWriteTools": {
"type": "boolean",
"default": false,
"description": "Disable all write operations in MCP tools"
},
"hanzo.mcp.disableSearchTools": {
"type": "boolean",
"default": false,
"description": "Disable all search operations in MCP tools"
},
"hanzo.mcp.enabledTools": {
"type": "array",
"items": {
"type": "string"
},
"default": [],
"description": "List of explicitly enabled MCP tools"
},
"hanzo.mcp.disabledTools": {
"type": "array",
"items": {
"type": "string"
},
"default": [],
"description": "List of explicitly disabled MCP tools"
},
"hanzo.api.endpoint": {
"type": "string",
"default": "https://api.hanzo.ai/ext/v1",
"description": "API endpoint for Hanzo services"
},
"hanzo.debug": {
"type": "boolean",
"default": false,
"description": "Enable debug logging"
},
"hanzo.llm.provider": {
"type": "string",
"enum": [
"hanzo",
"lmstudio",
"ollama",
"openai",
"anthropic"
],
"default": "hanzo",
"description": "LLM provider to use for AI features"
},
"hanzo.llm.hanzo.apiKey": {
"type": "string",
"description": "API key for Hanzo AI Gateway"
},
"hanzo.llm.lmstudio.endpoint": {
"type": "string",
"default": "http://localhost:1234/v1",
"description": "LM Studio API endpoint"
},
"hanzo.llm.lmstudio.model": {
"type": "string",
"description": "Model to use in LM Studio"
},
"hanzo.llm.ollama.endpoint": {
"type": "string",
"default": "http://localhost:11434",
"description": "Ollama API endpoint"
},
"hanzo.llm.ollama.model": {
"type": "string",
"default": "llama2",
"description": "Model to use in Ollama"
},
"hanzo.llm.openai.apiKey": {
"type": "string",
"description": "OpenAI API key"
},
"hanzo.llm.openai.model": {
"type": "string",
"default": "gpt-4",
"description": "OpenAI model to use"
},
"hanzo.llm.anthropic.apiKey": {
"type": "string",
"description": "Anthropic API key"
},
"hanzo.llm.anthropic.model": {
"type": "string",
"default": "claude-3-opus-20240229",
"description": "Anthropic model to use"
}
}
},
"menus": {
"editor/title": [
{
"command": "hanzo.reanalyzeProject",
"group": "navigation",
"when": "resourceScheme != extension"
}
]
}
},
"scripts": {
"vscode:prepublish": "node scripts/compile-main.js && npm run build:mcp",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"pretest": "npm run compile && npm run lint",
"lint": "eslint .",
"test": "node ./out/test/runTest.js",
"test:pm": "cross-env MOCHA_TEST_FILE=\"ProjectManager Test Suite\" node ./out/test/runTest.js",
"test:auth": "cross-env MOCHA_TEST_FILE=\"Auth and API Test Suite\" node ./out/test/runTest.js",
"test:file-collection": "cross-env MOCHA_TEST_FILE=\"FileCollectionService Test Suite\" node ./out/test/runTest.js",
"test:mcp": "cross-env MOCHA_TEST_FILE=\"MCP.*Tool Test Suite\" node ./out/test/runTest.js",
"test:coverage": "c8 npm test",
"build:mcp": "node scripts/build-mcp-standalone.js",
"build:claude-desktop": "npm run build:mcp && node scripts/build-claude-desktop.js",
"build": "node scripts/compile-main.js && npm run build:mcp",
"build:dxt": "node scripts/build-dxt.js",
"build:npm": "node scripts/build-mcp-npm.js",
"build:cursor": "node scripts/build-cursor.js",
"build:windsurf": "node scripts/build-windsurf.js",
"build:all": "node scripts/build-all-platforms.js",
"package": "npm run build:all && vsce package",
"package:claude": "npm run build:claude-desktop",
"package:dxt": "npm run build:dxt",
"publish": "npm run package && npx vsce publish && ovsx publish",
"publish:npm": "npm run build:claude-desktop && cd dist/claude-desktop && npm publish",
"dev": "cross-env VSCODE_ENV=development npm run watch",
"dev:mcp": "cross-env MCP_TRANSPORT=stdio node ./out/mcp-server-standalone.js",
"start:prod": "cross-env VSCODE_ENV=production npm run watch"
},
"devDependencies": {
"@types/better-sqlite3": "^7.6.13",
"@types/lodash": "^4.17.16",
"@types/minimatch": "^5.1.2",
"@types/mocha": "^10.0.10",
"@types/node": "^16.18.126",
"@types/sinon": "^17.0.4",
"@types/sinonjs__fake-timers": "^8.1.5",
"@types/vscode": "^1.85.0",
"@types/ws": "^8.18.1",
"@typescript-eslint/eslint-plugin": "^6.7.0",
"@typescript-eslint/parser": "^6.21.0",
"@vscode/test-electron": "^2.3.8",
"@vscode/vsce": "^2.24.0",
"archiver": "^7.0.1",
"better-sqlite3": "^12.2.0",
"c8": "^10.1.3",
"cross-env": "^7.0.3",
"esbuild": "^0.19.12",
"eslint": "^8.26.0",
"glob": "^10.3.10",
"mocha": "^11.0.1",
"sinon": "^21.0.0",
"typescript": "^5.2.2"
},
"dependencies": {
"@lancedb/lancedb": "^0.21.0",
"@modelcontextprotocol/sdk": "^1.14.0",
"@supabase/supabase-js": "^2.48.1",
"@types/node-fetch": "^2.6.12",
"@typescript-eslint/typescript-estree": "^8.35.1",
"axios": "^1.6.2",
"ignore": "^7.0.3",
"lodash": "^4.17.21",
"minimatch": "^10.0.1",
"node-fetch": "^3.3.2",
"rxdb": "^16.15.0",
"rxjs": "^7.8.2",
"tree-sitter": "^0.21.1",
"tree-sitter-javascript": "^0.23.1",
"tree-sitter-typescript": "^0.23.2"
},
"__metadata": {
"id": "fd0ca99f-75f0-4318-af8c-660c5e883c16",
"publisherId": "c3a25647-333f-4954-a3a7-a5487b656f72",
"publisherDisplayName": "hanzo-ai",
"targetPlatform": "undefined",
"isApplicationScoped": false,
"isPreReleaseVersion": false,
"hasPreReleaseVersion": false,
"installedTimestamp": 1743812550788,
"pinned": false,
"preRelease": false,
"source": "gallery",
"size": 15245886
}
}