2.7 KiB
2.7 KiB
werkregie Agent Instructions
Project
werkregie orchestrates software development with AI agents.
So far it is the dashboard in dashboard/, a Kotlin web app that shows what the coding agents
and the build pipeline are doing right now; see dashboard/README.md.
doc/system-architektur.md describes the system,
doc/werkregie.werkbaum holds the plan.
Build and Test
Run from dashboard/:
./gradlew build # compile and test; needs Node for jsTest
./gradlew jsTest # the JavaScript of the page with node --test, TZ=Europe/Berlin (ADR 0002); part of build
./gradlew installDist # build/install/werkregie-dashboard/bin/werkregie-dashboard → http://localhost:4747/
./gradlew checkLicense # licenses against config/allowed-licenses.json; part of build
./gradlew dependencyCheckUpdate # loads the NVD data; Werkator's nightly build "vulnerability-data"
./gradlew dependencyCheckAnalyze # all known vulnerabilities from CVSS 4, from that data; main each night
./gradlew checkNewVulnerabilities -PvulnerabilityBaseline=origin/main # only those this branch brings; each PR
./gradlew dependencies --configuration runtimeClasspath --write-locks # gradle.lockfile, after a dependency change
./gradlew pitestPartial mutationCrapCheck # mutation tests of the classes changed against origin/main, limit 15; each build
./gradlew pitestFull mutationCrapCodeCharta mutationCrapCheck # all classes, ratchet limit; Werkator's nightly build "mutation"
The levels of these checks come from doc/risk-analysis.md, criticality high.
OWASP Dependency-Check reads the NVD API key from NVD_API_KEY or the Gradle property OWASP_API_KEY.
Workflow
Follow doc/agentic-workflow.md, the workflow of all Werk repositories: roles, steps of a PR, review rounds, PR documents, the plan, versions and the writing style. In addition, for werkregie:
- Its documents live in
doc/, notdocs/:doc/agentic-workflow.md,doc/prs/,doc/werkregie.werkbaum. - werkregie holds the master copy of the shared workflow.
dashboard/build.gradle.ktsderives the version from the PR documents, from the base version 0.50.0 on;./gradlew changelogwrites their release notes intobuild/changelog/CHANGELOG.md. For the version, each Gradle run needs the full history andorigin/main; a shallow clone fails with a hint.- GitHub
mhoennig/werkregieis only a mirror ofmain; branches go to Gitea only. - Werkator deploys each green
mainto mih09 with its builddeploy; after the merge the agent only checks that https://werkregie.javagil.de answers with the new version, e.g. by/api/dashboard.