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:
2026-04-16 08:35:53 -06:00
parent 1f57597ca3
commit 8026da5719
41 changed files with 1131 additions and 42 deletions

View File

@@ -0,0 +1,138 @@
# Operational Memory
## Definition
Operational memory is a versionable file-based system where the agent decides whether each interaction introduces, corrects, or invalidates knowledge, then updates the smallest correct canonical file.
The goal is not transcript storage. The goal is a curated working memory that improves future reasoning, communication, and execution.
---
## Memory Classes
### `daily`
Use for same-day progress, findings, evolving reproduction notes, and work that may change soon.
Default path pattern:
```text
ai/logs/YYYY-MM-DD.md
```
### `state`
Use for current priorities, active blockers, near-term constraints, and communication needs that affect the next few days.
Default paths:
```text
ai/state/current.md
ai/state/work-items.md
```
### `work-items`
Use for canonical memory about active tickets, tasks, stories, investigations, or other units of work.
Default path pattern:
```text
ai/work-items/<id-or-slug>.md
```
### `stable-context`
Use for durable project knowledge that should survive beyond the current work window.
Default path pattern:
```text
ai/context/<domain>/*.md
```
### `people`
Use for repeated collaborators, role mappings, manager/stakeholder context, and communication preferences.
Default path pattern:
```text
ai/context/people/*.md
```
### `decisions`
Use for confirmed decisions with ongoing impact.
Default path pattern:
```text
ai/context/decisions/*.md
```
### `tooling-behavior`
Use when a user correction changes how the workspace should behave in the future.
Default path patterns:
```text
.opencode/commands/*.md
.opencode/agents/*.md
.opencode/skills/*/SKILL.md
prompts/*.md
knowledge/*.md
ai/context/process/*.md
```
---
## Promotion Rules
Promote information when it is:
- explicit enough to preserve safely
- relevant to the current project or workflow
- likely to matter in a future session
- useful for standups, status updates, debugging, planning, or decision making
Do not promote:
- tool failures
- sync attempts
- empty inbox states
- generic chat noise
- unverified guesses
- duplicate paraphrases of existing memory
If confidence is mixed, prefer the daily log and preserve uncertainty.
---
## Correction Rules
When new information supersedes old memory:
- update the existing canonical file directly
- do not leave stale and corrected versions side by side
- preserve qualifiers when the fact remains partially confirmed
- update indexes when adding new stable context files
The agent should behave like a senior engineer maintaining project notes, not like a transcript accumulator.
---
## Self-Maintenance Rules
When the user corrects recurring output or behavior, update the operational surface that controls that behavior.
Examples:
- standup format correction -> update `prompts/standup.md` and the standup command
- communication freshness correction -> update the communication sync command/plugin
- prompt-engineering correction -> update the AI prompt command or skill
- memory routing correction -> update memory rules and context-maintenance guidance
The daily log may preserve evidence, but reusable behavior must live in the command, prompt, skill, agent, or knowledge file that enforces it.