File size: 2,466 Bytes
fcbc248
 
 
 
 
 
 
 
 
 
 
3849a48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
---
title: Repository Reader
emoji: 🔥
colorFrom: pink
colorTo: gray
sdk: streamlit
sdk_version: 1.39.0
app_file: app.py
pinned: false
---

# get_repository_info_by_llm

プログラミング関連ファイルを再帰的にスキャンし、内容を単一のテキストファイルにエクスポートするツールです。GitHubリポジトリまたはローカルディレクトリに対応しています。

## 機能

- GitHubリポジトリのクローンとスキャン
- ローカルディレクトリのスキャン
- 再帰的なファイル検索
- 主要なプログラミング言語ファイルの検出
- UTF-8/CP932エンコーディングの自動検出
- 結果のテキストファイル出力

## 必要条件

- Python 3.7以上
- Git(GitHubリポジトリをスキャンする場合)

## インストール

1. リポジトリをクローン
```bash
git clone [このリポジトリのURL]
cd directory-scanner
```

2. 必要なディレクトリを作成
```bash
mkdir output
```

## 使用方法

### コマンドライン
```bash
# GitHubリポジトリをスキャン
python main.py https://github.com/username/repository.git

# ローカルディレクトリをスキャン
python main.py /path/to/directory
```

### シェルスクリプトを使用
```bash
# スクリプトに実行権限を付与
chmod +x scan.sh

# GitHubリポジトリをスキャン
./scan.sh https://github.com/username/repository.git

# ローカルディレクトリをスキャン
./scan.sh /path/to/directory
```

## 出力形式

スキャン結果は `output` ディレクトリに保存され、以下の形式で出力されます:

```
#ファイルパス
path/to/file.py
------------
ファイルの内容
```

## スキャン対象

### 対象となるファイル拡張子
- Python (.py)
- JavaScript (.js)
- Java (.java)
- C/C++ (.c, .h, .cpp, .hpp)
- Go (.go)
- Rust (.rs)
- PHP (.php)
- Ruby (.rb)
- TypeScript (.ts)
- その他 (.scala, .kt, .cs, .swift, .m, .sh, .pl, .r)

### 除外されるディレクトリ
- .git
- __pycache__
- node_modules
- venv
- .env
- build
- dist
- target
- bin
- obj

## 注意事項

- GitHubリポジトリをスキャンする場合、一時的にローカルにクローンされます
- スキャン完了後、クローンされたリポジトリは自動的に削除されます
- 大きなファイルや特殊なエンコーディングのファイルは読み取れない場合があります