# ╔══════════════════════════════════════════════════════════════════════╗ # ║ Knowledge Base - Justfile ║ # ║ Modular workspace orchestration ║ # ║ Features: CLI, MCP, Nickel, NuShell Scripts ║ # ╚══════════════════════════════════════════════════════════════════════╝ # Import feature-specific modules mod build "justfiles/build.just" # Build recipes (kogral-core, kogral-cli, kogral-mcp) mod test "justfiles/test.just" # Test suite (unit, integration, docs) mod dev "justfiles/dev.just" # Development tools (fmt, lint, watch, docs) mod ci "justfiles/ci.just" # CI/CD pipeline (validate, test, build) mod nickel "justfiles/nickel.just" # Nickel integration (schema validation, export) mod docs "justfiles/docs.just" # Documentation (mdBook build, serve) mod scripts "justfiles/scripts.just" # NuShell scripts management # === ORCHESTRATION RECIPES === # Default: show available commands default: @just --list # Full development workflow [doc("Run check + fmt + lint + test")] check-all: @just dev::fmt-check @just dev::lint-all @just test::all # Full CI workflow (format + lint + test + build all variants) [doc("Complete CI pipeline: format + lint + test + build")] ci-full: @just ci::check @just ci::test-all @just build::all # Quick start development environment [doc("Quick dev setup: build default + start watching")] dev-start: @just dev::build @just dev::watch # Build documentation and serve locally [doc("Build and serve mdBook documentation")] docs-serve: @just docs::serve # Validate Nickel schemas [doc("Validate all Nickel configuration schemas")] validate-schemas: @just nickel::validate-all # === MODULAR HELP === # Show help by module: just help build, just help test, etc [doc("Show help for a specific module")] help MODULE="": @if [ -z "{{ MODULE }}" ]; then \ echo "KNOWLEDGE BASE - MODULAR JUSTFILE HELP"; \ echo ""; \ echo "Available modules:"; \ echo " just help build Build commands"; \ echo " just help test Test commands"; \ echo " just help dev Development utilities"; \ echo " just help ci CI/CD pipeline"; \ echo " just help nickel Nickel schema tools"; \ echo " just help docs Documentation tools"; \ echo " just help scripts NuShell scripts"; \ echo ""; \ echo "Orchestration:"; \ echo " just check-all Format check + lint + test"; \ echo " just ci-full Full CI pipeline"; \ echo " just dev-start Quick dev setup"; \ echo " just docs-serve Build and serve docs"; \ echo " just validate-schemas Validate Nickel schemas"; \ echo ""; \ echo "Use: just help for details"; \ elif [ "{{ MODULE }}" = "build" ]; then \ just build::help; \ elif [ "{{ MODULE }}" = "test" ]; then \ just test::help; \ elif [ "{{ MODULE }}" = "dev" ]; then \ just dev::help; \ elif [ "{{ MODULE }}" = "ci" ]; then \ just ci::help; \ elif [ "{{ MODULE }}" = "nickel" ]; then \ just nickel::help; \ elif [ "{{ MODULE }}" = "docs" ]; then \ just docs::help; \ elif [ "{{ MODULE }}" = "scripts" ]; then \ just scripts::help; \ else \ echo "Unknown module: {{ MODULE }}"; \ echo "Available: build, test, dev, ci, nickel, docs, scripts"; \ fi