Rendered at 22:43:39 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
AyanamiKaine 11 hours ago [-]
Slightly related. On wayland based linux desktops this would never work because an app is not allowed to hijack the mouse pointer to dispatch events. I believe only the compositor is allowed to do that.
I know, because I wanted to automate a GUI task using PyAutoGUI and it wouldnt work on wayland no matter what.
KetoManx64 11 hours ago [-]
This is why I'm still on X11, the lack of deep level accessibility/automation is still a big hurdle when it comes to Wayland.
AyanamiKaine 10 hours ago [-]
Yea, one way I saw you can circumvent it is by running in xwayland mode. But that can come with its own problems.
binarin 11 hours ago [-]
Actual problem on Wayland is that it often doesn't work when you are trying to click somewhere in the menu - for the mouse clicking app to read keyboard input, it must take focus away from the app where the click should go. And some toolkits just close menus on focus loss.
I personally use wl-kbptr, and the problem above is the only one that can't be solved without explicit support from the compositor.
gen2brain 10 hours ago [-]
What about wp_pointer_warp_v1? That should be supported in some compositors. But not sure how to actually "send" the click event.
I often try a session with Labwc/LxQt instead of my Openbox/LxQt, and while there is progress, still not fully usable, so still no Wayland for me. But with X11, I can at least add xvfb, xdotool, and other utils, and AI has no problem writing (and testing) a GUI for me.
AyanamiKaine 10 hours ago [-]
Oh wp_pointer_warp_v1 works fine when you want to move the cursor that is not a problem. One application can simply say move the mouse to a different window but it cannot say click.
So in the sense as far as I understand it is that in wayland one application is not allowed to use the input of IO devices to interact with other applications.
gen2brain 10 hours ago [-]
So, "security" strikes again. Windows shell not be moved, pointers shell not be clicked, but you can move the mouse if you want to.
I wonder if blender works on wayland, because it has a feature that makes the mouse cursor "loop" across the window if you are dragging something.
AyanamiKaine 10 hours ago [-]
That features works completly fine when I use Blender(5.2) and wayland cant say if older versions might not work.
jcelerier 10 hours ago [-]
The protocol for this has recently been accepted, now it has to be implemented by every compositor
AlienRobot 7 hours ago [-]
That sounds like hell. All this just to set the X, Y of the mouse pointer?
toast0 7 hours ago [-]
> That sounds like hell.
Wayland isn't an eternal punishment, it's just a protocol. :p
okeefe77 10 hours ago [-]
I understand the app is only installable on Windows, but what is the thinking behind not allowing downloads on non-Windows devices? I was going to save a copy of the installer to my Google Drive from my phone and the download button doesn't work. Seems like an odd choice that could hinder adoption.
(This is partially an assumption on my part as I currently don't have an unrestricted Windows machine to verify, but considering the non-functional button and "download on Windows" message it displays it seemed safe to assume)
elzbardico 9 hours ago [-]
I think you can get the source directly from github, probably even a pre-compilled installer from the releases page in the github project.
okeefe77 9 hours ago [-]
You cannot. No releases and all the code files are "placeholder.cpp"
FinnKuhn 7 hours ago [-]
Why even have a github if you don't actually publish anything there. To suggest that you are trustworthy and associate yourself with open source or source available without having to actually do it? Planning to do it, but being ashamed of your code? I don't know, but I definitely find it strange.
lazov 6 hours ago [-]
The point is to track issues. I thought this was fairly common practice, apps like Keypirinha do this.
FinnKuhn 6 hours ago [-]
That's fine, but why add a folder structure and placeholder files then?
And they still have a repository with the code available as well, so it doesn't mislead anyone into believing that they are source available or open source: https://github.com/Keypirinha/Packages
lazov 6 hours ago [-]
I wanted github to recognize the project as being written in C++. I made a controversial video about C++ a few months ago and people were clowning me that I had no C++ repos on my github lol.
whilenot-dev 6 hours ago [-]
So you thought putting empty cpp files in a repo for a closed-source project would give you some credibility there?
throw1234567891 7 hours ago [-]
Who is “you” in this case?
FinnKuhn 7 hours ago [-]
The person publishing the software.
Who that is I don't know as it is not displayed anywhere on the website and the the github repo is published by "LazoVelko". Who this is I don't know either. For all I know they are a russian hacker and a future version of this software is going to add an exploit. That is why you should probably think twice about downloading and installing software published by an anonymous person without the source code being available.
throw1234567891 5 hours ago [-]
You were replying to the person in the thread who clearly wasn’t the author, it was really confusing for a bit.
lazov 6 hours ago [-]
Hello, I'm Lazo. I built Neverclick. Nice to meet you FinnKuhn.
I'm not anonymous, this is my name irl.
Neverclick is digitally signed with Microsoft Trusted Signing (now known as Azure Artifact Signing). I had to send them my personal information like my address and ID to get my identity verified so that I'd get approved for it. Additionally, Neverclick doesn't require admin privileges to run, and it works completely offline so you can block it via firewall and it'll work just fine.
Is there anything else I can say or do to put your mind at ease?
zerr 10 hours ago [-]
Developing a muscle memory is the main aspect of keyboard usage. Does this app account for this? i.e. how repeatable are those key-shortcuts? Seems like it's random.
lazov 9 hours ago [-]
Neverclick dev here. It's not random, a lot of thought went into how the key combinations are generated and assigned.
When Neverclick generates the key combinations, it prioritizes keys in the center of the keyboard. It then sorts the key combinations from most to least convenient (so for example JJ and FF would be at the top of the list). It then assigns the most convenient key combinations to UI elements closest to the center of the screen because that's where people are most likely to want to perform a mouse action.
As the other commenter already said, with dynamic data, you can't really make things repeatable. However, it's still really cozy to use and way better than if it were randomly generated and assigned (which is how it used to work before it was updated to the new system).
FinnKuhn 7 hours ago [-]
One interesting thing would be to have a certain section of your screen always start with the same first letter so you can already intuitively start typing it while checking the 2nd letter.
throw10920 9 hours ago [-]
It seems to implement the Avy (https://github.com/abo-abo/avy) model of input. It can't be improved very much, because when dealing with dynamic data, you can't make things repeatable. The idea of "muscle memory" for things that change is kind of fallacious. The best you can do is ensure some predictability in the subset of keys you're using for element selection.
deviation 12 hours ago [-]
My problem with these types of apps will always be that most software it interacts with will unfortunately be designed without accessibility in mind.
I've trialed a handful of these mouse-less programs before and I always run into the same hurdles.
E.g. where one or more of my apps have sliders which I can't interact with using clicks instead of drags (so I can't interact with it at all), or needing to click things like my MacOS dock, or even resize a window.
lazov 11 hours ago [-]
Hello, I'm the developer behind Neverclick. Neverclick doesn't use accessibility apis. It uses local computer vision so it works in every app.
I've had a poor experience with accessibility apis, they're clunky, slow, and unpredictable, and as you said many apps aren't built with accessibility in mind. With computer vision you don't have to worry about that.
This might sound strange, but the cv system in Neverclick actually runs significantly faster than UI Automation (which is the accessibility api on windows) in nearly all of my personal tests. I can't believe that accessibility apis are so poorly optimized that raw pixel analysis is faster lol. Also, I have users that use Neverclick on 10 year old hardware and they tell me that the cv runs instantly whereas UI Automation is super laggy for them.
Also, accessibility apis typically don't give you useful bounding boxes for text in text editors, this is another advantage of the cv approach.
I really wish the title of the post was "Desktop application for performing mouse actions with your keyboard using computer vision" so that it's more obvious that it uses cv, although it's my fault since the current title is how I have it in the readme and they probably just copied that.
silon42 12 hours ago [-]
What is needed is "Mouseless Friday" for UI designers/developers.
andy55a 12 hours ago [-]
This is really nice, great job! I built something similar for myself on MacOS recently. Started off as a window manager then began adding keyboard navigation features as I was unhappy with other tools (vimium, shortcat etc).
Hint mode as a feature being able to click all active links on the screen is great and very useful.
Two features I've added recently that have made never using a mouse much more feasible:
1. Search mode - Search for any text on the page, jump to it and then use vim keybindings to select text from there and copy => I use this 20+ times a day
2. Scroll mode - Any scroll area on the page is highlighted with a hint, but when selected it clicks the scroll area and allows you to use keybindings like j/k/gg/G to scroll up and down. I loved this from vimium and wanted to everywhere
I bought an iBook G3 specifically for running Debian back in the early 2000s. It worked absolutely perfectly and one of the huge features I miss was that the small option key to the right of the space bar was converted to a middle mouse button :)
10 hours ago [-]
DarkIye 12 hours ago [-]
Nice, this is like Vimium link hints but for everything. So long carpal tunnel!
amelius 10 hours ago [-]
> Neverclick uses computer vision so it works in all applications.
Ok, how does it use CV? This is not explained. Does it track eye movements? Do I need a webcam, or two?
lazov 8 hours ago [-]
It uses CV to analyze the pixels on your screen to detect clickable UI elements.
Tcepsa 8 hours ago [-]
Presumably it captures a screenshot and then uses CV on the resulting image to "see" the application and identify the various things that you might want to click.
benji-york 8 hours ago [-]
My reading is that it uses CV to identify potential click targets on the screen.
axm__ 6 hours ago [-]
Why are there 4000~ empty commits with the message "development work"?
lazov 6 hours ago [-]
The commits are a mirror of the real codebase. My intention was to show people that I've been working on this for a long time and that it's not ai slop abandonware. But after reading some of the comments here I can see how it has raised more questions than it has answered.
unregistereddev 6 hours ago [-]
This reeks of likely malware.
- Fake commit history
- No source code, despite being hosted on github
- Windows-only binaries available for download
If I weren't on my work computer I would pull down those binaries to see what is in them. It sure smells fishy.
lazov 6 hours ago [-]
The commit history is a mirror of the real codebase, I wanted to show people that I've been working on this for a long time and that it's not vibe coded ai slop. In retrospect it seems that it was a mistake to do this.
Neverclick is digitally signed with Microsoft Trusted Signing (now known as Azure Artifact Signing). I had to send them my address and ID to get my identity verified so that I'd get approved for it.
Is there anything else I can do to put your mind at ease?
unregistereddev 3 hours ago [-]
Microsoft Trusted Signing only tells me you were able to get a key.
If this is intended to be an open source project, transparency would go a long way. The source code and actual history will make a big difference. If this is not intended to be an open source project, then hosting it on a source control system is misleading.
Not releasing source code is fine, but then you need to build trust. Is it paid software? Is there a company or a known name behind it (in which case, can you host it on that entity's website)? At minimum, toss up a website that describes what the software does, what the usage terms are, and whether it collects information about user systems and/or uploads data anywhere. Bonus, scan it with Windows Defender and a couple other malware scanners. Advertise that it scans clean.
amelius 8 hours ago [-]
Anyone with experience with this keyboard which has a built-in trackpoint:
This looks cool! How is the planned Linux support (the website says "Coming soon for Linux") suppose to work? X11 only? Wayland? Gnome only (or any other DE)?
gen2brain 10 hours ago [-]
I am guessing wp_pointer_warp_v1 in Wayland, but not sure if all compositors support that. And that is just for moving the cursor. Can we "send" a wl_pointer click like that?
ur-whale 11 hours ago [-]
Windows only.
Github has no source code.
Pass for me.
bobajeff 9 hours ago [-]
Yeah after I read this I looked at the "code". It's a lot of placeholder.cpp with int main(){return};
Nice work, but how is this different from Shortcat?
lazov 11 hours ago [-]
Most software in this space relies on accessibility apis, which means it only works in apps that have accessibility support. Neverclick uses computer vision. There are several advantages to using computer vision, the biggest one is that it works in every app. It also produces really good bounding boxes around text so it's great for editing text. And counterintuitively, it runs significantly faster than the traditional accessibility api approach. The hints show up instantaneously, even on old hardware.
drdexebtjl 9 hours ago [-]
The Mario Kart youtuber?
squigz 12 hours ago [-]
QMK-powered keyboards can do this out of the box
pelagicAustral 12 hours ago [-]
thanks for the heads up, I have a keychron gathering dust at home, so I'll test this later on. favved the thread anyway, since I'm interested, but will wait for the macOS version.
okeefe77 11 hours ago [-]
There is a MacOS app called ShortCat that gives similar functionality.
granra 12 hours ago [-]
I mean, it can make mouse movements and clicks but you can't be suggesting it can do on-screen hints, which makes it a way better experience.
squigz 12 hours ago [-]
I'll admit I didn't look too closely at TFA :) But yeah, that part looks neat
I know, because I wanted to automate a GUI task using PyAutoGUI and it wouldnt work on wayland no matter what.
I personally use wl-kbptr, and the problem above is the only one that can't be solved without explicit support from the compositor.
I often try a session with Labwc/LxQt instead of my Openbox/LxQt, and while there is progress, still not fully usable, so still no Wayland for me. But with X11, I can at least add xvfb, xdotool, and other utils, and AI has no problem writing (and testing) a GUI for me.
So in the sense as far as I understand it is that in wayland one application is not allowed to use the input of IO devices to interact with other applications.
https://mouseless.click/
[0] https://mouseless.click/docs/wayland_configuration.html
Wayland isn't an eternal punishment, it's just a protocol. :p
(This is partially an assumption on my part as I currently don't have an unrestricted Windows machine to verify, but considering the non-functional button and "download on Windows" message it displays it seemed safe to assume)
And they still have a repository with the code available as well, so it doesn't mislead anyone into believing that they are source available or open source: https://github.com/Keypirinha/Packages
Who that is I don't know as it is not displayed anywhere on the website and the the github repo is published by "LazoVelko". Who this is I don't know either. For all I know they are a russian hacker and a future version of this software is going to add an exploit. That is why you should probably think twice about downloading and installing software published by an anonymous person without the source code being available.
I'm not anonymous, this is my name irl.
Neverclick is digitally signed with Microsoft Trusted Signing (now known as Azure Artifact Signing). I had to send them my personal information like my address and ID to get my identity verified so that I'd get approved for it. Additionally, Neverclick doesn't require admin privileges to run, and it works completely offline so you can block it via firewall and it'll work just fine.
Is there anything else I can say or do to put your mind at ease?
When Neverclick generates the key combinations, it prioritizes keys in the center of the keyboard. It then sorts the key combinations from most to least convenient (so for example JJ and FF would be at the top of the list). It then assigns the most convenient key combinations to UI elements closest to the center of the screen because that's where people are most likely to want to perform a mouse action.
As the other commenter already said, with dynamic data, you can't really make things repeatable. However, it's still really cozy to use and way better than if it were randomly generated and assigned (which is how it used to work before it was updated to the new system).
I've trialed a handful of these mouse-less programs before and I always run into the same hurdles.
E.g. where one or more of my apps have sliders which I can't interact with using clicks instead of drags (so I can't interact with it at all), or needing to click things like my MacOS dock, or even resize a window.
I've had a poor experience with accessibility apis, they're clunky, slow, and unpredictable, and as you said many apps aren't built with accessibility in mind. With computer vision you don't have to worry about that.
This might sound strange, but the cv system in Neverclick actually runs significantly faster than UI Automation (which is the accessibility api on windows) in nearly all of my personal tests. I can't believe that accessibility apis are so poorly optimized that raw pixel analysis is faster lol. Also, I have users that use Neverclick on 10 year old hardware and they tell me that the cv runs instantly whereas UI Automation is super laggy for them.
Also, accessibility apis typically don't give you useful bounding boxes for text in text editors, this is another advantage of the cv approach.
I really wish the title of the post was "Desktop application for performing mouse actions with your keyboard using computer vision" so that it's more obvious that it uses cv, although it's my fault since the current title is how I have it in the readme and they probably just copied that.
Hint mode as a feature being able to click all active links on the screen is great and very useful.
Two features I've added recently that have made never using a mouse much more feasible:
1. Search mode - Search for any text on the page, jump to it and then use vim keybindings to select text from there and copy => I use this 20+ times a day
2. Scroll mode - Any scroll area on the page is highlighted with a hint, but when selected it clicks the scroll area and allows you to use keybindings like j/k/gg/G to scroll up and down. I loved this from vimium and wanted to everywhere
Feel free to steal those :)
https://github.com/andyhmltn/nflow
Ok, how does it use CV? This is not explained. Does it track eye movements? Do I need a webcam, or two?
- Fake commit history
- No source code, despite being hosted on github
- Windows-only binaries available for download
If I weren't on my work computer I would pull down those binaries to see what is in them. It sure smells fishy.
Neverclick is digitally signed with Microsoft Trusted Signing (now known as Azure Artifact Signing). I had to send them my address and ID to get my identity verified so that I'd get approved for it.
Is there anything else I can do to put your mind at ease?
If this is intended to be an open source project, transparency would go a long way. The source code and actual history will make a big difference. If this is not intended to be an open source project, then hosting it on a source control system is misleading.
Not releasing source code is fine, but then you need to build trust. Is it paid software? Is there a company or a known name behind it (in which case, can you host it on that entity's website)? At minimum, toss up a website that describes what the software does, what the usage terms are, and whether it collects information about user systems and/or uploads data anywhere. Bonus, scan it with Windows Defender and a couple other malware scanners. Advertise that it scans clean.
https://tex.com.tw/products/shinobi
Github has no source code.
Pass for me.
This is so very sketchy.