Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/withfig/autocomplete

IDE-style autocomplete for your existing terminal & shell
https://github.com/withfig/autocomplete

autocomplete bash cli fig fish hacktoberfest iterm2 macos shell terminal typescript zsh

Last synced: 6 days ago
JSON representation

IDE-style autocomplete for your existing terminal & shell

Awesome Lists containing this project

README

        

[![Badge: macOS](https://img.shields.io/badge/os-%20macOS-light)](#)
[![Badge: Documentation](https://img.shields.io/badge/documentation-black)](https://fig.io/docs/)
[![Badge: contributors](https://img.shields.io/github/contributors/withfig/autocomplete)](#Contributors)

**[Amazon Q Developer in the command line](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-getting-started-installing.html)
adds IDE-style completions for hundreds of popular CLIs like `git`, `npm`,
`docker`, and `aws`. Start typing, and Amazon Q populates contextually relevant
subcommands, options and arguments.**

## ⚡️ Installation

- **macOS**:
- **DMG**: Download from AWS:
[aws.amazon.com](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-getting-started-installing.html)
- **Homebrew**: `brew install amazon-q`
- **Linux/Windows**:
- Follow the discussions for
[Linux](https://github.com/aws/q-command-line-discussions/discussions/14) or
[Windows](https://github.com/aws/q-command-line-discussions/discussions/15)
- **Remote machines**
- [Autocomplete in SSH](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-autocomplete-ssh.html)

> NOTE: Once it's downloaded, launch the app to set up Amazon Q for command
> line!


![Demo of Amazon Q's CLI Completions in a terminal](https://docs.aws.amazon.com/images/amazonq/latest/qdeveloper-ug/images/command-line-completions.gif)


## 👋 What are "completion specs"?

A completion spec is a _declarative_ schema that specifies the `subcommands`,
`options` and `args` for a CLI tool. Amazon Q uses these schemas to generate
suggestions.


## 😎 Contribute your first spec in < 3 minutes

Use the steps below or follow our getting started guide:
[fig.io/docs](https://fig.io/docs)

**Prerequisites:**

- Download Amazon Q for command line
- Node and Pnpm


**Steps**

1. Make sure you have `pnpm` [installed](https://pnpm.io/installation), as
that's the package manager used in this repo.

2. Click [here](https://GitHub.com/withfig/autocomplete/fork/) to fork this
repo.

3. Clone your forked repo and create an example spec

```bash
# Replace `YOUR_GITHUB_USERNAME` with your own GitHub username
git clone https://github.com/YOUR_GITHUB_USERNAME/autocomplete.git autocomplete
cd autocomplete

# Add withfig/autocomplete as a remote
git remote add upstream https://github.com/withfig/autocomplete.git

# Install packages
pnpm install

# Create an example spec (call it "abc")
pnpm create-spec abc

# Turn on "dev mode"
pnpm dev
```

4. Now go to your terminal and type `abc[space]`. Your example spec will appear.
😊

#### Other things to know

- Edit your spec in TypeScript in the `src/` folder
- On save, specs are compiled to the `build/` folder
- In **dev mode**, specs are read from the `build` folder, and generators run
every keystroke.


## 📦 Other available package.json commands

```bash
# Typecheck all specs in the src/ folder
pnpm test

# Compile typescripts specs from src/ folder to build/ folder
pnpm build

# Lint and fix issues
pnpm lint:fix
```

## 🔥 Contributions

We would love contributions for:

- New completion specs
- Errors with existing completion specs (e.g. missing subcommands, options, or
arguments)
- [Generators](https://fig.io/docs/getting-started/generating-argument-suggestions)
for argument suggestions
- Better descriptions, icons etc
- [Themes](https://github.com/withfig/themes)!

If you aren't able to contribute, please feel free to open an
[issue](https://github.com/withfig/autocomplete/issues/new/choose).

## 🙋‍♀️ FAQ

#### What terminals does Amazon Q work with?

Amazon Q for command line works with the native macOS Terminal app, [iTerm],
[Tabby], [Hyper], [Kitty], [WezTerm], and [Alacritty]. It also works in the
integrated terminals of [VSCode], [JetBrains IDEs], [Android Studio], and
[Nova].

[iterm]: https://iterm2.com
[tabby]: https://tabby.sh
[hyper]: https://hyper.is
[kitty]: https://sw.kovidgoyal.net/kitty
[wezterm]: https://wezfurlong.org/wezterm/
[alacritty]: https://alacritty.org/
[vscode]: https://code.visualstudio.com/
[jetbrains ides]: https://www.jetbrains.com/
[android studio]: https://developer.android.com/studio
[nova]: https://nova.app/

Want to see another terminal included? Check our
[issue tracker](https://github.com/aws/q-command-line-discussions) and add your
support for it!

#### How does Amazon Q for command line work?

Amazon Q for command line uses the Accessibility API on Mac to position the
window, and integrates with your shell to read what you've typed.

#### Does Amazon Q for command line work on Windows or Linux?

Not yet, Amazon Q for command line is only available on macOS for now.
[Windows](https://github.com/aws/q-command-line-discussions/discussions/15) and
[Linux](https://github.com/aws/q-command-line-discussions/discussions/14)
support is in progress!

#### How can I download Amazon Q?

Run `brew install amazon-q` or, downloading the app at
[aws.amazon.com](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-getting-started-installing.html).
Then, launch the Amazon Q app!

#### How do I submit a PR?

Check out our
[How to Contribute](https://fig.io/docs/getting-started/contributing) guide.
Many of Amazon Q's 400+ contributors made their first open source contribution
to Amazon Q!

#### Amazon Q for command line doesn't work for me!

Run `q doctor` to automatically debug issues with your installation. Otherwise
make an issue in our GitHub discussions community:
[aws/q-command-line-discussions](https://github.com/aws/q-command-line-discussions/discussions)


## ✨ Contributors


Grid of profile icons of the 400+ contributors