rlhf-feedback-loop 0.6.12 → 0.6.13

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.
@@ -3,6 +3,6 @@
3
3
  - `chatgpt/openapi.yaml`: import into GPT Actions.
4
4
  - `gemini/function-declarations.json`: Gemini function-calling definitions.
5
5
  - `mcp/server-stdio.js`: underlying local MCP stdio server implementation.
6
- - `claude/.mcp.json`: example Claude Code MCP config using `npx -y rlhf-feedback-loop@0.6.12 serve`.
6
+ - `claude/.mcp.json`: example Claude Code MCP config using `npx -y rlhf-feedback-loop@0.6.13 serve`.
7
7
  - `codex/config.toml`: example Codex MCP profile section using the same version-pinned portable launcher.
8
8
  - `amp/skills/rlhf-feedback/SKILL.md`: Amp skill template.
@@ -1,4 +1,4 @@
1
- # ChatGPT GPT Actions: RLHF Feedback Loop Install
1
+ # ChatGPT GPT Actions: MCP Memory Gateway Install
2
2
 
3
3
  Import the OpenAPI spec into a Custom GPT in under 5 minutes. No coding required.
4
4
 
@@ -1,6 +1,6 @@
1
1
  openapi: 3.1.0
2
2
  info:
3
- title: RLHF Feedback Loop API
3
+ title: MCP Memory Gateway API
4
4
  version: 1.2.0
5
5
  description: |
6
6
  Production API for feedback capture, schema-validated memory promotion,
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "rlhf": {
4
4
  "command": "npx",
5
- "args": ["-y", "rlhf-feedback-loop@0.6.12", "serve"]
5
+ "args": ["-y", "rlhf-feedback-loop@0.6.13", "serve"]
6
6
  }
7
7
  }
8
8
  }
@@ -1,4 +1,4 @@
1
1
  # Codex MCP profile (copy into ~/.codex/config.toml or merge section)
2
2
  [mcp_servers.rlhf]
3
3
  command = "npx"
4
- args = ["-y", "rlhf-feedback-loop@0.6.12", "serve"]
4
+ args = ["-y", "rlhf-feedback-loop@0.6.13", "serve"]
package/bin/cli.js CHANGED
@@ -7,7 +7,7 @@
7
7
  * npx rlhf-feedback-loop capture # capture feedback
8
8
  * npx rlhf-feedback-loop export-dpo # export DPO training pairs
9
9
  * npx rlhf-feedback-loop stats # feedback analytics + Revenue-at-Risk
10
- * npx rlhf-feedback-loop pro # upgrade to Cloud Pro
10
+ * npx rlhf-feedback-loop pro # upgrade to Context Gateway
11
11
  */
12
12
 
13
13
  'use strict';
