# @kibibot/cli

The official KibiBot command-line interface. Deploy tokens on-chain, check balances, check fee earnings, manage Kibi Credits, manage your agent profile, and control your AI agent from the terminal.

## Installation

```bash
npm install -g @kibibot/cli
```

```bash
kibi --version
```

### Run without installing

```bash
npx @kibibot/cli whoami
npx @kibibot/cli token create --name MyToken --symbol MTK --chain base
```

## Setup

### 1. Get an API key

Go to [kibi.bot/settings/api-keys](https://kibi.bot/settings/api-keys) → Create API Key → copy the `kb_...` key.

### 2. Login

```bash
# Interactive — prompts for API key
kibi login

# Headless — pass key directly
kibi login --api-key kb_YOUR_KEY
```

Credentials are stored in `~/.kibi/config.json`. You can also set `KIBI_API_KEY` as an environment variable.

### 3. Verify

```bash
kibi whoami
```

## Commands

### Identity

```bash
kibi whoami          # your account info and wallet addresses
kibi logout          # clear stored credentials
```

### Token Creation

```bash
# Interactive (prompts for name, symbol, target user, chain, platform, source, image, fee sharing)
kibi token create

# Headless
kibi token create --name "MyToken" --symbol MTK --chain base
kibi token create --name "Moon" --symbol MOON --chain solana --description "To the moon"
kibi token create --name "Moon" --symbol MOON --chain base --image-url https://example.com/moon.png
kibi token create --name "Moon" --symbol MOON --chain base --source https://x.com/user/status/123
kibi token create --name "Test" --symbol TST --chain base --no-wait  # return job ID immediately

# With platform override (default platform used if omitted)
kibi token create --name "Moon" --symbol MOON --chain base --platform clanker
kibi token create --name "Moon" --symbol MOON --chain bnb --platform fourmeme

# Create token for another X/Twitter user
kibi token create --name "Fan Token" --symbol FAN --for alice --chain bnb --platform flap

# Fee sharing (only with --for, on platforms that support it)
kibi token create --name "Fan Token" --symbol FAN --for alice --chain bnb --platform flap --fee "alice:60"
kibi token create --name "Collab" --symbol COL --for alice --chain bnb --platform flap --fee "alice:50,bob:10"

# Check deployment status
kibi status 12345

# Get token info
kibi token info 0x1234...
kibi token info 5Yz8K... --chain solana

# List tokens you've created
kibi tokens created
kibi tokens created --page 2
```

#### Create for another user

Use `--for <handle>` to create a token on behalf of another X/Twitter user. The target user becomes the default fee recipient. In interactive mode, this is presented as a choice after entering the token name and symbol.

#### Fee sharing

Use `--fee` to split creator fees among multiple recipients. Each entry is `handle:percent` or `0xAddress:percent`, comma-separated. Percentages represent shares of total fees and must not exceed the platform's creator fee ceiling (e.g. 70% on Flap, where KibiBot takes 30%). Any unallocated remainder goes to you automatically.

Fee sharing requires `--for` and is only available on platforms that support it (flap, bfun, clanker, basememe, doppler). In interactive mode, fee sharing prompts appear automatically when creating for another user.

Supported chains: `bnb` · `base` · `solana`

Supported platforms: `basememe` · `clanker` · `doppler` (Base) · `flap` · `fourmeme` · `bfun` (BNB Chain) · `pumpfun` (Solana)

Defaults: base → basememe · bnb → flap · solana → pumpfun

### Balances & Quota

```bash
kibi balances        # on-chain wallet balances across all chains (with USD values)
kibi quota           # daily token creation quota per chain
```

### Fee Earnings

```bash
# Summary across all chains (with USD values)
kibi fees

# Per-platform breakdown for a specific chain (with USD values)
kibi fees --chain bnb
kibi fees --chain base
kibi fees --chain solana

# Fee earnings for a specific token
kibi fees --chain bnb --platform flap --token 0x1234...
kibi fees --chain bnb --platform fourmeme --token 0x1234...
kibi fees --chain bnb --platform bfun --token 0x1234...
kibi fees --chain solana --platform pumpfun --token 5Yz8K...
```

Supported platforms: `flap` · `fourmeme` · `bfun` (BNB Chain) · `basememe` · `clanker` · `doppler` (Base) · `pumpfun` (Solana)

### Kibi Credits & Kibi LLM Gateway

```bash
# Check Kibi LLM Credits balance + agent reload config
kibi llm credits

# List available AI models
kibi llm models

# Reload Kibi Credits from trading wallet (requires Agent Reload enabled)
kibi llm reload

# Emergency disable agent reload
kibi llm reload --disable

# Generate provider config for your tool
kibi llm setup openclaw   # OpenClaw config JSON (use with --install to write directly)
```

### Agent Profile

Manage your public agent profile on [kibi.bot/agent/profiles](https://kibi.bot/agent/profiles). Earnings data (total earnings, token count, top earning tokens) is automatically populated from your KibiBot token history — no manual token linking needed.

```bash
# View your profile
kibi profile
kibi profile --json

# Create a profile (interactive wizard, prompts to submit for review)
kibi profile create

# Create with flags
kibi profile create --name "My Agent" --description "An autonomous trading bot"

# Update profile fields
kibi profile update --name "New Name"
kibi profile update --description "Updated description"

# Submit for admin review
kibi profile submit

# Project updates (changelog / announcements)
kibi profile add-project-update --title "v2.0" --content "Multi-chain support is here!"
kibi profile delete-project-update <uuid>

# Delete profile (draft/rejected only)
kibi profile delete
```

#### kibi.toml

Team members and products can be set via a `kibi.toml` file in your project directory. The CLI auto-reads it during `create` and `update`.

```toml
[profile]
name        = "My Agent"
description = "Does something useful on-chain."

[[profile.team_members]]
name = "Alice"
role = "Lead Dev"
links = ["https://twitter.com/alice"]

[[profile.products]]
name        = "Swap Engine"
description = "Optimised DEX routing"
url         = "https://my-agent.xyz/swap"
```

#### Profile status flow

Profiles start as `draft` and must be submitted for admin review before appearing publicly.

| Status | Visible? | Description |
|---|---|---|
| `draft` | No | Initial state, editable |
| `pending_review` | No | Awaiting admin approval |
| `approved` | Yes | Publicly listed on kibi.bot/agent/profiles |
| `rejected` | No | Admin rejected — edit and re-submit |
| `approved_pending_changes` | Yes | Approved profile with edits awaiting review |

Editing an approved profile stores changes as pending — the live version stays public until an admin approves the edits.

### Config

```bash
kibi config get           # show all config
kibi config get apiKey    # show specific key
kibi config set apiKey kb_YOUR_KEY

kibi about               # version, links, branding
```

## Global Flags

| Flag | Description |
|---|---|
| `--json` | Machine-readable JSON output |
| `--debug` | Verbose HTTP request/response logging |
| `--version` | Print version |
| `--help` | Print help |

## Configuration

Config precedence (highest to lowest):

1. **Environment variable** — `KIBI_API_KEY`
2. **Config file** — `~/.kibi/config.json`

## Requirements

- Node.js >= 18.0.0

## Links

- [Agent & Developer Docs](https://kibi.bot/docs/agent)
- [API Keys](https://kibi.bot/settings/api-keys)
- [Kibi Credits](https://kibi.bot/credits)
- [GitHub Skills](https://github.com/KibiAgent/skills)

## License

MIT
