{"id":13432733,"url":"https://github.com/santinic/how2","last_synced_at":"2025-05-14T04:07:32.544Z","repository":{"id":39738117,"uuid":"51649722","full_name":"santinic/how2","owner":"santinic","description":"AI for the Command Line","archived":false,"fork":false,"pushed_at":"2023-03-15T06:25:21.000Z","size":5239,"stargazers_count":5748,"open_issues_count":5,"forks_count":151,"subscribers_count":61,"default_branch":"master","last_synced_at":"2025-05-04T19:02:52.699Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://how2terminal.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/santinic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2016-02-13T14:42:16.000Z","updated_at":"2025-05-04T15:32:17.000Z","dependencies_parsed_at":"2024-04-12T18:47:30.331Z","dependency_job_id":"3df079f1-2304-4e98-89e8-30a40b8a825c","html_url":"https://github.com/santinic/how2","commit_stats":{"total_commits":193,"total_committers":15,"mean_commits":"12.866666666666667","dds":0.5544041450777202,"last_synced_commit":"4e15373afbea5f832a88d57b33f7eccf5f46c9e8"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santinic%2Fhow2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santinic%2Fhow2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santinic%2Fhow2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santinic%2Fhow2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/santinic","download_url":"https://codeload.github.com/santinic/how2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254069211,"owners_count":22009507,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T02:01:15.869Z","updated_at":"2025-05-14T04:07:32.515Z","avatar_url":"https://github.com/santinic.png","language":"JavaScript","readme":"# how2: AI for your Terminal\n\n\nhow2 finds the simplest way to do something in a unix shell.\nIt's like `man`, but you can query it in natural language. It uses a mix of AI code-completion and StackOverflow search.\n\nIt effectively replaces Chrome =\u003e New Tab =\u003e Google =\u003e Click on StackOverflow =\u003e Scroll Down to first answer.\n\nGo to [how2terminal.com](https://how2terminal.com) for more info.\n\n![how2 AI for the Command-Line](https://raw.githubusercontent.com/santinic/how2/master/img/short2.png)\n\n\n# Demo video\nhttps://user-images.githubusercontent.com/179558/196452157-60e6b33a-116d-46f2-a441-7d0696a31452.mp4\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n# Install\n## MacOSX (via HowBrew):\n\n```\nbrew tap how2terminal/how2\nbrew install how2\n```\n\n## With NPM:\n\n```\nsudo npm install -g how2\n```\n\nIf you install it without `sudo`, then you have to run it with `npx how2` or alias the command manually.\n\n\n## Ubuntu/Debian:\n\n[Download latest .deb](https://github.com/santinic/how2/releases/latest/) and then run:\n    \n\n```\nwget how2terminal.com/how2.deb\nsudo dpkg -i how2.deb\n```\n\n## Binaries:\n    \n[Go to the latest release](https://github.com/santinic/how2/releases/latest/) and download the binaries.\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\n\n# Usage\nBy default, how2 uses an external AI server to find the best unix command line suggestion.\nIf you add the `-s` option instead, it will search StackOverflow for an answer.\n\n![how2 AI and StackOverflow mode](https://raw.githubusercontent.com/santinic/how2/master/img/modes.png)\n\n![how2 -s example](https://raw.githubusercontent.com/santinic/how2/master/img/s.png)\n\nAfter that you can press SPACE to go to the interactive mode, where you can choose a different stackoverflow question/answer.\n\n![how2 interactive mode](https://raw.githubusercontent.com/santinic/how2/master/img/interactive.png)\n\n![how2 interactive mode 2](https://raw.githubusercontent.com/santinic/how2/master/img/interactive2.png)\n\n\n[//]: # (You can use `-l lang` to find answers for other languages:)\n[//]: # (![-l python]\u0026#40;https://raw.githubusercontent.com/santinic/how2/master/img/python.png\u0026#41;)\n\n\n## How does it work?\nBehind the curtain, the API use a couple of AI code-completion models\nretrained on Bash/Powershell commands. \nThis is just the beginning, we are working on retraining the models to focus on the Command-Line experience.\nCurrently, the AI mode is free for everybody up to 5 requests per day. \nIf you are a professional user [consider upgrading to a paid subscription](https://how2terminal.com/pricing).\n\n\n## How well does it work?\nIt is surprisingly useful once you get used to it! I've added it to all my servers and laptops and I use it daily.\nSometimes, the model cannot find a solution and will result in unexpected output. \nIn that case, try rewording your input, it often takes minor changes to get to a good solution.\nAnd, if it really doesn't work, just add `-s` to get the best answer on StackOverflow straight into\nthe Terminal.\n\n\n## Copy-Paste with mouse\nWhen you are in \"interactive mode\" (after you press SPACE), if you want to copy-paste more than one line you can:\n\n- press \"p\" to just print out the selected answer (easier to copy-paste)\n- use block-select: With Ubuntu try holding `Ctrl+Alt` before you select, or `Alt+Cmd` if you're in iTerm on Mac\n(thanks to @danielkop for this suggestion).\n\n## Can I use it behind Proxy ?\nYes, you need to use `HTTP_PROXY` or `HTTPS_PROXY` environment variables.\n\nFor example, you could alias the proxy settings in your `~/.bash_profile`:\n\n`alias how2=\"HTTPS_PROXY='your_proxy:8888' how2\"`\n","funding_links":[],"categories":["JavaScript","Command Line Learning","\\*nix/\\*nux","Command-Line Productivity","\u003ca name=\"tooling\"\u003e\u003c/a\u003etooling","others","CLI","Uncategorized"],"sub_categories":["Internet Speedtest","Developer","Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantinic%2Fhow2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsantinic%2Fhow2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantinic%2Fhow2/lists"}