gaia-framework 1.27.53 → 1.27.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/gaia-install.sh +49 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# GAIA — Generative Agile Intelligence Architecture
|
|
2
2
|
|
|
3
|
-
[]()
|
|
4
4
|
[]()
|
|
5
5
|
[]()
|
|
6
6
|
[]()
|
|
@@ -448,7 +448,7 @@ The single source of truth is `_gaia/_config/global.yaml`:
|
|
|
448
448
|
|
|
449
449
|
```yaml
|
|
450
450
|
framework_name: "GAIA"
|
|
451
|
-
framework_version: "1.27.
|
|
451
|
+
framework_version: "1.27.54"
|
|
452
452
|
user_name: "your-name"
|
|
453
453
|
project_name: "your-project"
|
|
454
454
|
```
|
package/gaia-install.sh
CHANGED
|
@@ -6,7 +6,7 @@ set -euo pipefail
|
|
|
6
6
|
# Installs, updates, validates, and reports on GAIA installations.
|
|
7
7
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
8
8
|
|
|
9
|
-
readonly VERSION="1.27.
|
|
9
|
+
readonly VERSION="1.27.54"
|
|
10
10
|
readonly GITHUB_REPO="https://github.com/jlouage/Gaia-framework.git"
|
|
11
11
|
readonly MANIFEST_REL="_gaia/_config/manifest.yaml"
|
|
12
12
|
|
|
@@ -274,24 +274,66 @@ cmd_init() {
|
|
|
274
274
|
|
|
275
275
|
# Step 5: Customize global.yaml
|
|
276
276
|
step "Configuring global.yaml..."
|
|
277
|
-
local project_name user_name
|
|
277
|
+
local project_name user_name project_path_value
|
|
278
278
|
local dir_name
|
|
279
279
|
dir_name="$(basename "$TARGET")"
|
|
280
280
|
project_name="$(prompt_value "Project name" "$dir_name")"
|
|
281
281
|
user_name="$(prompt_value "User name" "$(whoami)")"
|
|
282
282
|
|
|
283
|
+
# Auto-detect project directory: look for known project markers in subdirectories
|
|
284
|
+
local detected_path="."
|
|
285
|
+
for candidate in "$TARGET"/*/; do
|
|
286
|
+
[[ -d "$candidate" ]] || continue
|
|
287
|
+
local cname
|
|
288
|
+
cname="$(basename "$candidate")"
|
|
289
|
+
# Skip framework and docs directories
|
|
290
|
+
[[ "$cname" == "_gaia" || "$cname" == "docs" || "$cname" == ".claude" || "$cname" == ".git" || "$cname" == "node_modules" ]] && continue
|
|
291
|
+
# Check for known project markers
|
|
292
|
+
if [[ -f "$candidate/package.json" || -f "$candidate/pom.xml" || -f "$candidate/build.gradle" || \
|
|
293
|
+
-f "$candidate/Cargo.toml" || -f "$candidate/go.mod" || -f "$candidate/pyproject.toml" || \
|
|
294
|
+
-f "$candidate/pubspec.yaml" || -f "$candidate/requirements.txt" || -f "$candidate/Makefile" || \
|
|
295
|
+
-f "$candidate/CMakeLists.txt" || -f "$candidate/setup.py" ]]; then
|
|
296
|
+
detected_path="$cname"
|
|
297
|
+
info "Detected project directory: $cname/"
|
|
298
|
+
break
|
|
299
|
+
fi
|
|
300
|
+
done
|
|
301
|
+
|
|
302
|
+
# Also check if root itself has project markers (meaning project is at root)
|
|
303
|
+
if [[ "$detected_path" == "." ]]; then
|
|
304
|
+
if [[ -f "$TARGET/package.json" || -f "$TARGET/pom.xml" || -f "$TARGET/build.gradle" || \
|
|
305
|
+
-f "$TARGET/Cargo.toml" || -f "$TARGET/go.mod" || -f "$TARGET/pyproject.toml" || \
|
|
306
|
+
-f "$TARGET/pubspec.yaml" ]]; then
|
|
307
|
+
info "Project code detected at root directory"
|
|
308
|
+
fi
|
|
309
|
+
fi
|
|
310
|
+
|
|
311
|
+
project_path_value="$(prompt_value "Project path (relative dir for source code, '.' for root)" "$detected_path")"
|
|
312
|
+
|
|
313
|
+
# Create project directory if it doesn't exist and is not "."
|
|
314
|
+
if [[ "$project_path_value" != "." && ! -d "$TARGET/$project_path_value" ]]; then
|
|
315
|
+
if [[ "$OPT_DRY_RUN" == true ]]; then
|
|
316
|
+
detail "[dry-run] Would create project directory: $project_path_value/"
|
|
317
|
+
else
|
|
318
|
+
mkdir -p "$TARGET/$project_path_value"
|
|
319
|
+
detail "Created project directory: $project_path_value/"
|
|
320
|
+
fi
|
|
321
|
+
fi
|
|
322
|
+
|
|
283
323
|
if [[ "$OPT_DRY_RUN" == true ]]; then
|
|
284
|
-
detail "[dry-run] Would set project_name=$project_name, user_name=$user_name"
|
|
324
|
+
detail "[dry-run] Would set project_name=$project_name, user_name=$user_name, project_path=$project_path_value"
|
|
285
325
|
else
|
|
286
326
|
local global_file="$TARGET/_gaia/_config/global.yaml"
|
|
287
327
|
if [[ -f "$global_file" ]]; then
|
|
288
328
|
# Use portable sed for both macOS and Linux
|
|
289
329
|
if [[ "$(uname)" == "Darwin" ]]; then
|
|
290
|
-
sed -i '' "s
|
|
291
|
-
sed -i '' "s
|
|
330
|
+
sed -i '' "s|^project_name:.*|project_name: \"$project_name\"|" "$global_file"
|
|
331
|
+
sed -i '' "s|^user_name:.*|user_name: \"$user_name\"|" "$global_file"
|
|
332
|
+
sed -i '' "s|^project_path:.*|project_path: \"$project_path_value\"|" "$global_file"
|
|
292
333
|
else
|
|
293
|
-
sed -i "s
|
|
294
|
-
sed -i "s
|
|
334
|
+
sed -i "s|^project_name:.*|project_name: \"$project_name\"|" "$global_file"
|
|
335
|
+
sed -i "s|^user_name:.*|user_name: \"$user_name\"|" "$global_file"
|
|
336
|
+
sed -i "s|^project_path:.*|project_path: \"$project_path_value\"|" "$global_file"
|
|
295
337
|
fi
|
|
296
338
|
fi
|
|
297
339
|
fi
|