@remembrance-ai/opencode-plugin 0.1.51 → 0.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/opencode.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "command": [
7
7
  "npx",
8
8
  "-y",
9
- "@remembrance-ai/mcp-server@0.1.51"
9
+ "@remembrance-ai/mcp-server@0.1.52"
10
10
  ],
11
11
  "enabled": true,
12
12
  "environment": {
@@ -15,6 +15,6 @@
15
15
  }
16
16
  },
17
17
  "plugin": [
18
- "@remembrance-ai/opencode-plugin@0.1.51"
18
+ "@remembrance-ai/opencode-plugin@0.1.52"
19
19
  ]
20
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remembrance-ai/opencode-plugin",
3
- "version": "0.1.51",
3
+ "version": "0.1.52",
4
4
  "license": "Apache-2.0",
5
5
  "description": "opencode plugin for Remembrance session hooks, tool observation, and contribution nudges.",
6
6
  "type": "module",
@@ -4486,6 +4486,10 @@ function isUnsafeDestinationHostname(hostname) {
4486
4486
  }
4487
4487
 
4488
4488
  // ../core/src/connection-doctor.ts
4489
+ var CODEX_HOOK_REVIEW_COMMAND = `CODEX_CLI="\${CODEX_CLI:-$(command -v codex || true)}"; [ -x "$CODEX_CLI" ] || CODEX_CLI="/Applications/ChatGPT.app/Contents/Resources/codex"; [ -x "$CODEX_CLI" ] || CODEX_CLI="/Applications/Codex.app/Contents/Resources/codex"; [ -x "$CODEX_CLI" ] || { printf '%s\\n' "Codex CLI not found. Install the Codex CLI, or install or update the ChatGPT desktop app on macOS, then try again." >&2; exit 1; }; "$CODEX_CLI"`;
4490
+ function codexHookReviewAction(followupTool) {
4491
+ return `Open Terminal and launch Codex with the command below. On the automatic Hooks need review screen, choose Review hooks and trust only the Remembrance SessionStart, UserPromptSubmit, PostToolUse, and Stop hooks. If the review screen does not appear, exit Codex, update or reinstall Remembrance, and launch the command again. Then fully restart Codex, submit one prompt, and call ${followupTool} again.`;
4492
+ }
4489
4493
  function buildConnectionDoctorReport(input) {
4490
4494
  const status = record(input.connection_status);
4491
4495
  const transport = record(status.transport);
@@ -4501,9 +4505,7 @@ function buildConnectionDoctorReport(input) {
4501
4505
  const registryReady = status.status !== "error" && registry.status === "ready";
4502
4506
  const queryAuthorized = capabilities.query === true;
4503
4507
  const submitAuthorized = capabilities.submit === true;
4504
- const configuredCredential = ["environment", "shared_config"].includes(
4505
- credentialSource
4506
- ) || [
4508
+ const configuredCredential = ["environment", "shared_config"].includes(credentialSource) || [
4507
4509
  "authorization_bearer",
4508
4510
  "x_remembrance_api_key",
4509
4511
  "request_header"
@@ -4603,9 +4605,7 @@ function buildConnectionDoctorReport(input) {
4603
4605
  )
4604
4606
  );
4605
4607
  const pluginIssues = issueCodes(pluginHealth.issues);
4606
- const destinationMismatch = pluginIssues.includes(
4607
- "api_destination_mismatch"
4608
- );
4608
+ const destinationMismatch = pluginIssues.includes("api_destination_mismatch");
4609
4609
  checks.push(pluginLifecycleCheck(pluginHealth, pluginIssues));
4610
4610
  checks.push(
4611
4611
  pluginHealth.expected !== true ? notApplicable(
@@ -4693,8 +4693,10 @@ function pluginLifecycleCheck(pluginHealth, issues) {
4693
4693
  "plugin_lifecycle",
4694
4694
  "The core native lifecycle is active; tool or completion events have not occurred yet.",
4695
4695
  "exercise_plugin_lifecycle",
4696
- codex ? "Use one Remembrance tool, complete one turn, and rerun the doctor. If this warning remains, open /hooks; confirm the Remembrance PostToolUse and Stop hooks are Active, trust any marked Needs review, restart Codex, and retry." : "Use one Remembrance tool, complete one turn, and rerun the doctor.",
4697
- issues
4696
+ codex ? `Use one Remembrance tool, complete one turn, and rerun the doctor. If this warning remains, ${codexHookReviewAction("run_connection_doctor")}` : "Use one Remembrance tool, complete one turn, and rerun the doctor.",
4697
+ issues,
4698
+ false,
4699
+ codex ? CODEX_HOOK_REVIEW_COMMAND : void 0
4698
4700
  );
4699
4701
  }
4700
4702
  if (stringValue(pluginHealth.surface) === "codex") {
@@ -4702,8 +4704,10 @@ function pluginLifecycleCheck(pluginHealth, issues) {
4702
4704
  "plugin_lifecycle",
4703
4705
  "The Codex plugin lifecycle is not active.",
4704
4706
  "review_codex_hook_trust",
4705
- "In Codex, open /hooks. Confirm the Remembrance SessionStart, UserPromptSubmit, PostToolUse, and Stop hooks are Active; trust any marked Needs review. Codex skips new or changed hook definitions until they are trusted again. If the hooks are absent, update or reinstall Remembrance. Then fully quit and reopen Codex, submit one prompt, and rerun the doctor.",
4706
- issues
4707
+ codexHookReviewAction("run_connection_doctor"),
4708
+ issues,
4709
+ false,
4710
+ CODEX_HOOK_REVIEW_COMMAND
4707
4711
  );
4708
4712
  }
4709
4713
  return warning(
@@ -4759,9 +4763,11 @@ function scopeValue(value) {
4759
4763
  }
4760
4764
  function issueCodes(value) {
4761
4765
  if (!Array.isArray(value)) return [];
4762
- return [...new Set(
4763
- value.map((issue) => stringValue(record(issue).code)).filter((code) => Boolean(code))
4764
- )].sort();
4766
+ return [
4767
+ ...new Set(
4768
+ value.map((issue) => stringValue(record(issue).code)).filter((code) => Boolean(code))
4769
+ )
4770
+ ].sort();
4765
4771
  }
4766
4772
  function pass(id, summary) {
4767
4773
  return { id, status: "pass", summary, remediation: null };
@@ -5940,7 +5946,7 @@ var seedSkills = [
5940
5946
  summary: "Operational setup and troubleshooting workflow for Remembrance across Claude Code, Codex, OpenClaw, Cursor, Gemini, MCP, REST, skill-only installs, enterprise keys, and local agent identity.",
5941
5947
  status: "active",
5942
5948
  visibility: "public",
5943
- version: "0.1.11",
5949
+ version: "0.1.13",
5944
5950
  domains: ["agent-skills", "mcp", "resource-discovery"],
5945
5951
  tags: [
5946
5952
  "remembrance",
@@ -5991,7 +5997,7 @@ var seedSkills = [
5991
5997
  "gemini",
5992
5998
  "rest"
5993
5999
  ],
5994
- version: "0.1.11",
6000
+ version: "0.1.13",
5995
6001
  status: "active",
5996
6002
  visibility: "public",
5997
6003
  providers: ["codex", "claude", "cursor", "openclaw", "generic"],
@@ -6176,19 +6182,22 @@ CODEX_CLI="\${CODEX_CLI:-$(command -v codex || true)}"
6176
6182
  [ -x "$CODEX_CLI" ] || { printf '%s\\n' "Codex CLI not found. Install the Codex CLI, or install or update the ChatGPT desktop app on macOS, then try again." >&2; exit 1; }
6177
6183
  "$CODEX_CLI" plugin marketplace add dreamarkinc/remembrance-skills &&
6178
6184
  "$CODEX_CLI" plugin marketplace upgrade remembrance &&
6179
- "$CODEX_CLI" plugin add remembrance@remembrance
6185
+ "$CODEX_CLI" plugin add remembrance@remembrance &&
6186
+ "$CODEX_CLI"
6180
6187
  ~~~
6181
6188
 
6182
6189
  This command handles both first install and update. If zsh says
6183
6190
  "codex: command not found", it discovers the current ChatGPT desktop bundle or
6184
- the legacy Codex app bundle without requiring a shell alias.
6191
+ the legacy Codex app bundle without requiring a shell alias. The final command
6192
+ opens Codex CLI so its secure hook review can be completed immediately.
6185
6193
 
6186
6194
  Codex will not execute plugin hooks until their exact definitions are trusted.
6187
- After installing or updating, fully open Codex, enter \`/hooks\`, and confirm the
6188
- Remembrance \`SessionStart\`, \`UserPromptSubmit\`, \`PostToolUse\`, and \`Stop\` hooks
6189
- all show **Active**. Trust any marked **Needs review**. Changed hook definitions
6190
- require review again; never use
6191
- the automation-only trust bypass for normal installation.
6195
+ In the Codex window opened by the installer, choose **Review hooks** on the
6196
+ automatic **Hooks need review** screen and trust only the Remembrance
6197
+ \`SessionStart\`, \`UserPromptSubmit\`, \`PostToolUse\`, and \`Stop\` hooks.
6198
+ Changed hook definitions show the same review screen again; never use the
6199
+ automation-only trust bypass for normal installation. Exit that window, then
6200
+ fully restart Codex.
6192
6201
 
6193
6202
  OpenClaw:
6194
6203
 
@@ -6246,9 +6255,10 @@ Integrations & MCP**, and verify query, invocation, feedback, and contribution
6246
6255
  receipts in both local and cloud runs.
6247
6256
 
6248
6257
  After installing any native plugin, restart the agent app/session and approve
6249
- the runtime's trust request. For Codex, use the exact \`/hooks\` check above;
6250
- changed hook definitions require review again. A currently running Codex or
6251
- Claude thread usually cannot hot-load newly installed plugin tools.
6258
+ the runtime's trust request. For Codex, complete the automatic hook review
6259
+ above; changed hook definitions show the same review screen again. A currently
6260
+ running Codex or Claude thread usually cannot hot-load newly installed plugin
6261
+ tools.
6252
6262
 
6253
6263
  ## Enterprise/org key setup
6254
6264
 
@@ -6835,9 +6845,11 @@ be copied to ".agents/skills/remembrancer/SKILL.md" for compatible providers.
6835
6845
  ## Troubleshooting matrix
6836
6846
 
6837
6847
  - "Plugin installed, but no tools": restart the agent app/session; confirm the
6838
- plugin is enabled and contains the runtime-specific manifest. In Codex, open
6839
- \`/hooks\`, confirm all four Remembrance hooks show **Active**, and trust any
6840
- marked **Needs review**; updates that change hooks require review again.
6848
+ plugin is enabled and contains the runtime-specific manifest. For Codex,
6849
+ launch the installer-provided command, choose **Review hooks** on the
6850
+ automatic review screen, and trust only the listed Remembrance hooks. Exit
6851
+ that window and fully restart Codex; updates that change hooks show the same
6852
+ review screen again.
6841
6853
  - "Agent has tools but does not use them": first verify a concrete query receipt,
6842
6854
  then test a short contextual follow-up such as "fix these issues". Native
6843
6855
  prompt hooks should inject a full-conversation query reminder, and completion
@@ -9750,10 +9762,7 @@ function localPluginLifecycleHealth(options) {
9750
9762
  issues: [
9751
9763
  {
9752
9764
  code: "invalid_lifecycle_marker",
9753
- action: nativeLifecycleRepairAction(
9754
- surface,
9755
- "get_connection_status"
9756
- )
9765
+ action: nativeLifecycleRepairAction(surface, "get_connection_status")
9757
9766
  }
9758
9767
  ]
9759
9768
  };
@@ -9792,13 +9801,13 @@ function localPluginLifecycleHealth(options) {
9792
9801
  if (coreLifecycleObserved && !components.tool_observer.observed) {
9793
9802
  issues.push({
9794
9803
  code: "tool_observer_not_observed",
9795
- action: surface === "codex" ? "Use a Remembrance MCP tool, then call get_connection_status again. If this remains missing, open /hooks; confirm the Remembrance PostToolUse hook is Active, trust it if marked Needs review, restart Codex, and retry." : "No native tool observer has run in this session yet. Use a Remembrance MCP tool, then call get_connection_status again."
9804
+ action: surface === "codex" ? `Use a Remembrance MCP tool, then call get_connection_status again. If this remains missing, ${codexHookReviewAction("get_connection_status")}` : "No native tool observer has run in this session yet. Use a Remembrance MCP tool, then call get_connection_status again."
9796
9805
  });
9797
9806
  }
9798
9807
  if (coreLifecycleObserved && !components.completion_hook.observed) {
9799
9808
  issues.push({
9800
9809
  code: "completion_hook_not_observed",
9801
- action: surface === "codex" ? "Complete one turn, then call get_connection_status again. If this remains missing, open /hooks; confirm the Remembrance Stop hook is Active, trust it if marked Needs review, restart Codex, and retry." : "No native completion hook has run in this session yet. Complete one turn, then call get_connection_status again."
9810
+ action: surface === "codex" ? `Complete one turn, then call get_connection_status again. If this remains missing, ${codexHookReviewAction("get_connection_status")}` : "No native completion hook has run in this session yet. Complete one turn, then call get_connection_status again."
9802
9811
  });
9803
9812
  }
9804
9813
  const lastSeenMs = validLifecycleTimestamp(marker.last_seen_at, nowMs);
@@ -9883,7 +9892,7 @@ function missingPluginLifecycleHealth(surface) {
9883
9892
  }
9884
9893
  function nativeLifecycleRepairAction(surface, followupTool) {
9885
9894
  if (surface === "codex") {
9886
- return `In Codex, open /hooks. Confirm the Remembrance SessionStart, UserPromptSubmit, PostToolUse, and Stop hooks are Active; trust any marked Needs review. Codex skips new or changed hook definitions until they are trusted again. If the hooks are absent, update or reinstall Remembrance. Then fully quit and reopen Codex, submit one prompt, and call ${followupTool} again.`;
9895
+ return codexHookReviewAction(followupTool);
9887
9896
  }
9888
9897
  return `Update or reinstall the Remembrance plugin, fully restart the host, and confirm native hooks are enabled. Then call ${followupTool} again. MCP-only access remains available.`;
9889
9898
  }
@@ -10011,7 +10020,7 @@ var apiConfiguration = resolveApiConfiguration();
10011
10020
  var apiBase = apiConfiguration.baseUrl;
10012
10021
  var MAX_REMOTE_RESPONSE_BYTES = 4 * 1024 * 1024;
10013
10022
  var DOCTOR_PROBE_TIMEOUT_MS = 7500;
10014
- var SERVER_VERSION = true ? "0.1.51" : "0.0.0-dev";
10023
+ var SERVER_VERSION = true ? "0.1.52" : "0.0.0-dev";
10015
10024
  var tools = toolDefinitions;
10016
10025
  var doctorCliRequested = process.argv[2] === "doctor";
10017
10026
  var inputBuffer = Buffer.alloc(0);
@@ -114,19 +114,22 @@ CODEX_CLI="${CODEX_CLI:-$(command -v codex || true)}"
114
114
  [ -x "$CODEX_CLI" ] || { printf '%s\n' "Codex CLI not found. Install the Codex CLI, or install or update the ChatGPT desktop app on macOS, then try again." >&2; exit 1; }
115
115
  "$CODEX_CLI" plugin marketplace add dreamarkinc/remembrance-skills &&
116
116
  "$CODEX_CLI" plugin marketplace upgrade remembrance &&
117
- "$CODEX_CLI" plugin add remembrance@remembrance
117
+ "$CODEX_CLI" plugin add remembrance@remembrance &&
118
+ "$CODEX_CLI"
118
119
  ~~~
119
120
 
120
121
  This command handles both first install and update. If zsh says
121
122
  "codex: command not found", it discovers the current ChatGPT desktop bundle or
122
- the legacy Codex app bundle without requiring a shell alias.
123
+ the legacy Codex app bundle without requiring a shell alias. The final command
124
+ opens Codex CLI so its secure hook review can be completed immediately.
123
125
 
124
126
  Codex will not execute plugin hooks until their exact definitions are trusted.
125
- After installing or updating, fully open Codex, enter `/hooks`, and confirm the
126
- Remembrance `SessionStart`, `UserPromptSubmit`, `PostToolUse`, and `Stop` hooks
127
- all show **Active**. Trust any marked **Needs review**. Changed hook definitions
128
- require review again; never use
129
- the automation-only trust bypass for normal installation.
127
+ In the Codex window opened by the installer, choose **Review hooks** on the
128
+ automatic **Hooks need review** screen and trust only the Remembrance
129
+ `SessionStart`, `UserPromptSubmit`, `PostToolUse`, and `Stop` hooks.
130
+ Changed hook definitions show the same review screen again; never use the
131
+ automation-only trust bypass for normal installation. Exit that window, then
132
+ fully restart Codex.
130
133
 
131
134
  OpenClaw:
132
135
 
@@ -184,9 +187,10 @@ Integrations & MCP**, and verify query, invocation, feedback, and contribution
184
187
  receipts in both local and cloud runs.
185
188
 
186
189
  After installing any native plugin, restart the agent app/session and approve
187
- the runtime's trust request. For Codex, use the exact `/hooks` check above;
188
- changed hook definitions require review again. A currently running Codex or
189
- Claude thread usually cannot hot-load newly installed plugin tools.
190
+ the runtime's trust request. For Codex, complete the automatic hook review
191
+ above; changed hook definitions show the same review screen again. A currently
192
+ running Codex or Claude thread usually cannot hot-load newly installed plugin
193
+ tools.
190
194
 
191
195
  ## Enterprise/org key setup
192
196
 
@@ -838,9 +842,11 @@ be copied to ".agents/skills/remembrancer/SKILL.md" for compatible providers.
838
842
  ## Troubleshooting matrix
839
843
 
840
844
  - "Plugin installed, but no tools": restart the agent app/session; confirm the
841
- plugin is enabled and contains the runtime-specific manifest. In Codex, open
842
- `/hooks`, confirm all four Remembrance hooks show **Active**, and trust any
843
- marked **Needs review**; updates that change hooks require review again.
845
+ plugin is enabled and contains the runtime-specific manifest. For Codex,
846
+ launch the installer-provided command, choose **Review hooks** on the
847
+ automatic review screen, and trust only the listed Remembrance hooks. Exit
848
+ that window and fully restart Codex; updates that change hooks show the same
849
+ review screen again.
844
850
  - "Agent has tools but does not use them": first verify a concrete query receipt,
845
851
  then test a short contextual follow-up such as "fix these issues". Native
846
852
  prompt hooks should inject a full-conversation query reminder, and completion