@@ -457,7 +457,7 @@ function stats() {
457
457
  console.log(` Repeated Failures detected: ${data.totalNegative}`);
458
458
  console.log(` Estimated Operational Loss: $${revenueAtRisk}`);
459
459
  console.log(' Action Required: Run "npx rlhf-feedback-loop rules" to generate guardrails.');
460
- console.log(' Strategic Recommendation: Upgrade to Cloud Pro to sync these rules across your team.');
460
+ console.log(' Strategic Recommendation: Upgrade to Context Gateway to sync these rules across your team.');
461
461
  console.log(' Run: npx rlhf-feedback-loop pro');
462
462
  } else {
463
463
  console.log('\nāœ… System is currently high-reliability. No immediate revenue loss detected.');
@@ -466,7 +466,7 @@ function stats() {
466
466
 
467
467
  function pro() {
468
468
  const stripeUrl = 'https://buy.stripe.com/bJe14neyU4r4f0leOD3sI02';
469
- console.log('\nšŸš€ RLHF Feedback Loop — Cloud Pro');
469
+ console.log('\nšŸš€ MCP Memory Gateway — Context Gateway');
470
470
  console.log('─'.repeat(50));
471
471
  console.log('Unlock the full Agentic Control Plane:');
472
472
  console.log(' - Hosted Team API (Shared memory across all repos)');
@@ -628,7 +628,7 @@ function serve() {
628
628
  }
629
629
 
630
630
  function install() {
631
- console.log('Installing RLHF Feedback Loop as a global MCP skill...');
631
+ console.log('Installing MCP Memory Gateway as a global MCP skill...');
632
632
  const results = [
633
633
  setupClaude(),
634
634
  setupCodex(),
@@ -638,10 +638,10 @@ function install() {
638
638
  ];
639
639
  const success = results.some(r => r === true);
640
640
  if (success) {
641
- console.log('\nSuccess! RLHF Feedback Loop is now available to your agents.');
641
+ console.log('\nSuccess! MCP Memory Gateway is now available to your agents.');
642
642
  console.log('Try asking your agent: "Capture positive feedback for this task"');
643
643
  } else {
644
- console.log('\nRLHF Feedback Loop is already configured.');
644
+ console.log('\nMCP Memory Gateway is already configured.');
645
645
  }
646
646
  }
647
647
 
@@ -676,7 +676,7 @@ function help() {
676
676
  console.log(' export-dpo Export DPO training pairs (prompt/chosen/rejected JSONL)');
677
677
  console.log(' rules Generate prevention rules from repeated failures');
678
678
  console.log(' self-heal Run self-healing check and auto-fix');
679
- console.log(' pro Upgrade to Cloud Pro ($10/mo)');
679
+ console.log(' pro Upgrade to Context Gateway ($10/mo)');
680
680
  console.log(' prove [--target=X] Run proof harness (adapters|automation|attribution|lancedb|local-intelligence|...)');
681
681
  console.log(' watch [flags] Watch .rlhf/ for external signals and ingest through pipeline (--once, --source=X)');
682
682
  console.log(' status Show learning curve dashboard — approval trend + failure domains');
@@ -1,6 +1,6 @@
1
1
  openapi: 3.1.0
2
2
  info:
3
- title: RLHF Feedback Loop API
3
+ title: MCP Memory Gateway API
4
4
  version: 1.2.0
5
5
  description: |
6
6
  Production API for feedback capture, schema-validated memory promotion,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rlhf-feedback-loop",
3
- "version": "0.6.12",
3
+ "version": "0.6.13",
4
4
  "description": "Feedback-Driven Development (FDD) for AI agents — capture preference signals, steer behavior via Thompson Sampling, and export KTO/DPO training pairs for downstream fine-tuning.",
5
5
  "homepage": "https://rlhf-feedback-loop-production.up.railway.app",
6
6
  "repository": {
@@ -136,5 +136,5 @@
136
136
  "apache-arrow": "^18.1.0",
137
137
  "stripe": "^20.4.1"
138
138
  },
139
- "mcpName": "io.github.igorganapolsky/rlhf-feedback-loop"
139
+ "mcpName": "io.github.IgorGanapolsky/rlhf-feedback-loop"
140
140
  }
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * RLHF Feedback Loop (local-first)
3
+ * MCP Memory Gateway (local-first)
4
4
  *
5
5
  * Pipeline:
6
6
  * thumbs up/down -> resolve action -> validate memory -> append logs
@@ -74,7 +74,7 @@ TXT
74
74
  budget_check "$PB_ESTIMATE_PER_DIAGRAM"
75
75
  paperbanana generate \
76
76
  --input docs/diagrams/rlhf-architecture.txt \
77
- --caption "RLHF Feedback Loop architecture for AI coding agents with schema gate, memory store, prevention rules, and DPO export" \
77
+ --caption "MCP Memory Gateway architecture for AI coding agents with schema gate, memory store, prevention rules, and DPO export" \
78
78
  --vlm-provider gemini \
79
79
  --vlm-model "$PB_VLM_MODEL" \
80
80
  --image-provider google_imagen \
@@ -120,9 +120,13 @@ function watch(sourceFilter) {
120
120
  if (sourceFilter) log(`[jsonl-watcher] Filtering source: ${sourceFilter}`);
121
121
 
122
122
  setInterval(() => {
123
- const result = processNewEntries(FEEDBACK_DIR, FEEDBACK_LOG_PATH, sourceFilter);
124
- if (result.processed > 0) {
125
- log(`[jsonl-watcher] Ingested ${result.processed} entries (${result.promoted} promoted)`);
123
+ try {
124
+ const result = processNewEntries(FEEDBACK_DIR, FEEDBACK_LOG_PATH, sourceFilter);
125
+ if (result.processed > 0) {
126
+ log(`[jsonl-watcher] Ingested ${result.processed} entries (${result.promoted} promoted)`);
127
+ }
128
+ } catch (err) {
129
+ log(`[jsonl-watcher] Poll error (non-fatal): ${err.message}`);
126
130
  }
127
131
  }, POLL_INTERVAL_MS);
128
132
  }
package/src/api/server.js CHANGED
@@ -126,7 +126,7 @@ function renderCheckoutSuccessPage() {
126
126
  <head>
127
127
  <meta charset="UTF-8" />
128
128
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
129
- <title>Cloud Pro Activated</title>
129
+ <title>Context Gateway Activated</title>
130
130
  <style>
131
131
  :root {
132
132
  --bg: #f6f1e8;
@@ -227,7 +227,7 @@ function renderCheckoutSuccessPage() {
227
227
  </head>
228
228
  <body>
229
229
  <main>
230
- <span class="eyebrow">Cloud Pro</span>
230
+ <span class="eyebrow">Context Gateway</span>
231
231
  <h1>Your hosted API key is ready.</h1>
232
232
  <p class="lead">This page verifies your Stripe session, provisions the key if needed, and gives you a copy-paste onboarding snippet for the hosted API.</p>
233
233
 
@@ -284,7 +284,7 @@ function renderCheckoutSuccessPage() {
284
284
  return;
285
285
  }
286
286
 
287
- statusEl.textContent = 'Cloud Pro activated.';
287
+ statusEl.textContent = 'Context Gateway activated.';
288
288
  summaryEl.textContent = 'Your API key is ready. Copy the snippets below into your workflow project.';
289
289
  keyBlock.textContent = body.apiKey || 'Provisioned, but no key was returned.';
290
290
  envBlock.textContent = body.nextSteps && body.nextSteps.env ? body.nextSteps.env : 'Environment snippet unavailable.';
@@ -346,7 +346,7 @@ function renderCheckoutCancelledPage() {
346
346
  <main>
347
347
  <h1>Checkout cancelled.</h1>
348
348
  <p>No charge was made. You can return to the landing page and restart checkout whenever you are ready.</p>
349
- <a href="/">Return to Cloud Pro</a>
349
+ <a href="/">Return to Context Gateway</a>
350
350
  </main>
351
351
  </body>
352
352
  </html>`;