AI-assisted working method
I use code agents and local models for diagnosis, scripts, and documentation in infrastructure work. No change is applied until I have reviewed the diff and validated it.
What I use it for
- Diagnosis: reading logs, metrics, configurations, and runbooks to reach a hypothesis I can verify.
- Scripts and tools: CLIs, parsers, API integrations, and operations scripts.
- Documentation: infrastructure procedures and runbooks.
- Security: classifying context and explaining signals. An LLM is never the sole blocking authority.
How I work
Rules
Each repo has written rules: what can be touched, which data must not leave, and how to validate.
Criteria
Before editing, I write down the goal and the checks that have to pass.
Change
One agent makes the change within a limited scope. If the context is sensitive, I use a local model.
Review
A different agent reviews the diff against those criteria. Then I review it and decide.
An example: this site
I build this portfolio with code agents, using this same method. In the latest code cleanup, one agent wrote the change and another reviewed it in five passes.
The review found four errors in the script that checks the site before publishing. One of them: it accepted the link between the Spanish and English versions of a page even when the other version did not link back. Each fix was tested with a planted failure.
I discarded a fifth finding: it asked the check to accept internal links to redirected pages, and it is better for the check to keep flagging them.
Other projects
- CentinelaA local model on llama.cpp classifies context inside the threat intel pipeline, before alerting or blocking.
- Infrastructure runbooksProcedures for local models with Open WebUI, and Elastic and Proxmox log analysis with a local model.
- Dashboards and CLIsPython and JavaScript tools with APIs, caching, and reports, reviewed with code agents.
Controls
- Never publish secrets, credentials, or raw production data.
- Use a local LLM when operational context must not leave.
- Work with scope limited to a repo, file, or task.
- Validate with lint, build, tests, or a reproducible manual check.
- Review the Git diff before accepting changes.
- Document decisions, evidence, and rollback when applicable.
Principle: AI proposes, the operator validates.