1
0

aishell

AI-powered shell automation tool - A generic alternative to Claude Code

Overview

aishellは、AIがシェルを操作するための汎用的なツールです。Claude Codeのような機能を、より柔軟で拡張可能な形で提供します。

主な特徴:

  • マルチLLMプロバイダー対応: OpenAI、Claude、ローカルLLMgpt-oss等
  • Function Calling: LLMがツールを直接呼び出してシェルを操作
  • MCPサーバー: Claude Desktopとの連携も可能
  • AIOS統合: aigptと組み合わせてAIによるOS管理を実現

Installation

# Rust環境が必要
cargo build --release

# バイナリをインストール
cargo install --path .

Usage

1. 対話型シェル (Interactive Shell)

# OpenAI互換APIを使用
export OPENAI_API_KEY="your-api-key"
aishell shell

# 別のモデルを指定
aishell shell -m gpt-4o

# gpt-ossなどのOpenAI互換サーバーを使用
export OPENAI_BASE_URL="http://localhost:8080/v1"
aishell shell

使用例:

aishell> List all Rust files in src/
[Executing tool: list]
src/main.rs
src/lib.rs
...

aishell> Create a new file hello.txt with "Hello, World!"
[Executing tool: write]
Successfully wrote to file: hello.txt

aishell> Show me the git status
[Executing tool: bash]
On branch main
...

2. ワンショット実行 (Single Command)

aishell exec "Show me the current directory structure"

3. MCPサーバーモード (Claude Desktop Integration)

aishell server

Claude Desktop設定 (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "aishell": {
      "command": "/path/to/aishell",
      "args": ["server"]
    }
  }
}

Architecture

aishell/
├── src/
│   ├── cli/         # 対話型インターフェイス (REPL)
│   ├── llm/         # LLMプロバイダー (OpenAI互換)
│   ├── shell/       # シェル実行エンジン
│   ├── mcp/         # MCPサーバー実装
│   └── config/      # 設定管理

実行フロー:

User Input → LLM (Function Calling) → Tool Execution → Shell → Result → LLM → User

Available Tools

aishellは以下のツールをLLMに提供します:

  • bash: シェルコマンドを実行
  • read: ファイルを読み込み
  • write: ファイルに書き込み
  • list: ファイル一覧を取得

Environment Variables

変数 説明 デフォルト
OPENAI_API_KEY OpenAI APIキー (必須)
OPENAI_BASE_URL APIベースURL https://api.openai.com/v1
OPENAI_MODEL 使用するモデル gpt-4

Integration with AIOS

aishellはaigptと組み合わせることで、AIOSAI Operating Systemの一部として機能します:

  • aigpt: AIメモリー、パーソナリティ分析
  • aishell: シェル操作、自動化
  • AIOS: これらを統合したAIによるOS管理システム

Comparison with Claude Code

機能 Claude Code aishell
LLM Claude専用 マルチプロバイダー
実行環境 Electron Desktop CLI/MCP
カスタマイズ 限定的 完全制御
ローカルLLM 非対応 対応可能
AIOS統合 不可 ネイティブ対応

Development

# 開発ビルド
cargo build

# テスト実行
cargo test

# ログ有効化
RUST_LOG=debug aishell shell

Technical Stack

  • Language: Rust 2021
  • CLI: clap 4.5
  • Async Runtime: tokio 1.40
  • HTTP Client: reqwest 0.12
  • Shell Execution: duct 0.13
  • REPL: rustyline 14.0

Roadmap

  • Anthropic Claude API対応
  • Ollama対応ローカルLLM
  • より高度なツールセットgit統合、ファイル検索等
  • 設定ファイルサポート
  • セッション履歴の永続化
  • プラグインシステム

License

MIT License

Author

syui

  • aigpt - AI Memory System
Description
No description provided
Readme 163 KiB
Languages
Rust 100%