npm package: @galactic993/sirius
Description: Claude Code SDKを用いた全自動開発CLIツール
Author: Sirius Development Team
Latest version: 1.0.0

# Sirius - 全自動開発CLIツール

Claude Code SDKを用いた全自動開発CLIツール

## 概要

Siriusは、Claude Code SDKを活用してソフトウェア開発プロセスを完全自動化するCLIツールです。READMEファイルを解析し、次に実装すべき機能を特定して、テスト仕様書の作成からコード実装、品質チェック、Git操作まで全てを自動で実行します。

## 主な機能

### 10ステップ自動開発サイクル

1. **機能分析** - READMEから次の実装機能を特定
2. **テスト仕様書作成** - 機能仕様からテスト計画を生成
3. **テストコード実装** - 自動的にテストコードを生成
4. **コード実装** - テストを満たす実装コードを生成
5. **テスト実行・修正** - テストを実行し、失敗時は自動修正
6. **E2Eテスト** - エンドツーエンドテストの実行
7. **品質チェック** - Lint・型チェックの実行
8. **ドキュメント更新** - 変更内容に基づくドキュメント更新
9. **PR作成・マージ** - Gitコミットとプルリクエスト作成
10. **次サイクル準備** - 次の開発サイクルの準備

### 高度な機能

- **状態管理**: 実行状況の永続化と中断・再開機能
- **エラーハンドリング**: 自動リトライと回復機能
- **設定管理**: 環境変数とファイルベースの設定
- **ログ機能**: 詳細なログ出力と実行統計
- **Git統合**: 自動コミット・プッシュ・PR作成

## インストール

```bash
# 依存関係のインストール
npm install

# プロジェクトのビルド
npm run build

# グローバルインストール（オプション）
npm link
```

## 初期設定

### 1. 環境変数の設定

```bash
cp .env.example .env
```

`.env`ファイルを編集して、必要な環境変数を設定：

```env
# Anthropic API Configuration (for Claude Code SDK)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
CLAUDE_MODEL=claude-3-5-sonnet-20241022

# プロジェクト設定
NODE_ENV=development
LOG_LEVEL=info

# Git設定
GIT_AUTO_COMMIT=true
GIT_AUTO_PUSH=false
GIT_DEFAULT_BRANCH=main
```

### 2. Siriusの初期化

プロジェクトルートでSiriusを初期化：

```bash
sirius init
```

## 使用方法

### 基本的な使用

```bash
# 自動開発サイクルの開始
sirius start

# 現在の状況確認
sirius status

# 実行の停止
sirius stop
```

### 高度な使用

```bash
# 特定のステップから開始
sirius start --step 5

# 中断から再開
sirius start --resume

# ドライラン（実際の変更なし）
sirius start --dry-run

# 詳細なステータス表示
sirius status --detailed

# 設定の確認
sirius config --show

# 設定の検証
sirius config --validate
```

## 設定

### プロジェクト設定

`.sirius/config.json`でプロジェクト固有の設定を管理：

```json
{
  "project": {
    "name": "my-project",
    "language": "typescript",
    "packageManager": "npm",
    "testFramework": "jest"
  },
  "claude": {
    "model": "claude-3-5-sonnet-20241022",
    "timeout": 60,
    "maxRetries": 3
  },
  "git": {
    "autoCommit": true,
    "autoPush": false,
    "commitPrefix": "[SIRIUS]"
  }
}
```

### 実行設定

```json
{
  "execution": {
    "stepTimeout": 300,
    "maxRetries": 3,
    "dryRun": false
  },
  "logging": {
    "level": "info",
    "fileOutput": true,
    "verbose": false
  }
}
```

## 開発

### ビルド

```bash
npm run build
```

### テスト

```bash
npm test
```

### 開発用実行

```bash
npm run dev -- start
```

### Lint・型チェック

```bash
npm run lint
npm run typecheck
```

## アーキテクチャ

### コアコンポーネント

- **FlowManager**: 10ステップサイクルの管理
- **StateManager**: 実行状態の管理
- **ClaudeIntegration**: Claude API統合
- **GitOperations**: Git操作
- **FileOperations**: ファイル操作
- **ConfigManager**: 設定管理
- **Logger**: ログ管理

### ディレクトリ構造

```
src/
├── cli/           # CLI インターフェース
├── core/          # コア機能
│   ├── flow/      # フロー管理
│   ├── state/     # 状態管理
│   └── integrations/ # 外部連携
├── types/         # 型定義
└── utils/         # ユーティリティ
```

## トラブルシューティング

### よくある問題

1. **Claude API エラー**
   ```bash
   # API キーの確認
   sirius config --validate
   ```

2. **Git操作エラー**
   ```bash
   # Git設定の確認
   git config --list
   ```

3. **テスト失敗**
   ```bash
   # ログの確認
   sirius status --logs
   ```

### ログの確認

```bash
# 実行ログの表示
cat .sirius/logs.json | jq '.[] | select(.level == "error")'

# エラーログのみ表示
tail -f .sirius/error.log
```

## ライセンス

MIT License

## 貢献

プルリクエストや課題報告を歓迎します。大きな変更を行う前に、まずissueで議論してください。

## サポート

- [GitHub Issues](https://github.com/your-org/sirius/issues)
- [ドキュメント](./docs/)
- [API仕様](./docs/api-specifications.md)