Skip to content

feat: add Xiaomi MiMo Code integration - #4267

Draft
Mahdifotohi wants to merge 2 commits into
Graphify-Labs:v8from
Mahdifotohi:feat/mimo-code-integration
Draft

Mahdifotohi wants to merge 2 commits into
Graphify-Labs:v8from
Mahdifotohi:feat/mimo-code-integration

Conversation

@Mahdifotohi

@Mahdifotohi Mahdifotohi commented Oct 9, 2026 •

Copy link
Copy Markdown

Windows (Python 3.11, uv):

  • Targeted tests: 488 passed, 4 skipped.
  • After resolving the upstream conflict, tests/test_install_roundtrip.py: 54 passed.
  • Full Windows suite: 6,869 passed, 30 failed, 37 skipped.

Some full-suite failures appear platform-specific; some were also reproduced on the upstream baseline. A full Linux test run has not been performed locally.

@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown

Thanks for the pull request, @Mahdifotohi. A maintainer will review it soon.

Want to talk it through while it is in review? Come join us on our Discord server. For longer-form discussion there is also GitHub Discussions.

A couple of things that speed up review: make sure the test suite passes on Python 3.10 and 3.13, and that the change keeps extraction deterministic.

@Mahdifotohi
Mahdifotohi force-pushed the feat/mimo-code-integration branch from e11646f to e4f629a Compare October 9, 2026 20:06
@Mahdifotohi
Mahdifotohi marked this pull request as ready for review October 9, 2026 20:18
@Mahdifotohi
Mahdifotohi marked this pull request as draft October 9, 2026 20:18

@graphify-labs graphify-labs Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Graphify reviewed this change.

Worth a look — the grounded gate found no coupling regressions or blocking issues, but 5 advisory finding(s) below merit a look before merge.

Not checked: tests were not run; no formal proof of the changed code.


Graphify review — findings

Adds Xiaomi MiMo Code support via graphify mimo install|uninstall|status [--project]. It installs the skill into .mimocode/skills/ or the global config dir (MIMOCODE_HOME/config, else XDG, else ~/.config/mimocode), using the PowerShell skill on Windows. It also registers a chat.message/tool.execute.before plugin in mimocode.json that runs a bounded graphify query and injects graph context before the model responds, and writes always-on guidance to AGENTS.md; detection now skips the installed .mimocode/plugins/graphify.js so it never lands in the graph.

Worth a look

  • Installing the MiMo plugin can erase the user's mimocode.jsonc settings — graphify/install.py:1820 · Escalate · high
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review
  • Project-scoped mimo uninstall also removes the global plugin — graphify/install.py:2275 · Escalate · medium
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review
  • Uninstall deregisters any third-party plugin whose path ends in plugins/graphify.js — graphify/install.py:1880 · Escalate · medium
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review
  • Help advertises mimo subcommands but this diff adds no CLI dispatch for them — graphify/__main__.py:940 · Escalate · medium
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review
  • MiMo Windows uninstall removes a different skill id than install writes — graphify/install.py · Escalate · medium
    • agreed by 2 of 2 members but NOT verified (no proof, no reproducing execution) — consensus is not a verdict; needs human review

Review partial — this diff was larger than one review pass covers, so later files were not reviewed; some findings may be missing.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 3735 functions depend on the 1073 functions this change touches.

Health — this change adds coupling hotspots:

  • worse: install() — 17 callers, 12 callees
  • worse: dispatch_install_cli() — 5 callers, 34 callees
  • worse: _copy_skill_file() — 19 callers, 7 callees
  • new: _mimo_install() — 12 callers, 8 callees
  • worse: _project_uninstall() — 6 callers, 14 callees
  • worse: _project_install() — 4 callers, 14 callees
  • new: _mimo_uninstall() — 8 callers, 6 callees
  • worse: _agents_install() — 6 callers, 7 callees
  • …and 3 more — each is listed as a finding

Verification — 3735 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 1867 function(s) in the blast radius were not formally verified this run

Test selection

Test selection

359 of 359 test file(s) selected (100%) via static blast radius.

