./gradlew :argus-cli:fatJar # build CLI JAR
./gradlew :argus-cli:test # run tests
cp argus-cli/build/libs/argus-cli-*-all.jar ~/.argus/argus-cli.jar- Java 21 bytecode. CLI diagnoses JVM 11+.
| If you need to⦠| Read |
|---|---|
| Add a command, bump a version, or commit | docs/contributing.md |
| Understand the SPI / Provider / CommandGroup architecture | docs/architecture.md |
| Find existing CLI commands and their flags | docs/cli-commands.md |
| Tune JVM options / configuration knobs | docs/configuration.md |
| Fix a runtime error | docs/troubleshooting.md |
- Commit
-s, prefixfeat:/fix:/docs:/refactor:/test:/chore:. NoCo-Authored-By: Claude. - i18n strings use printf
%s, never MessageFormat{0}. All 4 locale files must stay in parity. - Version comes from
gradle.propertiesβargusVersion. Read at runtime from JAR manifestImplementation-Version. - Branch + PR by default. Direct master commits only when the user explicitly authorizes it for a scope.
Full rationale and procedures: docs/contributing.md.
(Currently empty. Harness MVP work + the explicit follow-ups the user asked for have all landed. Decisions:)
- Spring Boot Starter diagnostics layer: shipped β
argus.mode=full|diagnostics|off, programmaticDoctorService/GcLogAnalyzerService/GcScoreServicebeans,/actuator/argus-doctor,/actuator/argus-gc, and a scheduled doctor with structured slf4j logging. The framework-agnosticargus-diagnosticsmodule was extracted fromargus-cliso non-Spring JVM apps can embed it too. Seedocs/usage.mdanddocs/kubernetes.mdfor the public surface; tracking issue #216. argus-server REST/WS + frontend Harness panel: dropped. The harness is intended for Claude Code use only, not for in-production infrastructure self-monitoring. Add it back here only if that intent changes.i18n drift backfill: false alarm. All four locale files have 532 keys (parity); the original 15-line discrepancy is just comments and blank lines.Apply forrestchang/andrej-karpathy-skills: done β vendored to.claude/skills/karpathy-guidelines/SKILL.md(MIT, attribution preserved).install.sh: done β--runflaginstall.shandinstall.ps1accept[--run|-Run] <argus-subcommand> [argsβ¦]and exec into argus after install.- JVM-OSS parity roadmap (
.omc/plans/jvm-oss-parity-roadmap.md): all 4 phases shipped β P1 #243 (Prometheus/OpenMetrics + continuous-profiling foundation), P2 #244 (MAT-class heap dominators/leak-suspects + profile query/diff/UI), P3 #245 (OTel GC-pause span correlation + anomaly detection), P4 #246 (argus-instrumentopt-in live instrumentation). The six sub-8 code dimensions were the target. - argus-instrument deferred follow-ups (P4 #246, intentionally not half-built): (1)
argus instrument decompileβ needs a vendored decompiler (CFR/Vineflower), separate dep/licensing call; (2) relocatenet.bytebuddyvia the Shadow plugin so the agent JAR can't clash with a target app that embeds ByteBuddy; (3) publish the agent JAR as a release asset + aninstall.shflag to drop it at~/.argus/lib/argus-instrument.jar(today:./gradlew :argus-instrument:jarthen copy). The module is opt-in/default-OFF; the CLI has zero compile dep on it.