Flow
Flow is the harness for an AdonisJS app. It gives each agent one way to design each part of the app. The factory keeps all of it, and replaces only the hosted reviewer.
| Part | What it does | Where it is |
|---|---|---|
| Docs | The docs of each package in the app, for agents | .flow/docs/ |
| Skills | Design skills, such as flow-schema-design and flow-access-control | .claude/skills/flow-* |
| Lint rules | Rules that catch a pattern which the skills forbid | The ESLint config |
| Lenses | What the review searches for | .flow/lenses/ |
| Review settings | Which lens reads which files | .flow/review.yml |
#What is in git
flow.lock and .flow/review.yml are in git. The docs, the lenses and the Flow skills are not, because npx flow install writes them again.
npx flow install --ciThis command reads flow.lock, and gives a new clone, a build and CI the same files. The other skills in .claude/skills/ are in git.
#Required skills
npx flow install writes a table of required skills in CLAUDE.md. An agent runs a skill in that table before it does the work. build reads CLAUDE.md of each repository of the task.
#The tarball
vendor/ of each app holds the Flow tarball, so npm ci needs no registry token, on your computer or on CodeBuild. To upgrade an app, add the new tarball, change package.json, and run npx flow install.
factory-kit has one tarball, in its own vendor/. New products get the newest file. Existing products keep the one that they have.