MCPcopy Index your code
hub / github.com/santinic/how2

github.com/santinic/how2 @v3.0.3

repository ↗ · DeepWiki ↗ · release v3.0.3 ↗ · + Follow
42 symbols 70 edges 20 files 3 documented · 7% updated 3y agov3.0.3 · 2022-10-22★ 5,7773 open issues
README

how2: AI for your Terminal

how2 finds the simplest way to do something in a unix shell. It's like man, but you can query it in natural language. It uses a mix of AI code-completion and StackOverflow search.

It effectively replaces Chrome => New Tab => Google => Click on StackOverflow => Scroll Down to first answer.

Work in progress 🚧 🚧 🚧 Updates coming soon

Go to how2terminal.com for more info

how2 AI for the Command-Line

Demo video

https://user-images.githubusercontent.com/179558/196452157-60e6b33a-116d-46f2-a441-7d0696a31452.mp4

Install

Usage

By default, how2 uses an external AI server to find the best unix command line suggestion. If you add the -s option instead, it will search StackOverflow for an answer.

how2 AI and StackOverflow mode

how2 -s example

After that you can press SPACE to go to the interactive mode, where you can choose a different stackoverflow question/answer.

how2 interactive mode

how2 interactive mode 2

How does it work?

Behind the curtain, the API use a couple of AI code-completion models (Salesforce CodeGen) retrained on Bash/Powershell commands. This is just the beginning, we are working on retraining the models to focus on the Command-Line experience. Currently, the AI mode is free for everybody up to 5 requests per day. If you are a professional user consider upgrading to a paid subscription.

How well does it work?

It is surprisingly useful once you get used to it! I've added it to all my servers and laptops and used it daily. Sometimes, the model cannot find a solution and will result in unexpected output. In that case, try rewording your input, it often takes minor changes to get to a good solution. And, if it really doesn't work, just add -s to get the best answer on StackOverflow straight into the Terminal.

Copy-Paste with mouse

When you are in "interactive mode" (after you press SPACE), if you want to copy-paste more than one line you can use block-select:

With Ubuntu try holding Ctrl+Alt before you select, or Alt+Cmd if you're in iTerm on Mac.

(thanks to @danielkop for this suggestion).

Can i use it behind Proxy ?

Yes, you need to use HTTP_PROXY or HTTPS_PROXY environment variables.

For example, you could alias the proxy settings in your ~/.bash_profile:

alias how2="HTTPS_PROXY='your_proxy:8888' how2"

Core symbols most depended-on inside this repo

googleSearch
called by 6
lib/how2.js
fetchQuestionAnswers
called by 3
lib/how2.js
onErrorSearch
called by 3
lib/how2.js
getConfFilePath
called by 3
lib/token.js
onAfterInteractiveSearch
called by 2
lib/how2.js
exit
called by 2
lib/ui.js
listStyle
called by 2
lib/ui.js
stdMain
called by 2
lib/index.js

Shape

Function 42

Languages

TypeScript100%

Modules by API surface

lib/how2.js10 symbols
lib/ui.js9 symbols
lib/utils.js4 symbols
lib/token.js4 symbols
lib/srv.js3 symbols
lib/updates.js2 symbols
lib/stackexchange/questions.js2 symbols
lib/stackexchange/config.js2 symbols
lib/log.js2 symbols
lib/index.js2 symbols
lib/update.js1 symbols
lib/stackexchange/parser.js1 symbols

Dependencies from manifests, versioned

axios0.21.4 · 1×
blessed0.1.81 · 1×
chai3.5.0 · 1×
colors1.4.0 · 1×
ent2.2.0 · 1×
eslint8.22.0 · 1×
eslint-config-standard17.0.0 · 1×
eslint-plugin-n15.2.5 · 1×
eslint-plugin-promise6.0.1 · 1×
github-version-checker2.3.0 · 1×
google-it1.6.3 · 1×

For agents

$ claude mcp add how2 \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact