open-agents-ai 0.138.79 → 0.138.80

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.
Files changed (2) hide show
  1. package/dist/index.js +56 -1
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -5653,6 +5653,20 @@ async function handleCmd(cmd) {
5653
5653
  var _cpiConfidence = parseFloat(args.confidence || '0.7');
5654
5654
  if (!_cpiInsight) { writeResp(id, { ok: false, output: 'insight text required' }); break; }
5655
5655
  try {
5656
+ // Detect local model tier from warm model
5657
+ var _cpiTier = 'unknown';
5658
+ try {
5659
+ var _cpiOllamaUrl = process.env.OLLAMA_HOST || 'http://localhost:11434';
5660
+ if (_cLastModel) {
5661
+ var _cpiTagsResp = await fetch(_cpiOllamaUrl + '/api/tags');
5662
+ var _cpiTags = await _cpiTagsResp.json();
5663
+ var _cpiModel = (_cpiTags.models || []).find(function(m) { return m.name === _cLastModel; });
5664
+ if (_cpiModel) {
5665
+ var _cpiSizeGB = (_cpiModel.size || 0) / (1024*1024*1024);
5666
+ _cpiTier = _cpiSizeGB >= 20 ? 'large' : _cpiSizeGB >= 5 ? 'medium' : 'small';
5667
+ }
5668
+ }
5669
+ } catch {}
5656
5670
  var _cpiDelta = {
5657
5671
  type: 'cohere.learning',
5658
5672
  delta_id: 'insight-' + Date.now().toString(36) + '-' + Math.random().toString(36).slice(2, 6),
@@ -5661,7 +5675,7 @@ async function handleCmd(cmd) {
5661
5675
  insight: String(_cpiInsight).slice(0, 500),
5662
5676
  category: _cpiCategory,
5663
5677
  confidence: _cpiConfidence,
5664
- model_tier: 'unknown',
5678
+ model_tier: _cpiTier,
5665
5679
  timestamp: Date.now(),
5666
5680
  };
5667
5681
  _natsConn.publish('nexus.cohere.learning', _natsCodec.encode(JSON.stringify(_cpiDelta)));
@@ -6887,6 +6901,47 @@ process.on('unhandledRejection', (reason) => {
6887
6901
  if (!_lData.insight || !_lData.source_peer) continue;
6888
6902
  // Skip our own insights
6889
6903
  if (_lData.source_peer === nexus.peerId) continue;
6904
+
6905
+ // WO-DL2: Model-tier-aware ingestion filtering
6906
+ // Determine local model tier from warm model size
6907
+ var _lLocalTier = 'unknown';
6908
+ try {
6909
+ var _lOllamaUrl = process.env.OLLAMA_HOST || 'http://localhost:11434';
6910
+ if (_cLastModel) {
6911
+ var _lTagsResp = await fetch(_lOllamaUrl + '/api/tags');
6912
+ var _lTags = await _lTagsResp.json();
6913
+ var _lModel = (_lTags.models || []).find(function(m) { return m.name === _cLastModel; });
6914
+ if (_lModel) {
6915
+ var _lSizeGB = (_lModel.size || 0) / (1024*1024*1024);
6916
+ _lLocalTier = _lSizeGB >= 20 ? 'large' : _lSizeGB >= 5 ? 'medium' : 'small';
6917
+ }
6918
+ }
6919
+ } catch {}
6920
+
6921
+ var _lSourceTier = _lData.model_tier || 'unknown';
6922
+ var _lCategory = _lData.category || 'strategy';
6923
+ var _lConfidence = _lData.confidence || 0.5;
6924
+
6925
+ // Tier filtering rules:
6926
+ // - Same or lower tier \u2192 always ingest
6927
+ // - Higher tier \u2192 only if confidence > 0.8 AND category is recovery (model-agnostic)
6928
+ // - Never ingest complex strategies from much larger models to tiny models
6929
+ var _lTierOrder = { 'small': 0, 'medium': 1, 'large': 2, 'unknown': 1 };
6930
+ var _lLocalLevel = _lTierOrder[_lLocalTier] || 1;
6931
+ var _lSourceLevel = _lTierOrder[_lSourceTier] || 1;
6932
+
6933
+ if (_lSourceLevel > _lLocalLevel) {
6934
+ // Insight from a LARGER model \u2014 apply strict filtering
6935
+ if (_lConfidence < 0.8) {
6936
+ dlog('COHERE learning SKIPPED (low confidence from higher tier): ' + _lCategory + ' conf=' + _lConfidence);
6937
+ continue;
6938
+ }
6939
+ if (_lCategory !== 'recovery' && _lCategory !== 'debug_heuristic') {
6940
+ dlog('COHERE learning SKIPPED (non-recovery from higher tier): ' + _lCategory);
6941
+ continue;
6942
+ }
6943
+ }
6944
+
6890
6945
  // Ingest: write to local metabolism store
6891
6946
  var _lStoreDir = join(nexusDir, '..', 'memory', 'metabolism');
6892
6947
  var _lStoreFile = join(_lStoreDir, 'store.json');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.138.79",
3
+ "version": "0.138.80",
4
4
  "description": "AI coding agent powered by open-source models (Ollama/vLLM) — interactive TUI with agentic tool-calling loop",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",