Files
werkregie/AGENTS.md
claude-code 3989dbf0f0
werkator build succeeded after 00:46
werkator/deploy build succeeded after 00:25
The build tests the JavaScript of the page (#83)
Co-authored-by: claude-code <claude-code@javagil.de>
2026-10-14 21:33:54 +02:00

45 lines
2.7 KiB
Markdown

# 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](dashboard/README.md).
[doc/system-architektur.md](doc/system-architektur.md) describes the system,
[doc/werkregie.werkbaum](doc/werkregie.werkbaum) holds the plan.
## Build and Test
Run from `dashboard/`:
```sh
./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](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](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/`, not `docs/`: `doc/agentic-workflow.md`, `doc/prs/`, `doc/werkregie.werkbaum`.
- werkregie holds the master copy of the shared workflow.
- `dashboard/build.gradle.kts` derives the version from the PR documents, from the base version 0.50.0 on;
`./gradlew changelog` writes their release notes into `build/changelog/CHANGELOG.md`.
For the version, each Gradle run needs the full history and `origin/main`; a shallow clone fails with a hint.
- GitHub `mhoennig/werkregie` is only a mirror of `main`; branches go to Gitea only.
- Werkator deploys each green `main` to mih09 with its build `deploy`; after the merge the agent only checks
that https://werkregie.javagil.de answers with the new version, e.g. by `/api/dashboard`.