14 Commits
Author SHA1 Message Date
zeekay f9805e63ff Update a few more references 2025-03-24 00:22:19 -05:00
zeekay b841b4727b Rename package from hanzo-dev-mcp to hanzo-mcp
This commit renames the package from hanzo-dev-mcp to hanzo-mcp and refactors the codebase to reflect the expanded purpose of the MCP server. Key changes include:

- Renamed package and module (dev_mcp → hanzo_mcp)
- Updated server description to emphasize Platform API access
- Changed default server name (hanzo-dev → hanzo)
- Updated entry point and CLI commands
- Updated README with new configuration examples
- Fixed all imports and references in tests

This aligns with the shift from a development-only tool to a more general-purpose MCP server that can access Hanzo APIs and Cloud Platform services.
2025-03-24 00:21:33 -05:00
zeekay 7dcdc533e7 Rebrand 2025-03-23 22:18:10 -05:00
SDGLBL 6c303babc7 refactor: improve code formatting and consistency across multiple files
- Standardize import statements by removing unnecessary parentheses and line breaks
- Adjust function signatures and docstrings for better readability
- Fix indentation and spacing in test files to follow consistent patterns
- Reformat multi-line statements and expressions for clarity
- Remove trailing whitespace and ensure consistent line endings
2025-03-22 15:52:02 +08:00
SDGLBL 24402be291 refactor: remove unused imports and clean up code
Removed unused imports across multiple files including `os`, `json`, `time`, `pathlib.Path`, `pytest`, and `unittest.mock.patch`.
Cleaned up redundant variable assignments in `CommandExecutor` and removed unnecessary f-strings in log messages.
This improves code readability and reduces unnecessary dependencies.
2025-03-22 15:50:35 +08:00
SDGLBL 050e5545f3 Update test to use required cwd parameter in run_command 2025-03-21 16:44:20 +08:00
SDGLBL 135f2a1bf5 test: update test to use create_subprocess_shell instead of create_subprocess_exec
The test in `test_command_executor.py` was updated to use `asyncio.create_subprocess_shell` instead of `asyncio.create_subprocess_exec` to better reflect the intended behavior. Additionally, the assertion to verify the subprocess call was modified to check if "python" is included in the call arguments rather than being the first argument, ensuring the test remains accurate with the updated method.
2025-03-21 16:17:37 +08:00
SDGLBL 33d0c19386 feat(command-executor): add support for environment variable expansion in shell commands
Added the "$" operator to the list of shell operators in the CommandExecutor class to ensure commands containing environment variables are executed in a shell context. This allows for proper expansion of environment variables like $PATH.

test(command-executor): add test case for environment variable expansion

Added a new test case `test_execute_command_with_env_vars` to verify that environment variables are correctly expanded when executing shell commands. The test checks that the $PATH variable is expanded and contains colon-separated directories in the output.
2025-03-21 15:56:30 +08:00
SDGLBL 72a7532505 feat: Add support for combined shell commands with shell operators in execute_command
- Added detection for shell operators (&&, ||, |, ;, >, <, etc.)
- Use create_subprocess_shell for commands with shell operators
- Added test for combined commands using cd with another command
- This enables scenarios like 'cd /path && cat file.txt'
2025-03-19 14:33:16 +08:00
SDGLBL bf8b622e65 refactor: add type hints to test methods for improved code clarity and maintainability
This commit introduces type hints to all test methods across multiple test files. The type hints provide explicit information about the expected types of function parameters and return values, enhancing code readability and enabling better static analysis. This change aligns with Python's gradual typing approach and helps catch potential type-related issues early in the development process. The affected test files include:
- tests/test_cli.py
- tests/test_common/test_context.py
- tests/test_common/test_hidden_files.py
- tests/test_common/test_permissions.py
- tests/test_executors.py
- tests/test_filesystem/test_file_operations.py
- tests/test_project/test_analysis.py
- tests/test_server.py
- tests/test_shell/test_command_executor.py

The type hints have been added to test methods, fixtures, and helper functions, ensuring consistent typing throughout the test suite. This change does not modify the actual test logic but improves the overall code quality and maintainability.
2025-03-19 00:48:26 +08:00
SDGLBL e24e959b0c test: update test assertions and remove redundant test cases 2025-03-19 00:06:22 +08:00
SDGLBL 6755c8c5d8 refactor: simplify command executor by removing default exclusions and patterns
Removed the `.github` directory from the sensitive directories list in the `PermissionManager` class. Simplified the `CommandExecutor` class by removing the `_add_default_exclusions` method and the `excluded_patterns` list, retaining only the `rm` command in the `excluded_commands` list. Updated the corresponding tests to reflect these changes.
2025-03-18 23:25:30 +08:00
SDGLBL add2fcdc1c test: update test fixtures and improve test coverage
- Add new `project_manager` fixture to `tests/conftest.py` for testing
- Update test assertions in `tests/test_cli.py` to clarify mode parameter behavior
- Refactor imports and improve code formatting in `tests/test_common/test_context.py`
- Refactor imports and improve code formatting in `tests/test_common/test_permissions.py`
- Enhance test coverage for `ScriptExecutor` in `tests/test_executors.py` with additional edge cases and improved mocking
- Update test setup in `tests/test_filesystem/test_file_operations.py` to handle tool registration more robustly
- Update test setup in `tests/test_project/test_analysis.py` to handle tool registration more robustly
- Improve server initialization tests in `tests/test_server.py` with better mocking and path handling
- Update command executor tests in `tests/test_shell/test_command_executor.py` with more precise assertions
2025-03-18 18:45:20 +08:00
SDGLBL 8de1082379 feat(tests): add comprehensive test suite for project components
Added a full suite of test files to cover the functionality of various project components including:
- CLI module tests
- Common context and permissions tests
- Command executor tests
- File operations tests
- Project analysis tests
- Server tests
- Shell command tests

Each test file includes unit tests for the corresponding module, covering core functionality, error handling, and edge cases. The tests utilize pytest fixtures and mocks to simulate different scenarios and ensure proper behavior of the code.

This extensive test suite will help maintain code quality, catch regressions, and ensure the reliability of the project as it evolves.
2025-03-17 00:16:14 +08:00