23 Commits
Author SHA1 Message Date
zeekay 3da9fecd20 chore: update SDK client, memory docs, and tests 2026-03-24 18:41:29 -07:00
zeekay 8c05bf99d6 fix(ci): pin black <26.1 to avoid internal error, lower requires-python to 3.12
Black 26.1.0 crashes on multiple exception types in parentheses.
The requires-python bump to 3.14 broke CI which runs Python 3.12.
2026-03-01 16:01:16 -08:00
zeekay 6c376a4d13 [chore] bump all packages to Python 3.14+
Update requires-python to >=3.14 in all 46 pkg/ pyproject.toml files
and the root pyproject.toml (47 files total).
2026-02-28 12:43:10 -08:00
zeekay d094a8b481 rebrand: rename litellm module to llm — complete purge
All imports, test files, docs, and config references updated.
import litellm → import llm across entire codebase.
2026-02-25 15:13:14 -08:00
zooqueenandHanzo Dev b144973bfc fix(lint): resolve all ruff + black errors across all packages
Fix 35 ruff errors (E722, F841, B904, B905, B007, E741, S202, S310,
S306, S110, TID251, UP042, F401) and run black on 526 files.

Co-authored-by: Hanzo Dev <[email protected]>
2026-02-21 23:32:32 -08:00
zeekay 6505ae6571 chore: sync uncommitted changes 2026-02-13 22:16:03 -08:00
zeekay 898d818183 fix(hanzo-memory): fix tests and clean up deprecated code
- Make MemoryResponse.memory field optional (used by legacy /v1/remember endpoint)
- Fix datetime.utcnow() deprecation warning (use datetime.now(timezone.utc))
- Make LanceDB import optional in backend_registry.py
- Remove duplicate imports in db/__init__.py
- Add singleton get_sqlite_client() function
- Fix import path (embeddings vs embedding) in mcp/server.py
- Move module-level MCPMemoryServer instantiation to main()
- Add 7 missing abstract method implementations to InfinityClient
- Fix test patching target (get_db_client not get_client)
- Add proper HTTPException re-raise in exception handlers
- Add reset_db_client() and reset_memory_service() to test fixtures
- Add list/DataFrame type handling in search_memories()
- Delete stale build directory and lancedb_client.py
- Fix nested workspace issue (remove hanzo-agent from uv.workspace)
- Add test dependencies (polars, httpx, fastapi, fastembed)
- Update CI workflow to install test dependencies

All 84 hanzo-memory tests pass, 3156 core SDK tests pass.
2026-02-02 22:14:46 -08:00
zeekay 5c688aff68 fix: eliminate remaining TODOs and stubs in source code
- server.py: implement actual kb listing, fact deletion, require query/memoryid
- editor.py: clarify future features comment
- sharded_utils.py: improve code comments (remove TODO/hack labels)
2026-01-19 00:55:11 -08:00
zeekay ffb281d9b8 refactor: remove AI slop - mock data, stubs, dead code
- auth.py: remove dead code after return in SSO section
- agent.py: replace mock list with real registry call
- dashboard.py: add [DEMO] indicator, improve comments
- batch_orchestrator.py: log warnings when no API client
- textual_repl.py: clarify context tracking comment
2026-01-18 20:25:27 -08:00
zeekay f6e56abc40 Update and improve memory services 2026-01-15 12:24:44 -08:00
zeekay f736cab3ed fix(hanzo-tools-agent): add missing semaphore in deprecated swarm tool
Fixes F821 undefined name error in swarm_tool_v1_deprecated.py
2025-12-26 03:58:20 -08:00
zeekay c8a5399113 fix(memory): change InfinityDB fallback log from warning to debug
On platforms without InfinityDB support (like Darwin arm64), the mock
implementation is expected behavior. Logging at debug level instead of
warning reduces noise in logs.
2025-12-21 03:51:44 -08:00
zeekay 474ccac8a5 feat: Replace hanzo-agents with hanzo-agent submodule
Consolidates agent functionality into unified hanzo-agent SDK:

Changes:
- Removed old pkg/hanzo-agents package (deprecated)
- Added hanzo-agent as git submodule at pkg/hanzo-agent
- Updated pyproject.toml to remove hanzo-agents test exclusion
- Configured .gitmodules for github.com/hanzoai/agent

Benefits:
- Single source of truth for agent functionality
- Modular extensions (web3, tee, marketplace, cli)
- Maintains both standalone and integrated use cases
- Users can install: pip install "hanzoai[full]"

Migration:
- Old: from hanzo_agents import Agent
- New: from agents import Agent (in hanzo-agent submodule)

