A command-line interface for OSATE. It validates and instantiates AADL models, runs latency, bus-load, and mode reachability analyses, and manages Eclipse/OSATE multi-project workspaces — all without an Eclipse workbench.
Language operations talk over loopback TCP to a long-lived workspace server
that embeds the AADL language server in-process, so repeated commands against
the same workspace reuse a warm model index. Local project commands manage
.project files directly and contact no server.
- OSATE-CLI.md — the command reference and behavioral specification: every subcommand, the client/server protocol, launch modes, session and marker files, timeouts, and exit-status rules. Start here.
- AGENTS.md — development guide: module layout, build and test commands, runtime invariants, and the change checklist.
- packaging/README.md — release archives,
.deb/.rpmpackages, Homebrew formula, and how to publish a GitHub release. - osate-cli/manual-test.md — the manual test plan for behavior that automated tests cannot cover.
osate-cli/— the short-lived CLI client, packaged as a shaded JAR.osate-workspace-server/— the long-lived workspace process; deliberately not shaded, because Xtext resource loading requires on-diskfile:URLs.dist/— the assembled runnable layout: launcher, client JAR, workspace-server JAR, and language-server plug-ins.packaging/— release archives, native packages, and Homebrew metadata.
The language-server p2 repository must exist first. From this directory:
mvn -f ../aadl-language-server/pom.xml verify \
-Dtycho.localArtifacts=ignore -DskipTests
mvn verifyThe runnable CLI is then at dist/target/dist/bin/osate-cli. Invoke that
launcher rather than a module-local one.
For the full repository build, see the repository README.
osate-cli is licensed under a BSD (SEI)-style license; see
LICENSE.txt and COPYRIGHT. Other directories in this
repository are licensed differently — see ../LICENSE.md.