Escalated to a full run for safety — the selection is not trustworthy on its own (see below). CI should run the whole suite.

  • tests/test_affected_cli.py — impact, full-run-safety
  • tests/test_affected_member_seed.py — full-run-safety
  • tests/test_agents_platform.py — impact, full-run-safety
  • tests/test_analyze.py — full-run-safety
  • tests/test_anthropic_custom_endpoint.py — full-run-safety
  • tests/test_antigravity_install.py — full-run-safety
  • tests/test_apm_fallback_version.py — full-run-safety
  • tests/test_architecture_doc.py — full-run-safety
  • tests/test_astro_extraction.py — impact, full-run-safety
  • tests/test_astro_import_ids.py — full-run-safety
  • tests/test_atomic_canvas_export.py — full-run-safety
  • tests/test_atomic_version_stamp.py — impact, full-run-safety
  • tests/test_atomic_writes.py — impact, full-run-safety
  • tests/test_backend_env_isolation.py — full-run-safety
  • tests/test_backend_extras.py — full-run-safety
  • tests/test_benchmark.py — full-run-safety
  • tests/test_benchmark_raw_graph.py — full-run-safety
  • tests/test_blade_extractor.py — full-run-safety
  • tests/test_build.py — impact, full-run-safety
  • tests/test_build_located_semantic_identity.py — full-run-safety
  • tests/test_build_merge_dedup_scope.py — full-run-safety
  • tests/test_build_merge_hyperedges_and_prune.py — full-run-safety
  • tests/test_build_merge_shrink_guard.py — full-run-safety
  • tests/test_builtin_global_type_refs.py — full-run-safety
  • tests/test_cache.py — full-run-safety
  • tests/test_cache_stale_import_target.py — full-run-safety
  • tests/test_callflow_html.py — full-run-safety
  • tests/test_cargo_introspect.py — impact, full-run-safety
  • tests/test_cargo_missing_manifest.py — full-run-safety
  • tests/test_carried_hyperedge_remap.py — full-run-safety
  • tests/test_case_sensitive_resolution.py — full-run-safety
  • tests/test_charmap_encoding.py — impact, full-run-safety
  • tests/test_chunking.py — impact, full-run-safety
  • tests/test_cjs_module_extension.py — impact, full-run-safety
  • tests/test_claude_cli_backend.py — impact, full-run-safety
  • tests/test_claude_md.py — impact, full-run-safety
  • tests/test_cli_broken_pipe.py — full-run-safety
  • tests/test_cli_export.py — full-run-safety
  • tests/test_cli_help.py — full-run-safety
  • tests/test_cloud_cta.py — full-run-safety
  • tests/test_cluster.py — full-run-safety
  • tests/test_cluster_ambiguous_scale.py — full-run-safety
  • tests/test_cluster_exclude_hubs.py — full-run-safety
  • tests/test_cobol_extractor.py — full-run-safety
  • tests/test_codebuddy.py — impact, full-run-safety
  • tests/test_community_hub_labels.py — full-run-safety
  • tests/test_community_labels_skill.py — full-run-safety
  • tests/test_confidence.py — full-run-safety
  • tests/test_corrupt_graph_json.py — full-run-safety
  • tests/test_cpp_method_declarations.py — full-run-safety
  • … and 309 more

non-code file(s) changed (ARCHITECTURE.md, README.md) → running the full suite for safety (a code graph can't see config/fixture/data deps)

changed code file(s) with no mapped test (ARCHITECTURE.md, README.md) — a coverage gap or a missing link — running the full suite rather than only the selected tests

Selection is safe under the controlled-regression assumption; always-run tests + a periodic full run are the backstops. Advisory — it never changes the check verdict.

· 3 grounded finding(s) anchored inline below; 8 more finding(s) on lines outside this diff (see the check run).

Comment thread graphify/install.py
print(f" {shown_config} -> plugin deregistered")


def _mimo_install(project_dir: Path, *, project: bool = False) -> None:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Health regression — _mimo_install()

fans out to 8 callees (efferent coupling); 12 callers depend on it (afferent coupling).

Grounded coupling-delta finding (deterministic), not an LLM guess.

Comment thread graphify/install.py
print("answering codebase questions. Run /graphify first to build the graph.")


def _mimo_uninstall(project_dir: Path, *, project: bool = False) -> None:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Health regression — _mimo_uninstall()

fans out to 6 callees (efferent coupling); 8 callers depend on it (afferent coupling).

Grounded coupling-delta finding (deterministic), not an LLM guess.

Comment thread graphify/install.py
print(f" {global_agents} -> removed")


def _mimo_status(project_dir: Path, *, project: bool = False) -> None:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Health regression — _mimo_status()

high coupling complexity (Ca·Ce = 12).

Grounded coupling-delta finding (deterministic), not an LLM guess.

Co-Authored-By: Gemini (via AGY)
Co-Authored-By: Gemini (via AGY)
@Mahdifotohi
Mahdifotohi force-pushed the feat/mimo-code-integration branch from e4f629a to 8d045b0 Compare October 9, 2026 20:35

This branch has not been deployed

No deployments
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