CRT-CLI is a CRT-native development-environment manager for building C and C++
applications on Linux, Windows, and macOS. Its intended command name is crt.
It aims to make CRT's Bionic-compatible runtime and staged SDKs easier to use: select an SDK, create a project, add libraries, and build/run/package an application without manually assembling startup objects, sysroots, special compiler flags, or runtime search paths.
This repository is in the design/bootstrap phase. It contains project guidance, designs, and a work queue, but no CLI executable, build system, installer, or published CLI package yet. Commands below illustrate the intended experience; they are not an installation guide or working commands for this repository.
crt sdk install --profile cxx
crt doctor
crt new hello --template cxx
cd hello
crt add zlib
crt build
crt run- Choose an SDK: use the existing CRT stage appropriate for C, C++, graphics, media, UI, or Web applications rather than always downloading WebKit.
- Use additional libraries: fetch reviewed upstream sources and build them locally through CRT port recipes; keep exact SDK and dependency locks.
- Develop applications: use one workflow for project creation, build, run, test, and packaging, with structured diagnostics for CI and automation.
- Keep environments separate: manage CRT host tools and runtime dependencies without silently replacing tools or changing the system PATH.
The CLI itself is intended to use CRT, with a bootstrap package containing its minimal runtime so it can run before a development SDK is installed. CRT Studio is a later, separate native IDE built on this CLI workflow.
Initial native validation targets are Windows/x64, Linux/x86_64, and macOS/arm64. These are design targets, not a completed support matrix. External LLVM and native build tools remain prerequisites; the CRT SDK owns the target compilation/linking contract. Windows build/source-stage hosts require Developer Mode and real filesystem symlinks. The CLI must diagnose missing prerequisites rather than change security settings automatically.
- Documentation: design, development guidance, and acceptance.
- Development guide: the current bootstrap process and what is not implemented yet.
- TODO: active work and ordered plans.
- HISTORY: dated completed work.
- AGENTS.md: repository development rules.
Design and bootstrap contributions should preserve the SDK-only consumer boundary and avoid making the CRT runtime depend on CLI sources.