Skip to content

Feat/mlx support#1

Open
Teagan42 wants to merge 9 commits intoadeelahmad:masterfrom
Teagan42:feat/mlx-support
Open

Feat/mlx support#1
Teagan42 wants to merge 9 commits intoadeelahmad:masterfrom
Teagan42:feat/mlx-support

Conversation

@Teagan42
Copy link
Copy Markdown

@Teagan42 Teagan42 commented Feb 28, 2026

Summary

This PR adds local MLX-backed LLM support and stabilizes the automation framework runtime/tests so the suite is reliable in headless and constrained macOS environments.

What Changed

  • Added MLX provider support and wiring:
    • New/expanded AI service abstractions and factory selection.
    • Local MLX service implementation for analysis/plan/validation/recovery paths.
    • Config/dependency updates (pyproject.toml, requirements.txt, uv.lock).
  • Normalized package imports to package-relative paths across framework modules to prevent module resolution/runtime issues.
  • Fixed actor system consistency:
    • Actor metaclass now registers both class name and logical actor name.
    • Unified runtime validation contract (validate_state) vs state-evaluation contract (validate_action_state).
  • Added/updated pattern matching integration module.
  • Hardened runtime behavior:
    • Safer state-manager window bounds handling/coercion.
    • Better handling of missing minimized-window keys.
    • Clipboard file fallback creation in macOS UI service.
    • Defensive screen-bounds behavior when no screen is available.
  • Prevented import-time crashes from mlx_lm by lazy-loading MLX dependencies at runtime.
  • Test suite improvements:
    • Made actor/service/main tests deterministic with mocks.
    • Removed dependency on pytest-mock fixture usage patterns.
    • Improved robustness for headless runs and system-permission variance.
  • Repo hygiene:
    • Ignore __pycache__/ directories.

Validation

  • Ran full suite: UV_CACHE_DIR=.uv-cache uv run pytest
  • Result: 53 passed

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9f6c8dfa3a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

name = "macpilot"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Point project readme metadata to an existing file

[project].readme references README.md, but this repo only contains README.MD; on case-sensitive filesystems (common in Linux CI/build environments), package metadata generation will fail when building/installing from source because the declared readme path does not exist.

Useful? React with 👍 / 👎.

{
"pattern": InteractionPattern(
type=PatternType.SCROLL_TO_FIND,
steps=[{"action": "scroll", "params": {"delta_y": -300}}],
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Use a supported action in Finder high-confidence pattern

This Finder branch always emits a scroll step with confidence 0.9, which makes ExecutionEngine.execute_plan prefer the pattern path (> 0.8) instead of the original step, but none of the registered actors expose a scroll capability (e.g., GenericActorStack.capabilities), so Finder-context executions are driven into a failing pattern rather than actionable steps.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant