@remembrance-ai/opencode-plugin 0.1.51 → 0.1.53

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.53"
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.53"
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.53",
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. If Codex shows a Hooks need review screen, choose Review hooks and trust only the Remembrance SessionStart, UserPromptSubmit, PostToolUse, and Stop hooks. If no review screen appears, continue: Codex may be reusing an existing valid trust decision. Fully restart Codex, submit one prompt, use one Remembrance tool, complete one turn, and call ${followupTool} again. If the lifecycle warning remains, update or reinstall Remembrance and repeat this check.`;
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.14",
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.14",
5995
6001
  status: "active",
5996
6002
  visibility: "public",
5997
6003
  providers: ["codex", "claude", "cursor", "openclaw", "generic"],
@@ -6176,19 +6182,25 @@ 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 when
6193
+ Codex requires it.
6185
6194
 
6186
6195
  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.
6196
+ In the Codex window opened by the installer, if Codex shows a **Hooks need
6197
+ review** screen, choose **Review hooks** and trust only the Remembrance
6198
+ \`SessionStart\`, \`UserPromptSubmit\`, \`PostToolUse\`, and \`Stop\` hooks.
6199
+ If no review screen appears, continue: Codex may be reusing an existing valid
6200
+ trust decision. Changed hook definitions show the same review screen again;
6201
+ never use the automation-only trust bypass for normal installation. Fully
6202
+ restart Codex, submit one prompt, use one Remembrance tool, complete one turn,
6203
+ and run \`run_connection_doctor\`.
6192
6204
 
6193
6205
  OpenClaw:
6194
6206
 
@@ -6246,9 +6258,11 @@ Integrations & MCP**, and verify query, invocation, feedback, and contribution
6246
6258
  receipts in both local and cloud runs.
6247
6259
 
6248
6260
  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.
6261
+ the runtime's trust request when one appears. For Codex, complete the hook
6262
+ review above if Codex requests it; unchanged, previously trusted definitions
6263
+ may not show another review screen. Changed hook definitions show the review
6264
+ screen again. A currently running Codex or Claude thread usually cannot
6265
+ hot-load newly installed plugin tools.
6252
6266
 
6253
6267
  ## Enterprise/org key setup
6254
6268
 
@@ -6835,9 +6849,14 @@ be copied to ".agents/skills/remembrancer/SKILL.md" for compatible providers.
6835
6849
  ## Troubleshooting matrix
6836
6850
 
6837
6851
  - "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.
6852
+ plugin is enabled and contains the runtime-specific manifest. For Codex,
6853
+ launch the installer-provided command. If Codex shows a hook review, choose
6854
+ **Review hooks** and trust only the listed Remembrance hooks; if it does not,
6855
+ continue because Codex may be reusing an existing valid trust decision.
6856
+ Fully restart Codex, submit one prompt, use one Remembrance tool, complete one
6857
+ turn, and run \`run_connection_doctor\`. If the lifecycle remains incomplete,
6858
+ update or reinstall the plugin and repeat the check. Updates that change
6859
+ hooks show the review screen again.
6841
6860
  - "Agent has tools but does not use them": first verify a concrete query receipt,
6842
6861
  then test a short contextual follow-up such as "fix these issues". Native
6843
6862
  prompt hooks should inject a full-conversation query reminder, and completion
@@ -9750,10 +9769,7 @@ function localPluginLifecycleHealth(options) {
9750
9769
  issues: [
9751
9770
  {
9752
9771
  code: "invalid_lifecycle_marker",
9753
- action: nativeLifecycleRepairAction(
9754
- surface,
9755
- "get_connection_status"
9756
- )
9772
+ action: nativeLifecycleRepairAction(surface, "get_connection_status")
9757
9773
  }
9758
9774
  ]
9759
9775
  };
@@ -9792,13 +9808,13 @@ function localPluginLifecycleHealth(options) {
9792
9808
  if (coreLifecycleObserved && !components.tool_observer.observed) {
9793
9809
  issues.push({
9794
9810
  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."
9811
+ 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
9812
  });
9797
9813
  }
9798
9814
  if (coreLifecycleObserved && !components.completion_hook.observed) {
9799
9815
  issues.push({
9800
9816
  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."
9817
+ 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
9818
  });
9803
9819
  }
9804
9820
  const lastSeenMs = validLifecycleTimestamp(marker.last_seen_at, nowMs);
@@ -9883,7 +9899,7 @@ function missingPluginLifecycleHealth(surface) {
9883
9899
  }
9884
9900
  function nativeLifecycleRepairAction(surface, followupTool) {
9885
9901
  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.`;
