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)。
🛠️ スキルによる拡張
- プロジェクト内(または
~/.clawd)にディレクトリを作成します:.clawd/skills/explain-code/SKILL.md - 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. - 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で提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト