Rachel Laurie
AI Implementation Specialist
Real-world builder, not just a trainer. I have architected and deployed production AI systems — from multi-agent pipelines and knowledge graphs to automated data extraction and intelligent triage workflows.
Available for contract roles · Melbourne (remote-first)
Executive Summary
What I actually do
I bridge the gap between AI capability and real business implementation. My work is hands-on — I design, build, and operate multi-agent systems, automated data pipelines, and intelligent workflows, then turn those into reusable modules that can be deployed for clients through my consulting practice, Leoma.
I work across the full stack: from prompt engineering and agent orchestration to database design, serverless Python, and Cloudflare infrastructure. Every system I document as an Architecture Decision Record (ADR) — 87 decisions made, tracked, and reasoned.
What makes this different
Every pipeline listed here runs live. Jobs are scraped daily. Newsletters are auto-extracted. Agents dispatch real work.
87 ADRs covering tool selection, architecture tradeoffs, and rejected alternatives — with explicit reasoning on each.
Claude (Sonnet/Opus/Haiku), Gemini, Ollama local, and Workers AI — routed by task complexity and cost.
Composable Ethics Stack underpins all client work. AI as augmentation, not replacement — especially for nonprofits and marginalised communities.
AI Tools & Stack
| Tool / Service | How I use it | Status |
|---|---|---|
| Core AI / LLM | ||
| Claude Code (Sonnet 4.6 / Haiku 4.5 / Opus 4.6) | Primary development environment. Multi-agent crew (Dotti/Finn/Sage). Custom skills via slash commands. | Production |
| Claude Desktop | Interactive business analyst (Nova). Strategy, specs, MCP tool orchestration. | Daily use |
| Gemini 2.5 Flash | Gmail bill extraction pipeline. Android daily ops (voice, calendar, email). | Production |
| LiteLLM | OpenAI-compatible proxy in Docker stack. Routes model calls, tracks spend, load-balances providers. | Running |
| Ollama (llama3.2) | Local inference for privacy-sensitive tasks, offline use, Zotero reference management. | Running |
| Cloudflare Workers AI | Serverless entity extraction in Pavilion Factory newsletter pipeline. | Production |
| OpenRouter | Multi-model access and evaluation harness. | Available |
| Agent Frameworks & Orchestration | ||
| Pydantic AI 1.25 | All structured LLM output in Modal/Python pipelines. Enforced by ADR-068 — no raw json.loads(). | Standard |
| n8n | Workflow automation. Free Agent Dispatcher, pipeline error handling, job alert emails, newsletter ingestion. | Production |
| Modal | Serverless Python. ETL pipelines, context API (SSE), job scraper, Chrome extension backend. | Production |
| Windmill | Scheduled cron scripts (ADR-076). Complements n8n for scheduled/batch work. | Active |
| Data & Storage | ||
| Neo4j | Knowledge graph. Contacts, decisions, content units, Pavilion Factory output. Agent memory backend. | Core |
| PostgreSQL (local Docker) | Primary operational data. Jobs (598), tools registry, resume modules (233), events, organisations. | Core |
| Neon | Cloud Postgres. Innovation Portfolio (478 modules), tools registry cloud sync. | Active |
| DuckDB / MotherDuck | Analytics and ad-hoc queries over large datasets. Cloud analytics layer. | Active |
| Cloudflare R2 | Object storage for archives, assets, and backups. liflode-archives, liflode-backups, liflode-assets buckets. | Production |
| Automation & Infrastructure | ||
| Cloudflare | DNS, Tunnel (liflode-dispatch), Workers AI, R2, Email Routing, Pages deployments. | Core |
| Traefik | Local reverse proxy. Routes *.localhost to Docker services without port numbers. | Core |
| Docker Compose | Core local stack: Neo4j, Postgres, n8n, LiteLLM, Traefik, Ollama, NeoDash. | Core |
| Infisical (EU) | Secrets management for all services and scripts. Profile-based secret injection. | Core |
| GitHub | Source control. gh CLI for automation. Repos: liflode-scripts, liflode-docs, chrome-extensions. | Active |
| Business / PM | ||
| Fibery | Business PM layer. Initiative → Project → Task. Strategy Lab scoring. Module/Product pipeline. 5 spaces. | Daily use |
| Linear | Tech/crew issue tracking. Crew work routing. API via curl + GraphQL. | Daily use |
| Xero | Accounting (Grow plan). OAuth integration. Bill extraction pipeline target. | Integrating |
| Timely | Passive time tracking via desktop + mobile apps. | Active |
| Capture & Chrome Extensions | ||
| Event Saver (orange) | Captures events from any page → Modal → events_registry. Deduplication + contact linking. | Production |
| Job Saver (green) | Captures job ads from any page → Modal → jobs table in Postgres. | Production |
| Contact Saver (blue) | Captures organisation profiles → Postgres organisations_registry + optional Fibery elevation. | Production |
| Bookmark Classifier | 80,030 raw bookmark URLs in pipeline for classification → registry tables. | In progress |
| Data Visualisation | ||
| Manim | Mathematical animation for educational AI content. Preferred over Motion Canvas (ADR-010). | Active |
| Flourish | Interactive data stories. Client-facing visualisations. | Active |
| Kumu | Systems thinking maps. Stakeholder networks, ecosystem mapping. | Active |
| NeoDash | Neo4j graph dashboards. Live queries, no-code charting over knowledge graph data. | Active |
| Grafana | Operational metrics dashboards over Postgres data. | Available |
| Document Processing | ||
| Docling | PDF parsing with layout understanding. Document ingestion pipelines. (ADR-053) | Active |
| Unstructured | Word/PPT/HTML extraction for broad document types. (ADR-054) | Active |
| Zotero | Reference management. SQLite-based. Ollama-powered metadata enrichment. (ADR-021) | Active |
Automated Pipelines
Pavilion Factory — Newsletter & Bookmark Ingestion
Job Search Pipeline — Scrape to Application
jobs table (598 records). I triage in NocoDB, flag interesting roles, and the elevation script pushes apply=true jobs to Fibery for managed application tracking. Claude then generates tailored resumes and cover letters by pulling from 233 resume modules stored in Postgres.
Chrome Extension Capture Suite — 5-Extension Data Layer
event-saver endpoint, routed by type field), so there's no per-extension server to maintain. Events, jobs, and organisations land in local Postgres; select records are optionally elevated to Fibery Contacts for active relationship management. The shared access key (evt-8d1982eb) authenticates all extensions without per-extension credentials.
Innovation Portfolio — Idea to Product Build
/idea slash command in Claude Code. The idea is scored against a multi-dimensional framework (market fit, effort, strategic alignment) and stored as a Module in Fibery, Neo4j, and Postgres simultaneously. When modules are mature enough, they're grouped into a Product using the /product command, which generates a value statement and one-pager. The product then generates a Linear project with individual module-level build issues — routing crew agents to implement.
Free Agent Dispatcher — Multi-Agent Crew Orchestration
dotti, finn, or sage). An n8n workflow polls Linear and dispatches each issue to the appropriate headless Claude Code agent — Dotti (Haiku) for data queries and reports, Finn (Sonnet) for implementation, Sage (Opus) for architecture and complex debugging. Outputs are committed to GitHub, written to Postgres/Neo4j, or returned via the task system. Every run is logged to the claude_task_agents table.
Gmail Cleanup Pipeline — Bill Extraction & Newsletter Unsub
Multi-Agent System
The agent system splits interactive and headless work. Nova (Claude Desktop) handles real-time business analysis — translating conversations into specs, creating Linear issues, and orchestrating crew routing. The headless crew operates as autonomous Claude Code CLI agents, each with a specific model, role, and label that determines how the dispatcher routes work.
Every agent run is logged to claude_task_agents in Postgres via a PostToolUse hook (ADR-084), creating a full audit trail of who did what and when. Incomplete tasks surface in the inbox for review.
- Real-time strategy & spec work
- Translates ideas into crew issues
- Fibery + Linear MCP access
- Context API (SSE remote MCP)
- Reports, queries, data analysis
- Registry management
- Admin tasks
- Label:
dotti
- Coding & implementation
- Deployments, scripts
- System builds
- Label:
finn
- Complex debugging
- Architecture decisions
- ADR authoring
- Label:
sage
Dispatch Flow
Systems Architecture
The architecture follows a clear three-layer model: a local Docker stack handles persistence and real-time orchestration; a cloud layer provides scale, scheduled jobs, and external integrations; the AI layer sits across both, with Claude Code operating locally and Modal/Gemini operating in cloud. All traffic between local and cloud passes through a single Cloudflare Tunnel (no open ports).
Key Design Decisions
Claude Code uses curl/psql/cypher-shell directly. Only Fibery (no usable API for graph queries) justifies an MCP server. ADR-045.
Cloudflare Tunnel (liflode-dispatch, 07bf7694) provides all external access. Local services never exposed directly.
Enforced by ADR-068. Every Modal/Python LLM call with structured output uses pydantic-ai, not raw json.loads().
All secrets via eu.infisical.com. Profile auto-loads GEMINI_API_KEY, LINEAR_API_KEY, WINDMILL_TOKEN. ANTHROPIC_API_KEY intentionally excluded from shell env.
Appendix
Architecture Decision Records (ADR-001 — ADR-087)
| ADR | Title | Category |
|---|---|---|
| ADR-001 | MCP Token Optimization | MCP |
| ADR-002 | Secrets Management — Infisical | Security |
| ADR-003 | AI Council Architecture | Agents |
| ADR-004 | Nova / Finn Manager-Worker Workflow | Agents |
| ADR-005 | Neo4j Knowledge Graph | Data |
| ADR-006 | Iris Orchestration Architecture | Agents |
| ADR-007 | GitHub Repository Structure | DevOps |
| ADR-008 | Windmill MCP Integration | Automation |
| ADR-009 | Modal ETL Platform | Infra |
| ADR-010 | Manim Mathematical Animation Tool | Viz |
| ADR-011 | Chezmoi Dotfiles Management | DevOps |
| ADR-012 | DroidMind Android Automation via MCP | MCP |
| ADR-013 | Fibery API Integration | Integration |
| ADR-014 | D3.js Data Visualization Library | Viz |
| ADR-015 | Neon PostgreSQL Cloud | Data |
| ADR-016 | MotherDuck Analytics | Data |
| ADR-017 | Cloudflare R2 Storage | Infra |
| ADR-018 | Astro Web Framework | Web |
| ADR-019 | Zoho Mail & CRM | Business |
| ADR-020 | Gamma Presentations | Content |
| ADR-021 | Zotero Reference Management | Research |
| ADR-022 | Flourish Data Visualization | Viz |
| ADR-023 | Kumu Systems Thinking | Viz |
| ADR-024 | Python Runtime Environment (3.13) | DevOps |
| ADR-025 | n8n Workflow Automation | Automation |
| ADR-026 | Automation Platform Selection (n8n vs Windmill) | Automation |
| ADR-027 | Infisical → Modal Auto-Deploy Pipeline | DevOps |
| ADR-027b | MCP vs API Decision Framework | MCP |
| ADR-028 | SurrealDB Evaluation — Deferred | Data |
| ADR-029 | Job Search Automation System | Automation |
| ADR-030 | Neo4j Agent Memory Architecture | Data |
| ADR-031 | Unified MCP Architecture | MCP |
| ADR-032 | Context Assembly Layer | Agents |
| ADR-033 | Remove n8n MCP Server from Claude Code | MCP |
| ADR-034 | NeoDash Neo4j Dashboard | Viz |
| ADR-035 | Fibery Workspace Architecture | Business |
| ADR-036 | Chat Import Auto-Ingest Drop Folder | Pipeline |
| ADR-037 | n8n Dedicated Postgres Database | Data |
| ADR-037b | NotebookLM Rejection for Research Workflow | Research |
| ADR-038 | Granola Rejection for Meeting Notes | Business |
| ADR-038b | Migrate Tools Registry to Neon Cloud Postgres | Data |
| ADR-039 | Business Operations Stack — Salesmate, Xero, Timely | Business |
| ADR-040 | ADHD Productivity Intelligence — Product Concept | Product |
| ADR-041 | Email Platform — Cloudflare Routing + MS Outlook | Infra |
| ADR-042 | Notion CSV Extraction — Type-Based Registry Architecture | Data |
| ADR-043 | Notion Markdown Cleanup Pipeline | Pipeline |
| ADR-044 | Innovation Portfolio System — Headless Component Model | Product |
| ADR-045 | Claude Code Tool Architecture — 1 Business MCP + Bash | MCP |
| ADR-046 | Context API SSE Remote MCP Endpoint | MCP |
| ADR-047 | Separate Postgres DB for Bookmarks Consolidation | Data |
| ADR-047b | liflode-local — Desktop Extension for Local Data Access | MCP |
| ADR-048 | Motion Canvas — Deferred (Manim Preferred) | Viz |
| ADR-049 | PersonaPlex Voice AI — Deferred (Hardware Blocker) | AI |
| ADR-050 | Ghost vs WriteFreely for Long-Form Content Federation | Content |
| ADR-051 | Fediverse — Self-Hosted vs Public Instance Strategy | Content |
| ADR-052 | D2 Diagram-as-Code Tool | Viz |
| ADR-053 | Docling for Document Parsing | Pipeline |
| ADR-054 | Unstructured for Broad Document Extraction | Pipeline |
| ADR-055 | Job Application Pipeline — Scrape to Postgres Triage | Pipeline |
| ADR-056 | Letta Stateful Agents Trial | Agents |
| ADR-057 | Product Hunt Feb 2026 Tool Assessment | Research |
| ADR-058 | Free Agent Dispatcher — n8n | Agents |
| ADR-059 | Cloudflare Named Tunnel | Infra |
| ADR-060 | Innovation Portfolio Data Architecture | Data |
| ADR-061 | Claude Code Fibery MCP | MCP |
| ADR-062 | Job Alert Email Pipeline | Pipeline |
| ADR-063 | Pavilion Factory Innovation Pipeline | Pipeline |
| ADR-064 | Business Decision Records — Fibery | Business |
| ADR-065 | Promptfoo Scenario Testing | Agents |
| ADR-066 | Cloudflare Workers AI — Factory 1 Ingestion | AI |
| ADR-067 | LiteLLM LLM Proxy | AI |
| ADR-068 | Pydantic AI for Structured Outputs | Agents |
| ADR-069 | Zotero SQLite + Ollama Management | Research |
| ADR-070 | Google Drive + Gmail Cleanup | Operations |
| ADR-071 | Data Storytelling & Visualisation Stack | Viz |
| ADR-072 | Pipeline Monitoring & Alerting | DevOps |
| ADR-073 | Dynamic Context Assembly & Compression | Agents |
| ADR-074 | Newsletter Pipeline — Quinn / Factory 1 | Pipeline |
| ADR-075 | Animation Tools Comparative Evaluation | Viz |
| ADR-076 | Fibery Module Entity Type | Business |
| ADR-077 | Tool Watchlist Monitor | Research |
| ADR-078 | n8n vs Windmill — Role Boundaries | Automation |
| ADR-079 | Naming System | Business |
| ADR-080 | Content Knowledge System | Content |
| ADR-081 | Gmail Cleanup Approach | Operations |
| ADR-082 | Innovation Portfolio Module Scoring Pipeline | Pipeline |
| ADR-083 | Historic Data Consolidation & Registry Architecture | Data |
| ADR-084 | Task Agent Registry & Incomplete Task Inbox | Agents |
| ADR-085 | Fibery / Linear Two-Sided Org Structure | Business |
| ADR-086 | Knowledge-First Research System | Research |
| ADR-087 | Chrome Extension Capture Suite | Pipeline |
About This Portfolio
This document was generated from live system data — ADR count, module counts, and pipeline descriptions reflect the actual state of the system as of February 2026. The site is deployed to Cloudflare Pages and print-optimised for PDF export.
Contact: rachel@liflode.com · Practice: Leoma (leoma.ai) · Location: Geelong / Melbourne, Victoria, Australia