AGENTS.md and skills
Boundaries and conventions live beside the code. Deeper guidance loads per task.
bunx degit mateoroldos/effect-forge my-appHow we build software changed.
Our repositories need to change too.
Agents can produce code faster than ever and this has come with high hidden costs.
Reviewing loads of agent generated code is mentally exhausting and the knowledge we have about our software is slowly degrading. At the same time, errors can now scale at an unbelievable pace rotting our repos in a few hours.
effect-forge is an obsessively designed and opinionated monorepo template built for improving human <> agent collaboration.
It uses the principles of functional programming and type-driven development to guide agents on writing code that's easy to change and understand over unmaintainable slop.
With end-to-end type-safety and observability built-in combined with fast deterministic checks, errors are difficult to introduce and easy to spot for our robots and us.
It's intended to be used as a starting point for new projects or as an educational resource. It also works really well when given as an example for agents.
Read the post that inspired the project ↗Boundaries and conventions live beside the code. Deeper guidance loads per task.
Schemas shared across every package and application. Expected failures live in function signatures.
Format, lint, types, and tests in seconds. An agent proves its own change first without slowing down.
End-to-end OTEL observability built in. Humans and agents can see what happens instead of guessing.
Code is easy to change and test through Effect's injectable services.
Git worktrees and jj workspaces supported by default.
AGENTS.md conventions every agent reads
skills/effect-forge/ playbooks, loaded per task
apps/
├─ web TanStack Start
└─ api Effect HttpApi
packages/
├─ domain the domain model
├─ core application services and ports
├─ contracts typed HTTP contracts
├─ design-system shared visual vocabulary
├─ database adapter: PostgreSQL
└─ auth-better adapter: authentication
alchemy.run.ts infrastructure as code