@pcircle/memesh 3.0.1 → 3.1.0
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/README.de.md +234 -0
- package/README.es.md +234 -0
- package/README.fr.md +234 -0
- package/README.ja.md +234 -0
- package/README.ko.md +234 -0
- package/README.md +141 -94
- package/README.pt.md +234 -0
- package/README.th.md +234 -0
- package/README.vi.md +234 -0
- package/README.zh-CN.md +234 -0
- package/README.zh-TW.md +234 -0
- package/dashboard/dist/index.html +16 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +5 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/failure-analyzer.d.ts +13 -0
- package/dist/core/failure-analyzer.d.ts.map +1 -0
- package/dist/core/failure-analyzer.js +98 -0
- package/dist/core/failure-analyzer.js.map +1 -0
- package/dist/core/lesson-engine.d.ts +21 -0
- package/dist/core/lesson-engine.d.ts.map +1 -0
- package/dist/core/lesson-engine.js +76 -0
- package/dist/core/lesson-engine.js.map +1 -0
- package/dist/core/operations.d.ts +2 -1
- package/dist/core/operations.d.ts.map +1 -1
- package/dist/core/operations.js +15 -0
- package/dist/core/operations.js.map +1 -1
- package/dist/core/schema-export.d.ts.map +1 -1
- package/dist/core/schema-export.js +18 -0
- package/dist/core/schema-export.js.map +1 -1
- package/dist/core/types.d.ts +12 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/transports/cli/cli.js +35 -3
- package/dist/transports/cli/cli.js.map +1 -1
- package/dist/transports/http/server.d.ts.map +1 -1
- package/dist/transports/http/server.js +52 -1
- package/dist/transports/http/server.js.map +1 -1
- package/dist/transports/mcp/handlers.d.ts +31 -0
- package/dist/transports/mcp/handlers.d.ts.map +1 -1
- package/dist/transports/mcp/handlers.js +34 -1
- package/dist/transports/mcp/handlers.js.map +1 -1
- package/package.json +1 -1
- package/plugin.json +1 -1
- package/scripts/hooks/session-start.js +38 -1
- package/scripts/hooks/session-summary.js +34 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>MeMesh LLM Memory — Dashboard</title>
|
|
7
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
8
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
9
|
+
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet" />
|
|
10
|
+
<script type="module" crossorigin>(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))a(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const c of r.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&a(c)}).observe(document,{childList:!0,subtree:!0});function s(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function a(i){if(i.ep)return;i.ep=!0;const r=s(i);fetch(i.href,r)}})();var Q,k,xe,E,_e,Ce,Te,Z,D,B,Pe,oe,te,se,U={},q=[],De=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Y=Array.isArray;function T(e,t){for(var s in t)e[s]=t[s];return e}function ce(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Ke(e,t,s){var a,i,r,c={};for(r in t)r=="key"?a=t[r]:r=="ref"?i=t[r]:c[r]=t[r];if(arguments.length>2&&(c.children=arguments.length>3?Q.call(arguments,2):s),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)c[r]===void 0&&(c[r]=e.defaultProps[r]);return K(e,c,a,i,null)}function K(e,t,s,a,i){var r={type:e,props:t,key:s,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++xe,__i:-1,__u:0};return i==null&&k.vnode!=null&&k.vnode(r),r}function R(e){return e.children}function H(e,t){this.props=e,this.context=t}function F(e,t){if(t==null)return e.__?F(e.__,e.__i+1):null;for(var s;t<e.__k.length;t++)if((s=e.__k[t])!=null&&s.__e!=null)return s.__e;return typeof e.type=="function"?F(e):null}function He(e){if(e.__P&&e.__d){var t=e.__v,s=t.__e,a=[],i=[],r=T({},t);r.__v=t.__v+1,k.vnode&&k.vnode(r),le(e.__P,r,t,e.__n,e.__P.namespaceURI,32&t.__u?[s]:null,a,s??F(t),!!(32&t.__u),i),r.__v=t.__v,r.__.__k[r.__i]=r,Fe(a,r,i),t.__e=t.__=null,r.__e!=s&&Ee(r)}}function Ee(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Ee(e)}function ue(e){(!e.__d&&(e.__d=!0)&&E.push(e)&&!G.__r++||_e!=k.debounceRendering)&&((_e=k.debounceRendering)||Ce)(G)}function G(){try{for(var e,t=1;E.length;)E.length>t&&E.sort(Te),e=E.shift(),t=E.length,He(e)}finally{E.length=G.__r=0}}function Re(e,t,s,a,i,r,c,d,_,l,m){var o,b,h,f,p,g,y,w=a&&a.__k||q,x=t.length;for(_=Oe(s,t,w,_,x),o=0;o<x;o++)(h=s.__k[o])!=null&&(b=h.__i!=-1&&w[h.__i]||U,h.__i=o,g=le(e,h,b,i,r,c,d,_,l,m),f=h.__e,h.ref&&b.ref!=h.ref&&(b.ref&&de(b.ref,null,h),m.push(h.ref,h.__c||f,h)),p==null&&f!=null&&(p=f),(y=!!(4&h.__u))||b.__k===h.__k?(_=Ie(h,_,e,y),y&&b.__e&&(b.__e=null)):typeof h.type=="function"&&g!==void 0?_=g:f&&(_=f.nextSibling),h.__u&=-7);return s.__e=p,_}function Oe(e,t,s,a,i){var r,c,d,_,l,m=s.length,o=m,b=0;for(e.__k=new Array(i),r=0;r<i;r++)(c=t[r])!=null&&typeof c!="boolean"&&typeof c!="function"?(typeof c=="string"||typeof c=="number"||typeof c=="bigint"||c.constructor==String?c=e.__k[r]=K(null,c,null,null,null):Y(c)?c=e.__k[r]=K(R,{children:c},null,null,null):c.constructor===void 0&&c.__b>0?c=e.__k[r]=K(c.type,c.props,c.key,c.ref?c.ref:null,c.__v):e.__k[r]=c,_=r+b,c.__=e,c.__b=e.__b+1,d=null,(l=c.__i=Ue(c,s,_,o))!=-1&&(o--,(d=s[l])&&(d.__u|=2)),d==null||d.__v==null?(l==-1&&(i>m?b--:i<m&&b++),typeof c.type!="function"&&(c.__u|=4)):l!=_&&(l==_-1?b--:l==_+1?b++:(l>_?b--:b++,c.__u|=4))):e.__k[r]=null;if(o)for(r=0;r<m;r++)(d=s[r])!=null&&(2&d.__u)==0&&(d.__e==a&&(a=F(d)),Ne(d,d));return a}function Ie(e,t,s,a){var i,r;if(typeof e.type=="function"){for(i=e.__k,r=0;i&&r<i.length;r++)i[r]&&(i[r].__=e,t=Ie(i[r],t,s,a));return t}e.__e!=t&&(a&&(t&&e.type&&!t.parentNode&&(t=F(e)),s.insertBefore(e.__e,t||null)),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Ue(e,t,s,a){var i,r,c,d=e.key,_=e.type,l=t[s],m=l!=null&&(2&l.__u)==0;if(l===null&&d==null||m&&d==l.key&&_==l.type)return s;if(a>(m?1:0)){for(i=s-1,r=s+1;i>=0||r<t.length;)if((l=t[c=i>=0?i--:r++])!=null&&(2&l.__u)==0&&d==l.key&&_==l.type)return c}return-1}function ge(e,t,s){t[0]=="-"?e.setProperty(t,s??""):e[t]=s==null?"":typeof s!="number"||De.test(t)?s:s+"px"}function z(e,t,s,a,i){var r,c;e:if(t=="style")if(typeof s=="string")e.style.cssText=s;else{if(typeof a=="string"&&(e.style.cssText=a=""),a)for(t in a)s&&t in s||ge(e.style,t,"");if(s)for(t in s)a&&s[t]==a[t]||ge(e.style,t,s[t])}else if(t[0]=="o"&&t[1]=="n")r=t!=(t=t.replace(Pe,"$1")),c=t.toLowerCase(),t=c in e||t=="onFocusOut"||t=="onFocusIn"?c.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+r]=s,s?a?s[B]=a[B]:(s[B]=oe,e.addEventListener(t,r?se:te,r)):e.removeEventListener(t,r?se:te,r);else{if(i=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=s??"";break e}catch{}typeof s=="function"||(s==null||s===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&s==1?"":s))}}function me(e){return function(t){if(this.l){var s=this.l[t.type+e];if(t[D]==null)t[D]=oe++;else if(t[D]<s[B])return;return s(k.event?k.event(t):t)}}}function le(e,t,s,a,i,r,c,d,_,l){var m,o,b,h,f,p,g,y,w,x,v,A,he,W,J,C=t.type;if(t.constructor!==void 0)return null;128&s.__u&&(_=!!(32&s.__u),r=[d=t.__e=s.__e]),(m=k.__b)&&m(t);e:if(typeof C=="function")try{if(y=t.props,w=C.prototype&&C.prototype.render,x=(m=C.contextType)&&a[m.__c],v=m?x?x.props.value:m.__:a,s.__c?g=(o=t.__c=s.__c).__=o.__E:(w?t.__c=o=new C(y,v):(t.__c=o=new H(y,v),o.constructor=C,o.render=Ge),x&&x.sub(o),o.state||(o.state={}),o.__n=a,b=o.__d=!0,o.__h=[],o._sb=[]),w&&o.__s==null&&(o.__s=o.state),w&&C.getDerivedStateFromProps!=null&&(o.__s==o.state&&(o.__s=T({},o.__s)),T(o.__s,C.getDerivedStateFromProps(y,o.__s))),h=o.props,f=o.state,o.__v=t,b)w&&C.getDerivedStateFromProps==null&&o.componentWillMount!=null&&o.componentWillMount(),w&&o.componentDidMount!=null&&o.__h.push(o.componentDidMount);else{if(w&&C.getDerivedStateFromProps==null&&y!==h&&o.componentWillReceiveProps!=null&&o.componentWillReceiveProps(y,v),t.__v==s.__v||!o.__e&&o.shouldComponentUpdate!=null&&o.shouldComponentUpdate(y,o.__s,v)===!1){t.__v!=s.__v&&(o.props=y,o.state=o.__s,o.__d=!1),t.__e=s.__e,t.__k=s.__k,t.__k.some(function(I){I&&(I.__=t)}),q.push.apply(o.__h,o._sb),o._sb=[],o.__h.length&&c.push(o);break e}o.componentWillUpdate!=null&&o.componentWillUpdate(y,o.__s,v),w&&o.componentDidUpdate!=null&&o.__h.push(function(){o.componentDidUpdate(h,f,p)})}if(o.context=v,o.props=y,o.__P=e,o.__e=!1,A=k.__r,he=0,w)o.state=o.__s,o.__d=!1,A&&A(t),m=o.render(o.props,o.state,o.context),q.push.apply(o.__h,o._sb),o._sb=[];else do o.__d=!1,A&&A(t),m=o.render(o.props,o.state,o.context),o.state=o.__s;while(o.__d&&++he<25);o.state=o.__s,o.getChildContext!=null&&(a=T(T({},a),o.getChildContext())),w&&!b&&o.getSnapshotBeforeUpdate!=null&&(p=o.getSnapshotBeforeUpdate(h,f)),W=m!=null&&m.type===R&&m.key==null?Be(m.props.children):m,d=Re(e,Y(W)?W:[W],t,s,a,i,r,c,d,_,l),o.base=t.__e,t.__u&=-161,o.__h.length&&c.push(o),g&&(o.__E=o.__=null)}catch(I){if(t.__v=null,_||r!=null)if(I.then){for(t.__u|=_?160:128;d&&d.nodeType==8&&d.nextSibling;)d=d.nextSibling;r[r.indexOf(d)]=null,t.__e=d}else{for(J=r.length;J--;)ce(r[J]);ne(t)}else t.__e=s.__e,t.__k=s.__k,I.then||ne(t);k.__e(I,t,s)}else r==null&&t.__v==s.__v?(t.__k=s.__k,t.__e=s.__e):d=t.__e=qe(s.__e,t,s,a,i,r,c,_,l);return(m=k.diffed)&&m(t),128&t.__u?void 0:d}function ne(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(ne))}function Fe(e,t,s){for(var a=0;a<s.length;a++)de(s[a],s[++a],s[++a]);k.__c&&k.__c(t,e),e.some(function(i){try{e=i.__h,i.__h=[],e.some(function(r){r.call(i)})}catch(r){k.__e(r,i.__v)}})}function Be(e){return typeof e!="object"||e==null||e.__b>0?e:Y(e)?e.map(Be):T({},e)}function qe(e,t,s,a,i,r,c,d,_){var l,m,o,b,h,f,p,g=s.props||U,y=t.props,w=t.type;if(w=="svg"?i="http://www.w3.org/2000/svg":w=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),r!=null){for(l=0;l<r.length;l++)if((h=r[l])&&"setAttribute"in h==!!w&&(w?h.localName==w:h.nodeType==3)){e=h,r[l]=null;break}}if(e==null){if(w==null)return document.createTextNode(y);e=document.createElementNS(i,w,y.is&&y),d&&(k.__m&&k.__m(t,r),d=!1),r=null}if(w==null)g===y||d&&e.data==y||(e.data=y);else{if(r=r&&Q.call(e.childNodes),!d&&r!=null)for(g={},l=0;l<e.attributes.length;l++)g[(h=e.attributes[l]).name]=h.value;for(l in g)h=g[l],l=="dangerouslySetInnerHTML"?o=h:l=="children"||l in y||l=="value"&&"defaultValue"in y||l=="checked"&&"defaultChecked"in y||z(e,l,null,h,i);for(l in y)h=y[l],l=="children"?b=h:l=="dangerouslySetInnerHTML"?m=h:l=="value"?f=h:l=="checked"?p=h:d&&typeof h!="function"||g[l]===h||z(e,l,h,g[l],i);if(m)d||o&&(m.__html==o.__html||m.__html==e.innerHTML)||(e.innerHTML=m.__html),t.__k=[];else if(o&&(e.innerHTML=""),Re(t.type=="template"?e.content:e,Y(b)?b:[b],t,s,a,w=="foreignObject"?"http://www.w3.org/1999/xhtml":i,r,c,r?r[0]:s.__k&&F(s,0),d,_),r!=null)for(l=r.length;l--;)ce(r[l]);d||(l="value",w=="progress"&&f==null?e.removeAttribute("value"):f!=null&&(f!==e[l]||w=="progress"&&!f||w=="option"&&f!=g[l])&&z(e,l,f,g[l],i),l="checked",p!=null&&p!=e[l]&&z(e,l,p,g[l],i))}return e}function de(e,t,s){try{if(typeof e=="function"){var a=typeof e.__u=="function";a&&e.__u(),a&&t==null||(e.__u=e(t))}else e.current=t}catch(i){k.__e(i,s)}}function Ne(e,t,s){var a,i;if(k.unmount&&k.unmount(e),(a=e.ref)&&(a.current&&a.current!=e.__e||de(a,null,t)),(a=e.__c)!=null){if(a.componentWillUnmount)try{a.componentWillUnmount()}catch(r){k.__e(r,t)}a.base=a.__P=null}if(a=e.__k)for(i=0;i<a.length;i++)a[i]&&Ne(a[i],t,s||typeof e.type!="function");s||ce(e.__e),e.__c=e.__=e.__e=void 0}function Ge(e,t,s){return this.constructor(e,s)}function je(e,t,s){var a,i,r,c;t==document&&(t=document.documentElement),k.__&&k.__(e,t),i=(a=!1)?null:t.__k,r=[],c=[],le(t,e=t.__k=Ke(R,null,[e]),i||U,U,t.namespaceURI,i?null:t.firstChild?Q.call(t.childNodes):null,r,i?i.__e:t.firstChild,a,c),Fe(r,e,c)}Q=q.slice,k={__e:function(e,t,s,a){for(var i,r,c;t=t.__;)if((i=t.__c)&&!i.__)try{if((r=i.constructor)&&r.getDerivedStateFromError!=null&&(i.setState(r.getDerivedStateFromError(e)),c=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,a||{}),c=i.__d),c)return i.__E=i}catch(d){e=d}throw e}},xe=0,H.prototype.setState=function(e,t){var s;s=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=T({},this.state),typeof e=="function"&&(e=e(T({},s),this.props)),e&&T(s,e),e!=null&&this.__v&&(t&&this._sb.push(t),ue(this))},H.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),ue(this))},H.prototype.render=R,E=[],Ce=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Te=function(e,t){return e.__v.__b-t.__v.__b},G.__r=0,Z=Math.random().toString(8),D="__d"+Z,B="__a"+Z,Pe=/(PointerCapture)$|Capture$/i,oe=0,te=me(!1),se=me(!0);var Ve=0;function n(e,t,s,a,i,r){t||(t={});var c,d,_=t;if("ref"in _)for(d in _={},t)d=="ref"?c=t[d]:_[d]=t[d];var l={type:e,props:_,key:s,ref:c,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Ve,__i:-1,__u:0,__source:i,__self:r};if(typeof e=="function"&&(c=e.defaultProps))for(d in c)_[d]===void 0&&(_[d]=c[d]);return k.vnode&&k.vnode(l),l}var j,L,X,be,re=0,$e=[],S=k,ve=S.__b,pe=S.__r,fe=S.diffed,ye=S.__c,we=S.unmount,ke=S.__;function We(e,t){S.__h&&S.__h(L,e,re||t),re=0;var s=L.__H||(L.__H={__:[],__h:[]});return e>=s.__.length&&s.__.push({}),s.__[e]}function M(e){return re=1,Qe(ze,e)}function Qe(e,t,s){var a=We(j++,2);if(a.t=e,!a.__c&&(a.__=[ze(void 0,t),function(d){var _=a.__N?a.__N[0]:a.__[0],l=a.t(_,d);_!==l&&(a.__N=[l,a.__[1]],a.__c.setState({}))}],a.__c=L,!L.__f)){var i=function(d,_,l){if(!a.__c.__H)return!0;var m=a.__c.__H.__.filter(function(b){return b.__c});if(m.every(function(b){return!b.__N}))return!r||r.call(this,d,_,l);var o=a.__c.props!==d;return m.some(function(b){if(b.__N){var h=b.__[0];b.__=b.__N,b.__N=void 0,h!==b.__[0]&&(o=!0)}}),r&&r.call(this,d,_,l)||o};L.__f=!0;var r=L.shouldComponentUpdate,c=L.componentWillUpdate;L.componentWillUpdate=function(d,_,l){if(this.__e){var m=r;r=void 0,i(d,_,l),r=m}c&&c.call(this,d,_,l)},L.shouldComponentUpdate=i}return a.__N||a.__}function N(e,t){var s=We(j++,3);!S.__s&&Ze(s.__H,t)&&(s.__=e,s.u=t,L.__H.__h.push(s))}function Ye(){for(var e;e=$e.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(O),t.__h.some(ae),t.__h=[]}catch(s){t.__h=[],S.__e(s,e.__v)}}}S.__b=function(e){L=null,ve&&ve(e)},S.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),ke&&ke(e,t)},S.__r=function(e){pe&&pe(e),j=0;var t=(L=e.__c).__H;t&&(X===L?(t.__h=[],L.__h=[],t.__.some(function(s){s.__N&&(s.__=s.__N),s.u=s.__N=void 0})):(t.__h.some(O),t.__h.some(ae),t.__h=[],j=0)),X=L},S.diffed=function(e){fe&&fe(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&($e.push(t)!==1&&be===S.requestAnimationFrame||((be=S.requestAnimationFrame)||Je)(Ye)),t.__H.__.some(function(s){s.u&&(s.__H=s.u),s.u=void 0})),X=L=null},S.__c=function(e,t){t.some(function(s){try{s.__h.some(O),s.__h=s.__h.filter(function(a){return!a.__||ae(a)})}catch(a){t.some(function(i){i.__h&&(i.__h=[])}),t=[],S.__e(a,s.__v)}}),ye&&ye(e,t)},S.unmount=function(e){we&&we(e);var t,s=e.__c;s&&s.__H&&(s.__H.__.some(function(a){try{O(a)}catch(i){t=i}}),s.__H=void 0,t&&S.__e(t,s.__v))};var Me=typeof requestAnimationFrame=="function";function Je(e){var t,s=function(){clearTimeout(a),Me&&cancelAnimationFrame(t),setTimeout(e)},a=setTimeout(s,35);Me&&(t=requestAnimationFrame(s))}function O(e){var t=L,s=e.__c;typeof s=="function"&&(e.__c=void 0,s()),L=t}function ae(e){var t=L;e.__c=e.__(),L=t}function Ze(e,t){return!e||e.length!==t.length||t.some(function(s,a){return s!==e[a]})}function ze(e,t){return typeof t=="function"?t(e):t}const V={en:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Connected","header.disconnected":"Disconnected","header.connecting":"Connecting…","header.memories":"memories","tab.search":"Search","tab.browse":"Browse","tab.analytics":"Analytics","tab.manage":"Manage","tab.settings":"Settings","search.title":"Search Memories","search.placeholder":'Search your memories… (e.g., "auth", "database", "bug fix")',"search.button":"Search","search.searching":"Searching…","search.results":"results","search.result":"result","search.noResults":"No results for","search.facts":"facts","browse.title":"All Memories","browse.manage":"Manage Memories","browse.active":"active","browse.archived":"archived","browse.filter":"Filter by content, type, or tag…","browse.refresh":"Refresh","browse.noMemories":"No memories yet","browse.noMatch":"No memories matching","browse.prev":"← Prev","browse.next":"Next →","browse.archive":"Archive","browse.restore":"Restore","browse.confirmArchive":"Archive this memory?","browse.moreArchived":"more archived memories","analytics.totalMemories":"Total Memories","analytics.knowledgeFacts":"Knowledge Facts","analytics.connections":"Connections","analytics.topics":"Topics","analytics.insights":"Insights","analytics.thisWeek":"This week","analytics.new":"new","analytics.stale":"Stale (30+ days unused)","analytics.archivedLabel":"Archived","analytics.mostRecalled":"Most Recalled","settings.capabilities":"Capabilities","settings.smartMode":"Smart Mode","settings.core":"Core","settings.embeddings":"Embeddings","settings.llmProvider":"LLM Provider","settings.apiKey":"API Key","settings.model":"Model (optional)","settings.save":"Save","settings.saving":"Saving…","settings.saved":"Saved! Restart server for LLM changes to take effect.","settings.language":"Language","feedback.button":"💬 Feedback","common.error":"Error","common.loading":"Loading…"},"zh-TW":{"brand.subtitle":"powered by pcircle.ai","header.connected":"已連線","header.disconnected":"已斷線","header.connecting":"連線中…","header.memories":"筆記憶","tab.search":"搜尋","tab.browse":"瀏覽","tab.analytics":"分析","tab.manage":"管理","tab.settings":"設定","search.title":"搜尋記憶","search.placeholder":"搜尋你的記憶…(例如:「auth」、「資料庫」、「bug 修復」)","search.button":"搜尋","search.searching":"搜尋中…","search.results":"個結果","search.result":"個結果","search.noResults":"找不到符合的結果:","search.facts":"筆事實","browse.title":"所有記憶","browse.manage":"管理記憶","browse.active":"使用中","browse.archived":"已封存","browse.filter":"依內容、類型或標籤篩選…","browse.refresh":"重新整理","browse.noMemories":"尚無記憶","browse.noMatch":"找不到符合的記憶:","browse.prev":"← 上一頁","browse.next":"下一頁 →","browse.archive":"封存","browse.restore":"還原","browse.confirmArchive":"確定要封存此記憶?","browse.moreArchived":"筆已封存的記憶","analytics.totalMemories":"記憶總數","analytics.knowledgeFacts":"知識事實","analytics.connections":"關聯","analytics.topics":"主題","analytics.insights":"洞察","analytics.thisWeek":"本週","analytics.new":"筆新增","analytics.stale":"閒置(30 天以上未使用)","analytics.archivedLabel":"已封存","analytics.mostRecalled":"最常查閱","settings.capabilities":"功能狀態","settings.smartMode":"智慧模式","settings.core":"基礎","settings.embeddings":"嵌入模型","settings.llmProvider":"LLM 提供者","settings.apiKey":"API 金鑰","settings.model":"模型(選填)","settings.save":"儲存","settings.saving":"儲存中…","settings.saved":"已儲存!重啟伺服器以套用 LLM 設定。","settings.language":"語言","feedback.button":"💬 意見回饋","common.error":"錯誤","common.loading":"載入中…"},"zh-CN":{"brand.subtitle":"powered by pcircle.ai","header.connected":"已连接","header.disconnected":"已断开","header.connecting":"连接中…","header.memories":"条记忆","tab.search":"搜索","tab.browse":"浏览","tab.analytics":"分析","tab.manage":"管理","tab.settings":"设置","search.title":"搜索记忆","search.placeholder":'搜索你的记忆…(例如:"auth"、"数据库"、"bug 修复")',"search.button":"搜索","search.searching":"搜索中…","search.results":"个结果","search.result":"个结果","search.noResults":"没有找到结果:","search.facts":"条事实","browse.title":"所有记忆","browse.manage":"管理记忆","browse.active":"活跃","browse.archived":"已归档","browse.filter":"按内容、类型或标签筛选…","browse.refresh":"刷新","browse.noMemories":"暂无记忆","browse.noMatch":"没有匹配的记忆:","browse.prev":"← 上一页","browse.next":"下一页 →","browse.archive":"归档","browse.restore":"恢复","browse.confirmArchive":"确定要归档此记忆?","browse.moreArchived":"条已归档记忆","analytics.totalMemories":"记忆总数","analytics.knowledgeFacts":"知识事实","analytics.connections":"关联","analytics.topics":"主题","analytics.insights":"洞察","analytics.thisWeek":"本周","analytics.new":"条新增","analytics.stale":"闲置(30 天以上未使用)","analytics.archivedLabel":"已归档","analytics.mostRecalled":"最常查阅","settings.capabilities":"功能状态","settings.smartMode":"智能模式","settings.core":"基础","settings.embeddings":"嵌入模型","settings.llmProvider":"LLM 提供商","settings.apiKey":"API 密钥","settings.model":"模型(选填)","settings.save":"保存","settings.saving":"保存中…","settings.saved":"已保存!重启服务器以应用 LLM 设置。","settings.language":"语言","feedback.button":"💬 反馈","common.error":"错误","common.loading":"加载中…"},ja:{"brand.subtitle":"powered by pcircle.ai","header.connected":"接続中","header.disconnected":"切断","header.connecting":"接続しています…","header.memories":"件のメモリ","tab.search":"検索","tab.browse":"一覧","tab.analytics":"分析","tab.manage":"管理","tab.settings":"設定","search.title":"メモリを検索","search.placeholder":"メモリを検索…(例:「auth」「データベース」「バグ修正」)","search.button":"検索","search.searching":"検索中…","search.results":"件の結果","search.result":"件の結果","search.noResults":"結果が見つかりません:","search.facts":"件の事実","browse.title":"すべてのメモリ","browse.manage":"メモリを管理","browse.active":"アクティブ","browse.archived":"アーカイブ済み","browse.filter":"内容、タイプ、タグで絞り込み…","browse.refresh":"更新","browse.noMemories":"メモリがありません","browse.noMatch":"一致するメモリがありません:","browse.prev":"← 前へ","browse.next":"次へ →","browse.archive":"アーカイブ","browse.restore":"復元","browse.confirmArchive":"このメモリをアーカイブしますか?","browse.moreArchived":"件のアーカイブ済みメモリ","analytics.totalMemories":"メモリ総数","analytics.knowledgeFacts":"知識ファクト","analytics.connections":"接続","analytics.topics":"トピック","analytics.insights":"インサイト","analytics.thisWeek":"今週","analytics.new":"件の新規","analytics.stale":"未使用(30日以上)","analytics.archivedLabel":"アーカイブ済み","analytics.mostRecalled":"よく参照される","settings.capabilities":"機能状態","settings.smartMode":"スマートモード","settings.core":"コア","settings.embeddings":"エンベディング","settings.llmProvider":"LLMプロバイダー","settings.apiKey":"APIキー","settings.model":"モデル(任意)","settings.save":"保存","settings.saving":"保存中…","settings.saved":"保存しました!LLM設定を反映するにはサーバーを再起動してください。","settings.language":"言語","feedback.button":"💬 フィードバック","common.error":"エラー","common.loading":"読み込み中…"},ko:{"brand.subtitle":"powered by pcircle.ai","header.connected":"연결됨","header.disconnected":"연결 끊김","header.connecting":"연결 중…","header.memories":"개의 기억","tab.search":"검색","tab.browse":"둘러보기","tab.analytics":"분석","tab.manage":"관리","tab.settings":"설정","search.title":"기억 검색","search.placeholder":'기억 검색… (예: "auth", "데이터베이스", "버그 수정")',"search.button":"검색","search.searching":"검색 중…","search.results":"개의 결과","search.result":"개의 결과","search.noResults":"결과를 찾을 수 없습니다:","search.facts":"개의 사실","browse.title":"모든 기억","browse.manage":"기억 관리","browse.active":"활성","browse.archived":"보관됨","browse.filter":"내용, 유형 또는 태그로 필터링…","browse.refresh":"새로고침","browse.noMemories":"기억이 없습니다","browse.noMatch":"일치하는 기억이 없습니다:","browse.prev":"← 이전","browse.next":"다음 →","browse.archive":"보관","browse.restore":"복원","browse.confirmArchive":"이 기억을 보관하시겠습니까?","browse.moreArchived":"개의 보관된 기억","analytics.totalMemories":"총 기억 수","analytics.knowledgeFacts":"지식 사실","analytics.connections":"연결","analytics.topics":"주제","analytics.insights":"인사이트","analytics.thisWeek":"이번 주","analytics.new":"개 신규","analytics.stale":"비활성 (30일 이상 미사용)","analytics.archivedLabel":"보관됨","analytics.mostRecalled":"가장 많이 조회됨","settings.capabilities":"기능 상태","settings.smartMode":"스마트 모드","settings.core":"기본","settings.embeddings":"임베딩","settings.llmProvider":"LLM 제공자","settings.apiKey":"API 키","settings.model":"모델 (선택)","settings.save":"저장","settings.saving":"저장 중…","settings.saved":"저장되었습니다! LLM 설정을 적용하려면 서버를 재시작하세요.","settings.language":"언어","feedback.button":"💬 피드백","common.error":"오류","common.loading":"로딩 중…"},pt:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Conectado","header.disconnected":"Desconectado","header.connecting":"Conectando…","header.memories":"memórias","tab.search":"Buscar","tab.browse":"Explorar","tab.analytics":"Análise","tab.manage":"Gerenciar","tab.settings":"Configurações","search.title":"Buscar Memórias","search.placeholder":'Buscar memórias… (ex.: "auth", "banco de dados", "bug fix")',"search.button":"Buscar","search.searching":"Buscando…","search.results":"resultados","search.result":"resultado","search.noResults":"Nenhum resultado para","search.facts":"fatos","browse.title":"Todas as Memórias","browse.manage":"Gerenciar Memórias","browse.active":"ativas","browse.archived":"arquivadas","browse.filter":"Filtrar por conteúdo, tipo ou tag…","browse.refresh":"Atualizar","browse.noMemories":"Sem memórias ainda","browse.noMatch":"Nenhuma memória corresponde a","browse.prev":"← Anterior","browse.next":"Próximo →","browse.archive":"Arquivar","browse.restore":"Restaurar","browse.confirmArchive":"Arquivar esta memória?","browse.moreArchived":"memórias arquivadas","analytics.totalMemories":"Total de Memórias","analytics.knowledgeFacts":"Fatos","analytics.connections":"Conexões","analytics.topics":"Tópicos","analytics.insights":"Insights","analytics.thisWeek":"Esta semana","analytics.new":"novas","analytics.stale":"Inativas (30+ dias sem uso)","analytics.archivedLabel":"Arquivadas","analytics.mostRecalled":"Mais Consultadas","settings.capabilities":"Capacidades","settings.smartMode":"Modo Inteligente","settings.core":"Base","settings.embeddings":"Embeddings","settings.llmProvider":"Provedor LLM","settings.apiKey":"Chave API","settings.model":"Modelo (opcional)","settings.save":"Salvar","settings.saving":"Salvando…","settings.saved":"Salvo! Reinicie o servidor para aplicar as configurações do LLM.","settings.language":"Idioma","feedback.button":"💬 Feedback","common.error":"Erro","common.loading":"Carregando…"},fr:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Connecté","header.disconnected":"Déconnecté","header.connecting":"Connexion…","header.memories":"mémoires","tab.search":"Recherche","tab.browse":"Parcourir","tab.analytics":"Analyse","tab.manage":"Gérer","tab.settings":"Paramètres","search.title":"Rechercher des mémoires","search.placeholder":"Rechercher vos mémoires… (ex. : « auth », « base de données », « bug fix »)","search.button":"Rechercher","search.searching":"Recherche…","search.results":"résultats","search.result":"résultat","search.noResults":"Aucun résultat pour","search.facts":"faits","browse.title":"Toutes les mémoires","browse.manage":"Gérer les mémoires","browse.active":"actives","browse.archived":"archivées","browse.filter":"Filtrer par contenu, type ou tag…","browse.refresh":"Actualiser","browse.noMemories":"Pas encore de mémoires","browse.noMatch":"Aucune mémoire correspondant à","browse.prev":"← Précédent","browse.next":"Suivant →","browse.archive":"Archiver","browse.restore":"Restaurer","browse.confirmArchive":"Archiver cette mémoire ?","browse.moreArchived":"mémoires archivées","analytics.totalMemories":"Total des mémoires","analytics.knowledgeFacts":"Faits de connaissance","analytics.connections":"Connexions","analytics.topics":"Sujets","analytics.insights":"Aperçus","analytics.thisWeek":"Cette semaine","analytics.new":"nouvelles","analytics.stale":"Inactives (30+ jours sans utilisation)","analytics.archivedLabel":"Archivées","analytics.mostRecalled":"Les plus consultées","settings.capabilities":"Capacités","settings.smartMode":"Mode intelligent","settings.core":"Base","settings.embeddings":"Embeddings","settings.llmProvider":"Fournisseur LLM","settings.apiKey":"Clé API","settings.model":"Modèle (optionnel)","settings.save":"Enregistrer","settings.saving":"Enregistrement…","settings.saved":"Enregistré ! Redémarrez le serveur pour appliquer les paramètres LLM.","settings.language":"Langue","feedback.button":"💬 Retour","common.error":"Erreur","common.loading":"Chargement…"},de:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Verbunden","header.disconnected":"Getrennt","header.connecting":"Verbinden…","header.memories":"Erinnerungen","tab.search":"Suche","tab.browse":"Durchsuchen","tab.analytics":"Analyse","tab.manage":"Verwalten","tab.settings":"Einstellungen","search.title":"Erinnerungen suchen","search.placeholder":'Erinnerungen suchen… (z.B. „auth", „Datenbank", „Bug Fix")',"search.button":"Suchen","search.searching":"Suche läuft…","search.results":"Ergebnisse","search.result":"Ergebnis","search.noResults":"Keine Ergebnisse für","search.facts":"Fakten","browse.title":"Alle Erinnerungen","browse.manage":"Erinnerungen verwalten","browse.active":"aktiv","browse.archived":"archiviert","browse.filter":"Nach Inhalt, Typ oder Tag filtern…","browse.refresh":"Aktualisieren","browse.noMemories":"Noch keine Erinnerungen","browse.noMatch":"Keine passenden Erinnerungen:","browse.prev":"← Zurück","browse.next":"Weiter →","browse.archive":"Archivieren","browse.restore":"Wiederherstellen","browse.confirmArchive":"Diese Erinnerung archivieren?","browse.moreArchived":"archivierte Erinnerungen","analytics.totalMemories":"Erinnerungen gesamt","analytics.knowledgeFacts":"Wissensfakten","analytics.connections":"Verbindungen","analytics.topics":"Themen","analytics.insights":"Einblicke","analytics.thisWeek":"Diese Woche","analytics.new":"neue","analytics.stale":"Inaktiv (30+ Tage ungenutzt)","analytics.archivedLabel":"Archiviert","analytics.mostRecalled":"Am häufigsten abgerufen","settings.capabilities":"Fähigkeiten","settings.smartMode":"Smart-Modus","settings.core":"Basis","settings.embeddings":"Embeddings","settings.llmProvider":"LLM-Anbieter","settings.apiKey":"API-Schlüssel","settings.model":"Modell (optional)","settings.save":"Speichern","settings.saving":"Speichern…","settings.saved":"Gespeichert! Server neu starten, um LLM-Einstellungen anzuwenden.","settings.language":"Sprache","feedback.button":"💬 Feedback","common.error":"Fehler","common.loading":"Laden…"},vi:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Đã kết nối","header.disconnected":"Mất kết nối","header.connecting":"Đang kết nối…","header.memories":"ký ức","tab.search":"Tìm kiếm","tab.browse":"Duyệt","tab.analytics":"Phân tích","tab.manage":"Quản lý","tab.settings":"Cài đặt","search.title":"Tìm kiếm ký ức","search.placeholder":'Tìm kiếm ký ức… (ví dụ: "auth", "cơ sở dữ liệu", "sửa lỗi")',"search.button":"Tìm kiếm","search.searching":"Đang tìm…","search.results":"kết quả","search.result":"kết quả","search.noResults":"Không tìm thấy kết quả cho","search.facts":"sự kiện","browse.title":"Tất cả ký ức","browse.manage":"Quản lý ký ức","browse.active":"hoạt động","browse.archived":"đã lưu trữ","browse.filter":"Lọc theo nội dung, loại hoặc thẻ…","browse.refresh":"Làm mới","browse.noMemories":"Chưa có ký ức","browse.noMatch":"Không có ký ức phù hợp:","browse.prev":"← Trước","browse.next":"Tiếp →","browse.archive":"Lưu trữ","browse.restore":"Khôi phục","browse.confirmArchive":"Lưu trữ ký ức này?","browse.moreArchived":"ký ức đã lưu trữ","analytics.totalMemories":"Tổng ký ức","analytics.knowledgeFacts":"Sự kiện tri thức","analytics.connections":"Kết nối","analytics.topics":"Chủ đề","analytics.insights":"Thông tin","analytics.thisWeek":"Tuần này","analytics.new":"mới","analytics.stale":"Không hoạt động (30+ ngày)","analytics.archivedLabel":"Đã lưu trữ","analytics.mostRecalled":"Được truy xuất nhiều nhất","settings.capabilities":"Khả năng","settings.smartMode":"Chế độ thông minh","settings.core":"Cơ bản","settings.embeddings":"Embeddings","settings.llmProvider":"Nhà cung cấp LLM","settings.apiKey":"Khóa API","settings.model":"Mô hình (tùy chọn)","settings.save":"Lưu","settings.saving":"Đang lưu…","settings.saved":"Đã lưu! Khởi động lại server để áp dụng cài đặt LLM.","settings.language":"Ngôn ngữ","feedback.button":"💬 Phản hồi","common.error":"Lỗi","common.loading":"Đang tải…"},es:{"brand.subtitle":"powered by pcircle.ai","header.connected":"Conectado","header.disconnected":"Desconectado","header.connecting":"Conectando…","header.memories":"memorias","tab.search":"Buscar","tab.browse":"Explorar","tab.analytics":"Análisis","tab.manage":"Gestionar","tab.settings":"Configuración","search.title":"Buscar memorias","search.placeholder":'Buscar memorias… (ej.: "auth", "base de datos", "corrección")',"search.button":"Buscar","search.searching":"Buscando…","search.results":"resultados","search.result":"resultado","search.noResults":"Sin resultados para","search.facts":"hechos","browse.title":"Todas las memorias","browse.manage":"Gestionar memorias","browse.active":"activas","browse.archived":"archivadas","browse.filter":"Filtrar por contenido, tipo o etiqueta…","browse.refresh":"Actualizar","browse.noMemories":"Aún no hay memorias","browse.noMatch":"No hay memorias que coincidan con","browse.prev":"← Anterior","browse.next":"Siguiente →","browse.archive":"Archivar","browse.restore":"Restaurar","browse.confirmArchive":"¿Archivar esta memoria?","browse.moreArchived":"memorias archivadas","analytics.totalMemories":"Total de memorias","analytics.knowledgeFacts":"Hechos","analytics.connections":"Conexiones","analytics.topics":"Temas","analytics.insights":"Información","analytics.thisWeek":"Esta semana","analytics.new":"nuevas","analytics.stale":"Inactivas (30+ días sin uso)","analytics.archivedLabel":"Archivadas","analytics.mostRecalled":"Más consultadas","settings.capabilities":"Capacidades","settings.smartMode":"Modo inteligente","settings.core":"Base","settings.embeddings":"Embeddings","settings.llmProvider":"Proveedor LLM","settings.apiKey":"Clave API","settings.model":"Modelo (opcional)","settings.save":"Guardar","settings.saving":"Guardando…","settings.saved":"¡Guardado! Reinicie el servidor para aplicar la configuración LLM.","settings.language":"Idioma","feedback.button":"💬 Comentarios","common.error":"Error","common.loading":"Cargando…"},th:{"brand.subtitle":"powered by pcircle.ai","header.connected":"เชื่อมต่อแล้ว","header.disconnected":"ไม่ได้เชื่อมต่อ","header.connecting":"กำลังเชื่อมต่อ…","header.memories":"ความทรงจำ","tab.search":"ค้นหา","tab.browse":"เรียกดู","tab.analytics":"วิเคราะห์","tab.manage":"จัดการ","tab.settings":"ตั้งค่า","search.title":"ค้นหาความทรงจำ","search.placeholder":'ค้นหาความทรงจำ… (เช่น "auth", "ฐานข้อมูล", "แก้บั๊ก")',"search.button":"ค้นหา","search.searching":"กำลังค้นหา…","search.results":"ผลลัพธ์","search.result":"ผลลัพธ์","search.noResults":"ไม่พบผลลัพธ์สำหรับ","search.facts":"ข้อเท็จจริง","browse.title":"ความทรงจำทั้งหมด","browse.manage":"จัดการความทรงจำ","browse.active":"ใช้งานอยู่","browse.archived":"เก็บถาวร","browse.filter":"กรองตามเนื้อหา ประเภท หรือแท็ก…","browse.refresh":"รีเฟรช","browse.noMemories":"ยังไม่มีความทรงจำ","browse.noMatch":"ไม่พบความทรงจำที่ตรงกัน:","browse.prev":"← ก่อนหน้า","browse.next":"ถัดไป →","browse.archive":"เก็บถาวร","browse.restore":"กู้คืน","browse.confirmArchive":"เก็บถาวรความทรงจำนี้?","browse.moreArchived":"ความทรงจำที่เก็บถาวร","analytics.totalMemories":"ความทรงจำทั้งหมด","analytics.knowledgeFacts":"ข้อเท็จจริง","analytics.connections":"การเชื่อมต่อ","analytics.topics":"หัวข้อ","analytics.insights":"ข้อมูลเชิงลึก","analytics.thisWeek":"สัปดาห์นี้","analytics.new":"ใหม่","analytics.stale":"ไม่ได้ใช้งาน (30+ วัน)","analytics.archivedLabel":"เก็บถาวร","analytics.mostRecalled":"ถูกเรียกดูมากที่สุด","settings.capabilities":"ความสามารถ","settings.smartMode":"โหมดอัจฉริยะ","settings.core":"พื้นฐาน","settings.embeddings":"Embeddings","settings.llmProvider":"ผู้ให้บริการ LLM","settings.apiKey":"คีย์ API","settings.model":"โมเดล (ไม่บังคับ)","settings.save":"บันทึก","settings.saving":"กำลังบันทึก…","settings.saved":"บันทึกแล้ว! รีสตาร์ทเซิร์ฟเวอร์เพื่อใช้การตั้งค่า LLM","settings.language":"ภาษา","feedback.button":"💬 ความคิดเห็น","common.error":"ข้อผิดพลาด","common.loading":"กำลังโหลด…"}},Xe={en:"English","zh-TW":"繁體中文","zh-CN":"简体中文",ja:"日本語",ko:"한국어",pt:"Português",fr:"Français",de:"Deutsch",vi:"Tiếng Việt",es:"Español",th:"ภาษาไทย"};let $="en";function et(){const e=localStorage.getItem("memesh-locale");if(e&&V[e])return e;const t=navigator.language;if(t.startsWith("zh-TW")||t.startsWith("zh-Hant"))return"zh-TW";if(t.startsWith("zh"))return"zh-CN";const s=t.split("-")[0];return V[s]?s:"en"}function tt(){return $=et(),$}function st(e){$=e,localStorage.setItem("memesh-locale",e)}function u(e){return V[$]?.[e]||V.en[e]||e}function nt(){return $}function rt(){return Object.entries(Xe).map(([e,t])=>({code:e,name:t}))}function at({health:e,error:t}){return n("div",{class:"header",children:[n("div",{class:"header-brand",children:[n("h1",{children:"MeMesh LLM Memory"}),n("small",{children:u("brand.subtitle")})]}),n("div",{class:"header-right",children:n("div",{class:"header-meta",children:e?n(R,{children:[n("span",{children:[n("span",{class:"dot dot-ok"}),u("header.connected")]}),n("span",{class:"badge-version",children:["v",e.version," · ",e.entity_count.toLocaleString()," ",u("header.memories")]})]}):t?n("span",{children:[n("span",{class:"dot dot-err"}),u("header.disconnected")]}):n("span",{style:{color:"var(--text-3)"},children:u("header.connecting")})})})]})}function it({tabs:e,active:t,onSelect:s}){return n("nav",{class:"nav",children:e.map(({key:a,label:i})=>n("button",{class:`nav-btn ${a===t?"active":""}`,onClick:()=>s(a),children:i},a))})}const ot=1e4;async function P(e,t,s){const a=new AbortController,i=setTimeout(()=>a.abort(),ot);try{const r={method:e,headers:{"Content-Type":"application/json"},signal:a.signal};s&&(r.body=JSON.stringify(s));const c=await fetch(t,r);if(!c.ok)throw new Error(`HTTP ${c.status}`);const d=await c.json();if(!d.success)throw new Error(d.error||"Unknown error");return d.data}catch(r){throw r.name==="AbortError"?new Error("Request timed out"):r}finally{clearTimeout(i)}}function ct(e){try{const t=new Date(e);return{date:t.toLocaleDateString(void 0,{month:"short",day:"numeric"}),time:t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}}catch{return{date:"—",time:""}}}function Le(e,t){return e.length>t?e.slice(0,t)+"…":e}function ie({entity:e,actions:t,highlight:s}){const a=ct(e.created_at),i=e.observations?.[0]||"(no content)",r=e.observations?.length||0,c=e.archived||e.status==="archived";return n("div",{class:"mem-row",style:c?{opacity:.45}:void 0,children:[n("div",{class:"mem-time",children:[n("div",{children:a.date}),n("div",{children:a.time})]}),n("div",{class:"mem-body",children:[n("div",{class:"mem-preview",children:s?n(lt,{text:Le(i,140),term:s}):Le(i,140)}),n("div",{class:"mem-meta",children:[n("span",{class:"badge badge-type",children:e.type}),c&&n("span",{class:"badge badge-archived",children:"archived"}),n("span",{children:e.name}),r>1&&n("span",{children:["· ",r," facts"]}),e.tags?.slice(0,3).map(d=>n("span",{class:"tag",children:d},d)),(e.tags?.length||0)>3&&n("span",{class:"tag",style:{opacity:.5},children:["+",e.tags.length-3]})]})]}),t&&n("div",{class:"mem-actions",children:t})]})}function lt({text:e,term:t}){if(!t)return n(R,{children:e});const s=[],a=e.toLowerCase(),i=t.toLowerCase();let r=0;for(;r<e.length;){const c=a.indexOf(i,r);if(c===-1){s.push(e.slice(r));break}c>r&&s.push(e.slice(r,c)),s.push(n("mark",{children:e.slice(c,c+i.length)})),r=c+i.length}return n(R,{children:s})}function dt(){const[e,t]=M(""),[s,a]=M(null),[i,r]=M(!1),[c,d]=M("");async function _(){if(e.trim()){r(!0),d("");try{const l=await P("POST","/v1/recall",{query:e.trim(),limit:30}),m=Array.isArray(l)?l:l.entities||[];a(m)}catch(l){d(l.message)}finally{r(!1)}}}return n("div",{children:n("div",{class:"card",children:[n("div",{class:"card-title",children:u("search.title")}),n("div",{class:"search-bar",children:[n("input",{type:"search",placeholder:u("search.placeholder"),value:e,onInput:l=>t(l.target.value),onKeyDown:l=>l.key==="Enter"&&_()}),n("button",{class:"btn btn-primary",onClick:_,disabled:i,children:u(i?"search.searching":"search.button")})]}),c&&n("div",{class:"error-box",children:c}),i&&n("div",{class:"empty",children:n("div",{class:"loading"})}),!i&&s!==null&&s.length===0&&n("div",{class:"empty",children:[n("span",{class:"empty-icon",children:"🔍"}),u("search.noResults"),' "',e,'"']}),!i&&s&&s.length>0&&n("div",{children:[n("div",{style:{fontSize:12,color:"var(--text-3)",marginBottom:12},children:[s.length," ",s.length!==1?u("search.results"):u("search.result")]}),s.map(l=>n("div",{class:"card",style:{padding:14},children:n(ie,{entity:l,highlight:e})},l.id))]})]})})}const ee=30;function Se({manage:e}){const[t,s]=M([]),[a,i]=M(""),[r,c]=M(!0),[d,_]=M(""),[l,m]=M(0);async function o(){c(!0),_("");try{const v=await P("GET","/v1/entities?limit=500&status=all");s(v||[]),m(0)}catch(v){_(v.message)}finally{c(!1)}}N(()=>{o()},[]),N(()=>{m(0)},[a]);const b=a.toLowerCase(),h=t.filter(v=>b?v.name.toLowerCase().includes(b)||v.type.toLowerCase().includes(b)||v.observations?.some(A=>A.toLowerCase().includes(b))||v.tags?.some(A=>A.toLowerCase().includes(b)):!0),f=h.filter(v=>!v.archived&&v.status!=="archived"),p=h.filter(v=>v.archived||v.status==="archived"),g=Math.ceil(f.length/ee),y=f.slice(l*ee,(l+1)*ee);async function w(v){if(confirm(u("browse.confirmArchive")))try{await P("POST","/v1/forget",{name:v}),o()}catch(A){_("Failed to archive: "+A.message)}}async function x(v){try{await P("POST","/v1/remember",{name:v,type:"restored"}),o()}catch(A){_("Failed to restore: "+A.message)}}return n("div",{children:n("div",{class:"card",children:[n("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:16},children:[n("div",{children:[n("div",{class:"card-title",style:{margin:0},children:u(e?"browse.manage":"browse.title")}),!r&&n("div",{style:{fontSize:12,color:"var(--text-3)",marginTop:2},children:[f.length.toLocaleString()," ",u("browse.active"),p.length>0?` · ${p.length} ${u("browse.archived")}`:""]})]}),n("div",{style:{display:"flex",gap:8},children:[n("input",{type:"search",placeholder:u("browse.filter"),value:a,onInput:v=>i(v.target.value),style:{width:260}}),n("button",{class:"btn btn-sm",onClick:o,title:u("browse.refresh"),children:"↻"})]})]}),d&&n("div",{class:"error-box",style:{marginBottom:12},children:d}),r&&n("div",{class:"empty",children:n("div",{class:"loading"})}),!r&&h.length===0&&n("div",{class:"empty",children:[n("span",{class:"empty-icon",children:"📭"}),a?`${u("browse.noMatch")} "${a}"`:u("browse.noMemories")]}),!r&&y.length>0&&n("div",{children:[y.map(v=>n("div",{style:{borderBottom:"1px solid var(--border-subtle)",padding:"14px 0"},children:n(ie,{entity:v,highlight:a,actions:e?n("button",{class:"btn btn-danger btn-sm",onClick:()=>w(v.name),children:u("browse.archive")}):void 0})},v.id)),g>1&&n("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:12,padding:"16px 0",fontSize:13},children:[n("button",{class:"btn btn-sm",disabled:l===0,onClick:()=>m(v=>v-1),children:u("browse.prev")}),n("span",{style:{color:"var(--text-3)",fontFamily:"var(--mono)",fontSize:12},children:[l+1," / ",g]}),n("button",{class:"btn btn-sm",disabled:l>=g-1,onClick:()=>m(v=>v+1),children:u("browse.next")})]})]}),!r&&p.length>0&&n("div",{style:{marginTop:20},children:[n("div",{style:{fontSize:11,color:"var(--text-3)",textTransform:"uppercase",letterSpacing:".06em",marginBottom:8,paddingBottom:8,borderBottom:"1px solid var(--border)"},children:[u("browse.archived")," (",p.length,")"]}),p.slice(0,10).map(v=>n("div",{style:{borderBottom:"1px solid var(--border-subtle)",padding:"14px 0"},children:n(ie,{entity:v,highlight:a,actions:e?n("button",{class:"btn btn-sm",onClick:()=>x(v.name),children:u("browse.restore")}):void 0})},v.id)),p.length>10&&n("div",{style:{fontSize:12,color:"var(--text-3)",padding:"12px 0",textAlign:"center"},children:["+",p.length-10," ",u("browse.moreArchived")]})]})]})})}function ht(){const[e,t]=M(null),[s,a]=M([]),[i,r]=M(!0);if(N(()=>{Promise.all([P("GET","/v1/stats"),P("GET","/v1/entities?limit=500&status=all")]).then(([h,f])=>{t(h),a(f||[])}).finally(()=>r(!1))},[]),i)return n("div",{class:"empty",children:n("div",{class:"loading"})});if(!e)return n("div",{class:"error-box",children:[u("common.error"),": Failed to load analytics"]});const c=Date.now(),d=10080*60*1e3,_=720*60*60*1e3,l=s.filter(h=>c-new Date(h.created_at).getTime()<d).length,m=s.filter(h=>h.archived||h.status==="archived"?!1:h.last_accessed_at?c-new Date(h.last_accessed_at).getTime()>_:!0).length,o=s.filter(h=>h.archived||h.status==="archived").length,b=s.filter(h=>(h.access_count||0)>0).sort((h,f)=>(f.access_count||0)-(h.access_count||0)).slice(0,5);return n("div",{children:[n("div",{class:"stats-row",children:[n("div",{class:"stat",children:[n("div",{class:"stat-val",children:e.totalEntities.toLocaleString()}),n("div",{class:"stat-lbl",children:u("analytics.totalMemories")})]}),n("div",{class:"stat",children:[n("div",{class:"stat-val",children:e.totalObservations.toLocaleString()}),n("div",{class:"stat-lbl",children:u("analytics.knowledgeFacts")})]}),n("div",{class:"stat",children:[n("div",{class:"stat-val",children:e.totalRelations.toLocaleString()}),n("div",{class:"stat-lbl",children:u("analytics.connections")})]}),n("div",{class:"stat",children:[n("div",{class:"stat-val",children:e.totalTags.toLocaleString()}),n("div",{class:"stat-lbl",children:u("analytics.topics")})]})]}),n("div",{class:"card",children:[n("div",{class:"card-title",children:u("analytics.insights")}),n("div",{class:"insight",children:[n("span",{class:"insight-icon",children:"📝"}),n("span",{class:"insight-text",children:u("analytics.thisWeek")}),n("span",{class:"insight-val",children:[l," ",u("analytics.new")]})]}),n("div",{class:"insight",children:[n("span",{class:"insight-icon",children:"💤"}),n("span",{class:"insight-text",children:u("analytics.stale")}),n("span",{class:"insight-val",children:m})]}),n("div",{class:"insight",children:[n("span",{class:"insight-icon",children:"📦"}),n("span",{class:"insight-text",children:u("analytics.archivedLabel")}),n("span",{class:"insight-val",children:o})]})]}),b.length>0&&n("div",{class:"card",children:[n("div",{class:"card-title",children:u("analytics.mostRecalled")}),b.map((h,f)=>{const p=["Commit:","[SESSION]","Branch:","Diff stats:","Details:","[WORK]","[FOCUS]","[SUMMARY]","Session edited","Total tool calls","Duration:"],g=(h.observations||[]).find(w=>!p.some(x=>w.startsWith(x))&&w.length>10)||h.observations?.[0]||h.name,y=g.length>80?g.slice(0,80)+"…":g;return n("div",{class:"insight",children:[n("span",{class:"insight-icon",style:{fontSize:14,color:"var(--text-3)"},children:["#",f+1]}),n("span",{class:"insight-text",style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:y}),n("span",{class:"insight-val",children:[h.access_count,"×"]})]},h.id)})]}),(()=>{const h=["auto_saved","auto-tracked","session_end","session:","source:","scope:","date:","urgency:"],f=e.tagDistribution.filter(p=>!h.some(g=>p.tag.startsWith(g))&&!/^\d{4}-\d{2}-\d{2}/.test(p.tag));return f.length>0?n("div",{class:"card",children:[n("div",{class:"card-title",children:u("analytics.topics")}),n("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:f.slice(0,30).map(p=>n("span",{class:"tag",style:{fontSize:Math.max(11,Math.min(15,10+Math.log2(p.count+1)))+"px"},children:[p.tag," ",n("span",{style:{opacity:.5},children:["(",p.count,")"]})]},p.tag))})]}):null})()]})}function Ae(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function _t(){const[e,t]=M(null),[s,a]=M(""),[i,r]=M(""),[c,d]=M(""),[_,l]=M(!1),[m,o]=M(""),[b,h]=M(!0);N(()=>{P("GET","/v1/config").then(g=>{t(g),a(g.config.llm?.provider||""),d(g.config.llm?.model||"")}).finally(()=>h(!1))},[]);async function f(){l(!0),o("");try{const g={provider:s};c&&(g.model=c),i&&(g.apiKey=i),await P("POST","/v1/config",{llm:g}),o(u("settings.saved")),r("")}catch(g){o(u("common.error")+": "+g.message)}finally{l(!1)}}if(b)return n("div",{class:"empty",children:n("div",{class:"loading"})});const p=e?.capabilities;return n("div",{children:[n("div",{class:"card",children:[n("div",{class:"card-title",children:u("settings.capabilities")}),n("div",{class:"stats-row",style:{marginBottom:0},children:[n("div",{class:"stat",children:[n("div",{class:"stat-val",style:{fontSize:18},children:["Level ",p?.searchLevel||0]}),n("div",{class:"stat-lbl",children:p?.searchLevel?u("settings.smartMode"):u("settings.core")})]}),n("div",{class:"stat",children:[n("div",{class:"stat-val",style:{fontSize:14},children:Ae(p?.embeddings||"—")}),n("div",{class:"stat-lbl",children:u("settings.embeddings")})]}),n("div",{class:"stat",children:[n("div",{class:"stat-val",style:{fontSize:14},children:Ae(p?.llm?.provider||"None")}),n("div",{class:"stat-lbl",children:u("settings.llmProvider")})]})]})]}),n("div",{class:"card",children:[n("div",{class:"card-title",children:u("settings.llmProvider")}),n("div",{style:{display:"flex",gap:16,marginBottom:14},children:[["anthropic","Anthropic (Claude)"],["openai","OpenAI"],["ollama","Ollama (Local)"]].map(([g,y])=>n("label",{style:{display:"flex",alignItems:"center",gap:5,cursor:"pointer",fontSize:13},children:[n("input",{type:"radio",name:"provider",value:g,checked:s===g,onChange:()=>a(g)}),y]},g))}),s&&s!=="ollama"&&n("div",{style:{marginBottom:12},children:[n("label",{style:{fontSize:12,color:"var(--text-2)",display:"block",marginBottom:4},children:u("settings.apiKey")}),n("input",{type:"password",placeholder:s==="anthropic"?"sk-ant-api03-…":"sk-…",value:i,onInput:g=>r(g.target.value)})]}),n("div",{style:{marginBottom:14},children:[n("label",{style:{fontSize:12,color:"var(--text-2)",display:"block",marginBottom:4},children:u("settings.model")}),n("input",{type:"text",placeholder:s==="anthropic"?"claude-haiku-4-5":s==="openai"?"gpt-4o-mini":"llama3.2",value:c,onInput:g=>d(g.target.value)})]}),n("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[n("button",{class:"btn btn-primary",onClick:f,disabled:!s||_,children:u(_?"settings.saving":"settings.save")}),m&&n("span",{style:{fontSize:12,color:m.startsWith(u("common.error"))?"var(--danger)":"var(--success)"},children:m})]})]}),n("div",{class:"card",children:[n("div",{class:"card-title",children:u("settings.language")}),n("select",{value:nt(),onChange:g=>{st(g.target.value),window.location.reload()},style:{fontSize:13,padding:"6px 10px",borderRadius:6,border:"1px solid var(--border)",background:"var(--surface)",color:"var(--text-1)",cursor:"pointer"},children:rt().map(g=>n("option",{value:g.code,children:g.name},g.code))})]})]})}tt();const ut=["Search","Browse","Analytics","Manage","Settings"],gt={Search:"tab.search",Browse:"tab.browse",Analytics:"tab.analytics",Manage:"tab.manage",Settings:"tab.settings"};function mt(){const[e,t]=M("Browse"),[s,a]=M(null),[i,r]=M("");N(()=>{P("GET","/v1/health").then(a).catch(d=>r(d.message))},[]);const c=ut.map(d=>({key:d,label:u(gt[d])}));return n("div",{class:"shell",children:[n(at,{health:s,error:i}),n(it,{tabs:c,active:e,onSelect:d=>t(d)}),n("div",{class:"main",children:[n("div",{class:`panel ${e==="Search"?"active":""}`,children:n(dt,{})}),n("div",{class:`panel ${e==="Browse"?"active":""}`,children:n(Se,{})}),n("div",{class:`panel ${e==="Analytics"?"active":""}`,children:n(ht,{})}),n("div",{class:`panel ${e==="Manage"?"active":""}`,children:e==="Manage"&&n(Se,{manage:!0})}),n("div",{class:`panel ${e==="Settings"?"active":""}`,children:e==="Settings"&&n(_t,{})})]}),n("button",{class:"fb-btn",onClick:()=>{const d="https://github.com/PCIRCLE-AI/memesh-llm-memory/issues/new?title="+encodeURIComponent("[Feedback] ")+"&labels=feedback,from-dashboard";window.open(d,"_blank")},children:u("feedback.button")})]})}je(n(mt,{}),document.getElementById("app"));</script>
|
|
11
|
+
<style rel="stylesheet" crossorigin>:root{--bg-0: #09090b;--bg-1: #0f0f12;--bg-2: #18181b;--bg-card: rgba(24, 24, 27, .7);--bg-hover: rgba(39, 39, 42, .4);--bg-input: #0f0f12;--border: rgba(39, 39, 42, .7);--border-subtle: rgba(39, 39, 42, .35);--border-focus: #3b82f6;--text-0: #fafafa;--text-1: #d4d4d8;--text-2: #a1a1aa;--text-3: #71717a;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .12);--accent-hover: #60a5fa;--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--success: #22c55e;--success-soft: rgba(34, 197, 94, .1);--warning: #f59e0b;--radius: 10px;--radius-sm: 7px;--font: "Inter", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:14px}body{font-family:var(--font);background:var(--bg-0);color:var(--text-1);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.shell{min-height:100vh;display:flex;flex-direction:column}.header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--bg-1);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;backdrop-filter:blur(16px) saturate(180%)}.header-brand h1{font-size:15px;font-weight:700;color:var(--text-0);letter-spacing:-.02em;line-height:1.2}.header-brand small{font-size:10px;color:var(--text-3);letter-spacing:.04em}.header-right{display:flex;align-items:center;gap:10px}.header-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-2)}.dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:5px}.dot-ok{background:var(--success);box-shadow:0 0 6px #22c55e66}.dot-err{background:var(--danger)}.badge-version{font-family:var(--mono);font-size:11px;color:var(--text-3);background:var(--bg-hover);padding:2px 8px;border-radius:4px}.theme-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 9px;cursor:pointer;color:var(--text-2);font-size:13px;transition:border-color .15s}.theme-btn:hover{border-color:var(--text-3)}.nav{display:flex;background:var(--bg-1);border-bottom:1px solid var(--border);padding:0 24px;gap:1px;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-btn{padding:11px 16px;border:none;background:none;cursor:pointer;font:500 13px/1 var(--font);color:var(--text-3);border-bottom:2px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap}.nav-btn:hover{color:var(--text-2)}.nav-btn.active{color:var(--text-0);border-bottom-color:var(--accent)}.main{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:24px}.panel{display:none}.panel.active{display:block}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:14px;backdrop-filter:blur(8px);transition:border-color .2s,box-shadow .2s}.card:hover{border-color:#3b82f626}.card-title{font-size:13px;font-weight:600;color:var(--text-0);margin-bottom:14px;letter-spacing:-.01em}input[type=text],input[type=password],input[type=search],textarea{width:100%;padding:9px 13px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-0);font:13px/1.4 var(--font);outline:none;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder,textarea::placeholder{color:var(--text-3)}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-2);color:var(--text-1);font:500 13px/1 var(--font);cursor:pointer;transition:all .12s;white-space:nowrap}.btn:hover{border-color:var(--text-3);background:var(--bg-hover)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{color:var(--danger);border-color:#ef44444d;background:transparent}.btn-danger:hover{background:var(--danger-soft)}.btn-sm{padding:4px 10px;font-size:12px}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}table{width:100%;border-collapse:collapse}th{text-align:left;padding:9px 14px;font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;background:var(--bg-2);border-bottom:1px solid var(--border);white-space:nowrap}td{padding:10px 14px;border-bottom:1px solid var(--border-subtle);font-size:13px;color:var(--text-1)}tbody tr{transition:background .12s}tbody tr:hover{background:var(--bg-hover)}tbody tr:last-child td{border-bottom:none}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.01em}.badge-active{background:var(--success-soft);color:#4ade80}.badge-archived{background:var(--danger-soft);color:#f87171}.badge-type{background:var(--accent-soft);color:var(--accent-hover)}.tag{display:inline-block;padding:1px 7px;margin:1px 2px;border-radius:999px;font:400 11px var(--mono);background:var(--bg-hover);color:var(--text-2);border:1px solid var(--border-subtle)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:20px}.stat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center;backdrop-filter:blur(6px)}.stat-val{font:700 28px/1.1 var(--mono);color:var(--accent)}.stat-lbl{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.search-bar{display:flex;gap:8px;margin-bottom:18px}.search-bar input{flex:1}.mem-row{display:flex;gap:14px;align-items:flex-start}.mem-time{flex-shrink:0;width:72px;font:400 11px var(--mono);color:var(--text-3);padding-top:2px;line-height:1.4}.mem-body{flex:1;min-width:0}.mem-preview{font-size:13px;line-height:1.5;color:var(--text-1);word-break:break-word}.mem-meta{margin-top:3px;font:400 11px var(--mono);color:var(--text-3);display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mem-actions{flex-shrink:0;display:flex;gap:6px}.insight{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-subtle)}.insight:last-child{border-bottom:none}.insight-icon{font-size:18px;flex-shrink:0}.insight-text{font-size:13px;color:var(--text-1)}.insight-val{font:600 13px var(--mono);color:var(--accent)}.empty{text-align:center;padding:48px 20px;color:var(--text-3);font-size:13px}.empty-icon{font-size:28px;margin-bottom:8px;display:block}.loading{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.error-box{background:var(--danger-soft);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);padding:10px 14px;color:#f87171;font-size:13px}.fb-btn{position:fixed;bottom:20px;right:20px;background:var(--accent);color:#fff;border:none;padding:9px 16px;border-radius:999px;cursor:pointer;font:500 13px var(--font);box-shadow:0 4px 14px #3b82f64d;transition:transform .15s,box-shadow .15s;z-index:50}.fb-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}mark{background:#3b82f62e;color:inherit;padding:1px 2px;border-radius:3px}.overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;backdrop-filter:blur(4px)}.modal{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:24px;max-width:480px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 16px 48px #00000080}.modal h3{font-size:15px;font-weight:600;color:var(--text-0);margin-bottom:14px}@media(max-width:768px){.main{padding:14px}.nav-btn{padding:10px 11px;font-size:12px}.header-brand h1{font-size:14px}.search-bar{flex-direction:column}.stats-row{grid-template-columns:1fr 1fr}.mem-time{width:60px;font-size:10px}}@media(max-width:480px){.nav-btn{flex:1;font-size:11px;padding:9px 5px;text-align:center}.stats-row{grid-template-columns:1fr}.mem-row{flex-direction:column;gap:4px}.mem-time{width:auto}}</style>
|
|
12
|
+
</head>
|
|
13
|
+
<body>
|
|
14
|
+
<div id="app"></div>
|
|
15
|
+
</body>
|
|
16
|
+
</html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,IAAI,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;IACd,kBAAkB,EAAE,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;IACjE,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;CACpB;AASD,wBAAgB,UAAU,IAAI,YAAY,CAOzC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAGtD;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,IAAI,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;IACd,kBAAkB,EAAE,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;IACjE,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;CACpB;AASD,wBAAgB,UAAU,IAAI,YAAY,CAOzC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAGtD;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CASzE;AAID,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG9C;AAyBD,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,YAAY,CActE;AAQD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAM3D;AAID,wBAAgB,YAAY,IAAI,MAAM,CAAuB;AAC7D,wBAAgB,aAAa,IAAI,MAAM,CAAwB"}
|
package/dist/core/config.js
CHANGED
|
@@ -18,7 +18,11 @@ export function writeConfig(config) {
|
|
|
18
18
|
fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), { mode: 0o600 });
|
|
19
19
|
}
|
|
20
20
|
export function updateConfig(partial) {
|
|
21
|
-
const
|
|
21
|
+
const existing = readConfig();
|
|
22
|
+
const config = { ...existing, ...partial };
|
|
23
|
+
if (partial.llm && existing.llm) {
|
|
24
|
+
config.llm = { ...existing.llm, ...partial.llm };
|
|
25
|
+
}
|
|
22
26
|
writeConfig(config);
|
|
23
27
|
return config;
|
|
24
28
|
}
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AA+BpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AACtD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAIzD,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAAE,OAAO,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAoB;IAC9C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAA8B;IACzD,MAAM,MAAM,GAAG,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { LLMConfig } from './config.js';
|
|
2
|
+
export interface StructuredLesson {
|
|
3
|
+
error: string;
|
|
4
|
+
rootCause: string;
|
|
5
|
+
fix: string;
|
|
6
|
+
prevention: string;
|
|
7
|
+
errorPattern: string;
|
|
8
|
+
fixPattern: string;
|
|
9
|
+
severity: 'critical' | 'major' | 'minor';
|
|
10
|
+
}
|
|
11
|
+
export declare function analyzeFailure(errors: string[], filesEdited: string[], llmConfig: LLMConfig): Promise<StructuredLesson | null>;
|
|
12
|
+
export declare function parseLesson(text: string): StructuredLesson | null;
|
|
13
|
+
//# sourceMappingURL=failure-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failure-analyzer.d.ts","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;CAC1C;AAOD,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EAAE,EAChB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA8BlC;AA4CD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAyBjE"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
export async function analyzeFailure(errors, filesEdited, llmConfig) {
|
|
2
|
+
const unique = [...new Set(errors)].slice(0, 5);
|
|
3
|
+
if (unique.length === 0)
|
|
4
|
+
return null;
|
|
5
|
+
const prompt = `You are analyzing a coding session where errors were encountered and fixed.
|
|
6
|
+
|
|
7
|
+
Errors found:
|
|
8
|
+
${unique.map((e, i) => `${i + 1}. ${e.slice(0, 200)}`).join('\n')}
|
|
9
|
+
|
|
10
|
+
Files edited to fix:
|
|
11
|
+
${filesEdited.slice(0, 10).join(', ')}
|
|
12
|
+
|
|
13
|
+
Analyze the root cause and return a JSON object (ONLY the JSON, no explanation):
|
|
14
|
+
{
|
|
15
|
+
"error": "concise error description (1 sentence)",
|
|
16
|
+
"rootCause": "why this happened (1 sentence)",
|
|
17
|
+
"fix": "what fixed it (1 sentence)",
|
|
18
|
+
"prevention": "how to prevent this in future (1 sentence, actionable)",
|
|
19
|
+
"errorPattern": "category: null-reference | type-error | import-missing | config-error | test-failure | build-error | runtime-error | logic-error | other",
|
|
20
|
+
"fixPattern": "category: defensive-coding | type-guard | validation | config-fix | dependency-update | refactor | test-fix | other",
|
|
21
|
+
"severity": "critical | major | minor"
|
|
22
|
+
}`;
|
|
23
|
+
try {
|
|
24
|
+
const text = await callLLM(prompt, llmConfig);
|
|
25
|
+
return parseLesson(text);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
async function callLLM(prompt, config) {
|
|
32
|
+
const apiKey = config.apiKey || process.env.ANTHROPIC_API_KEY || process.env.OPENAI_API_KEY;
|
|
33
|
+
if (config.provider === 'anthropic') {
|
|
34
|
+
if (!apiKey)
|
|
35
|
+
throw new Error('No API key');
|
|
36
|
+
const res = await fetch('https://api.anthropic.com/v1/messages', {
|
|
37
|
+
method: 'POST',
|
|
38
|
+
headers: { 'x-api-key': apiKey, 'anthropic-version': '2023-06-01', 'content-type': 'application/json' },
|
|
39
|
+
body: JSON.stringify({ model: config.model || 'claude-haiku-4-5', max_tokens: 300, messages: [{ role: 'user', content: prompt }] }),
|
|
40
|
+
});
|
|
41
|
+
if (!res.ok)
|
|
42
|
+
throw new Error(`API ${res.status}`);
|
|
43
|
+
const data = await res.json();
|
|
44
|
+
return data.content?.[0]?.text || '';
|
|
45
|
+
}
|
|
46
|
+
if (config.provider === 'openai') {
|
|
47
|
+
if (!apiKey)
|
|
48
|
+
throw new Error('No API key');
|
|
49
|
+
const res = await fetch('https://api.openai.com/v1/chat/completions', {
|
|
50
|
+
method: 'POST',
|
|
51
|
+
headers: { 'Authorization': `Bearer ${apiKey}`, 'Content-Type': 'application/json' },
|
|
52
|
+
body: JSON.stringify({ model: config.model || 'gpt-4o-mini', max_tokens: 300, messages: [{ role: 'user', content: prompt }] }),
|
|
53
|
+
});
|
|
54
|
+
if (!res.ok)
|
|
55
|
+
throw new Error(`API ${res.status}`);
|
|
56
|
+
const data = await res.json();
|
|
57
|
+
return data.choices?.[0]?.message?.content || '';
|
|
58
|
+
}
|
|
59
|
+
if (config.provider === 'ollama') {
|
|
60
|
+
const host = process.env.OLLAMA_HOST || 'http://localhost:11434';
|
|
61
|
+
const res = await fetch(`${host}/api/generate`, {
|
|
62
|
+
method: 'POST',
|
|
63
|
+
headers: { 'Content-Type': 'application/json' },
|
|
64
|
+
body: JSON.stringify({ model: config.model || 'llama3.2', prompt, stream: false }),
|
|
65
|
+
});
|
|
66
|
+
if (!res.ok)
|
|
67
|
+
throw new Error(`Ollama ${res.status}`);
|
|
68
|
+
const data = await res.json();
|
|
69
|
+
return data.response || '';
|
|
70
|
+
}
|
|
71
|
+
return '';
|
|
72
|
+
}
|
|
73
|
+
export function parseLesson(text) {
|
|
74
|
+
try {
|
|
75
|
+
const match = text.match(/\{[\s\S]*?\}/);
|
|
76
|
+
if (!match)
|
|
77
|
+
return null;
|
|
78
|
+
const obj = JSON.parse(match[0]);
|
|
79
|
+
if (!obj.error || !obj.fix)
|
|
80
|
+
return null;
|
|
81
|
+
const validErrorPatterns = ['null-reference', 'type-error', 'import-missing', 'config-error', 'test-failure', 'build-error', 'runtime-error', 'logic-error', 'other'];
|
|
82
|
+
const validFixPatterns = ['defensive-coding', 'type-guard', 'validation', 'config-fix', 'dependency-update', 'refactor', 'test-fix', 'other'];
|
|
83
|
+
const validSeverities = ['critical', 'major', 'minor'];
|
|
84
|
+
return {
|
|
85
|
+
error: String(obj.error).slice(0, 200),
|
|
86
|
+
rootCause: String(obj.rootCause || 'Unknown').slice(0, 200),
|
|
87
|
+
fix: String(obj.fix).slice(0, 200),
|
|
88
|
+
prevention: String(obj.prevention || 'Review similar code paths').slice(0, 200),
|
|
89
|
+
errorPattern: validErrorPatterns.includes(obj.errorPattern) ? obj.errorPattern : 'other',
|
|
90
|
+
fixPattern: validFixPatterns.includes(obj.fixPattern) ? obj.fixPattern : 'other',
|
|
91
|
+
severity: validSeverities.includes(obj.severity) ? obj.severity : 'minor',
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=failure-analyzer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failure-analyzer.js","sourceRoot":"","sources":["../../src/core/failure-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { StructuredLesson } from './failure-analyzer.js';
|
|
2
|
+
export declare function createLesson(lesson: StructuredLesson, projectName: string): {
|
|
3
|
+
name: string;
|
|
4
|
+
isNew: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function createExplicitLesson(error: string, fix: string, projectName: string, opts?: {
|
|
7
|
+
rootCause?: string;
|
|
8
|
+
prevention?: string;
|
|
9
|
+
severity?: 'critical' | 'major' | 'minor';
|
|
10
|
+
errorPattern?: string;
|
|
11
|
+
}): {
|
|
12
|
+
name: string;
|
|
13
|
+
};
|
|
14
|
+
export declare function findProjectLessons(projectName: string, limit?: number): Array<{
|
|
15
|
+
name: string;
|
|
16
|
+
observations: string[];
|
|
17
|
+
confidence?: number;
|
|
18
|
+
}>;
|
|
19
|
+
declare function inferErrorPattern(error: string): string;
|
|
20
|
+
export { inferErrorPattern };
|
|
21
|
+
//# sourceMappingURL=lesson-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lesson-engine.d.ts","sourceRoot":"","sources":["../../src/core/lesson-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAQ9D,wBAAgB,YAAY,CAC1B,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,MAAM,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CA2BlC;AAMD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAsBlB;AAMD,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,MAAU,GAChB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAatE;AAMD,iBAAS,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAShD;AAGD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { remember, recall } from './operations.js';
|
|
2
|
+
export function createLesson(lesson, projectName) {
|
|
3
|
+
const name = `lesson-${projectName}-${lesson.errorPattern}`;
|
|
4
|
+
const existing = recall({ query: name, limit: 1 });
|
|
5
|
+
const isNew = existing.length === 0 || existing[0].name !== name;
|
|
6
|
+
remember({
|
|
7
|
+
name,
|
|
8
|
+
type: 'lesson_learned',
|
|
9
|
+
observations: [
|
|
10
|
+
`Error: ${lesson.error}`,
|
|
11
|
+
`Root cause: ${lesson.rootCause}`,
|
|
12
|
+
`Fix: ${lesson.fix}`,
|
|
13
|
+
`Prevention: ${lesson.prevention}`,
|
|
14
|
+
],
|
|
15
|
+
tags: [
|
|
16
|
+
`project:${projectName}`,
|
|
17
|
+
`error-pattern:${lesson.errorPattern}`,
|
|
18
|
+
`fix-pattern:${lesson.fixPattern}`,
|
|
19
|
+
`severity:${lesson.severity}`,
|
|
20
|
+
'source:auto-learned',
|
|
21
|
+
],
|
|
22
|
+
});
|
|
23
|
+
return { name, isNew };
|
|
24
|
+
}
|
|
25
|
+
export function createExplicitLesson(error, fix, projectName, opts) {
|
|
26
|
+
const errorPattern = opts?.errorPattern || inferErrorPattern(error);
|
|
27
|
+
const name = `lesson-${projectName}-${errorPattern}`;
|
|
28
|
+
remember({
|
|
29
|
+
name,
|
|
30
|
+
type: 'lesson_learned',
|
|
31
|
+
observations: [
|
|
32
|
+
`Error: ${error}`,
|
|
33
|
+
`Root cause: ${opts?.rootCause || 'Not specified'}`,
|
|
34
|
+
`Fix: ${fix}`,
|
|
35
|
+
`Prevention: ${opts?.prevention || 'Review similar code paths'}`,
|
|
36
|
+
],
|
|
37
|
+
tags: [
|
|
38
|
+
`project:${projectName}`,
|
|
39
|
+
`error-pattern:${errorPattern}`,
|
|
40
|
+
`severity:${opts?.severity || 'minor'}`,
|
|
41
|
+
'source:explicit',
|
|
42
|
+
],
|
|
43
|
+
});
|
|
44
|
+
return { name };
|
|
45
|
+
}
|
|
46
|
+
export function findProjectLessons(projectName, limit = 5) {
|
|
47
|
+
const results = recall({
|
|
48
|
+
tag: `project:${projectName}`,
|
|
49
|
+
limit,
|
|
50
|
+
});
|
|
51
|
+
return results
|
|
52
|
+
.filter(e => e.type === 'lesson_learned')
|
|
53
|
+
.map(e => ({
|
|
54
|
+
name: e.name,
|
|
55
|
+
observations: e.observations,
|
|
56
|
+
confidence: e.confidence,
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
function inferErrorPattern(error) {
|
|
60
|
+
const lower = error.toLowerCase();
|
|
61
|
+
if (lower.includes('null') || lower.includes('undefined') || lower.includes('cannot read prop'))
|
|
62
|
+
return 'null-reference';
|
|
63
|
+
if (lower.includes('type') && (lower.includes('error') || lower.includes('mismatch')))
|
|
64
|
+
return 'type-error';
|
|
65
|
+
if (lower.includes('import') || lower.includes('module not found') || lower.includes('cannot find'))
|
|
66
|
+
return 'import-missing';
|
|
67
|
+
if (lower.includes('config') || lower.includes('env') || lower.includes('environment'))
|
|
68
|
+
return 'config-error';
|
|
69
|
+
if (lower.includes('test') && (lower.includes('fail') || lower.includes('assert')))
|
|
70
|
+
return 'test-failure';
|
|
71
|
+
if (lower.includes('build') || lower.includes('compile') || lower.includes('tsc'))
|
|
72
|
+
return 'build-error';
|
|
73
|
+
return 'other';
|
|
74
|
+
}
|
|
75
|
+
export { inferErrorPattern };
|
|
76
|
+
//# sourceMappingURL=lesson-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lesson-engine.js","sourceRoot":"","sources":["../../src/core/lesson-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import type { RememberInput, RememberResult, RecallInput, ForgetInput, ForgetResult, ConsolidateInput, ConsolidateResult, ExportInput, ExportResult, ImportInput, ImportResult, Entity } from './types.js';
|
|
1
|
+
import type { RememberInput, RememberResult, RecallInput, ForgetInput, ForgetResult, ConsolidateInput, ConsolidateResult, ExportInput, ExportResult, ImportInput, ImportResult, LearnInput, LearnResult, Entity } from './types.js';
|
|
2
2
|
export declare function remember(args: RememberInput): RememberResult;
|
|
3
3
|
export declare function recall(args: RecallInput): Entity[];
|
|
4
4
|
export declare function recallEnhanced(args: RecallInput): Promise<Entity[]>;
|
|
5
5
|
export declare function consolidate(args: ConsolidateInput): Promise<ConsolidateResult>;
|
|
6
6
|
export declare function exportMemories(args: ExportInput): ExportResult;
|
|
7
7
|
export declare function importMemories(args: ImportInput): ImportResult;
|
|
8
|
+
export declare function learn(args: LearnInput): LearnResult;
|
|
8
9
|
export declare function forget(args: ForgetInput): ForgetResult;
|
|
9
10
|
//# sourceMappingURL=operations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,MAAM,EACP,MAAM,YAAY,CAAC;AASpB,wBAAgB,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAiD5D;AAQD,wBAAgB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,EAAE,CAmBlD;AASD,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAwDzE;AASD,wBAAsB,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwEpF;AA2FD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,CA4B9D;AASD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,CAsD9D;AAOD,wBAAgB,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAmBnD;AAMD,wBAAgB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,CAuBtD"}
|
package/dist/core/operations.js
CHANGED
|
@@ -2,6 +2,8 @@ import { getDatabase } from '../db.js';
|
|
|
2
2
|
import { KnowledgeGraph } from '../knowledge-graph.js';
|
|
3
3
|
import { expandQuery, isExpansionAvailable } from './query-expander.js';
|
|
4
4
|
import { rankEntities } from './scoring.js';
|
|
5
|
+
import { createExplicitLesson } from './lesson-engine.js';
|
|
6
|
+
import path from 'path';
|
|
5
7
|
import { detectCapabilities } from './config.js';
|
|
6
8
|
export function remember(args) {
|
|
7
9
|
const db = getDatabase();
|
|
@@ -321,6 +323,19 @@ export function importMemories(args) {
|
|
|
321
323
|
}
|
|
322
324
|
return { imported, skipped, appended, errors };
|
|
323
325
|
}
|
|
326
|
+
export function learn(args) {
|
|
327
|
+
const projectName = path.basename(process.cwd());
|
|
328
|
+
const result = createExplicitLesson(args.error, args.fix, projectName, {
|
|
329
|
+
rootCause: args.root_cause,
|
|
330
|
+
prevention: args.prevention,
|
|
331
|
+
severity: args.severity,
|
|
332
|
+
});
|
|
333
|
+
return {
|
|
334
|
+
learned: true,
|
|
335
|
+
name: result.name,
|
|
336
|
+
type: 'lesson_learned',
|
|
337
|
+
};
|
|
338
|
+
}
|
|
324
339
|
export function forget(args) {
|
|
325
340
|
const db = getDatabase();
|
|
326
341
|
const kg = new KnowledgeGraph(db);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-export.d.ts","sourceRoot":"","sources":["../../src/core/schema-export.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"schema-export.d.ts","sourceRoot":"","sources":["../../src/core/schema-export.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAmF5C"}
|