Refactor AI workspace for improved context management and communication integration
- Introduced new commands and skills for workspace memory curation, professional communication, and status reporting. - Updated existing commands to utilize new skills and improve clarity in instructions. - Created a new workspace context command to load reusable core and active project profile. - Enhanced Mattermost inbox integration with support for generic environment variables. - Established a clear separation between project-independent core logic and project-specific profiles. - Improved documentation across various files to reflect changes in workflow and command usage. - Added operational memory management rules to ensure accurate context promotion and correction. - Updated README and workflow documents to guide users in utilizing the new structure effectively.
This commit is contained in:
99
README.md
99
README.md
@@ -1,13 +1,16 @@
|
||||
# Fidelity AI Workspace
|
||||
# AI Workspace - Fidelity Profile
|
||||
|
||||
AI-native companion workspace for daily iOS engineering on Fidelity.
|
||||
Reusable AI-native companion workspace with Fidelity configured as the first real project profile.
|
||||
|
||||
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.
|
||||
This repository is not the product codebase. It is an operational context layer used to keep project state current, capture communication evidence, prepare standups, draft clear stakeholder updates, and generate self-contained prompts for another AI that has access to the implementation codebase.
|
||||
|
||||
The reusable logic lives in `core/`. Fidelity-specific context lives in the active profile and existing `ai/context/` memory.
|
||||
|
||||
---
|
||||
|
||||
## Purpose
|
||||
|
||||
- Provide a reusable file-based AI workspace pattern
|
||||
- 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
|
||||
@@ -33,6 +36,32 @@ Core principle:
|
||||
|
||||
Context must be updated before asking AI to write.
|
||||
|
||||
Reusable principle:
|
||||
|
||||
Integrations extract evidence. The agent promotes memory.
|
||||
|
||||
---
|
||||
|
||||
## Reusable Architecture
|
||||
|
||||
### /core
|
||||
|
||||
Project-independent workspace logic.
|
||||
|
||||
- `README.md` -> reusable operating model
|
||||
- `memory/operational-memory.md` -> memory classes, promotion rules, correction rules, self-maintenance rules
|
||||
- `integrations/communication-model.md` -> live communication and historical archive connector contract
|
||||
- `profiles/create-project-profile.md` -> checklist for adapting the workspace to another project
|
||||
|
||||
### /profiles
|
||||
|
||||
Project-specific configuration.
|
||||
|
||||
- `profiles/fidelity/` -> active Fidelity implementation profile
|
||||
- `profiles/example/` -> non-sensitive example profile for new projects
|
||||
|
||||
Profiles declare project assumptions, communication sources, work-item system, stakeholders, enabled commands, and enabled skills.
|
||||
|
||||
---
|
||||
|
||||
## Project Scope
|
||||
@@ -81,6 +110,8 @@ Repeatable working guides for:
|
||||
|
||||
Reference material for:
|
||||
|
||||
- reusable memory rules
|
||||
- workspace model
|
||||
- XFlow behavior
|
||||
- communication rules
|
||||
- Fidelity-specific debugging heuristics
|
||||
@@ -158,32 +189,76 @@ Recommended usage:
|
||||
|
||||
1. Open this repository as its own VS Code workspace.
|
||||
2. Start OpenCode from the integrated terminal at the repository root.
|
||||
3. Begin each session with `/fidelity-context`.
|
||||
3. Begin each session with `/workspace-context` or the Fidelity alias `/fidelity-context`.
|
||||
4. 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
|
||||
- load the reusable core plus active project profile
|
||||
- sync live communication context into the workspace inbox
|
||||
- draft standups
|
||||
- draft manager updates
|
||||
- draft Copilot prompts for coding work on the Fidelity machine
|
||||
- force-refresh and inspect latest Mattermost messages
|
||||
- draft prompts for another AI on the implementation machine
|
||||
- force-refresh and inspect latest communication messages
|
||||
- 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
|
||||
## Generic Commands
|
||||
|
||||
This workspace supports a live-memory pattern for Mattermost.
|
||||
- `/workspace-context` -> load core plus active profile
|
||||
- `/communication-sync` -> sync live communication evidence and promote high-confidence memory
|
||||
- `/archive-import` -> import historical archive evidence
|
||||
- `/ai-prompt` -> generate a self-contained prompt for another AI
|
||||
- `/standup` -> generate a work-item-aware daily standup
|
||||
- `/manager-update` -> draft stakeholder-ready status
|
||||
- `/translate` -> rewrite rough notes into professional English
|
||||
- `/sync-context` -> incorporate new facts or corrections into memory
|
||||
|
||||
Compatibility aliases remain available for the Fidelity profile:
|
||||
|
||||
- `/fidelity-context`
|
||||
- `/mattermost-sync`
|
||||
- `/slack-import`
|
||||
- `/copilot-prompt`
|
||||
- `/swift-help`
|
||||
|
||||
---
|
||||
|
||||
## Communication Memory Flow
|
||||
|
||||
This workspace supports a live-memory pattern for communication sources such as Mattermost.
|
||||
|
||||
Recommended setup:
|
||||
|
||||
1. Use the workspace-local script at `scripts/mattermost/sync.sh`, or override it with `FIDELITY_MATTERMOST_SYNC_CMD`.
|
||||
1. Use the workspace-local script at `scripts/mattermost/sync.sh`, or override it with `AIW_MATTERMOST_SYNC_CMD`.
|
||||
2. Let OpenCode run with the project plugins enabled.
|
||||
3. The Mattermost inbox plugin will periodically refresh `ai/inbox/mattermost-latest.md`.
|
||||
4. Promote durable facts from the inbox into `ai/logs/`, `ai/state/`, and `ai/context/`.
|
||||
|
||||
Use `/mattermost-sync` when you want to force a refresh manually.
|
||||
Use `/communication-sync` or `/mattermost-sync` when you want to force a refresh manually.
|
||||
|
||||
Generic environment variables:
|
||||
|
||||
- `AIW_PROJECT_PROFILE`
|
||||
- `AIW_CHANNEL_PREFIX`
|
||||
- `AIW_MATTERMOST_SYNC_CMD`
|
||||
- `AIW_MATTERMOST_SYNC_INTERVAL_MINUTES`
|
||||
- `AIW_SLACK_EXPORT_PATH`
|
||||
|
||||
The older `FIDELITY_*` variables remain supported for compatibility with this project profile.
|
||||
|
||||
---
|
||||
|
||||
## Creating Another Project
|
||||
|
||||
1. Copy `profiles/example/` to `profiles/<project>/`.
|
||||
2. Fill in `profiles/<project>/profile.md`.
|
||||
3. Set `AIW_PROJECT_PROFILE=<project>`.
|
||||
4. Configure any communication connector with `AIW_*` variables.
|
||||
5. Keep project-specific context under `ai/context/`, not under `core/`.
|
||||
6. Use `/workspace-context` to load the core plus active profile.
|
||||
|
||||
See `core/profiles/create-project-profile.md` for the full checklist.
|
||||
|
||||
Reference in New Issue
Block a user