Environment:
- OS: EndeavourOS (Arch-based Linux), X11 session
- UI.Vision version: v10.0.133
- Browsers tested: Firefox and Chrome, both exhibit the issue
XModules: v2 AppImage (uivision-xmodules-linux-v2.AppImage), installed via 1install.sh
Findings:
- XRunAndWait:
- fails with Disconnected (Firefox)
- Error when communicating with the native messaging host (Chrome)
- Fails on every invocation tested, regardless of script content, language, interpreter, quoting style, argument structure, or execution speed
- XClick/XType/XMove (RealUser XModule):
- Works reliably throughout.
Investigation traced this to com.github.teamdocs.kcmd.json (XRunAndWait manifest dependency). This was never actually being provisioned by 1install.sh, despite being present and appearing correctly configured.
UI.Vision Steps Attempted:
- Basic script call:
- XRunAndWait | python3 | /home/octavio/…/Processes_EmailTasks.py “${Thread_Message_IDList}”
Result: Line 6 (Sub: 2_ExtractFromEmail): Disconnected
- XRunAndWait | python3 | /home/octavio/…/Processes_EmailTasks.py “${Thread_Message_IDList}”
- Trivial inline script, ruling out script content:
- XRunAndWait | python3 | -c “print(‘hello’)”
Result: Line 7: Disconnected
- XRunAndWait | python3 | -c “print(‘hello’)”
- Varied interpreter name/path:
- XRunAndWait | python3.exe | -c “print(‘hello’)” → Line 7: Running the process is failed.
- XRunAndWait | python.exe | -c “print(‘hello’)” → Line 7: Running the process is failed.
- XRunAndWait | python | -c “print(‘hello’)” → Line 7: Disconnected
- XRunAndWait | python3 | -c “print(‘hello’)” → Line 7: Disconnected
→ .exe variants correctly fail fast with a clean, specific error (invalid on Linux, as expected).
→Valid interpreter names (python, python3) instead produce the vague Disconnected.
- Removed quoting, tested plain .py file with zero arguments:
- XRunAndWait | python3 | /home/octavio/test_hello.py
Result: Disconnected
- XRunAndWait | python3 | /home/octavio/test_hello.py
- Added deliberate delay before exit, to rule out a too-fast-exit race condition (another solution suggested adding a delay in a dead thread):
- python script called in various manners via XRunAndWait:
print(‘hello’)
time.sleep(1.5)
Result: Disconnected
- python script called in various manners via XRunAndWait:
- Bash wrapper with heredoc’d Python (ruling out interpreter/language entirely):
- XRunAndWait | bash | /home/octavio/…/bash_hello.sh
#!/bin/bash
python3 << ‘EOF’
print(‘hello’)
EOF
Result: Disconnected
- XRunAndWait | bash | /home/octavio/…/bash_hello.sh
Environmental Steps Attempted:
- Closed and reopened UI.Vision popup → Disconnected
- Ran from side panel instead of popup → Disconnected
- Full Firefox restart (all tabs/windows closed and reopened) → Disconnected
- UI.Vision’s built-in AI self-correction attempted → still returned Disconnected, flagged internally as a bug (nice, shouldn’t this be flagged internally dev-side at UI.Vision for visibility?)
- Switched to Chrome entirely (fresh extension install) → different but equally blocking error: Error when communicating with the native messaging host (Chrome-specific test also included a real file path, not just -c, same result)
Ran DemoXRun → I was lazy and did not adjust for file path however still ran without result
Native messaging manifest / binary investigation:
- Compared manifest files across both browsers:
- bash diff
~/.mozilla/native-messaging-hosts/com.a9t9.kantu.xy.json
~/.config/google-chrome/NativeMessagingHosts/com.a9t9.kantu.xy.json
Confirmed allowed_origins / allowed_extensions correctly reference each browser’s actual extension ID (verified against chrome://extensions in Developer Mode).
- bash diff
- Confirmed the binary chain is intact:
- bash ls -la ~/Documents/UI_Vision/uivision-xmodules/
kantu-cv-host,
kantu-file-access-host,
kantu-xy-host, and
nmhost are all symlinks to the identical file: uivision-xmodules-linux-v2.AppImage.
Confirmed executable, correct file type, correctly permissioned.
- bash ls -la ~/Documents/UI_Vision/uivision-xmodules/
- Root cause identified — 1install.sh never provisions kcmd:
- bash cat 1install.sh
Installer only checks/installs three modules:
FileAccess,
RealUser (xy used by XClick), and
ComputerVision
No reference to kcmd/nmhost/XRun anywhere in the install flow, and no kcmd_install_chrome.sh/kcmd_install_firefox.sh scripts exist alongside the equivalent scripts for the other three modules. - grep -ri “kcmd|nmhost|xrun” *.sh
Only match is in build.sh
Confirms nmhost/kcmd is bundled into the shipped AppImage, but the manifest that makes it reachable via native messaging is never installed by 1install.sh.
The working com.github.teamdocs.kcmd.json present on this system is therefore an orphaned leftover from a prior/different install method, not something the current v2 AppImage installer provisions - I don’t remember what I did, oops.
- bash cat 1install.sh