# kirby

> Cloud control command line app for AWS

Latest version **0.9.7** (published 2014-01-24) · 0 weekly downloads

## Install

```sh
npm install kirby
pnpm add kirby
yarn add kirby
bun add kirby
```

Provides the command `kirby`.

## Health

**Score 10/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; low quality score; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.9.7 |
| Published | 2014-01-24 |
| First published | 2013-11-12 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 10 |
| Known vulnerabilities | 0 (+4 in 3 direct dependencies) |
| Install scripts | no |
| Maintainers | mafintosh |
| Keywords | aws, cloud, command-line, amazon, web, services |

## Links

- npm: https://www.npmjs.com/package/kirby
- Repository: https://github.com/mafintosh/kirby
- Issues: https://github.com/mafintosh/kirby/issues
- npm.io page: https://npm.io/package/kirby

## Dependencies (10)

- [ini](https://npm.io/package/ini.md) ~1.1.0
- [xtend](https://npm.io/package/xtend.md) ~2.1.1
- [thunky](https://npm.io/package/thunky.md) ~0.1.0
- [aws-sdk](https://npm.io/package/aws-sdk.md) ~1.12.0
- [request](https://npm.io/package/request.md) ~2.27.0
- [tabalot](https://npm.io/package/tabalot.md) ~0.2.7
- [inquirer](https://npm.io/package/inquirer.md) ~0.3.5
- [ssh-exec](https://npm.io/package/ssh-exec.md) ~0.3.2
- [prettyjson](https://npm.io/package/prettyjson.md) ~0.9.0
- [stream-wrapper](https://npm.io/package/stream-wrapper.md) ~0.1.2

## Recent versions

- 0.9.7 (latest) — 2014-01-24
- 0.9.6 — 2014-01-06
- 0.9.5 — 2014-01-05
- 0.9.4 — 2014-01-05
- 0.9.3 — 2014-01-05
- 0.9.2 — 2014-01-05
- 0.9.1 — 2014-01-04
- 0.9.0 — 2014-01-04
- 0.8.4 — 2014-01-04
- 0.8.3 — 2013-12-17
- 0.8.2 — 2013-12-10
- 0.8.1 — 2013-12-06
- 0.8.0 — 2013-12-06
- 0.7.1 — 2013-12-03
- 0.7.0 — 2013-12-02
- … 22 more at https://npm.io/package/kirby/versions

## README

# Kirby

Cloud control command-line tool for AWS.

It is available through npm

	npm install -g kirby

## Usage

Kirby allows you to easily launch and list named ec2 instances.
Key features include tab-completion and making launched instances automatically inherit
the configuration of an instance with the same name.

## Identifying instances

In general all commands accept a `name`, `instance-id`, `hostname` or `private hostname` to
identify an instance. If the instance name contains `+` it will be treated as an array
of different names, i.e. `name=foo+bar` means that both `foo` and `bar` will match that instance.

```
kirby list i-134245        # matches instance-id=i-134245
kirby list ec2-42-54-25... # matches hostname=ec2-42-54-25...
kirby list ip-24-24-13...  # matches private-hostname=ip-24-24-13...
kirby list foo             # matches name=foo or name=foo+bar
kirby list bar             # matches name=bar or name=foo+bar
kirby list foo+bar         # matches name=foo+bar or name=bar+foo
```

## Help

Run `kirby` to see a full list of commands and options

```
Usage: kirby [command] [name-or-id?]

The available commands are
  completion  Setup rich tabcompletion.
              Remember to source the completion or restart your terminal after setting up.
                --save,-s to save it to your $BASH_COMPLETION_DIR (install globally)

  launch      Launch a new instance with the given name.
              The defaults for the options below are configured based on instances with
              the same name.
                --ami,-i [image] to set the ami
                --key-name,-k [key-pair-name] to set the key-pair used for ssh
                --instance-type,-t [instance-type] to set the instance type
                --security-group,-g [security-group-name] to set the security group
                --availability-zone,-z [zone] to specify which availabilty zone to launch in
                --user-data,-u [filename] to specify user-data. If user-data starts with #!
                  aws will treat it as a launch script
                --user-data,-u to specify user-data interactively
                --iam-role,-r [role-name] to set a iam instance profile role
                --load-balancer [elb-name] to register instance with elb.
                --defaults,-d [instance-id] to set default values for options based
                  on another instance. if omitted the latest instance with the same
                  name will be used
                --no-defaults to disable defaults selection

  terminate   Terminate a running instance with the given name or instance id.

  exec        Execute a command on all instances with the given name.
              Expects a script from --script [file] or --command [commands] to be used.
                --command,-c [commands] to specify the command to execute inline
                --script,-s [script] to specify a script file to run
                --script,-s to specify the script interactively
                --user,-u [username] to set the user. Defaults to ubuntu
                --key,-k [path-to-private-key] to specify a private key to use for auth
                --user-data to execute the instances user-data. See launch for more info
                --one to only execute on the latest launched instance

  login       Login to a single instance with the given name using ssh.
              Will prompt for the instance to login to if there are more than one.
                --key,-k [path-to-private-key] to specify a private key to use for auth
                --user,-u [username] to set the user. Defaults to ubuntu
                --one to login to the latest launched instance

  list        List all instances with the given name.
                --one to only show the latest launched instance
                --running to only show running instances

  user-data   Show the latest used user-data for the given name.

  profile     List and manage profiles. Use kirby profile [new-name] to add a new one.
              Per default the profile name default is used and all profiles are shared with
              the aws cli tools.
                --aws-access-key,-a [access-key] to specify the AWS access key to use
                --aws-secret-key,-s [secret-key] to specify the AWS secret key to use
                --region,-r [region-name] to set the used AWS region.
                --iam-role to specify that this profile is using an iam role

All commands accept --profile,-p [profile-name] to set the used profile to something
other than default.

Running 'kirby --help' will print this message.
```

## License

MIT

---
_Source: https://npm.io/package/kirby · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
