Two runnable enterprise AI systems for demonstrating secure RAG, governed agents, evals, traces, audit logs, and approval gates.
Most AI app demos stop at chat. Real enterprise deployments need permission boundaries, evidence, human approval, debugging surfaces, and regression tests. This repo implements those patterns in two local-first systems that run without paid APIs, while leaving clean upgrade paths to OpenAI Responses API, Agents SDK, PostgreSQL/pgvector, OpenTelemetry, and enterprise connectors.
| Project | What It Demonstrates | Local URL |
|---|---|---|
| Secure Enterprise Knowledge Copilot | Permission-aware RAG, citations, abstention, prompt-injection handling, traces, audit logs, evals | http://127.0.0.1:8765 |
| Regulated Customer Operations Agent | Tool calling, business workflow automation, approval queue, side-effect blocking, supervisor approval, unsafe-action evals | http://127.0.0.1:8770 |
FDE / AI application interviews increasingly test whether you can build systems around models, not just call a model. These projects focus on the parts that usually separate production AI systems from demos:
- permissions before model generation
- citations and abstention instead of unsupported answers
- retrieved-content prompt-injection handling
- tool permissions and approval gates
- trace and audit surfaces
- eval gates and smoke tests
- clear production upgrade paths
Verify everything from a clean checkout:
python -B scripts/dev.py verifyStart both demos:
python -B scripts/dev.py startOr start them separately:
cd secure-enterprise-knowledge-copilot
python -B app.py --reset --port 8765cd regulated-customer-operations-agent
python -B app.py --reset --port 8770Useful commands:
python -B scripts/dev.py health
python -B scripts/dev.py evals
python -B scripts/dev.py smoke
python -B scripts/dev.py report
python -B scripts/dev.py quality
python -B scripts/post_publish_check.pyCurrent verified status:
health check: both services ok
smoke tests: 9/9 passed
Project 1 eval: 11/11 passed, unsafe_leak_failures = 0
Project 2 eval: 8/8 passed, unsafe_direct_side_effect_failures = 0
| Production Concern | Where To Look | Verification |
|---|---|---|
| Permission-aware RAG | secure-enterprise-knowledge-copilot/src/copilot/retrieval.py |
Alice finance query abstains; Morgan finance query answers |
| Prompt-injection handling | secure-enterprise-knowledge-copilot/src/copilot/security.py, secure-enterprise-knowledge-copilot/src/copilot/answering.py |
eval-005, eval-008 through eval-011 |
| Governed tool use | regulated-customer-operations-agent/src/ops_agent/tools.py |
direct send_notice is blocked for investigator |
| Human approval | Project 2 approval queue and supervisor endpoint | supervisor approval sends the notice once |
| Regression gates | scripts/dev.py, project eval runners |
python -B scripts/dev.py verify |
See Portfolio Evidence Matrix for the full claim-to-evidence map.
| Secure Enterprise Knowledge Copilot | Regulated Customer Operations Agent |
|---|---|
![]() |
![]() |
Open:
http://127.0.0.1:8765
Show:
- Alice asks:
How many days per week can employees work remotely? - The system answers with
Remote Work Policy 2026citation. - Alice asks:
What is the finance retention plan? - The system abstains because Alice cannot access confidential finance evidence.
- Morgan asks the same finance question.
- The system answers with
Finance Retention Plan 2026citation. - Run evals.
Core claim:
The model never receives evidence the user is not allowed to access.
Open:
http://127.0.0.1:8770
Show:
- Ivy investigates Market Blue / RX-900 recalled product.
- The agent searches policy and listings.
- It creates a violation, drafts seller notice, schedules follow-up.
- It creates an approval request before sending.
- Direct
send_noticeis blocked for investigator. - Supervisor approval sends the notice.
- Run evals.
Core claim:
The model may propose actions, but side effects are enforced by application logic.
Portfolio
+-- Secure Enterprise Knowledge Copilot
| +-- role-aware retrieval
| +-- citation answer shape
| +-- abstention logic
| +-- prompt-injection detection
| +-- trace/audit/evals
|
+-- Regulated Customer Operations Agent
+-- intent routing
+-- business tools
+-- approval queue
+-- side-effect blocking
+-- trace/audit/evals
Both projects are dependency-free by default so they run reliably anywhere with Python 3.12. Optional OpenAI gateways are included but disabled by default.
$env:OPENAI_API_KEY="..."
$env:OPENAI_MODEL="gpt-5.2"
$env:OPENAI_REASONING_EFFORT="medium"
$env:OPENAI_TEXT_VERBOSITY="low"
$env:COPILOT_MODEL_PROVIDER="openai"
$env:OPS_AGENT_MODEL_ROUTER="openai"Security boundaries remain outside the model:
- Project 1 filters permissions and unsafe retrieved content before generation.
- Project 2 enforces approval gates in deterministic application code.
Docker config is included:
docker compose up --buildDocker config is included for Docker-enabled machines. The local Python runtime is the verified path.
fde_portfolio/
secure-enterprise-knowledge-copilot/
regulated-customer-operations-agent/
scripts/
docs/
.github/
- Project Content Index
- Changelog
- Final Demo Runbook
- Demo Report
- Resume And Interview Package
- Production Upgrade Notes
- Model Runtime Configuration
- Final Completion Audit
- GitHub Launch Plan
- Published Repository Status
- GitHub Repository Settings
- Community Backlog
- Public Release Audit
- Differentiation Strategy
- Hard Interview Playbook
- System Design Deep Dive
- Portfolio Evidence Matrix
- ADR 0001: Local-First Portfolio Runtime
- ADR 0002: The Model Is Not The Security Boundary
- ADR 0003: Eval State Isolated From Demo State
- Secure RAG Case Study
- Governed Agent Case Study
- Demo Video Script
- Demo Recording Checklist
- Star Growth Plan
- Launch Copy Pack
- GitHub Initial Issues
- Reviewer Perspective Checklist
- GitHub Release Commands
- Post-Publish Checklist
- Roadmap
I focus on deploying AI into real business workflows. The first project handles enterprise knowledge access with permissions, citations, abstention, traces, audit logs, and evals. The second project connects an agent to operational tools while preventing unsafe side effects through approval queues and governance checks.
Together they show I can build AI systems that are useful, inspectable, and safe enough for enterprise deployment.
This project is released under the MIT License. See LICENSE.

