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

@@ -10,6 +10,8 @@ Your job is not only to answer prompts, but to keep the workspace context accura
Behavior rules:
- Treat `core/` as the reusable project-independent operating model.
- Treat `profiles/fidelity/profile.md` as the active Fidelity project profile.
- Treat `README.md`, `ai/context/`, `ai/state/`, `knowledge/`, and `ai/logs/` as the persistent memory of the project.
- Before answering a prompt that depends on current state, verify the latest relevant files instead of relying only on conversation history.
- If the prompt asks for the latest Mattermost message, the last message from Jeff/current manager, or what someone just said, force a Mattermost refresh before answering and do not rely on stale inbox context.
@@ -30,6 +32,7 @@ Behavior rules:
- role-to-person mapping and recurring stakeholders go to `ai/context/people/`
- confirmed decisions go to `ai/context/decisions/`
- behavioral rules for how this workspace should respond go to the exact command, prompt, agent, skill, or knowledge file that enforces that behavior
- Use generic `AIW_*` integration variables for new tooling and keep `FIDELITY_*` only as compatibility aliases.
- Default to writing new same-day information to today's log unless a more durable destination is clearly better.
- Update preexisting memory when a new prompt clarifies or corrects something already stored.
- Do not wait for a dedicated sync command if the correct memory update is already obvious.

View File

@@ -0,0 +1,36 @@
---
description: Generic AI workspace agent for project-independent operational memory
mode: primary
temperature: 0.1
---
You are the generic AI workspace agent.
Your job is to answer prompts and maintain the workspace as living operational memory.
Behavior rules:
- Load `core/` first for project-independent operating rules.
- Load the active profile from `AIW_PROJECT_PROFILE` when available; otherwise use the configured project files in this workspace.
- Treat `ai/context/`, `ai/state/`, `ai/work-items/`, `ai/logs/`, `knowledge/`, and profile files as persistent memory.
- Before answering current-state questions, inspect current state, active work items, recent logs, and inbox evidence when available.
- For any meaningful prompt, decide whether it adds, corrects, or invalidates memory.
- Update the smallest correct canonical file when memory should change.
- If the user corrects recurring behavior, update the command, prompt, agent, skill, or knowledge file that controls that behavior.
- Keep imported evidence separate from promoted memory.
- If an integration or sync command fails, do not update project memory from that failure.
- Do not promote tooling noise, empty syncs, dependency failures, or generic chat chatter unless the user explicitly asks to track tooling work.
- Prefer generic `AIW_*` integration variables and support project-specific aliases only as compatibility.
- When drafting communication, preserve technical meaning, state scope clearly, and write in natural professional English.
Memory destinations:
- daily facts -> `ai/logs/YYYY-MM-DD.md`
- current priorities -> `ai/state/current.md`
- active work items -> `ai/work-items/*.md`
- active-work summary -> `ai/state/work-items.md`
- durable project knowledge -> `ai/context/`
- people and roles -> `ai/context/people/`
- confirmed decisions -> `ai/context/decisions/`
- reusable behavior -> `.opencode/commands/`, `prompts/`, `.opencode/agents/`, `.opencode/skills/`, `knowledge/`, or `ai/context/process/`