Skip to content

Commit a885c6e

Browse files
authored
Merge pull request #5 from fjmrytfjsn/fix/openchamber-project-subdirs-redo
OpenChamber初期プロジェクトを配下フォルダ単位で追加
2 parents 802457a + 4242de0 commit a885c6e

2 files changed

Lines changed: 45 additions & 2 deletions

File tree

.devcontainer/startup.sh

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,26 @@ fi
157157
echo ""
158158
echo "🚀 基盤サービス起動中..."
159159

160+
# 🔒 マウントされたディレクトリの権限修正
161+
echo "🔒 マウントディレクトリの権限修正中..."
162+
sudo chown -R vscode:vscode /home/vscode/.local 2>/dev/null || true
163+
sudo chown -R vscode:vscode /home/vscode/.opencode 2>/dev/null || true
164+
sudo chown -R vscode:vscode /home/vscode/.claude 2>/dev/null || true
165+
mkdir -p /home/vscode/.local/state 2>/dev/null || true
166+
167+
# OpenCode ECC設定の自動修正
168+
echo "🔧 OpenCode ECC設定を修正中..."
169+
if [ -f "/workspace/scripts/fix-ecc-agents.py" ] && [ -d "/home/vscode/.opencode/agents" ]; then
170+
if python3 /workspace/scripts/fix-ecc-agents.py /home/vscode/.opencode/agents > /tmp/ecc-fix.log 2>&1; then
171+
fixed_count=$(grep -c "✅ Fixed:" /tmp/ecc-fix.log || echo "0")
172+
echo "✅ OpenCode ECC設定修正完了 (${fixed_count}ファイル)"
173+
else
174+
echo "⚠️ OpenCode ECC設定修正に失敗 (ログ: /tmp/ecc-fix.log)"
175+
fi
176+
else
177+
echo "⚠️ OpenCode ECC設定修正スクリプトまたはagentsディレクトリが見つかりません"
178+
fi
179+
160180
OPENCODE_LOG=/tmp/opencode-serve.log
161181
OPENCHAMBER_LOG=/tmp/openchamber.log
162182

@@ -192,7 +212,29 @@ set_default_project_directory() {
192212
echo "⚠️ OpenChamber の初期プロジェクトパス設定に失敗しました(起動継続)"
193213
}
194214

195-
set_default_project_directory "$OPENCHAMBER_DEFAULT_PROJECT_DIR"
215+
set_default_project_directories() {
216+
local root_dir="$1"
217+
[ -d "$root_dir" ] || return 0
218+
219+
local children=()
220+
local child
221+
for child in "$root_dir"/*; do
222+
[ -d "$child" ] || continue
223+
children+=("$child")
224+
done
225+
226+
if [ "${#children[@]}" -eq 0 ]; then
227+
set_default_project_directory "$root_dir"
228+
return 0
229+
fi
230+
231+
local project_dir
232+
for project_dir in "${children[@]}"; do
233+
set_default_project_directory "$project_dir"
234+
done
235+
}
236+
237+
set_default_project_directories "$OPENCHAMBER_DEFAULT_PROJECT_DIR"
196238

197239
check_service() {
198240
local port=$1

.env.template

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ OPENCODE_PORT=4095
2222
OPENCHAMBER_HOST=0.0.0.0
2323
OPENCHAMBER_PORT=3000
2424

25-
# 📁 OpenChamber の初期プロジェクトディレクトリ(オプション)
25+
# 📁 OpenChamber の初期プロジェクトルート(オプション)
26+
# 指定ディレクトリ配下のフォルダを初期プロジェクトとして追加
2627
# 例: /workspace/projects または /workspace
2728
OPENCHAMBER_DEFAULT_PROJECT_DIR=/workspace/projects
2829

0 commit comments

Comments
 (0)