Selected work

Multi-agent smart academy

REX AI

Five workflows. One reviewed source of course knowledge.

A collaborative platform for Andalusia Academy, connecting course advice, opportunity research, curriculum design, educational documents and marketing through persistent workflows and explicit review.

View source
My role
Assistant, catalog/RAG & document generation
Project context
Team project · controlled local operation
Evidence reviewed
3 November 2026

The problem

Make the result worth trusting.

Course facts can spread across uploaded documents, learner conversations, curricula and campaigns. Without publication and review boundaries, an unverified schedule or withdrawn course can continue to shape downstream content. The platform needs to coordinate useful AI workflows while keeping staff responsible for academy facts.

A reviewed course catalog anchors the system. The assistant retrieves published facts, generated artifacts retain their source snapshots, and domain services recheck approval and revocation conditions. A staff instructor interface can propose allowlisted actions, with confirmation for writes and separate review decisions.

Context & contribution

Built with Faris Ahmed and Ahmed AlAbiad for Andalusia Academy. This case study follows main and its current README, architecture and team work breakdown.

Individual ownership, shared integration

My work within the team.

Assistant & course recommendation

English/Arabic advice, approved-only retrieval, source citations, guided learner qualification and persistent context. Deterministic level, availability, budget and delivery checks constrain recommendations. Lead capture requires consent.

Course catalog & RAG

Course document ingestion, native and optional scanned-document processing, extraction review, rejection/correction and explicit publication. Draft knowledge remains separate from published facts, with source withdrawal and revocation checks.

Educational document generation

Ten template categories, English/Arabic DOCX/PDF, source-tracked generation and immutable revisions. Human review, approval/rejection and authenticated file-integrity checks connect outputs to approved course and curriculum data.

AbdulRahman Adham

Assistant, course catalog/RAG and Document Generation

Faris Ahmed

RFP Research and Curriculum

Ahmed AlAbiad

Marketing

System architecture, integration and testing are collaborative work. This role breakdown is documented in the main branch’s work breakdown structure and supplied team attribution.

Explore the system

Connected agents. Explicit boundaries.

Select a component to inspect its contract.

Five agents / shared servicesIllustrative system map
Approved course knowledge

SQLite persistence · published facts · source snapshots

FastAPI + 44 allowlisted instructor tools
Learning Advisor

English/Arabic course advice grounded in published knowledge.

Input
Learner question, persistent context, skill level, budget, availability and format preferences.
Output
Cited answers, qualified course recommendations and consented lead records.
Authority boundary

Specific academy facts require current approved evidence. Deterministic suitability checks constrain recommendations, and lead capture requires consent.

Catalog and RAG are also my primary workstreams. Architecture, integration and testing are collaborative. These nodes summarize responsibilities, with handoffs enforced by domain services.

One course through the platform

Publication is the beginning.

A source-aware walkthrough of the connected workflow.

Step 1 of 6

Upload the material

Staff provide a PDF, Word or Markdown course source. Optional Tesseract supports scans. Extraction produces candidates and warnings for inspection.

Review state
Unreviewed source
Resulting artifact
Original file + proposed fields
Illustrative walkthrough

Engineering challenges

Where the difficult work lives.

Publishing is an authority boundary

Extraction proposes course fields. Staff inspect warnings, verify facts, correct or reject sources, and explicitly publish an approved course. Draft or rejected material cannot silently enter learner retrieval.

Downstream documents can outlive their source

Generated records retain course and curriculum snapshots. Current publication status, source hashes and review timestamps are checked again. A withdrawn or changed source invalidates downstream approval/export eligibility.

An assistant action can fail halfway through

Instructor proposals and execution outcomes persist. Repeated executions return saved results, and a failed action stops later steps while preserving completed work. Cross-service activity remains outside a single atomic transaction.

Implementation & trade-offs

Every choice has a boundary.

Keep cover generation outside publication

