Live application ยท Python / FastAPI
PersonalOS: software you can operate
A public portfolio and a permissioned workspace: page agents, shared jobs, feedback and observable state.
The problem
A personal data system needs more than a chat box: people need to see what is happening, correct it and decide what should happen next. PersonalOS combines a recruiter-facing portfolio with a separate, permissioned operating workspace.
My contribution
I build and maintain the FastAPI application, server-rendered Jinja pages, SQLAlchemy data layer and agent integration. The page contract connects visible state, human controls, an assistant and feedback, rather than hiding every operation inside a conversation.
How it works
- Public and private experiences: verified identities and domain permissions determine access. Public career material is separate from private operational data.
- Page agents: the embedded assistant submits harness jobs and polls for results. The public portfolio guide searches a curated career corpus; it does not have the owner's data-operation tools.
- Background work: a shared job queue separates requests from longer-running work. Heavy pipelines run in a separate automation project.
- Human feedback: published-copy records and artifact feedback preserve corrections and review decisions. Capabilities differ by page and role.
- Observability: traffic events, job state and evaluation fixtures help inspect behavior. The homepage supplies a bounded snapshot of visible page state to its assistant.
Try it
Use โAsk My AIโ on the homepage to ask about my work. The authenticated workspace adds permitted operational pages and controls. Signing in is not equivalent to unrestricted access.
Evidence and limits
Source repository. The application contains permission-boundary tests, page-agent evaluation fixtures and page contracts. These establish inspectable engineering work; they do not establish a universal accuracy rate or a business ROI figure. This is an evolving personal application, not a claim of enterprise-scale customer adoption.
Design tradeoffs
Server-rendered pages keep ordinary navigation useful without a chat session. Jobs keep long-running work separate from page requests. Explicit domain permissions let public demonstrations coexist with private operations while preserving server-side access checks.