Related to #1333
Problem
The Codex project-context skill does not reliably route explicit memory requests to the corresponding PowerContext tools.
When a user says that a preference, decision, constraint, or other context should be remembered, the model may acknowledge the request without calling remember_memory. Likewise, an explicit request to search memories may be answered without calling search_memory.
This creates a misleading user experience: the assistant can claim that a memory was saved or searched even though no PowerContext operation occurred. The prompt hook's automatic context preparation and source capture do not replace explicit memory-tool execution.
Fail demo
› remember I prefer uv for Python
• Got it — I’ll prefer uv for Python environments, dependencies, and commands.
Successful demo
› 请调用 PowerContext 的 remember_memory 工具,把“我偏好使用 uv 管理 Python 环境、依赖和命令”保存为 preference。
不要只回复确认。
• You have 1 usage limit reset available. Run /usage to use one.
• 我会调用 PowerContext 的记忆工具,将这条偏好保存为 preference。
• Called powercontext.select_handoff_workstream({"locale":"zh-CN"})
└ {"status": "empty", "message": "没有可供选择的交接项目。", "stage": null, "selected": null,
"project_choices": [], "workstream_choices": [], "truncated": false}
• Called
└ powercontext.remember_memory({"kind":"preference","scope_id":"global","text":"我偏好使用 uv 管理 Python 环
境、依赖和命令","reason":"用户明确指定的长期偏好"})
{"memory": {"family": "memory", "artifact_id": "memory", "revision": 1}, "entry": {"citation": {"memory_ref":
{"family": "memory", "artifact_id": "memory", "revision": 1}, "entry_id":
"mem_ent_98036887e23749d1a7fdfeff7d2212f3", "entry_version_id":
"mem_ver_56cf02488c424a41854f8f51f574a9cb"}, "version": 1, "kind": "preference", "text": "我偏好使用 uv
管理 Python 环境、依赖和命令", "state": "active", "source_refs": [], "artifact_refs": []}}
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────
• 已调用 remember_memory,成功保存为 preference。
Expected behavior
- Natural-language requests such as
remember, save this preference, record this decision, and equivalent Chinese phrases must trigger an actual remember_memory call.
- Natural-language requests such as
search my memories, what do you remember about, and equivalent Chinese phrases must trigger an actual search_memory call.
- The assistant must report success only after the corresponding tool returns successfully.
- If the memory tools are unavailable or the operation fails, the assistant must clearly report that the memory was not saved or searched.
- Automatic prompt capture must not be presented as equivalent to an explicit
remember_memory write.
- Ordinary remember/search requests must not invoke unrelated handoff-workstream selection.
Proposed changes
- Expand the project-context skill description and instructions with explicit remember/search triggers.
- Add concise examples for both English and Chinese requests.
- State the required tool call and success-reporting behavior as a strict contract.
- Add an acceptance or transcript-level test covering successful and unavailable-tool paths.
Related to #1333
Problem
The Codex project-context skill does not reliably route explicit memory requests to the corresponding PowerContext tools.
When a user says that a preference, decision, constraint, or other context should be remembered, the model may acknowledge the request without calling
remember_memory. Likewise, an explicit request to search memories may be answered without callingsearch_memory.This creates a misleading user experience: the assistant can claim that a memory was saved or searched even though no PowerContext operation occurred. The prompt hook's automatic context preparation and source capture do not replace explicit memory-tool execution.
Fail demo
› remember I prefer uv for Python
• Got it — I’ll prefer uv for Python environments, dependencies, and commands.
Successful demo
› 请调用 PowerContext 的 remember_memory 工具,把“我偏好使用 uv 管理 Python 环境、依赖和命令”保存为 preference。
不要只回复确认。
• You have 1 usage limit reset available. Run /usage to use one.
• 我会调用 PowerContext 的记忆工具,将这条偏好保存为 preference。
• Called powercontext.select_handoff_workstream({"locale":"zh-CN"})
└ {"status": "empty", "message": "没有可供选择的交接项目。", "stage": null, "selected": null,
"project_choices": [], "workstream_choices": [], "truncated": false}
• Called
└ powercontext.remember_memory({"kind":"preference","scope_id":"global","text":"我偏好使用 uv 管理 Python 环
境、依赖和命令","reason":"用户明确指定的长期偏好"})
{"memory": {"family": "memory", "artifact_id": "memory", "revision": 1}, "entry": {"citation": {"memory_ref":
{"family": "memory", "artifact_id": "memory", "revision": 1}, "entry_id":
"mem_ent_98036887e23749d1a7fdfeff7d2212f3", "entry_version_id":
"mem_ver_56cf02488c424a41854f8f51f574a9cb"}, "version": 1, "kind": "preference", "text": "我偏好使用 uv
管理 Python 环境、依赖和命令", "state": "active", "source_refs": [], "artifact_refs": []}}
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────
• 已调用 remember_memory,成功保存为 preference。
Expected behavior
remember,save this preference,record this decision, and equivalent Chinese phrases must trigger an actualremember_memorycall.search my memories,what do you remember about, and equivalent Chinese phrases must trigger an actualsearch_memorycall.remember_memorywrite.Proposed changes