How we built a context tree for our agent to resolve support tasks
How we use a tree of llms.txt files (gcontext) to let an AI agent resolve real support tasks at MAAT, from manual work to claude.md to a steerable context tree.
So in the startup MAAT where I work, a martial arts software for gyms, we handle the memberships of students to make life easier for gym owners. For that we use a payment system and a database.
As the number of gyms has grown, we get more and more support tasks. These can be many: owners have problems with subscriptions, they need to make updates to memberships, some data has to be exported... Over time we have been trying to figure out how to use AI in this process, and this is where we currently are.
The evolution of solving support tasks
1. Manual work.
First we were doing most things manually, updating the DB by hand, same with Stripe. Tedious work.
2. AI Agent + claude.md
After that we thought that with Claude Code we could use a claude.md to show the agent how our product was built in the backend, which relationships were important, how the data from Stripe was reflected in the DB...
This was a big improvement over the first method, as we were much faster at knowing what the errors were and solving them. Sometimes still by hand though, as we did not trust the AI to do real changes in PROD.
3. AI Agent + gcontext
We saw that the AI could do the process. Sometimes we had to steer it, but in the end it understood and got it right, so we decided to find a way to keep the investigations we did in every conversation.
The way to achieve this is by using a kind of "tree of llms.txt". An llms.txt file can help us reference what information is available in a website, docs... But we can also use this internally to organize the different information we need in our day to day.
How does it work?
We start the agent from a folder that has access to three folders, an llms.txt and some other steering files.
.
├── llms.txt # References each of the folders at this same level
├── stripe/
├── firestore/
└── support/
What is in each of the folders?
stripe/
├── llms.txt # References each file/folder at this same level
├── info.md # how the structure of our Stripe account looks
└── .env
firestore/
├── llms.txt # References each file/folder at this same level
├── info.md # how the schema looks
└── .env
support/
├── llms.txt # References each file/folder at this same level
├── info.md # instructions on how to resolve support tasks
├── runbooks/ # one file per service task, with its own llms.txt
│ ├── llms.txt # indexes every runbook so the agent picks the right one
│ ├── cancel-subscription.md
│ ├── export-gym-data.md
│ └── fix-membership-mismatch.md
└── logs/ # one file per day, every task the agent resolved
├── 2026-06-12.md
└── 2026-06-13.md
With this structure we can steer the agent much better and create new runbooks every time a new support task comes in.
Do you have a similar problem where you work? How do you approach it?