Optional Puter generation runs once per course revision after publication. Course browsing reads the stored image, and publication can succeed without cover generation.

Trade-offThis keeps catalog availability independent of an optional provider. Configuration and provider availability still need operator verification.

Start with approved-only lexical retrieval

SQLite FTS5 retrieves published course facts without an embedding service or model download. Groq supplies the default text provider, with Gemini optional.

Trade-offThe default is inexpensive to run locally and easy to inspect. FTS5 is lexical search, so semantic matching requires the optional Gemini-embedding/Chroma path and its additional operational considerations.

Keep the instructor inside existing service boundaries

The planner selects from 44 registered internal API tools. ASGI execution invokes existing authenticated routes and validators. Writes require confirmation, and review/publication decisions require a separate inspected action.

Trade-offThis reuses domain safeguards and limits execution authority. The planner’s implementation uses internal APIs. FastMCP exposes a separate ten-tool interface for external clients.

Version generated documents immutably

Ten template categories support source-tracked English/Arabic DOCX and PDF. Staff approve template versions, review drafts, request revisions and download authenticated files with integrity checks.

Trade-offEvery change becomes a new version, which improves traceability and preserves review history. Staff still need to inspect the content and sources before approval.

Use a local staff-key model for the current scope

Persistent staff interactions, record review and internal tools share the application’s current staff authentication and declared reviewer identity.

Trade-offThe current model supports controlled local use. Individual staff accounts/RBAC, public-hosting controls and academy acceptance remain separate completion criteria.

Built with

  • Python
  • FastAPI
  • Streamlit
  • Groq
  • Gemini (optional)
  • SQLite / FTS5
  • Chroma (optional)
  • PyMuPDF
  • python-docx
  • Tesseract (optional)
  • FastMCP
  • LangSearch MCP
  • Puter (optional covers)

Results & evaluation

The evidence, with its scope.

Historical repository results.
Methods and limitations travel with the numbers.

Integrated agent workflows
5
Assistant, RFP, Curriculum, Documents and Marketing
Registered internal API tools
44
Instructor planner · explicit allowlist and confirmation gates
Tests passed
514
README release check at commit 2d01734 · 7 skips

What the documented checks cover

The main README records 514 passed and 7 skipped at commit 2d01734. Offline checks cover authorization, source rejection and publication, retrieval and withdrawal, planner confirmation, RFP filters, course covers, exports and Streamlit interactions. Tests use isolated data and mocks; provider tests are opt-in.

Passing these checks supports the implemented paths and safeguards. Real academy acceptance, live-provider behavior and public-hosting controls remain separate work.

Actual REX Curriculum Studio in the isolated demo workspace with fictional data.
Curriculum Studio · Repository demo capture with fictional data. Labels and navigation may differ from the latest build.
Actual REX Campaign Studio in the isolated demo workspace with fictional data.
Campaign Studio · Repository demo capture with fictional data. Labels and navigation may differ from the latest build.

Limits & lessons

What the work establishes.
What needs more evidence.

  • The main README records 514 passed and 7 skipped at commit 2d01734. Offline tests use isolated data and mocks; provider tests are opt-in. This does not establish live provider availability or final academy acceptance.
  • Shared staff-key authentication is intended for controlled local use. Individual accounts, staff RBAC, managed public deployment and scheduled n8n workflows remain outstanding.
  • The instructor planner uses allowlisted internal APIs. Historical Sprint 1 references to LangGraph and an instructor MCP client describe earlier plans.
  • Marketing distribution is manual. Opportunity discovery requires verification, framework alignment does not confer accreditation, and source withdrawal can block downstream exports.

Engineering takeaway

Connecting agents is also a data-lifecycle problem. Publication, source snapshots, confirmation and revocation need to be enforced in shared services so every interface follows the same review rules.

Inspect the work

Go to the source.

Selected implementation and documentation reviewed for this case study.

All selected workNext case studyVision Transformers