Related: Agent SDK now at github.com/hanzoai/agent
2025-10-28 21:14:24 -07:00
zeekay d36da09318 feat(memory): Add multi-backend memory system with LanceDB, KuzuDB, and InfinityDB support
- Implemented pluggable backend architecture with BackendRegistry
- Added support for three database backends:
  - LanceDB: Vector database with embeddings and SQL-like queries
  - KuzuDB: Graph database for relationship-based memory storage
  - InfinityDB: High-performance vector database
  - Local files: Simple JSON storage (default)

- Created clean accessor syntax for backend selection:
  - Dictionary syntax: memory['backend']
  - Attribute syntax: memory.backend
  - Context manager: async with memory.use('backend')

- Added backend-specific features:
  - Vector similarity search (LanceDB, InfinityDB)
  - Graph relationships and traversal (KuzuDB)
  - Markdown import support across all backends
  - Capability-based backend selection

- Fixed compatibility issues:
  - Resolved async/sync method signatures
  - Fixed DataFrame operations (pandas vs polars)
  - Added proper JSON parsing for metadata fields
  - Implemented missing base class methods

- Added comprehensive test coverage and examples
- Created unified memory interface in memory.py
- All tests passing for available backends
2025-09-26 14:19:43 -05:00
zeekay 95a9f9879a fix: resolve hanzo-mcp import issues and Claude integration
- Added missing imports for register_thinking_tool, register_critic_tool, and register_batch_tool
- Fixed FastMCP import fallback to support multiple mcp module structures
- Updated Claude MCP configuration to use venv Python for proper dependency resolution
- Resolved NameError issues preventing server initialization
2025-09-17 15:56:55 -05:00
zeekay 8e0b3c1149 docs: Add comprehensive documentation for all packages
- Create detailed README for main repository with architecture overview
- Add package-specific READMEs with usage examples and API documentation
- Create CONTRIBUTING.md with development guidelines and workflow
- Update LLM.md with architectural decisions and patterns
- Document all CLI commands, configuration options, and best practices
- Include installation, testing, and deployment instructions
- Add code examples for all major features
- Document port allocation strategy and integration points
- Ensure 100% test pass rate (197 tests passing)
2025-09-06 04:21:20 -05:00
zeekay c5905180f7 fix: Resolve all linting issues for CI compliance
- Fix syntax errors (indentation) in hanzo-mcp tools
- Replace all bare except statements with except Exception
- Fix import sorting issues across all packages
- Update type annotations to use modern X | Y syntax for Python 3.10+
- Ensure all packages pass ruff linting checks
2025-09-06 03:43:53 -05:00
zeekay fd55430e11 fix: Update hanzo-memory Python version requirement for CI compatibility
- Lower Python requirement from >=3.12 to >=3.10 to match CI test matrix
- Update mypy and ruff configurations to target Python 3.10
- Add Python 3.10, 3.11, 3.12 to classifiers
- Fixes CI failures across all Python versions in test matrix
2025-09-06 03:34:49 -05:00
zeekay 3b4da51371 refactor: Consolidate and de-duplicate test suite for better performance
- Removed 1,600+ lines of redundant test code
- Created base test class for memory tests to promote DRY
- Consolidated memory tests using parametrization (4 files → 2 files)
- Consolidated CLI agent tests using parametrization (248 lines → 80 lines)
- Reduced test suite from ~400 tests to 371 tests without losing coverage
- Improved test execution time by eliminating duplicate setups
- Fixed import paths for better test isolation
- Estimated 25-30% reduction in test code with same coverage
2025-08-16 23:02:16 -05:00
zeekay 08c00941c3 fix: resolve dependency conflict with rich version
- Align rich version requirement in hanzo-memory with hanzo-net (>=13.7.1)
- Fixes CI build failures due to conflicting dependencies
2025-08-13 22:44:24 -05:00
zeekay ea3116aac9 Fix all test issues and achieve 100% test pass rate
- Remove all unconditional pytest.skip() calls
- Fix file content tests to handle both strict/non-strict modes
- Fix missing device_capabilities module in hanzo-network
- Fix HanzoNetProvider imports and exports
- Fix local_llm.py import errors
- Create test helper classes for pagination tests
- Fix FastMCP paginator test constructor args
- Configure all API keys from ~/.zsh/after.zsh
- All tests now pass or skip conditionally based on actual requirements
2025-08-12 16:19:34 -05:00
zeekay 34e28911a6 feat: complete hanzo SDK packages with fixed tests and comprehensive documentation
- Fixed all 30 skipped tests in hanzo-mcp (353 tests, 0 skipped)
- Built hanzo-agents v0.1.0 with comprehensive USAGE.md
- Built hanzo-network v0.1.0 with comprehensive USAGE.md
- Built hanzo-memory v1.0.0 with comprehensive USAGE.md
- Added integration tests verifying all packages work together
- All packages ready for release
2025-07-29 20:26:20 -05:00
zeekay a76b6365ab Update python monorepo 2025-07-27 03:02:44 -05:00