9902
+ return codexHookReviewAction(followupTool);
9887
9903
  }
9888
9904
  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
9905
  }
@@ -10011,7 +10027,7 @@ var apiConfiguration = resolveApiConfiguration();
10011
10027
  var apiBase = apiConfiguration.baseUrl;
10012
10028
  var MAX_REMOTE_RESPONSE_BYTES = 4 * 1024 * 1024;
10013
10029
  var DOCTOR_PROBE_TIMEOUT_MS = 7500;
10014
- var SERVER_VERSION = true ? "0.1.51" : "0.0.0-dev";
10030
+ var SERVER_VERSION = true ? "0.1.53" : "0.0.0-dev";
10015
10031
  var tools = toolDefinitions;
10016
10032
  var doctorCliRequested = process.argv[2] === "doctor";
10017
10033
  var inputBuffer = Buffer.alloc(0);
@@ -114,19 +114,25 @@ 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 when
125
+ Codex requires it.
123
126
 
124
127
  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.
128
+ In the Codex window opened by the installer, if Codex shows a **Hooks need
129
+ review** screen, choose **Review hooks** and trust only the Remembrance
130
+ `SessionStart`, `UserPromptSubmit`, `PostToolUse`, and `Stop` hooks.
131
+ If no review screen appears, continue: Codex may be reusing an existing valid
132
+ trust decision. Changed hook definitions show the same review screen again;
133
+ never use the automation-only trust bypass for normal installation. Fully
134
+ restart Codex, submit one prompt, use one Remembrance tool, complete one turn,
135
+ and run `run_connection_doctor`.
130
136
 
131
137
  OpenClaw:
132
138
 
@@ -184,9 +190,11 @@ Integrations & MCP**, and verify query, invocation, feedback, and contribution
184
190
  receipts in both local and cloud runs.
185
191
 
186
192
  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.
193
+ the runtime's trust request when one appears. For Codex, complete the hook
194
+ review above if Codex requests it; unchanged, previously trusted definitions
195
+ may not show another review screen. Changed hook definitions show the review
196
+ screen again. A currently running Codex or Claude thread usually cannot
197
+ hot-load newly installed plugin tools.
190
198
 
191
199
  ## Enterprise/org key setup
192
200
 
@@ -838,9 +846,14 @@ be copied to ".agents/skills/remembrancer/SKILL.md" for compatible providers.
838
846
  ## Troubleshooting matrix
839
847
 
840
848
  - "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.
849
+ plugin is enabled and contains the runtime-specific manifest. For Codex,
850
+ launch the installer-provided command. If Codex shows a hook review, choose
851
+ **Review hooks** and trust only the listed Remembrance hooks; if it does not,
852
+ continue because Codex may be reusing an existing valid trust decision.
853
+ Fully restart Codex, submit one prompt, use one Remembrance tool, complete one
854
+ turn, and run `run_connection_doctor`. If the lifecycle remains incomplete,
855
+ update or reinstall the plugin and repeat the check. Updates that change
856
+ hooks show the review screen again.
844
857
  - "Agent has tools but does not use them": first verify a concrete query receipt,
845
858
  then test a short contextual follow-up such as "fix these issues". Native
846
859
  prompt hooks should inject a full-conversation query reminder, and completion