A practical template repository for developing faster with AI across:
- UI test automation (Robot Framework, Playwright)
- UI and backend product development
- CI/CD pipelines and operational debugging
This template is opinionated around one goal: reduce time-to-green by improving context quality and execution discipline.
- Fill command placeholders in
docs/runbook.mdandAGENTS.md. - Add repo architecture and conventions in
docs/architecture.mdanddocs/conventions.md. - Run work with prompt templates from
prompts/. - Use
scripts/context-pack.ps1before medium/large tasks. - Use
scripts/validate.ps1after every patch. - Track outcomes in
eval/metrics-template.csv.
- Intent: define task and success criteria.
- Retrieve: gather the right files/symbols and cite
file:line. - Patch: implement smallest correct change.
- Verify: run lint, typecheck, unit/integration/e2e checks.
- Remember: update
docs/ai-memory.mdwith new durable facts.
AGENTS.md: required agent operating protocol.docs/: architecture, standards, runbooks, memory, patterns.prompts/: reusable task prompts for coding and automation.scripts/: context gathering and validation helpers.eval/: lightweight evaluation set and metrics tracking..github/: issue templates, PR template, and CI workflow starter.mcp/: MCP integration templates and notes..cursor/: Cursor project config (rules, MCP wiring, integration notes)..cursorignore: Cursor context exclusion list..cursorindexingignore: Cursor indexing exclusion list.
Use this mental model so nothing is duplicated or misplaced:
- Policy lives in
AGENTS.mdanddocs/. - Cursor routes policy by scope using
.cursor/rules/*.mdc. - Tool execution lives in
scripts/. - MCP guidance remains in
mcp/, while Cursor's active project config lives in.cursor/mcp.json. - Ignore behavior is split:
.cursorignorefor context/reference exclusion.cursorindexingignorefor indexing exclusion only
- Initialize git and push to GitHub.
- In GitHub repo settings, enable Template repository.
- Keep docs current; stale context reduces AI quality quickly.
One task per thread. When a thread gets long, checkpoint with:
- Goal
- Decisions
- Constraints
- Open risks
- Next steps
Start a fresh thread from that checkpoint.