GPT-AGI/Clawd-Code

Claude-Code-Python: Reconstructing Claude Code in Python

📚 Clawd-Codeとは?

Clawd-Codeは、AnthropicのClaude CodeエージェントのPythonによる再実装です。オリジナルのClaude CodeはTypeScriptで記述されていましたが、本プロジェクトでは同じアーキテクチャを慣用的なPython (3.10+) に移植し、型ヒント、テスト、およびすぐに実行可能なコマンドラインインターフェースを追加しました。

単なるコードのコピーではなく、機能が充実したCLI REPLを提供しており、以下のことが可能です:

  • LLMの応答をトークン単位でストリーミングする
  • ループ内でツール(ファイル読み書き、Web取得、bashなど)を呼び出す
  • 使用可能なツールを制限できるMarkdown駆動の「スキル」(スラッシュコマンド)で拡張する

目標は、開発者に対して、サポートされている任意のLLMプロバイダーとローカルで連携できる、本番環境対応でハック可能なClaudeスタイルのコーディングアシスタントを提供することです。


✨ 主な機能(READMEより)

機能 説明
ストリーミングエージェント体験 リアルタイムのトークンストリーミング、/stream切り替え、/render-lastによる前回の回答のMarkdown再レンダリング。
プログラム可能なスキルランタイム スキルは SKILL.md ファイル(Markdownフロントマター)で定義されます。引数、許可されたツール、説明を宣言できます。
マルチプロバイダーサポート Anthropic Claude、OpenAI GPT、Zhipu GLMをすぐに使用可能。プロバイダーの追加も容易です。
インタラクティブREPL 履歴、タブ補完、複数行モード、セッションの保存/読み込み、組み込みコマンド (/help, /save, /load など) を備えたリッチなターミナルUI。
完全なCLI clawdでREPL起動、clawd loginでAPIキー設定、clawd configで設定表示、clawd --versionでバージョン表示。
ツールシステム 30以上の組み込みツール(ファイル操作、Bash、Web取得/検索、タスク管理、エージェントレベルのツール、設定など)。検証とサンドボックス化済み。
セッションの永続化 セッションをローカルに保存し、後で再読み込み可能。
テストとドキュメント スキル、プロバイダー、REPL、ツール、コンテキストをカバーするコアテストスイート。10以上のMarkdownドキュメントと変更履歴。

🚀 始め方

# Clone the repo
git clone https://github.com/GPT-AGI/Clawd-Code.git
cd Clawd-Code

# Create a virtual environment (uv is recommended)
uv venv --python 3.11
source .venv/bin/activate

# Install dependencies
uv pip install -r requirements.txt

LLMプロバイダーの設定

python -m src.cli login   # interactive wizard

ウィザードに従ってプロバイダー(Anthropic、OpenAI、またはGLM)を選択し、APIキー、オプションのベースURL、デフォルトモデルを入力します。設定は ~/.clawd/config.json に保存されます。

エージェントの実行

python -m src.cli          # start the REPL
python -m src.cli --help   # show CLI options

自然言語を入力したり、/stream onを使用してライブ出力を有効にしたり、スキルを呼び出したりできます(例:>>> /explain-code qsort.py)。


🛠️ スキルによる拡張

  1. プロジェクト内(または ~/.clawd)にディレクトリを作成します:
    .clawd/skills/explain-code/SKILL.md
    
  2. Markdownフロントマターブロックを記述します:
    ---
    description: Explain code with analogies and diagrams
    allowed-tools:
      - Read
      - Grep
      - Glob
    arguments: [path]
    ---
    
    Explain the code in $path. Start with an analogy, then draw a diagram.
    
  3. REPLから /explain-code <file> で呼び出します。

スキルシステムはリストされた allowed-tools を強制し、$path を引数に置き換え、同じサンドボックス化されたツールループ内で実行します。


📦 プロジェクト構成

Clawd-Code/
├─ src/
│  ├─ cli.py            # entry point
│  ├─ providers/        # Anthropic, OpenAI, GLM adapters
│  ├─ repl/             # interactive REPL implementation
│  ├─ skills/           # loader for SKILL.md files
│  └─ tool_system/      # registry, validation, loop logic
├─ tests/                # unit & integration tests
├─ .clawd/skills/        # example project-level skills
└─ FEATURE_LIST.md      # detailed feature status

🤝 コントリビューション

本リポジトリは一般的なPythonオープンソースワークフローに従います:

pip install -e .[dev]          # install in editable mode with dev extras
pytest -v tests/                # run the test suite

ガイドラインは CONTRIBUTING.md にあります。プルリクエストを歓迎します。


⚡ パフォーマンスとセキュリティ

  • 起動 < 1秒、メモリ < 50 MiB。
  • APIキーはユーザー設定にbase64エンコードで保存され、.envファイルは無視されます。
  • 機密データはリポジトリにコミットされません。

📄 ライセンス

MIT – LICENSE を参照してください。


Clawd-Codeは、ローカルで動作し、完全にスクリプト化可能で、独自のMarkdownベースのスキルで拡張できるClaudeスタイルのコーディングアシスタントを、純粋なPythonで提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト