@flancer32/github-flows-app is a ready-to-run host application for
@teqfw/github-flows.
The application starts the Node.js process, loads local runtime configuration,
registers the application-provided event attribute provider, serves the fixed
GitHub webhook ingress from the runtime package, and exposes a read-only static
operational surface from web/.
It does not define workflow semantics. Event admission, trigger matching,
profile selection, execution context creation, and agent startup semantics are
owned by @teqfw/github-flows.
Read the documentation from the application layer down to the runtime package:
- docs/overview.md - application role, boundaries, and navigation.
- docs/runtime-dependency.md - how this app depends on
@teqfw/github-flows. - docs/workspace.md - runtime workspace,
cfg/, logs, and static inspection links. - docs/trigger-attributes.md - base trigger attributes and app-provided additional attributes.
- docs/setup/README.md - deployment and operating-system setup guides.
For the underlying runtime model, start with the @teqfw/github-flows
overview published with the dependency:
node_modules/@teqfw/github-flows/docs/overview.md
Clone the repository and enter the project directory:
git clone https://github.com/flancer32/github-flows-app.git .Create a .env file from the provided template:
cp .env.example .envSet the local runtime values:
HOST=127.0.0.1
PORT=5020
WORKSPACE_ROOT=./var/work
WEBHOOK_SECRET=replace-with-shared-secretInstall dependencies and start the application:
npm i
npm startThe GitHub webhook endpoint is:
/webhooks/github
Configure GitHub to send webhooks to the public URL that proxies this path to the local application.
The application passes WORKSPACE_ROOT to @teqfw/github-flows.
The important runtime directories are:
WORKSPACE_ROOT/
cfg/ profile fragments and prompts consumed by @teqfw/github-flows
log/ event archives, run logs, and observational indexes
Profile configuration under cfg/ follows the runtime package model, not an
application-specific model. Start with docs/workspace.md
and then read the runtime package profile documentation.
The runtime package provides base trigger attributes such as event,
repository, action, and optional actorLogin.
This application additionally registers one host-side attribute provider. It adds factual attributes derived from the current webhook payload:
- payload size flags:
sizeLess10K,sizeLess100K,sizeLess1M,sizeLess2M - issue label event attributes:
issueLabelAdded,issueLabelRemoved - pull request attributes:
pullRequestLabelAdded,pullRequestLabelRemoved,pullRequestMerged
Use docs/trigger-attributes.md for the exact attribute contract and examples.
Ubuntu deployment guides are grouped under docs/setup/README.md.
The usual order is:
- prepare the runtime user and Node.js environment;
- build the Codex agent Docker image;
- deploy and configure this application;
- configure Apache as the public HTTPS proxy;
- configure GitHub and Codex credentials for isolated agent runs.