Fidelity AI Workspace
AI-native companion workspace for daily iOS engineering on Fidelity.
This repository is not the product codebase. It is the operational context layer used from this machine to keep project state current, capture communication from Mattermost, prepare standups, and draft clear updates for a manager or stakeholder in polished professional English.
Purpose
- Keep Fidelity context current outside the main development machine
- Turn fragmented daily work into reusable AI-ready context
- Support standups, manager updates, Jira notes, and debugging summaries
- Improve communication quality without losing technical accuracy
Operating Model
You work on Fidelity from a different machine.
This workspace is used to:
- record what happened during implementation and debugging
- sync relevant communication from Mattermost
- preserve current project context between sessions
- draft messages for the current manager or stakeholder with the right tone and scope
- translate rough notes into concise native-sounding English
Core principle:
Context must be updated before asking AI to write.
Project Scope
Fidelity iOS ecosystem:
- Fid4
- XFlowSDK
- FTFrameworks
- REST migration replacing GraphQL over time
- Discourse and AO issues that require careful classification
Structure
/ai
Runtime context for AI support.
AGENTS.md-> behavior rules for AI agentscontext/-> stable knowledge organized by systems, workstreams, process, people, and decisionswork-items/-> one file per active Jira-linked unit of workstate/-> current focus, active issues, and communication needslogs/-> daily work record
/prompts
Reusable prompts for:
- standups
- Mattermost updates
- manager communication
- issue clarification
/workflows
Repeatable working guides for:
- daily context sync
- flow debugging
- external issue analysis
/knowledge
Reference material for:
- XFlow behavior
- communication rules
- Fidelity-specific debugging heuristics
/scripts
Helpers for future automation around context generation and communication drafting.
Daily Usage
Start of day
Read:
ai/context/index.mdai/work-items/index.mdai/state/current.mdai/context/project.mdai/context/people/manager.mdai/context/people/index.md- latest file under
ai/logs/
During the day
Capture:
- implementation progress from the main development machine
- Mattermost conversations that change scope or priorities
- debugging findings
- open questions, blockers, and follow-ups
Write updates in:
ai/logs/YYYY-MM-DD.md
Before sending a message
Confirm:
- context
- current observation
- requested or implied action
- whether the issue is external behavior or regression
- whether the flow is authenticated or non-authenticated
End of day
Update:
- today log
- current state
- next communication needs for the current manager or stakeholder
Expected Output
This workspace should help produce:
- high-signal standups
- clearer Mattermost updates
- concise supervisor communication
- better issue framing
- more reliable AI-generated English
OpenCode Entry Point
This workspace is designed to work well with the OpenCode VS Code extension.
Recommended usage:
- Open this repository as its own VS Code workspace.
- Start OpenCode from the integrated terminal at the repository root.
- Begin each session with
/fidelity-context. - As new information appears during the day, update context before asking for drafting help.
Project commands live under .opencode/commands/ and are intended to:
- load the baseline Fidelity context
- sync Mattermost context into the workspace inbox
- draft standups
- draft manager updates
- convert rough notes into daily log updates
This keeps AI output tied to the latest workspace state instead of relying on chat memory alone.
Mattermost Memory Flow
This workspace supports a live-memory pattern for Mattermost.
Recommended setup:
- Use the workspace-local script at
scripts/mattermost/sync.sh, or override it withFIDELITY_MATTERMOST_SYNC_CMD. - Let OpenCode run with the project plugins enabled.
- The Mattermost inbox plugin will periodically refresh
ai/inbox/mattermost-latest.md. - Promote durable facts from the inbox into
ai/logs/,ai/state/, andai/context/.
Use /mattermost-sync when you want to force a refresh manually.