Next-generation AI coding assistant CLI with rich Terminal User Interface (TUI), Vim mode, slash commands, AGENTS.md configuration, and internationalization support.
A powerful command-line AI coding agent with a rich Terminal User Interface, Vim modal editing, extensible slash command system, and project-aware configuration via AGENTS.md files.
This skill helps you work with the Vellum CLI, a next-generation AI coding assistant that provides:
When the user requests help with Vellum CLI:
1. **Identify the Task Category**
- Installation and setup
- Interactive mode usage
- TUI customization
- Slash commands
- AGENTS.md configuration management
- Language/theme preferences
- Custom command development
2. **Installation Tasks**
```bash
# Global installation
npm install -g @butlerw/vellum
```
3. **Basic Usage**
```bash
# Start interactive mode
vellum
# Run with specific prompt
vellum "Create a React component"
# Run with configuration file
vellum --config vellum.config.json
# Start with specific language
vellum --language zh
```
4. **AGENTS.md Management**
**Initialize new AGENTS.md:**
```bash
# Interactive wizard
vellum init
# Minimal template (skip wizard)
vellum init --minimal
# Overwrite existing
vellum init --force
# Non-interactive (CI mode)
vellum init --non-interactive
```
**Show current configuration:**
```bash
# Display merged config
vellum agents show
# JSON output
vellum agents show --json
# Verbose with sources
vellum agents show --verbose
# Scope-specific config
vellum agents show --scope ./src
```
**Validate AGENTS.md files:**
```bash
# Validate all files
vellum agents validate
# Validate specific file
vellum agents validate ./AGENTS.md
# JSON output for CI
vellum agents validate --json
```
**Generate AGENTS.md from project:**
```bash
# Auto-detect and generate
vellum agents generate
# Preview without writing
vellum agents generate --dry-run
# Custom output path
vellum agents generate --output ./config/AGENTS.md
# Merge with existing
vellum agents generate --merge
```
5. **Slash Commands**
Available commands in interactive mode:
| Command | Usage | Description |
|---------|-------|-------------|
| `/help [topic]` | `/help`, `/h`, `/?` | Show help |
| `/clear` | `/clear`, `/cls` | Clear screen |
| `/exit [--force]` | `/exit`, `/q` | Exit application |
| `/login [provider]` | `/login anthropic` | Add credentials |
| `/logout [provider]` | `/logout anthropic` | Remove credentials |
| `/credentials` | `/credentials` | Show credential status |
| `/language [code]` | `/language zh` | Change language |
Command syntax examples:
```bash
# Basic command
/help
# With positional argument
/login anthropic
# With flags
/exit --force
/exit -f
# With flag and value
/login anthropic --store keychain
# Mixed arguments
/config theme --value dark --global
```
6. **Language Configuration**
```bash
# Show current language
/language
# Switch to Chinese
/language zh
# Switch to English
/language en
# Auto-detect
/language auto
# Or use environment variable
export VELLUM_LANGUAGE=zh
```
Language priority (highest first):
1. `--language` CLI flag
2. `VELLUM_LANGUAGE` env var
3. Saved preference
4. System locale
5. Default (en)
7. **TUI Customization**
When user needs to customize the interface:
```typescript
import { RootProvider, Layout, TextInput, MessageList, StatusBar } from "@vellum/cli";
function App() {
return (
<RootProvider theme="dracula">
<Layout
header={<StatusBar model={{ provider: "anthropic", model: "claude-3" }} />}
footer={<TextInput value={input} onChange={setInput} />}
>
<MessageList messages={messages} />
</Layout>
</RootProvider>
);
}
```
Available themes: `dark`, `light`, `dracula`, `nord`, `solarized`
8. **Custom Command Development**
When user wants to extend functionality:
```typescript
import { CommandRegistry, type SlashCommand } from "@vellum/cli";
const myCommand: SlashCommand = {
name: "greet",
description: "Send a greeting",
kind: "user",
category: "tools",
positionalArgs: [
{
name: "name",
type: "string",
description: "Name to greet",
required: false,
},
],
namedArgs: [
{
name: "loud",
shorthand: "l",
type: "boolean",
description: "Use uppercase",
required: false,
default: false,
},
],
execute: async (ctx) => {
const name = ctx.parsedArgs.positional[0] ?? "World";
const loud = ctx.parsedArgs.named.loud;
const message = `Hello, ${name}!`;
return {
kind: "success",
message: loud ? message.toUpperCase() : message,
};
},
};
registry.register(myCommand);
```
9. **Key Features to Highlight**
- **Autocomplete**: Type `/` to trigger fuzzy-matching command autocomplete
- **Vim Mode**: Enable with `vimMode: true` in config
- **Copy Mode**: Visual text selection and copy in TUI
- **Project Detection**: Auto-detects frameworks, languages, build tools
- **Validation**: Syntax checking for AGENTS.md files
- **Merge Support**: Hierarchical AGENTS.md configuration
10. **Development Commands**
```bash
# Development mode
pnpm dev
# Build
pnpm build
# Test
pnpm test
# Benchmarks
pnpm exec vitest bench
# Type check
pnpm typecheck
```
**Setting up a new project:**
```bash
npm install -g @butlerw/vellum
vellum init
vellum agents validate
vellum
```
**Working with existing project:**
```bash
vellum agents show --verbose
vellum agents generate --merge
vellum --language zh
```
**Custom integration:**
```bash
vellum agents show --json
vellum agents validate --json
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/vellum-ai-coding-assistant/raw