Arbor
Arbor is an open-source HR information system for Singapore small and medium enterprises, built as a reference implementation of PACT and the Kailash agent stack applied to a regulated domain. What it is NOT: a chatbot bolted onto a payroll database. The deterministic HR engine and the AI advisory engine are separate systems divided by the governance line, and every advisory response carries an EATP trust attestation back to the knowledge base and agent versions that produced it.
It exists to answer a concrete question: can the governance line hold inside a real product that handles money, statutory filings, and employment law? Arbor is the working answer for human resources.
Two engines, one governance line
Section titled “Two engines, one governance line”Arbor separates what must be certain from what benefits from judgment.
Above the line (deterministic, zero LLM). Payroll runs gross-to-net with CPF, SDL, FWL, and Self-Help Group contributions, then generates statutory files (CPF e-Submit, IR8A, IR21). Leave covers thirteen leave types with gender-aware entitlement, service-year progression, pro-ration, and carry-forward. Claims, attendance, shifts, and the full employee lifecycle (onboarding, probation, confirmation, termination, work-pass tracking) run as workflow logic with the same inputs always producing the same outputs.
Below the line (autonomous, attested). An AI compliance advisor answers employment-law questions grounded in Singapore statute with provision-level source citations. It runs a thirteen-step safety chain (query analysis, knowledge retrieval, compliance gate, response synthesis, citation validation) and routes through six domain specialists: Employment Act, CPF, Foreign Manpower, TAFEP, Workplace Safety and Health, and Tax/IRAS. Every answer the advisor returns is signed with an EATP trust record.
How the governance standards show up in the code
Section titled “How the governance standards show up in the code”| Mechanism | Where it appears in Arbor |
|---|---|
| EATP trust lineage | A GenesisRecord anchors each advisory session to the knowledge-base state and agent versions; an AgentAttestation records each specialist’s contribution and logs constraint violations |
| Constraint envelopes | Agent domain restrictions and confidence claims are bounded by envelopes, so an advisor cannot answer outside its cleared domain |
| Delegate (TAOD loop) | The advisory agent reasons through Think, Act, Observe, Decide with a governance gate on every action, over a registry of 200+ HR tools |
| DataFlow models | 95 governed data models back the HR suite, with CRUD and migrations generated rather than hand-written |
| MCP integration layer | 38 connectors across five MCP servers reach government, accounting, banking, communications, and regulatory systems |
Project details
Section titled “Project details”| License | Apache 2.0 |
| Version | 0.4.9 (Alpha) |
| Source | github.com/terrene-foundation/arbor |
| Install | git clone the repository, then pip install -e ".[dev]" |
| Domain | Singapore SME human resources |
| Python modules | 214 |
| API routers | 31 |
| DataFlow models | 95 |
| Test files | 104 |
| Built on | kailash, kailash-nexus, kailash-dataflow, kailash-kaizen, kailash-pact, kailash-mcp, kaizen-agents |
Arbor is Alpha. The maturity classifier reflects the project’s release status, not the depth of the implementation: the HR engine and advisory chain are complete and tested. Treat it as a reference you can read, run, and learn from, not as a production deployment for your own payroll.
Why it matters for the architecture
Section titled “Why it matters for the architecture”Arbor is proof that the governance line is not a diagram concept. Payroll and statutory filing live above the line, where determinism is mandatory and a wrong CPF calculation is a legal failure. The advisor lives below the line, where natural-language reasoning is the point and the audit trail records what was said and on what authority. The two never blur. That is the same separation the Constrained Organization describes, expressed in a product an SME could actually use.
For the financial-services counterpart of this pattern, see Astra.