SkillAgentSearch skills...

Completely

Generate shell completion scripts from a JSON description of a command.

Install / Use

/learn @fvictorio/Completely
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

completely

Generate shell completion scripts from a JSON description of a command.

Usage

You can use the CLI to generate scripts:

npm i -g @completely/cli
completely --shell bash completion.json > completion.sh

(Only bash and zsh are supported at the moment.)

For example, given this JSON description:

{
  "command": "my-command",
  "subcommands": [
    {
      "command": "draw",
      "args": [],
      "flags": [{
        "type": "string",
        "name": "color",
        "completion": {
          "type": "oneOf",
          "values": ["red", "green", "blue"]
        }
      }]
    }
  ]
}

If you generate a completion.sh file and source it, you'll get some completion suggestions:

source completion.sh
my-command # pressing <tab> will complete "draw"
my-command draw --color # pressing <tab><tab> will suggest "red", "green" and "blue"

You can also use the library directly:

npm i @completely/bash-generator
import { generate } from '@completely/bash-generator'
import completionSpec from './completion.json'

const script = generate(completionSpec)
console.log(script)

JSON description

You can check the spec package to learn more about how to describe a command with a JSON file. Ideally you wouldn't need to do this manually, since this JSON is meant to be an internal representation generated by other means.

Related Skills

View on GitHub
GitHub Stars28
CategoryDevelopment
Updated2y ago
Forks3

Languages

Shell

Security Score

65/100

Audited on Mar 16, 2024

No findings