c118996746
- SwiftUI macOS app with C++17 code analysis engine (ObjC++ bridge) - Agentic AI loop: LLM plans → tool calls → execution → feedback loop - 15 agent tools: file ops, terminal, git, xcode build, code intel - 7 persistent terminal tools with background session management - Chat sidebar with agent step rendering and auto-apply - NVIDIA NIM API integration (Llama 3.3 70B default) - OpenAI tool_calls format with prompt-based fallback - Code editor with syntax highlighting and multi-tab support - File tree, console view, terminal view - Git integration and workspace management
82 lines
3.2 KiB
Makefile
82 lines
3.2 KiB
Makefile
.PHONY: build release test lint clean setup agent fmt
|
|
|
|
# ─── Default ──────────────────────────────────────────────────────
|
|
build:
|
|
@./scripts/build.sh debug
|
|
|
|
release:
|
|
@./scripts/build.sh release
|
|
|
|
test:
|
|
@./scripts/test.sh
|
|
|
|
lint:
|
|
@./scripts/lint.sh
|
|
|
|
clean:
|
|
@./scripts/clean.sh
|
|
|
|
setup:
|
|
@./scripts/setup.sh
|
|
|
|
# ─── C++ Engine ───────────────────────────────────────────────────
|
|
engine:
|
|
@echo "▸ Compiling C++ engine..."
|
|
@mkdir -p .build
|
|
@clang++ -std=c++17 -O2 -Wall -Wextra -c Core/CodeEngine.cpp -o .build/CodeEngine.o
|
|
@clang++ -std=c++17 -O2 -fobjc-arc -c Core/SwiftEngineWrapper.mm -I Core -o .build/SwiftEngineWrapper.o
|
|
@ar rcs .build/libCxEngine.a .build/CodeEngine.o .build/SwiftEngineWrapper.o
|
|
@echo "✓ libCxEngine.a"
|
|
|
|
# ─── Agent CLI ────────────────────────────────────────────────────
|
|
agent:
|
|
@echo "▸ Building CxSwiftAgent..."
|
|
@cd CxSwiftAgent && swift build -c release
|
|
@echo "✓ CxSwiftAgent built"
|
|
|
|
agent-test:
|
|
@cd CxSwiftAgent && swift test
|
|
|
|
agent-run:
|
|
@CxSwiftAgent/.build/release/cx-swift-agent --port 3001 --workspace .
|
|
|
|
agent-stdio:
|
|
@CxSwiftAgent/.build/release/cx-swift-agent --stdio
|
|
|
|
# ─── Formatting ───────────────────────────────────────────────────
|
|
fmt:
|
|
@echo "▸ Formatting C++ sources..."
|
|
@command -v clang-format >/dev/null 2>&1 && \
|
|
find Core -name '*.cpp' -o -name '*.hpp' -o -name '*.mm' -o -name '*.h' | \
|
|
xargs clang-format -i --style=file || \
|
|
echo "⚠ clang-format not found — install via: brew install clang-format"
|
|
@echo "✓ Done"
|
|
|
|
# ─── Docker ───────────────────────────────────────────────────────
|
|
docker-build:
|
|
@cd CxSwiftAgent && docker build -t cx-swift-agent .
|
|
|
|
docker-run:
|
|
@docker run -p 3001:3001 -v "$$(pwd):/workspace" cx-swift-agent
|
|
|
|
# ─── Help ─────────────────────────────────────────────────────────
|
|
help:
|
|
@echo ""
|
|
@echo "CxIDE Makefile"
|
|
@echo "──────────────────────────────────"
|
|
@echo " make build Build debug (C++ engine + agent)"
|
|
@echo " make release Build release"
|
|
@echo " make test Run all tests"
|
|
@echo " make lint Run linter"
|
|
@echo " make clean Clean build artifacts"
|
|
@echo " make setup First-time setup"
|
|
@echo " make engine Build C++ engine only"
|
|
@echo " make agent Build agent CLI (release)"
|
|
@echo " make agent-test Run agent tests"
|
|
@echo " make agent-run Start agent HTTP server"
|
|
@echo " make agent-stdio Start agent stdio mode"
|
|
@echo " make fmt Format C++/ObjC++ sources"
|
|
@echo " make docker-build Build agent Docker image"
|
|
@echo " make docker-run Run agent in Docker"
|
|
@echo ""
|