hindsight

What does it do?

Hindsight is a memory system for AI agents that is designed to let them learn over time. [1] It provides operations to store new memories with retain, search memories with recall, and analyze existing memories with reflect. [2a][2b][2c] For example, it can personalize AI chatbots by storing and recalling memories associated with individual users. [3]

Activity, over time

Daily observations from the public event archive.

Attention

Daily stars & forks

Loading attention chart

Star accumulation

Cumulative stars

Loading star accumulation chart

Pull requests

Daily opens & merges

Loading pull requests chart

Conversations

Daily issues & comments

Loading conversations chart

Community

Daily accounts & reviews

Loading community chart

Releases

Daily releases

Loading releases chart

Mentions

64posts · 30d
Nov 30 posts
  1. Multi-agent work in three spoonfuls (part IV): from a terminal trident to an autopoietic loop --- title: "Multi-agent work in three spoonfuls (part IV): from a terminal trident to an autopoietic loop" published: true description: "Fourth entry in the penta-agent multi-agent series: quota-governed routing, 70 ms hybrid memory, MCP tools, and a zero-token local autopoiesis loop in Harness2." tags: "ai, agents, cli, automation" canonical_url: "3cucharadas.cl" cover_image: "3cucharadas.cl" ai_disclosure_level: "some_ai" --- After benchmarking the models in part I, auditing retrieval in part II, and tracing provenance in part III of this series, I closed my laptop with a sense of victory: I had a trident of agents running from the terminal on Arch Linux. With a couple of zsh aliases, I could invoke Claude Code for architectural reasoning, hand off a task to Codex CLI to edit code, or ask Gemini CLI and Antigravity for a quick second opinion. On paper, orchestration looked solved. Yet after using that setup every day on real projects inside penta-agent, I hit a silent wall: having three agents talking does not equal having a system that learns. Every time I opened a fresh session, the trident suffered from partial amnesia, repeated commands that had already failed the previous week, burned the quota of the most expensive provider on routine tasks, or marked tests as "verified" when they had never had a chance to fail. To understand what was missing, it helped to change the question. In a recent systems-theory analysis of artificial intelligence, Benedikt Zönnchen, Mariya Dzhimova, and Gudrun Socher (2025[^zonnchen2025], 2–4) propose setting aside whether a language model "thinks like a human" and asking instead the question posed by Humberto Maturana and Francisco Varela (1987[^maturana1987] [1984]) and extended by Niklas Luhmann (1998[^luhmann1998], 60–69): can the system draw its own boundary with the environment, observe its own failures, and sustain itself through its own operations? In other words, moving from the vague notion of "intelligence" to the concrete mechanism of autopoiesis. As Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 8–10) show, an isolated language model in a chat window neither is nor can be an autopoietic, sense-making system: it lacks what George Spencer-Brown (1969[^spencerbrown1969]) called re-entry—the capacity to re-introduce the distinction between system and environment (self-reference vs. other-reference) inside its own operations—because it only computes which token is statistically plausible after another, without internal resistance against error. If I want a system that improves without degrading, I have to build a socio-technical harness around the models that couples the probabilistic flexibility of neural networks with the strict coupling and binary code (works / does not work, work / fail) of deterministic technology described by Luhmann (1998[^luhmann1998], 517–525) and André Reichel (2011[^reichel2011], 105–118). The starting point: what I measured and discarded before making this leap Before diving into the three spoonfuls of this fourth installment, here is the experiment that forced me to adopt that discipline. When I tried to give the system long-term memory, the obvious temptation was to install the most elaborate architecture available: temporal graphs, heavy extractors, or an 8B-parameter neural judge running on CPU. Instead of following intuition, I built a reproducible benchmark over my real work logs—comparing open alternatives such as GraphRAG, Graphiti, Hindsight, Letta, Mem0, and deja-vu—and set a falsification contract upfront: any candidate exceeding 0.10 s in p95 latency or failing to improve recall by at least 10% would be discarded. | What I tested in the laboratory | Measured result | Operational decision | |---|---|---| | Hybrid memory (v3.1) (FTS5 lexical index + semantic neighbors in Qdrant with Qwen3-Embedding-0.6B) | Latency p95 = 0.07 s (< 0.10 s), 96% overall recall, rescuing 1 in 3 zero-lexical-overlap queries | Promoted to production as the engine behind experience-memory and recall-context | | In-memory relational graph (v3.2) for multi-hop entity expansion | Exact tie in accuracy with v3.1, but nearly double the latency (p95 = 0.13 s > 0.10 s) | Frozen in the lab; the extra complexity did not earn its keep | | CPU neural judges (4B and 8B) for live answer auditing | Between 69 s and 197 s per verdict, hitting 180 s timeouts in 2 of 3 runs | Discarded from the critical path; pruned 36.3 GiB from disk | | Deterministic checks + bounded 0.6B judge for local validation | Millisecond latency, 0 remote calls, and 100% reproducibility | Adopted as the standard for control gates and evaluation | Table 1. Summary of the prior local memory and evaluation laboratory in penta-agent: what survived the 0.10 s threshold and why I pruned 36.3 GiB of local models that added no operational value. With that foundation in place, I organized this fourth part into three progressive spoonfuls: in the first, I show how I moved from launching standalone agents by hand to governing them with quota budgets, auditable bridges, and a live board in kitty and tmux; in the second, how the nervous system of hybrid memory, MCP tools, and skills works under the hood; and in the third, how I closed the local autopoiesis loop with Harness2 and where both my metrics and systems theory draw the boundary today. --- Spoonful 1: From invoking agents by hand to governing agents and models In plain terms: when I first wired the three agents together, I acted like a traffic officer waving my arms in the middle of an intersection. If I wanted Codex CLI to review a patch written by Claude Code, I copied file paths, opened another tab, and hoped for the best. That works for a five-minute demo, but it falls apart when a task runs for two hours and touches twenty files. Quota-aware routing and security boundaries My first deductive inference came from a hard constraint: model subscriptions and APIs have usage limits, different context windows, and credential boundaries that must never blur. By definition, if I delegate a heavy task to an agent whose quota is at 98%, the session will die mid-flight and leave the repository in an inconsistent state. So I replaced intuitive provider selection with an explicit policy in routing.yaml and a pre-flight sentinel (quota_status.sh, governed by the quota-guard skill). Before launching any expensive job, the system reads cached pressure across every lane without spending tokens: - 🔍 Claude Code (Opus / Sonnet): handles architectural design, delicate editing, and long-horizon synthesis when its quota is clear (exit 0). - 🛠️ Codex CLI (gpt-5.4): steps in as an implementation peer, deep refactoring engine, session rescuer (codex-rescue), and cross-validator. - 🌐 Gemini CLI and Antigravity (gemini-3-pro / flash): in a direct session (penta-agy) it acts as the primary integrator; when invoked from outside via agy-bridge, it runs inside a strict sandbox over sanitized public context as an explorer, reviewer, or validator, never inheriting private keys or .env files. Instead of calling a raw binary and depending on whatever it prints to stdout, every cross-agent handoff goes through agy-bridge. The bridge requires declaring who is calling (--caller), in what mode (plan, review, patch, test, or explain), and with what time limit (--timeout), leaving an immutable receipt in .agents/runs/<run_id>/ with request.md, result.md, status.json, and diff.patch. The live board (plan-board) and decision gates My second inference was inductive: reviewing dozens of past sessions showed that the biggest waste of time happened at two extremes. Either an agent interrupted me every two minutes to ask permission for trivial, reversible steps, or it silently made a delicate architectural choice and I only discovered at the end that it had gone down the wrong path. To eliminate both extremes without filling this post with abstract flowcharts, here is how my actual kitty terminal—or minimalist Wayland alternatives like foot on Codeberg—looks today when split into two panes with tmux during a live task: ![Demonstration in a Kitty terminal split with tmux where the top pane runs multi-agent delegation, passes through a decision-gate, and validates a falsifiable gate, while the bottom pane updates the plan-board live until closing 4 of 4 steps.](3cucharadas.cl) Watch the full video demo on 3cucharadas.cl. <strong>Figure 1.</strong> Daily workflow in my <a href="kovidgoyal/kitty"><code>kitty</code></a> + <a href="tmux/tmux"><code>tmux</code></a> terminal with the <a href="starship/starship"><code>Starship</code></a> prompt: the top pane runs multi-agent delegation via <code>agy-bridge</code>, the <code>decision-gate</code> brake, and <code>pytest</code>; the bottom pane (<code>watch.mjs</code>) updates each step live (<code>[ ]</code> &rarr; <code>[~]</code> &rarr; <code>[!]</code> &rarr; <code>[x]</code>), along with binding decisions and drift. What appears in the bottom pane of Figure 1 is the contract that changed how I work: 1. Local autonomy with visual traceability (plan-board): every reversible, in-scope step proceeds without asking permission, but must be reflected in real time in the bottom table. And no item can be closed as verified ([x]) unless the agent attaches the concrete test, command, or observation reference that backs it. 2. Decision gate (decision-gate): when an irreversible or architectural fork appears (state [!]), the agent halts only that branch and presents the question with the recommended option first, marked (Recommended) and justified with deductive, inductive, and abductive evidence. 3. A gate that has never been seen red is not a gate (gates-falsables): before accepting any new verifier, I require running it against a synthetic failure (--fixture) and proving that it returns a non-zero exit code (exit 1). If a check passes even when I break its input on purpose, it is not a safety net—it is compliance theater. --- Spoonful 2: The nervous system — hybrid memory, skills, and MCP tools If the first spoonful orders who does what and under which rules, the second solves how the system remembers what it has already learned and how it picks the exact tool without bloating the context window. Here the diagnosis by Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 6–7, 9) is decisive again: a neural network maintains a loose coupling with human communication that behaves like a "contingent index-card system (Zettelkasten)" (pp. 7, 9) of semantic associations in vector space, giving rise to what Elena Esposito (2017[^esposito2017], 249–265; 2022[^esposito2022]) calls "virtual double contingency" and "artificial communication." That flexibility lets it connect ideas phrased in very different words, but also makes its outputs inherently probabilistic and devoid of autonomous decision-making. If I want reliable memory and precise execution, I have to couple that vector Zettelkasten with exact indices and deterministic scripts. Experience memory (experience-memory): the hybrid Zettelkasten in 0.07 s When I first started keeping logs, my memory was essentially a folder of Markdown files that I read or searched with ripgrep. The obvious problem is that if a month ago I solved a cold-boot screen freeze under the title "Webview failure on autostart" and today I search for "Panel fails to load at login", a purely lexical search can miss it entirely, whereas a purely vector search can bury the exact name of a script like verify_boot_contract.sh. The solution I validated in Table 1 combines both worlds behind the experience-memory MCP server and the recall-context skill: - Exact lexical lane (SQLite FTS5): instantly catches flag names, error codes, file paths, and invariants (INV-005). - Dense semantic lane (Qdrant + Qwen3-Embedding-0.6B): indexes architectural decisions, handoffs, and operational lessons (penta_context_v2) to retrieve conceptual neighbors even when they share zero keywords. Before designing any non-trivial strategy, the agent queries recall_experience in 70 milliseconds (p95 = 0.07 s). That is how it discovers which command worked previously, which hypothesis was already refuted, and which environment trap to avoid (for instance, knowing that in my shell cp, mv, and rm are aliased to interactive -i, which hangs a headless process unless invoked via command mv -f). Skills as living procedures and proactive MCP selection To avoid saturating the initial prompt with thousands of lines of instructions, I adopted the modular pattern of Anthropic Skills enriched with local contracts. In penta-agent, each skill is a self-contained package with four parts: a concise contract in SKILL.md defining when to activate and when not to use it; on-demand deep documentation in references/ (such as the editorial corpus extracted with Docling or diagramming rules with D2); deterministic executables in scripts/ (such as typed pipelines in Nushell, visual automation with Playwright, or forge integration via glab on GitLab); and a telemetry trail. Similarly, the fleet of MCP servers (plan-board, experience-memory, ideas-rag, paper-search, bibliography-apa, PLAYWRIGHT_LOCAL) is cataloged in specs/mcp-capabilities.json. When a task arrives, triage evaluates which capabilities provide real evidence and records both hits and justified abstentions. And when I found that two older servers (quota status and remote SSH infrastructure) were faster, clearer, and easier to audit as direct scripts (quota_status.sh and remote_exec.sh), I decommissioned them as MCP servers and turned them into lightweight skills. Fewer resident daemons mean a smaller failure surface. --- Spoonful 3: The autopoiesis loop (Harness2) — how the system rehearses its own improvements Here I reach the core of this fourth installment. Having capable agents (Spoonful 1) and fast hybrid memory with skills (Spoonful 2) still leaves a critical question open: what happens when a delegation route ages, a skill starts inducing errors, or a memory tweak degrades accuracy on edge cases? If I rely solely on noticing by eye weeks later, the system degrades through silent drift. Why a standalone LLM lacks re-entry and internal resistance In their study on autopoiesis and artificial intelligence, Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 8–9) explain with surgical precision why asking a model to "reflect on its own errors" via chain-of-thought (CoT) is not enough. When a model generates intermediate tokens like "Is this step correct?", it exhibits only rudimentary processual self-referentiality (p. 8)—producing the most statistically plausible continuation inside its training distribution—while lacking reflective self-reference and genuine re-entry (Spencer-Brown 1969[^spencerbrown1969]). If a model takes itself as its sole reference without external contrast, it quickly falls into infinite recursion or collapse; if it depends entirely on a human retraining its weights from outside (RLHF or delayed fine-tuning), it remains an allopoietic artifact determined from the outside (Zönnchen, Dzhimova, and Socher 2025[^zonnchen2025], 4, 8–9). To escape that trap, Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 7) recover a decisive formulation from Niklas Luhmann (1995[^luhmann1995]) on how operational constructivism relocates Kant's "resistance of reality" inside a system: > "I think we should not abandon [Kant's] idea of resistance, but we should relocate it into the system. It is the result of resolving an internal conflict—the result of the system's operations resisting the operations of the same system" (Luhmann 1995[^luhmann1995], quoted in Zönnchen, Dzhimova, and Socher 2025[^zonnchen2025], 7). That sentence describes, piece by piece, what I built in penta-agent by adapting and integrating the proactive loop of Harness² proposed by Ruiyao Xu, Yanfei Chen, Zhongying CuiZhu, et al. (2026[^xu2026]): making the system's own deterministic verification operations resist and filter change proposals generated from its own operational friction. <details markdown="1"> <summary><strong>In plain terms (ELI5): what is Google's original Harness² and how did I adapt it to my machine?</strong></summary> Imagine your AI agents are very creative chefs, but the recipe book they follow (their rules, memory, and tools) sometimes has confusing steps that make them burn the rice. The original Harness² from Google Research (Xu et al. 2026) proposes a clever loop called Propose–Probe–Compose: instead of swapping out the chef's brain, it puts several assistants to work rewriting the recipe book, asks them to cook test dishes in the cloud, and keeps the winning recipe. For my daily workflow, the factory setup had two catches: it is designed to burn hundreds of paid cloud model calls (Vertex AI), and when driving CLI agents it unbuckles their seatbelt (--dangerously-bypass-approvals-and-sandbox) with open internet access. To adapt it to penta-agent without spending an extra cent or opening security holes, I took its recursive search engine (commit 1cfe254e) and locked it inside a "test kitchen" completely unplugged from the internet (unshare -Urn), with a disposable home folder and zero access to my API keys or model CLIs (model_calls = 0). Instead of running cloud benchmarks, my wrapper (penta-harness2 and local-cycle) feeds that test kitchen with the real stumbles my agents suffered during the week (CSI), requires any recipe tweak to first fail the test when broken (red) and then pass every historical case without breaking anything else (green), and finally stages the winning recipe across all three agents (Claude, Codex, and Gemini/Antigravity) with a one-step undo button (rollback-local) in case I do not approve it. </details> <figure class="d2-responsive" style="width: 100%;"> <img src="3cucharadas.cl" width="1001" height="954" style="width: 100%; height: auto; display: block; border-radius: 12px;" alt="Diagram of the closed local autopoiesis loop in Penta Agent with Harness2: CSI friction signals feed the case generator and the local cycle across routing, memory, and skills; a deterministic judge evaluates against holdout cases with zero model calls, discarding regressions and keeping only verified improvements for human promotion."> <figcaption><strong>Figure 2.</strong> Governed autopoiesis loop in <code>penta-agent</code> + <code>Harness2</code>: relocating internal resistance (Luhmann 1995; Zönnchen, Dzhimova, and Socher 2025) through <code>holdout</code> evaluation with <code>model_calls = 0</code> prior to any human promotion.</figcaption> </figure> How the closed loop operates across my three domains (routing, memory, skills) As Figure 2 shows (adapting into a three-column horizontal layout on desktop and a vertical flow on mobile), the loop operates in four strict stages: 1. Observing real friction (CSI — Continuous Self-Improvement): while I use the system, a collector logs objective friction signals: a task that had to switch agents after a timeout, an experience-memory query that returned too few useful neighbors, or a skill where the user had to correct a command. 2. Bridging evidence into reproducible cases (--from-csi latest): the local_cycle.py module takes that friction report and automatically translates it into a test specification (CaseSpec) inside an isolated environment, without touching my active configuration. 3. Internal resistance without spending tokens (eval_harness with model_calls = 0): the harness runs the full suite (--profile autopoiesis-all, currently covering 9/9 baseline cases across routing, memory, and skills), enforcing two hard conditions: every control case (holdout) must pass (holdout_passed = true), and external API calls must equal zero (model_calls = 0). 4. Auditable decision (KEEP vs. DISCARD) and human promotion: if a candidate degrades even a single holdout case or fails to beat the baseline, the deterministic judge discards it (DISCARD). Only when it improves the score with zero regressions does it receive a KEEP verdict and leave a signed receipt for me to review before promoting it to the main repository. So this does not remain a theoretical promise, the next mini-video shows penta-harness2-shadow local-cycle --profile autopoiesis-all running in my kitty + tmux terminal, including what happens when I inject a regressive candidate (--fixture) alongside a healthy improvement: ![Demonstration in a Kitty terminal split with tmux running penta-harness2-shadow local-cycle across 9 of 9 cases in routing, memory, and skills with zero model calls, applying internal resistance to discard a regressor and keep the healthy candidate.](3cucharadas.cl) Watch the full video demo on 3cucharadas.cl. <strong>Figure 3.</strong> Execution in my <a href="kovidgoyal/kitty"><code>kitty</code></a> + <a href="tmux/tmux"><code>tmux</code></a> terminal of the local autopoiesis loop (<code>local-cycle --profile autopoiesis-all</code>): it evaluates all <code>9/9</code> cases in <code>routing</code>, <code>memory</code>, and <code>skills</code> with <code>model_calls = 0</code>, applies internal resistance to reject the regressor (<code>DISCARD</code>), and preserves the verified improvement (<code>KEEP +0.250</code>) with all <code>82</code> harness tests green. --- Closing: what my architecture achieves today and where its limits lie Looking back at the path from part I, part II, and part III, the main difference is no longer which model writes the prettiest reply to an isolated prompt, but the structure that holds the whole system together when I am not watching every line. Following the rigorous distinction drawn by Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 5, 9–10) and by Elena Esposito (2017[^esposito2017]; 2022[^esposito2022]; 2024[^esposito2024]), it would be an epistemic mistake to claim that a language model or a bundle of scripts has on its own achieved the biological autopoiesis of a living cell (Maturana and Varela 1987[^maturana1987] [1984]) or the reflective sense-making (Sinn) of human consciousness (Luhmann 1998[^luhmann1998], 50–69). As Zönnchen, Dzhimova, and Socher (2025[^zonnchen2025], 5, 10) caution when critiquing merely metaphorical invocations of technological autopoiesis, language models remain statistical engines that compute distributions without mental states of their own. Yet—and this is my engineering synthesis for the socio-technical system as a whole—when I couple their capacity for contingent variation with verified hybrid memory, strict delegation contracts, a binary internal-resistance harness (work / fail; Reichel 2011[^reichel2011]) that filters its own proposals before touching production, and deliberative human oversight, I obtain in practice a loop of governed operational autopoiesis. To close with full transparency, Table 2 summarizes what is running and measured on my machine today, where the next step points, and under what objective condition I would discard each component if it stopped earning its keep: | System pillar | What it achieves today (verified in production) | What it aims to achieve next & falsification condition | |---|---|---| | 1. Agent and model routing (routing.yaml, quota-guard, agy-bridge) | Routes tasks across Claude Code, Codex CLI, and Gemini CLI / Antigravity based on cached quota pressure; isolates handoffs in .agents/runs/ under a strict sandbox and displays live progress in plan-board (Figure 1). | Goal: reweight routing priorities from historical domain success rates.<br>Discard if: the bridge introduces spurious failures or bureaucratic latency exceeding quota savings. | | 2. Hybrid memory (experience-memory, Qdrant + FTS5) | Resolves lexical and semantic queries in p95 = 0.07 s (< 0.10 s), rescues 33% of zero-keyword-overlap pairs, and saves 36.3 GiB after pruning slow CPU judges (Table 1). | Goal: add automatic decay for obsolete lessons when a contract changes.<br>Discard if: p95 latency exceeds 0.10 s or semantic noise degrades top-3 precision. | | 3. Skills and MCP governance (mcp-fleet, gates-falsables) | Maintains declarative parity across agents (24/24 checks green), measures MCP usage and abstention, and requires every new gate to fail first against a red canary (--fixture -> exit 1). | Goal: semi-automatic pruning of skills that accumulate repeated friction in CSI telemetry.<br>Discard if: maintaining a skill's contract takes longer than running the direct command. | | 4. Local autopoiesis (Harness2) (local-cycle, eval_harness) | Converts real CSI friction into reproducible Cases and evaluates candidates across routing, memory, and skills (9/9 cases, 82/82 tests) with model_calls = 0, applying internal resistance (KEEP / DISCARD, Figures 2 and 3). | Goal: expand the bank of real cases extracted from failed sessions without losing millisecond evaluation.<br>Hard boundary (INV-004): blind auto-merge is forbidden; final promotion to production always requires human review. | Table 2. Balance between verified production results in penta-agent today, the design horizon, and the falsification thresholds that keep the system under human control. If building this fourth stage made one thing clear to me, it is that the maturity of a multi-agent system is not measured by how many new pieces I bolt onto it each week, but by how much unnecessary complexity I can prune and how many of its own mistakes the system can catch before asking for my help. --- References [^esposito2017]: Esposito, Elena. 2017. "Artificial Communication? The Production of Contingency by Algorithms." Zeitschrift für Soziologie 46 (4): 249–265. Scholar [^esposito2022]: Esposito, Elena. 2022. Artificial Communication: How Algorithms Produce Social Intelligence. Cambridge, MA: The MIT Press. Scholar [^esposito2024]: Esposito, Elena. 2024. Kommunikation mit unverständlichen Maschinen. Salzburg and Vienna: Residenz Verlag. Review of Kommunikation mit unverständlichen Maschinen by Eric Van der Beek in merz | medien + erziehung: DOI · Scholar [^luhmann1995]: Luhmann, Niklas. 1995. "Systems Theory and Postmodernism." University lecture, London. Quoted in Zönnchen, Dzhimova, and Socher, From Intelligence to Autopoiesis (2025, 7): DOI · Scholar [^luhmann1998]: Luhmann, Niklas. 1998. Die Gesellschaft der Gesellschaft. Frankfurt am Main: Suhrkamp Verlag. <search.worldcat.org>. [^maturana1987]: Maturana, Humberto R., and Francisco J. Varela. 1987 [1984]. El árbol del conocimiento: las bases biológicas del entendimiento humano. Santiago de Chile: Editorial Universitaria. 1st Chilean ed. 1984; 1987 international ed. cited in Zönnchen, Dzhimova, and Socher, From Intelligence to Autopoiesis (2025, 3): DOI · Scholar [^reichel2011]: Reichel, André. 2011. "Technology as System: Towards an Autopoietic Theory of Technology." International Journal of Innovation and Sustainable Development 5 (2–3): 105–118. Scholar [^spencerbrown1969]: Spencer-Brown, George. 1969. Laws of Form. London: Allen & Unwin. <archive.org>. [^xu2026]: Xu, Ruiyao, Yanfei Chen, Zhongying CuiZhu, Bhavana Dalvi Mishra, Yifei Ming, Han Yu, Rujun Han, Chen-Yu Lee, and Tomas Pfister. 2026. "Harness²: Recursive Agent Harnessing for an Open World." arXiv preprint arXiv:2610.14224 (open source at <google-research/harness2>). arXiv · Scholar [^zonnchen2025]: Zönnchen, Benedikt, Mariya Dzhimova, and Gudrun Socher. 2025. "From Intelligence to Autopoiesis: Rethinking Artificial Intelligence through Systems Theory." Frontiers in Communication 10:1585321. DOI · Scholar

  2. Zenn · · @yunisuta

    エージェントの記憶喪失を治す:OSS「Hindsight」をClaude APIに繋いで長期記憶を持たせる セッションが終わるたびに、エージェントは全部忘れる Claude APIでエージェントを組んでいると、必ずぶつかる壁がある。会話が終わってプロセスが落ちれば、そこまでの文脈は綺麗さっぱり消える。ユーザーの好みも、過去に失敗したアプローチも、次のセッションでは「初対面」からやり直しだ。 RAGでドキュメントを検索させるのとは話が別で、これは「エージェント自身の経験」を覚えさせたいという要求になる。自前でPostgres+pgvectorのテーブルを設計してretain/recallのロジックを書いてもいいが、まず既製品で試して足りない部分だけ自作する方が早い。 今回はOSSのエージェント向け長期記憶システム Hindsight(vectorize-io製、MITライセンス)を、素のClaude APIエージェントに繋ぎ込むところまで手を動かす。 Hindsightとは何か Hindsightは2026年4月にGitHub Star数1万を突破し、直近のリリースは v0.10.1(2026年9月21日、50件超のPRと22人以上のコントリビューターがマージされた)。エージェントメモリのベンチマークであるLongMemEvalでSOTA相当のスコアを主張しており、記憶を「world facts(事実)」「experiences(経験)」「observations(観察)」「mental models(メンタルモデル)」に分けて構造化して持つ点が特徴になっている。 APIはシンプルで3つしかない。 retain — 記憶を書き込む recall — 記憶を検索する reflect — 蓄積した記憶を分析し、上位の理解(メンタルモデル)を形成する 単純なベクトル検索のラッパーではなく、reflect で「経験の積み重ねから学習する」層を持っているのが他のシンプルなメモリストアとの違いだ。 1. サーバーを立てる Docker一発で立ち上がる。ローカル検証ならこれが一番早い。 docker run -it --pull always --name hindsight \ --restart unless-stopped \ -p 8888:8888 -p 9999:9999 \ -e HINDSIGHT_API_LLM_API_KEY=$OPENAI_API_KEY \ -v hindsight-data:/home/hindsight/.pg0 \ ghcr.io/vectorize-io/hindsight:latest HINDSIGHT_API_LLM_API_KEY は記憶の抽出・要約に内部で使うLLM用のキーで、エージェント本体がClaudeでもHindsight側は別プロバイダーで構わない。8888 がREST API、9999 は管理系ポート。起動したら疎通確認する。 curl -s localhost 2. クライアントを入れて最小構成で試す pip install hindsight-client anthropic まず生のretain/recallだけで感覚を掴む。 from hindsight_client import Hindsight client = Hindsight(base_url="localhost") client.retain( bank_id="user-yukito", content="ユーザーはDockerのlatestタグを避ける方針。ピン留めしたバージョンを使う。", ) result = client.recall(bank_id="user-yukito", query="Dockerタグの方針は?") print(result) bank_id が記憶の名前空間になる。マルチユーザー・マルチプロジェクトで運用するなら、ここをユーザーIDやプロジェクトIDで切るのがそのまま権限分離にもなる。 3. Claudeエージェントに組み込む ここからが本題。セッションの開始時に関連する記憶をrecallしてシステムプロンプトに注入し、セッション終了時に得られた新しい事実をretainする、という往復を1つのクラスにまとめる。 import anthropic from hindsight_client import Hindsight class MemoryAgent: def init(self, bank_id: str): self.bank_id = bank_id self.memory = Hindsight(base_url="localhost") self.claude = anthropic.Anthropic() def _recall_context(self, query: str, limit: int = 5) -> str: hits = self.memory.recall(bank_id=self.bank_id, query=query, limit=limit) if not hits: return "" facts = "\n".join(f"- {h['content']}" for h in hits) return f"過去のやり取りから分かっている事実:\n{facts}" def ask(self, user_message: str) -> str: context = self._recall_context(user_message) system = "あなたは開発アシスタントです。" + (f"\n\n{context}" if context else "") response = self.claude.messages.create( model="claude-sonnet-5", max_tokens=1024, system=system, messages=[{"role": "user", "content": user_message}], ) answer = response.content[0].text このやり取り自体を経験として書き戻す self.memory.retain( bank_id=self.bank_id, content=f"Q: {user_message}\nA: {answer}", ) return answer 動作確認は別プロセス(別セッション)で行うのが重要。プロセスを一度落として、記憶がDBに残っていることを確かめる。 セッション1(プロセスA) agent = MemoryAgent(bank_id="user-yukito") agent.ask("このプロジェクトではpnpmを使う。npmは使わない。") ここでプロセス終了 セッション2(別プロセス) agent = MemoryAgent(bank_id="user-yukito") print(agent.ask("パッケージマネージャは何を使えばいい?")) → recallでpnpmの方針を拾ってからClaudeが回答する これでプロセスをまたいだ記憶が機能する。RAGのドキュメント検索と違い、ここに入るのは「このエージェントが実際にやり取りした内容」なので、事実確認ではなく方針・好み・過去の失敗の再現防止に効く。 4. reflectで経験を要約させる retainを積み重ねただけだと、生の会話ログが線形に溜まっていくだけでrecallのノイズが増える。定期的にreflectを呼んで上位の理解を作らせるのが公式の使い方だ。 client.reflect(bank_id="user-yukito") これを1日1回のcronなどで回しておくと、個別のQ&Aペアから「このユーザーはDockerのlatestタグを嫌う」「pnpmを優先する」といったメンタルモデル的な記憶に集約されていく。リリースノート(v0.10.1)でも「コーディングエージェント向けにautomatic reflectの予算制限を修正」という変更が入っており、reflectを回しすぎるとLLM呼び出しコストが積み上がる点は運用上のパラメータとして意識しておく必要がある。 つまずいたところ recallは空配列を返すことがある(まだ何もretainしていない、またはbank_idの綴りミス)。ガードを外して素通しすると、システムプロンプトに空文字列の見出しだけが残ってClaudeが混乱するので、上のコードのように空なら注入自体をスキップする。 bank_idを適当な固定文字列にすると、複数ユーザーの記憶が混ざる。最初から「誰の記憶か」をbank_idの設計に落とし込んでおく。 retainのcontentを生の会話ログそのまま入れ続けるとreflect前は検索ノイズが増える。要約してからretainする運用にした方が精度は安定した。 まとめ HindsightはREST経由のretain/recall/reflectという最小限のAPIで、Claude Agentに「セッションをまたぐ記憶」を持たせられる。自前でpgvectorスキーマを設計する前に、まずこの3操作で要件を満たせるか試す価値はある。今回はローカルDocker+Python SDKでの最小構成だったが、本番運用するならbank_idの権限分離とreflectの実行頻度(コスト)の2点を先に設計しておくと手戻りが少ない。 参考 vectorize-io/hindsight (GitHub) Hindsight Releases — v0.10.1 Hindsight Reaches 10,000 Stars

  3. I built OptMem plugin for Hermes. It's one of the 24 in the official catalog. Zero dependencies. No database, no embeddings, no API key. An append-only log: summaries keep context small, the raw record is never deleted. OptMem from @VictorTaelin rarf/optmem-hermes-plugin

    2 likes · 1 repost · 297 views
  4. Reddit · · r/u_YogurtclosetTop9174 · u/YogurtclosetTop9174

    Adding Recall to GatherIt Without Blocking Guest Uploads Adding Recall to GatherIt Without Blocking Guest Uploads The problem: an event creates more information than people can keep track of When I started building GatherIt, I wanted to make sharing memories at an event feel effortless. Guests should be able to join without installing an app, upload photos and videos, leave voice notes, and see moments collected in one place. Hosts should be able to manage the experience without constantly asking everyone to send their media through separate messaging apps. The challenge is that an event produces much more than a collection of files. It creates context. A guest might upload a photo from a particular moment, add a voice note explaining what happened, or join an event after several activities have already taken place. Later, the host might want to recall a particular moment or understand what people shared. A conventional gallery can store and display media, but it does not automatically provide a useful way to recall the surrounding context. That led me to explore a question: Could I give GatherIt a memory layer without slowing down the experience that makes it useful in the first place? I explored Hindsight, an open-source memory system designed to help AI applications retain and recall information. Instead of treating every interaction as an isolated request, a memory system can make relevant information available when an application needs it again. For GatherIt, the interesting part was not simply adding another AI feature. It was exploring how event context could be captured in the background and retrieved later when a host wanted to look back. Why memory needs to be separate from the main user experience One of the most important engineering decisions in an application like GatherIt is deciding what must happen immediately and what can happen later. When a guest uploads a photo, the main experience should focus on accepting the upload, handling the media, and giving the guest clear feedback. The guest should not have to wait for an additional memory operation to finish before continuing. If memory processing is placed directly in the critical upload path, it introduces another dependency. A slow memory service or a temporary network problem could affect a feature that should otherwise work independently. I therefore approached memory as a supporting capability rather than the centre of the upload workflow. The basic flow I was working toward was: 1. A guest joins an event or shares media. 2. GatherIt performs the normal application work. 3. Relevant event context is passed to a memory operation separately. 4. The host can request a recall when they need that context. This separation matters because a memory system should improve an application without becoming a single point of failure for its core features. It also encourages a useful engineering principle: optional intelligence should not make essential functionality unnecessarily fragile. Where Hindsight fits Hindsight provides a way to retain information and later retrieve relevant context. Its repository and documentation were useful starting points for understanding how a memory layer could fit into an existing application. References: - Hindsight on GitHub: vectorize-io/hindsight - Hindsight documentation: hindsight.vectorize.io - Background on agent memory: vectorize.io For GatherIt, the conceptual mapping was straightforward. Each event has its own context, and memory operations need to be associated with the correct event. A host asking about one event should not accidentally retrieve information belonging to another. That makes event-level separation important. It also makes authorization important: a recall operation should be available only to an appropriately authenticated host, and the server should determine which event the host is allowed to access. I explored an integration pattern in which the server handles memory operations rather than exposing memory-service credentials to the browser. This keeps credentials on the backend and gives the application a single place to apply authorization, validation, and error handling. The important distinction is that Hindsight does not replace GatherIt’s database or media storage. Those systems have different jobs. The application database manages structured application records, media storage holds files, and a memory layer can help retrieve useful context from retained information. Designing the integration around failure A third-party service can be unavailable, slow, or temporarily unreachable. A resilient integration should anticipate those conditions instead of treating them as exceptional surprises. A simplified example of the pattern looks like this: // Illustrative example — adapt names and types // to the actual GatherIt implementation. async function handleGuestUpload(upload: Upload) {   const savedMedia = await saveMedia(upload);   // Memory processing is separate from the   // essential media-saving operation.   void retainEventContext({ eventId: upload.eventId, mediaId: savedmedia.id,   }).catch((error) => { logger.warn( { error, eventId: upload.eventId }, "Could not retain event context" );   });   return savedMedia; } This snippet illustrates the design principle, not a verified copy of GatherIt’s source code. The actual implementation must use the project’s existing upload types, storage logic, logger, and memory service. There is also an important limitation: a detached promise is not the same as a durable background job. If the server process stops at the wrong time, work that has not completed can be lost. For a production system where every memory operation matters, a persistent queue, retry policy, and idempotent processing may be more appropriate. For an early integration, the first priority is to make sure memory-service failures do not incorrectly turn a successful media save into a failed upload. The next priority is to make background processing observable and recoverable. I also considered how a recall endpoint should be structured. It should validate incoming requests, authenticate the host, check access to the relevant event, and handle failures from the memory service. It should not accept an arbitrary event identifier and assume that the requester is entitled to see the result. These checks are especially important for an application where different groups create private event spaces. Keeping credentials and event boundaries secure An integration can work correctly in a local demo and still be unsafe if its credentials or access boundaries are handled poorly. A memory-service API key belongs on the server, in an environment variable or the hosting platform’s secret configuration. It should not be embedded in frontend code, committed to a public repository, or returned in an API response. Event isolation is equally important. If memory is organized around event identifiers, those identifiers must be consistently associated with authorization checks. Knowing or guessing an identifier should not be enough to retrieve another event’s context. I also need to be careful about what gets retained. An event can contain personal conversations, faces, locations, and other sensitive information. Retaining every available detail by default may create unnecessary privacy risks. A responsible implementation should minimize retained information, explain relevant data practices to users, and provide an appropriate way to manage or delete stored context. It should also avoid sending unnecessary personal information to an external service. These are not secondary details to add after the feature works. They are part of the integration itself. What this changes for the host The goal of a memory layer is not to add AI terminology to an interface. It is to make an existing task easier. In GatherIt, the host already has a reason to revisit event content after guests have shared it. A recall interface could eventually help the host find relevant context without manually searching through every upload or note. For example, a host might want to find information related to a particular activity or understand the context around something that was shared. The quality of the result would depend on what was retained, how the memory system indexed it, and how the request was phrased. That last point matters. A memory system should not be presented as an infallible record of everything that happened. It can return incomplete or irrelevant results, especially when the information was never retained or the available context is ambiguous. The interface should communicate those limits instead of presenting every response as a verified fact. It is also important to distinguish retrieval from authorization. A technically relevant memory is not necessarily a memory that the current user is permitted to see. How I would evaluate the feature I would not evaluate this integration only by asking whether a recall request returns text. I would test the complete experience around it. First, normal guest uploads should continue to work if the memory service is unavailable. Second, a host should only be able to recall information for events they are authorized to access. Third, memory failures should be logged in a way that helps debugging without leaking secrets or unnecessary personal information. I would also test whether retained context can actually be retrieved with realistic questions, whether duplicate events or retries create confusing records, and whether the system handles missing or incomplete information gracefully. Finally, I would measure the user-facing impact. Does the integration make it easier to find context? Does it add noticeable delay? Are the results relevant enough to be useful? Those questions need real tests and observations, not assumptions. I do not want to claim a particular speed improvement or accuracy rate without measurements. A good engineering story should distinguish between a design goal, an implemented feature, and a result demonstrated through testing. What I learned The biggest lesson from exploring this integration is that adding memory is not simply a matter of connecting an API. The harder work is deciding what information should be retained, when it should be processed, who is allowed to retrieve it, and what the application should do when the memory system is unavailable. Separating optional memory work from essential user actions is a useful design pattern beyond AI. It applies to analytics, notifications, search indexing, and other supporting services. A system becomes more resilient when a failure in an optional capability does not automatically break its primary workflow. I also came away with a clearer view of what makes an AI feature useful. The goal is not to insert a model into every interaction. It is to introduce a capability where it solves a real problem, keep the surrounding system understandable, and evaluate the result honestly. GatherIt is an ongoing project, and there is still work to do before any memory feature should be treated as production-ready. Testing failure cases, strengthening background-job reliability, reviewing data retention, and validating recall quality are all part of that work. For me, the most interesting part of Hindsight is the possibility of making event information more useful over time. Photos and videos preserve moments. Context can help people make sense of them later. The engineering challenge is connecting those two things without compromising reliability, privacy, or the simplicity of sharing in the first place. That is the direction I want to keep exploring with GatherIt: not AI for its own sake, but technology that helps people return to the moments they care about. Further reading - Hindsight source code: vectorize-io/hindsight - Hindsight documentation: hindsight.vectorize.io - What is agent memory?: vectorize.io

    1 point
  5. Reddit · · r/sideprojects · u/Even_Phrase_4319

    Portable Local LLM # I built PortLLM to explore portable local AI with persistent memory ## The problem I’m exploring Running an LLM locally gives you more control over your data, but it doesn’t automatically give the assistant persistent memory across sessions. I wanted to explore how a portable local AI environment could work with a memory layer to make interactions more continuous. That’s the idea behind PortLLM. ## How it works PortLLM is designed as a portable environment for running local AI models, with a shared interface and support for different platforms. The project explores local inference through backends such as Ollama and llama.cpp, depending on the configuration. I’m also exploring Hindsight as a persistent memory layer. Its core operations are: - Retain: Save useful information from interactions. - Recall: Retrieve relevant information when a new question comes in. - Reflect: Reason over stored memories to build a more informed response. The main technical challenge is not simply storing conversation history. It’s deciding what information is worth keeping, when to retrieve it, and how to avoid irrelevant or outdated memories. ## Architecture and limitations The project separates local model inference from the memory layer. This distinction matters because local inference alone doesn’t guarantee that memory storage, retrieval, or synchronization will work offline. Those capabilities depend on how the memory component is configured. I’m interested in making the experience portable while handling cases where network access is unavailable or relevant memories cannot be retrieved. ## What I’ve learned so far Working on this has made me think more carefully about the trade-offs between context windows and persistent memory. A larger context window can hold more information in one session, while a memory layer can potentially carry useful details across sessions. However, poor retrieval can introduce irrelevant information, and stale memories can lead to incorrect responses. Useful next steps include testing memory retrieval across separate sessions, checking how conflicting facts are handled, and measuring whether retrieved memories actually improve answers. ## Resources - Project website: port-llm.vercel.app - Source code: Keshav-pro1/PORT-LLM- - Hindsight: vectorize-io/hindsight I’d appreciate feedback from people working with local LLMs or agent memory: What test cases would you use to evaluate a persistent memory system, especially when memories are missing, outdated, or contradictory? I’m sharing this to get technical feedback and learn how to improve the design.

    2 points
  6. Shared Long-Term Memory for Claude Code and Codex, Fully Local: A Hindsight Daemon Setup Guide This is a start-to-finish guide to giving Claude Code and Codex CLI a shared long-term memory that runs entirely on your Mac. It uses Hindsight, an MIT-licensed agent-memory engine, in local daemon mode. Your ChatGPT plan (model gpt-6-luna) does the memory extraction, the database lives in a folder you choose, and only the repositories you list are ever remembered. I wrote it as the runbook for setting up a second laptop. Follow the steps in order. > Versions used (Oct 2026): @vectorize-io/hindsight-coding-agents 0.8.2, hindsight-api 1.1.0, hindsight CLI 1.1.0, macOS on Apple Silicon, zsh. Newer releases may differ. See the Coding Agents docs. What you will have at the end Claude Code ─┐ hooks: SessionStart · UserPromptSubmit · Stop ├─► Hindsight daemon (hindsight-embed) http://127.0.0.1:9077 Codex CLI ───┘ MCP server: hindsight_* tools │ ├─ embedded PostgreSQL (pg0) │ data in ~/projects/hindsight-data └─ LLM: chatgpt provider, gpt-6-luna hindsight CLI ─────────────────────────────────────────┤ hindsight ui (web control plane, http://localhost:9999)┘ - One plugin for both agents. @vectorize-io/hindsight-coding-agents installs three hooks, an MCP server with the hindsight_* tools, and a companion skill into each agent. - One memory bank per repository, named coding-agent::<repo>. Claude Code and Codex read and write the same bank, so a decision made in one is visible in the other. - Automatic capture and recall. A session's first prompt gets a memory synthesis injected. Each session is written back when it ends. Git history and a short codebase survey seed every new bank, and the survey re-runs as the code moves on. - Five knowledge pages per repo: Component map, Conventions and patterns, Core concepts, Key decisions and rationale, and Initiatives and enhancements. - Opt-in only. Repositories you don't list are never touched. Step 1 — Prerequisites | Requirement | Why | Check / install | |---|---|---| | Claude Code and/or Codex CLI | The agents being wired | claude --version, codex --version | | Node.js (npx) | Runs the plugin installer and the hooks | node --version | | uv | The daemon is launched with uvx | brew install uv | | Rust toolchain, current | Daemon mode on macOS builds a dependency (litellm) that has no macOS wheel | rustup update stable | | ChatGPT plan that allows usage in third-party apps | Pays for memory extraction instead of an API key | Confirmed during sign-in (Step 3) | | hindsight CLI (recommended) | Inspect banks, refresh pages, launch the web UI | curl -fsSL https://hindsight.vectorize.io/get-cli \| bash | Step 2 — Write the config file first Create ~/.hindsight/coding-agent.json before installing, so the first session already follows your rules: { "optInOnly": true, "optInPaths": ["~/projects/my-repo"], "pageTriggerCron": "H * * * *", "surveyRefreshCommits": 20 } chmod 600 ~/.hindsight/coding-agent.json What each key does: - optInOnly: true: memory is off everywhere by default. A repository outside optInPaths is inert: no bank is created, nothing is retained, and nothing is seeded. - optInPaths: path prefixes, with ~ expanded. ~/projects/my-repo approves that repo and its git worktrees. ~/projects would approve every repo under it, each with its own bank. To add a repo later, append its path; there is nothing to reinstall. - pageTriggerCron: "H * * * *": refreshes each knowledge page at most once an hour. This is the default; writing it out makes it easy to change. H is replaced by a value hashed from the bank and page name, so pages refresh at different minutes instead of all at once. A refresh is skipped when nothing new arrived. Each refresh is one LLM synthesis per page. With a local daemon that comes out of your ChatGPT plan, so hourly is affordable. Use "H H * * *" (once a day) if you want to save plan usage. - surveyRefreshCommits: 20: the codebase survey that seeds a new bank's structural knowledge re-runs whenever 20 new commits have landed since the last survey. This is the default. In Claude Code each survey is a headless claude -p --model haiku run capped at $2 (surveyModel, surveyBudgetUsd). In Codex it runs through Codex itself. Set it to 0 to survey each repo only once, when it is first opened. Busy repos will otherwise keep re-surveying. The installer adds "serverMode": "daemon" to this file in Step 5. > On a company laptop: list only repositories you are allowed to process this way. With the daemon, memory stays on disk locally, but the extraction step still sends transcript text to your LLM provider (OpenAI, through your ChatGPT plan). Each laptop also has its own memory. Two daemons don't sync. Opt-in list or every repo? The config file supports two modes. Pick one per machine: | Mode | Config | When to use it | |---|---|---| | Opt-in only (allowlist) | "optInOnly": true + "optInPaths": [...] | A work laptop, or any machine where only some repositories may be processed | | Every repo (denylist) | Remove optInOnly and optInPaths entirely; exclude individual repos with banks.<id>.disabled | A personal machine where you want memory everywhere | Switching from opt-in to every repo means deleting the two keys: { "serverMode": "daemon", "pageTriggerCron": "H * * * *", "surveyRefreshCommits": 20, "banks": { "coding-agent::private-notes": { "disabled": true } } } The change applies at your next prompt, because the hooks re-read the file on every call. MCP tools pick it up in the next session. From then on, the first session in any repo creates its coding-agent::<repo> bank, seeds it from git history (the most recent commits, 300 by default), and runs a codebase survey. The survey runs again every surveyRefreshCommits (20) new commits. In Claude Code each survey is a claude -p --model haiku run with a $2 budget cap. Every repo's transcripts now go to your extraction LLM. With a local daemon the storage stays on your Mac, but the extraction still happens at the provider. Disable the repos where that is not acceptable. Optional per-repo controls live in the same file, keyed by bank id: { "banks": { "coding-agent::some-repo": { "disabled": true }, "coding-agent::big-monorepo": { "gitIngest": "full", "retainSessions": false } } } Step 3 — Sign Hindsight in to your ChatGPT plan Hindsight's chatgpt provider uses OpenAI's official Sign in with ChatGPT flow. Hindsight registers as its own OAuth client and stores its own credentials, separate from the Codex CLI's login. uvx --from hindsight-api-slim hindsight-admin chatgpt login A browser window opens. Sign in and approve plan usage. The command waits for the callback on 127.0.0.1:1455, then saves ~/.hindsight/chatgpt/credentials.json with mode 0600. You may see warnings that sentence-transformers is not installed. They come from running the admin tool out of the slim package and do not affect sign-in. Confirm: uvx --from hindsight-api-slim hindsight-admin chatgpt status # Signed in: yes # Plan usage enabled: yes Tokens refresh automatically. Usage counts against your ChatGPT plan and shows at <chatgpt.com>. Step 4 — Pin the provider and model in your shell Add to ~/.zshrc: # Hindsight daemon: extract memories with the ChatGPT plan, model pinned export HINDSIGHT_API_LLM_PROVIDER=chatgpt export HINDSIGHT_API_LLM_MODEL=gpt-6-luna Open a new terminal and check: echo "$HINDSIGHT_API_LLM_PROVIDER / $HINDSIGHT_API_LLM_MODEL" # chatgpt / gpt-6-luna Why set both explicitly: - Provider. When the daemon starts, the plugin chooses the provider in this order: HINDSIGHT_API_LLM_PROVIDER, then whichever of OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, GROQ_API_KEY is set first, then claude-code if the claude CLI is on PATH. Setting it explicitly guarantees chatgpt, even if an API key happens to be in your environment. - Model. gpt-6-luna is the chatgpt provider's default today. Pinning it keeps it if a future release changes the default. The runtime updates itself daily. - All HINDSIGHT_API_* variables in the environment that starts the daemon are passed on to it. To use a different model only for extraction, use the per-operation variables (for example HINDSIGHT_API_RETAIN_LLM_MODEL). Step 5 — Install the plugin in daemon mode From that new terminal: npx @vectorize-io/hindsight-coding-agents install claude-code codex --server daemon The output should include local extraction will use chatgpt (from HINDSIGHT_API_LLM_PROVIDER). The installer: | Agent | What gets wired | |---|---| | Claude Code | 3 hooks merged into ~/.claude/settings.json; MCP server registered with claude mcp add (user scope); skill at ~/.claude/skills/hindsight-coding-agent | | Codex CLI | 3 hooks merged into ~/.codex/hooks.json; [mcp_servers.hindsight] in ~/.codex/config.toml; skill at ~/.agents/skills/hindsight-coding-agent | | Shared | Runtime copied to ~/.hindsight/coding-agents; "serverMode": "daemon" written to ~/.hindsight/coding-agent.json | Codex also needs its hooks feature flag. If ~/.codex/config.toml has no [features] section, the installer adds one for you. If the section already exists, the installer prints a reminder instead, and you add the line yourself: [features] hooks = true The installer accepts either hooks = true or the older spelling codex_hooks = true, which some docs still use. Notes: - The plugin is installed with npx, not through a Claude Code marketplace, so it is not listed under /plugin. Manage it with npx @vectorize-io/hindsight-coding-agents install | uninstall | update | stats. - If an older per-agent Hindsight plugin (such as hindsight-memory) is installed, uninstall it first so only one set of hooks runs. Step 6 — Start the daemon and verify it The SessionStart and Stop hooks start the daemon by themselves, in the background, whenever port 9077 is free. Start it once by hand so the slow first run (download, Rust build, model load) happens while you watch: node ~/.hindsight/coding-agents/dist/daemon-start.js --harness claude-code Verify: lsof -iTCP:9077 -sTCP:LISTEN # a python process on localhost:9077 PID=$(lsof -tiTCP:9077 -sTCP:LISTEN) ps eww -p $PID | tr ' ' '\n' | grep '^HINDSIGHT_API_LLM_' # HINDSIGHT_API_LLM_PROVIDER=chatgpt # HINDSIGHT_API_LLM_MODEL=gpt-6-luna Under the hood, the plugin asks hindsight-embed to start the server. hindsight-embed runs hindsight-api --idle-timeout 0 --port 9077 together with an embedded PostgreSQL 18 instance managed by pg0. Step 7 — Pin the provider in the daemon profile file The daemon also has a per-profile env file, ~/.hindsight/profiles/coding-agent.env, created on first start. Make it agree with your shell. Then a daemon started from a context that doesn't load ~/.zshrc, such as an agent opened from the Dock, still uses ChatGPT and gpt-6-luna: f=~/.hindsight/profiles/coding-agent.env cp "$f" "$f.bak" grep -n '^HINDSIGHT_API_LLM_' "$f" # inspect what it currently says Edit it so it contains these two lines, and remove any HINDSIGHT_API_LLM_API_KEY= line: HINDSIGHT_API_LLM_PROVIDER=chatgpt HINDSIGHT_API_LLM_MODEL=gpt-6-luna chmod 600 "$f" "$f.bak" Step 8 — Put the memory bank where you want it By default the database lives in ~/.pg0/instances/hindsight-embed-coding-agent/data. Hindsight has no setting for this path, but pg0 follows a symlink. Here is how to move it to ~/projects/hindsight-data. 1. Stop the daemon and its PostgreSQL. Never copy a running database. kill $(lsof -tiTCP:9077 -sTCP:LISTEN) # wait until postgres has exited and postmaster.pid is gone pgrep -f 'postgres -D .*hindsight-embed-coding-agent' || echo "postgres stopped" ls ~/.pg0/instances/hindsight-embed-coding-agent/data/postmaster.pid 2>/dev/null || echo "clean shutdown" 2. Copy, verify, then swap in a symlink: SRC=~/.pg0/instances/hindsight-embed-coding-agent DST=~/projects/hindsight-data mkdir -p "$DST" cp -a "$SRC" "$DST/" # -a keeps the 0700 permissions PostgreSQL requires diff -rq "$SRC" "$DST/hindsight-embed-coding-agent" && echo "identical" mv "$SRC" "$SRC.old" ln -s "$DST/hindsight-embed-coding-agent" "$SRC" 3. Restart and confirm PostgreSQL now runs from the new folder: node ~/.hindsight/coding-agents/dist/daemon-start.js --harness claude-code lsof -p $(pgrep -f 'postgres -D .*hindsight-embed-coding-agent' | head -1) | grep -m1 hindsight-data 4. Once everything works (Step 12), delete $SRC.old. Keep ~/projects/hindsight-data out of git and out of iCloud Drive or Dropbox. Live syncing can corrupt a running database. To back it up, stop the daemon and copy the folder. Step 9 — Seed memory from past conversations From inside each opted-in repository: cd ~/projects/my-repo npx @vectorize-io/hindsight-coding-agents install claude-code --import-conversations # and/or: ... install codex --import-conversations - The import reads the agent's local transcripts and keeps only sessions whose recorded working directory is this repository. - It uses LLM tokens in proportion to the history (your ChatGPT plan here). It is safe to re-run, because documents are de-duplicated by id. - Git commit messages and a codebase survey are ingested automatically at the next session start. New commits are appended as they land, and the survey re-runs every 20 commits (surveyRefreshCommits). - CLAUDE.md and Claude Code's auto-memory notes (~/.claude/projects/*/memory/*.md) are not imported. CLAUDE.md is loaded into every session anyway. To store a memory note in the bank, ask the agent to save it with the hindsight_ingest_document tool. Step 10 — Start fresh agent sessions The hooks read ~/.hindsight/coding-agent.json every time they run. The MCP server behind the hindsight_* tools reads it once, when it starts. After installing, start new Claude Code and Codex sessions. In an already-open Claude Code session, run /mcp → hindsight → Reconnect. In a new session you should see the Hindsight memory banner. The tools the agent can call: | Tool | Use | |---|---| | hindsight_search_knowledge_pages / hindsight_read_knowledge_page / hindsight_list_knowledge_pages | Look up architecture, conventions, decisions | | hindsight_reflect | Deep reasoning over all memory ("why is X like this?") | | hindsight_ingest_document | Save notes or a document into memory | | hindsight_capture_initiative | Track a new feature or plan as its own page | | hindsight_sync_status / hindsight_diagnose | Check ingestion status and configuration | Step 11 — Point the CLI at the daemon Without configuration the hindsight CLI targets http://localhost:8888. Point it at the daemon: hindsight configure --api-url http://localhost:9077 chmod 600 ~/.hindsight/config Useful commands (<bank> is coding-agent::my-repo): hindsight health # Status: healthy · Database: connected hindsight bank list hindsight bank stats <bank> # nodes, links, documents, pending/failed operations hindsight document list <bank> hindsight operation list <bank> # retain / consolidation / refresh jobs and their status hindsight mental-model list <bank> # the knowledge pages hindsight mental-model refresh <bank> <id> # refresh one page now hindsight explore # interactive terminal explorer The plugin also ships a one-shot status report: node ~/.hindsight/coding-agents/dist/status.js --repo ~/projects/my-repo # {"bank":"coding-agent::my-repo","gitlogPresent":true,"chatDocs":…,"pagesCount":5,"surveyDocs":4,"synced":true,…} Querying another repo's memory (cross-bank) The hindsight_* MCP tools are bound to the current repo's bank. None of them takes a bank parameter, so an agent working in repo A can't use them to ask what was decided in repo B. Use the CLI against the other bank instead: hindsight bank list # find the bank id hindsight memory recall 'coding-agent::other-repo' "how do we handle retries on 4xx?" -o json hindsight memory recall 'coding-agent::other-repo' "deployment steps" -t world,experience -o json - Use recall, not reflect, for cross-bank lookups. recall returns the stored memories (facts, experiences, observations) ranked by relevance. reflect synthesizes an answer through the target bank's reflect_mission and disposition. Coding-agent banks get a debugging-assistant mission, so reflect answers in that bank's voice instead of showing you what it holds. - -t/--fact-type narrows the types (world, experience, observation). Separate several with commas (-t world,experience) or repeat the flag. -o json makes the output easy for an agent to parse. - Say where a fact came from. When an agent quotes cross-bank results, it should name the source bank (coding-agent::other-repo) so nobody mistakes it for the current repo's own memory. - To make agents do this automatically, add a line like this to your global ~/.claude/CLAUDE.md (and Codex's AGENTS.md): - Cross-repo memory: `hindsight_*` MCP tools only see the current repo's bank. To read another repo's memory run `hindsight memory recall 'coding-agent::<repo>' "<question>" -o json` (recall, not reflect — reflect applies the target bank's mission) and cite the source bank in the answer. - If some of your repos must never inform each other, write that rule next to it. Separate banks keep the data apart, but the agent can still bridge them with this command. The CLI query is the only path across banks, so the rule only has to govern that one command. Step 12 — Generate the knowledge pages A new bank's pages show "No content yet." until their first hourly slot comes, which can take up to an hour. To build them right away (this only uses your ChatGPT plan): B=coding-agent::my-repo for id in $(hindsight mental-model list $B -o json | python3 -c "import sys,json;[print(m['id']) for m in json.load(sys.stdin)['items']]"); do hindsight mental-model refresh $B $id done hindsight operation list $B # wait for the refresh_mental_model jobs to finish From then on, each page refreshes at most once an hour, and only when there is new material. Step 13 — The web UI The CLI can launch Hindsight's web control plane (@vectorize-io/hindsight-control-plane, a Next.js app) against the API URL in your CLI config, which is the daemon. It needs Node.js. By default it is reachable from your whole network with no login. It binds to 0.0.0.0 and requires no sign-in unless an access key is set. Launch it locked down instead: KEY=$(openssl rand -hex 16); echo "UI access key: $KEY" HOSTNAME=127.0.0.1 HINDSIGHT_CP_ACCESS_KEY="$KEY" hindsight ui - HOSTNAME=127.0.0.1 binds it to localhost only, so other devices on the network can't reach it. The startup log then shows Network: http://localhost:9999 instead of 0.0.0.0. - HINDSIGHT_CP_ACCESS_KEY turns on the login page. Opening / redirects to /login, and the UI's API routes return 401 until you enter the key printed above. - The line No API key configured (public access) in the log is about the key the UI sends to the daemon (HINDSIGHT_CP_DATAPLANE_API_KEY). The local daemon needs none. That line does not mean the UI itself is open. Then: 1. The first run installs the control-plane package through npx, which takes about a minute. When it is ready it prints Local: http://localhost:9999 and Connecting to dataplane at: http://localhost:9077. 2. Open <localhost> and sign in with the key. The dashboard lists your banks. Inside a bank you can browse documents, memories, entities and the memory graph, look at the knowledge pages (mental models), check operations, and try recall and reflect queries. 3. Stop it when you're done: kill $(lsof -tiTCP:9999 -sTCP:LISTEN) For a quick look without a browser, hindsight explore opens a terminal explorer of the same data. How it behaves day to day - Start: the SessionStart and Stop hooks of Claude Code or Codex start the daemon in the background if port 9077 is free. Both agents and all repos share one daemon. - Stop: it does not exit when idle. Closing your agents leaves it running, using roughly 1–1.5 GB of RAM and no LLM usage while idle. It stops on reboot and comes back with the next session. To stop it yourself: kill $(lsof -tiTCP:9077 -sTCP:LISTEN). - Changing provider, model or other daemon settings: a running daemon is reused and never restarted, so stop it after any change. The next session (or daemon-start.js) starts it with the new settings. - Updates: the plugin checks npm once a day and updates its runtime. Re-run install only when a release adds new hooks. - Writes are asynchronous: a saved document appears once its retain job completes (hindsight operation list <bank>). - Logs: ~/.hindsight/coding-agents-logs/plugin.log, diag.jsonl (every reflect/retain/page event), usage.jsonl. Summary: npx @vectorize-io/hindsight-coding-agents stats. Final checklist - [ ] ~/.zshrc: HINDSIGHT_API_LLM_PROVIDER=chatgpt, HINDSIGHT_API_LLM_MODEL=gpt-6-luna, visible in a new terminal - [ ] hindsight-admin chatgpt status: signed in, plan usage enabled - [ ] ~/.hindsight/coding-agent.json: serverMode: "daemon", pageTriggerCron: "H * * * *", surveyRefreshCommits set the way you want (20 by default, 0 = survey once), mode 600. Either optInOnly: true with the right optInPaths, or no opt-in keys plus banks.<id>.disabled for the repos to exclude. - [ ] Cross-bank lookup works: hindsight memory recall 'coding-agent::<repo>' "<question>" -o json returns results - [ ] ~/.hindsight/profiles/coding-agent.env: chatgpt + gpt-6-luna, no API-key line, mode 600 - [ ] ~/.codex/config.toml: hooks = true under [features], [mcp_servers.hindsight] present - [ ] Daemon on 127.0.0.1:9077 with the right HINDSIGHT_API_LLM_* in ps eww; hindsight health healthy - [ ] ~/.pg0/instances/hindsight-embed-coding-agent → symlink to ~/projects/hindsight-data/…; PostgreSQL has files open there - [ ] Per repo: status.js --repo … shows synced: true, pagesCount: 5, surveyDocs: 4; hindsight operation list shows nothing failed - [ ] In a new agent session, hindsight_sync_status returns the same numbers as status.js - [ ] Web UI launched only with HOSTNAME=127.0.0.1 and HINDSIGHT_CP_ACCESS_KEY, and stopped when not in use (nothing listening on :9999) Uninstall npx @vectorize-io/hindsight-coding-agents uninstall all # removes the hooks, MCP entries and skills install added # (Codex's [features] hooks flag stays, since other hooks may use it) kill $(lsof -tiTCP:9077 -sTCP:LISTEN) # stop the daemon # memory data: ~/projects/hindsight-data (and the symlink in ~/.pg0/instances) — delete only if you mean it

  7. YouTube · · YouTube description · 자유야 놀자 | AI 기술·활용

    한 달에 ★45,470 붙은 GitHub 저장소의 정체 (10월 트렌딩 TOP 5) 이번 달 GitHub 트렌딩(월간)에서 스타가 가장 많이 늘어난 저장소 5개를, 뭘 하는 건지·왜 뜨는지까지 설명합니다. 0:00 한 달에 스타 4만 5천 개가 붙은 저장소? 0:10 5위 ai-engineering-from-scratch 0:28 4위 ECC 0:50 3위 paperclip 1:12 2위 hindsight 1:33 1위 VoiceStudio 1:55 한 줄 정리 ■ 이번 영상의 저장소 5위 rohitg00/ai-engineering-from-scratch 4위 affaan-m/ECC 3위 paperclipai/paperclip 2위 vectorize-io/hindsight 1위 debpalash/VoiceStudio ■ 데이터 기준 - 순위·이번 달 증가 스타: GitHub 트렌딩(monthly) 2026-10-21 스냅샷. 증가량은 트렌딩 페이지 값이며 별도로 검증하지 못했습니다. - 총 스타·라이선스·설명: GitHub API 2026-10-21 확인. - "개발사 주장"과 "제 해석"은 영상에서 구분해 표시했습니다. hindsight의 LongMemEval 91.4%는 개발사가 논문에 밝힌 자체 결과입니다. - 스타 수는 품질을 보장하지 않습니다. - VoiceStudio는 AGPL-3.0 라이선스입니다. 상업적으로 쓰기 전에 직접 확인하세요. ■ 음성 내레이션은 AI 음성(Gemini TTS)입니다. #GitHub #깃허브 #GitHub트렌딩 #오픈소스 #AI에이전트 #개발자 #AI개발

    109 likes · 3 comments · 36 views
  8. YouTube · · YouTube description · Nuno Tavares | Automated Marketer

    I Checked 8 Viral GitHub Repos. Here's Which Ones to Use 8 viral GitHub repos, checked one by one, with an honest verdict on each: use it today or try it. Plus 5 viral repos I'd skip. 🎁 The prompts, setup steps and slides from THIS video (free download from our free community): portal.vcinc.ai ▶️ Watch next: my REA build video, the one that's blowing up: youtu.be 🧰 Watch before this one, Part 1: the 6 Claude Code GitHub repos I use every day: youtu.be 🛡️ Before you install ANY repo, watch this: youtu.be 🤖 Join our Claude Code Workshop here: go.vcinc.ai 🔧 The 8 repos (stars on GitHub, 20 Oct 2026) 1. REA, Reverse Engineer Anything (343K+ stars, MIT; the ONLY official repo): morluto/rea My REA build video: youtu.be 2. ArtCraft, 13 free creative apps (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames by HeyGen, prompt to MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, free voice cloning (AGPL-3.0; default voice is personal use only): debpalash/VoiceStudio 5. Jev by TypeSafe (paid, very cheap): typesafe.ai · my Jev video: youtu.be Laya, its free alternative (Apache 2.0): NandhaKishorM/laya 6. Buzz by Block (Apache 2.0, self-hosted): block/buzz · my Buzz setup: youtu.be 7. Shaders, moving website backgrounds (MIT): shader-effects-inc/shaders 8. Hindsight, long-term memory for your AI (MIT): vectorize-io/hindsight ⚠️ HONEST NOTES • Popular doesn't mean safe. Have Claude Code or Codex check any repo before you install it (prompt in the free download). • Tested on my PC or by my team: REA, ArtCraft (PdfCraft passed my test on 11 Oct, on an older version; the rest are early versions), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Buzz: I set it up in August, not re-tested for this video. Hindsight: not tested. • REA rebuilds how an app works, not its original source code. Only study apps you own, open-source apps, or apps you may study. • VoiceStudio's default voice is licensed for personal use only. For business, clone your own voice or use a licensed one. ⏱️ CHAPTERS 0:00 8 viral GitHub repos, an honest verdict on each 0:10 Scan every repo before you install it 0:57 The 4 checks: real, business use, runs, real cost 1:07 #1 REA: build your own version of any feature 3:16 The safe REA install prompt 3:39 #2 ArtCraft: 13 free creative apps 5:11 Sign a contract pack with PdfCraft 5:33 #3 HyperFrames: describe a video, get an MP4 7:24 #4 VoiceStudio: free voice cloning (and the catch) 8:44 #5 Jev vs Laya: fast AI decisions, paid and free 11:13 #6 Buzz: Slack where AI agents are members 12:52 #7 Shaders: moving backgrounds for your website 14:20 #8 Hindsight: long-term memory for your AI 15:43 5 viral repos I'd skip 17:29 The recap: which to use today #GitHub #ClaudeCode #OpenSource 📣 Join Our Free Skool Community For HighLevel, Claude, n8n, AI & Automation. skool.com 🎓 GoHighLevel Masterclass + Plug-and-Play Templates. Enroll Now udemy.com 🚀 From Strategy to Deployment, We Build the Technology That Powers Scalable Growth rapidactivemarketing.com 🔥 Steal My Best Strategies substack.com 🛠️ Want a Done-For-You HighLevel system or need staffing for your SaaS? Let our team do the heavy lifting for you → arcytex.com 📩 Get our weekly newsletter – GHL, AI, Tech & Growth Tips live.automatedmarketer.net 💡 Weekly Blog – Tools, Tips, Strategies automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 Must-Have Tools We Use & Love 💲 HighLevel (Main Tool) live.automatedmarketer.net 😍 FGFunnels (for Coaches & Creators) fgfunnels.com 🥇 HLProTools (Top 3rd-Party Add-ons) go.hlprotools.com 🧠 Lovable AI (Build Smart AI Bots) lovable.dev 📞 Wavv (Triple Calls, Block Spam) Get 10% off Your First Month, make sure to put in the promo code at the checkout: NEW-WUK2W Some links above are affiliate links. I may earn a commission at no extra cost to you. I'm not affiliated with any of these repos. Claude is a trademark of Anthropic; other names belong to their owners. ⚡️ BUSINESS INQUIRIES ⚡️ team@automatedmarketer.net [ar] لقد فحصتُ ٨ مستودعات GitHub رائجة. إليك أيها يجب استخدامه ثمانية مستودعات جيت هاب رائجة، تمّ فحصها واحداً تلو الآخر، مع تقييم صريح لكل منها: استخدمها اليوم أو جرّبها. بالإضافة إلى خمسة مستودعات رائجة أنصح بتجنبها. 🎁 التعليمات وخطوات الإعداد والشرائح من هذا الفيديو (تنزيل مجاني من مجتمعنا): portal.vcinc.ai ▶️ شاهد التالي: فيديو بناء REA الخاص بي، الفيديو الذي حقق رواجًا كبيرًا: youtu.be 🧰 شاهد قبل هذا، الجزء الأول: مستودعات Claude Code الستة على GitHub التي أستخدمها يوميًا: youtu.be 🛡️ قبل تثبيت أي مستودع، شاهد هذا: youtu.be 🤖 انضم إلى ورشة عمل Claude Code هنا: go.vcinc.ai 🔧 المستودعات الثمانية (عدد النجوم على GitHub، ٢٠ أكتوبر ٢٠٢٦) ١. REA، برنامج الهندسة العكسية لأي شيء (أكثر من ٣٤٣ ألف نجمة، مرخص بموجب ترخيص MIT؛ المستودع الرسمي الوحيد): morluto/rea فيديو بناء REA الخاص بي: youtu.be ٢. ArtCraft، ١٣ تطبيقًا إبداعيًا مجانيًا (Apache 2.0): storytold/artcraft · getartcraft.com ٣. HyperFrames من HeyGen، برنامج لتحويل النصوص إلى MP4 (Apache 2.0): heygen-com/hyperframes ٤. VoiceStudio، برنامج مجاني لاستنساخ الأصوات (AGPL-3.0؛ الصوت الافتراضي للاستخدام الشخصي فقط): debpalash/VoiceStudio ٥. Jev من TypeSafe (مدفوع، بسعر زهيد جدًا): typesafe.ai · فيديو Jev الخاص بي: youtu.be Laya، البديل المجاني (Apache 2.0): NandhaKishorM/laya 6. Buzz by Block (Apache 2.0، استضافة ذاتية): block/buzz · إعداد Buzz الخاص بي: youtu.be 7. Shaders، خلفيات مواقع ويب متحركة (MIT): shader-effects-inc/shaders 8. Hindsight، ذاكرة طويلة المدى للذكاء الاصطناعي (MIT): vectorize-io/hindsight ⚠️ ملاحظات هامة • لا يعني الانتشار بالضرورة الأمان. اطلب من Claude Code أو Codex فحص أي مستودع قبل تثبيته (يظهر هذا التنبيه في التنزيل المجاني). ⚠️ ملاحظات هامة • الشهرة لا تعني الأمان. اطلب من Claude Code أو Codex فحص أي مستودع قبل تثبيته (يظهر هذا التنبيه في التنزيل المجاني). • تم اختبار البرامج التالية على جهازي أو بواسطة فريقي: REA، ArtCraft (اجتاز PdfCraft اختباري في 11 أكتوبر، على إصدار قديم؛ أما البقية فهي إصدارات تجريبية)، HyperFrames، VoiceStudio، Jev، Laya، Shaders. ملاحظة: قمتُ بإعدادها في أغسطس، ولم أُجرِ اختبارًا جديدًا لها لهذا الفيديو. ملاحظة: لم يتم اختبارها. • يُعيد REA بناء طريقة عمل التطبيق، وليس شفرته المصدرية الأصلية. ادرس فقط التطبيقات التي تملكها، أو التطبيقات مفتوحة المصدر، أو التطبيقات التي قد تدرسها. • الصوت الافتراضي في VoiceStudio مُرخص للاستخدام الشخصي فقط. للاستخدام التجاري، استنسخ صوتك الخاص أو استخدم صوتًا مرخصًا. ... ⏱️ الفصول 0:00 ثمانية مستودعات GitHub رائجة، تقييم صريح لكل منها 0:10 افحص كل مستودع قبل تثبيته 0:57 المعايير الأربعة: الاستخدام الفعلي، الاستخدام التجاري، عدد مرات التشغيل، التكلفة الفعلية 1:07 #1 REA: أنشئ نسختك الخاصة من أي ميزة 3:16 نافذة تثبيت REA الآمنة 3:39 #2 ArtCraft: 13 تطبيقًا إبداعيًا مجانيًا 5:11 وقّع حزمة عقود مع PdfCraft 5:33 #3 HyperFrames: صف فيديو، واحصل على ملف MP4 7:24 #4 VoiceStudio: استنساخ صوتي مجاني (والعيب) 8:44 #5 Jev مقابل Laya: قرارات ذكاء اصطناعي سريعة، مدفوعة ومجانية 11:13 #6 Buzz: Slack حيث يكون وكلاء الذكاء الاصطناعي أعضاءً 12:52 #7 Shaders: خلفيات متحركة لموقعك الإلكتروني 14:20 #8 Hindsight: ذاكرة طويلة المدى لـ الذكاء الاصطناعي ١٥:٤٣ خمسة مستودعات برمجية رائجة أنصح بتجنبها ١٧:٢٩ ملخص: أيها الأنسب للاستخدام اليوم؟ #GitHub #ClaudeCode #OpenSource 📣 انضم إلى مجتمع Skool المجاني لتعلم HighLevel وClaude وn8n والذكاء الاصطناعي والأتمتة. skool.com 🎓 دورة GoHighLevel المتقدمة + قوالب جاهزة للاستخدام. سجّل الآن udemy.com 🚀 من وضع الاستراتيجية إلى التنفيذ، نبني التكنولوجيا التي تدعم النمو المستدام rapidactivemarketing.com 🔥 استلهم أفضل استراتيجياتي substack.com 🛠️ هل ترغب في نظام متكامل عالي المستوى أو تحتاج إلى فريق عمل لشركتك البرمجية كخدمة (SaaS)؟ هل تبحث عن نظام عالي المستوى جاهز للاستخدام أو تحتاج إلى فريق عمل لشركتك البرمجية كخدمة (SaaS)؟ دع فريقنا يقوم بالعمل الشاق نيابةً عنك → arcytex.com 📩 اشترك في نشرتنا الإخبارية الأسبوعية - نصائح حول التسويق عالي المستوى، والذكاء الاصطناعي، والتكنولوجيا، والنمو live.automatedmarketer.net 💡 مدونة أسبوعية - أدوات، نصائح، استراتيجيات automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 أدوات أساسية نستخدمها ونحبها 💲 HighLevel (الأداة الرئيسية) live.automatedmarketer.net 😍 FGFunnels (للمدربين والمبدعين) fgfunnels.com 🥇 HLProTools (أفضل إضافات الطرف الثالث) go.hlprotools.com 🧠 لوفابل إيه آي (أنشئ روبوتات ذكاء اصطناعي ذكية) lovable.dev 📞 ويف (مكالمات ثلاثية، حظر الرسائل المزعجة) احصل على خصم ١٠٪ على اشترا... [bn] আমি ৮টি ভাইরাল গিটহাব রিপো পরীক্ষা করেছি। জেনে নিন কোনটি ব্যবহার করবেন ৮টি ভাইরাল গিটহাব রিপোজিটরি, এক এক করে যাচাই করা হয়েছে এবং প্রতিটির উপর রয়েছে সৎ মতামত: আজই ব্যবহার করবেন নাকি পরখ করে দেখবেন। সাথে আরও ৫টি ভাইরাল রিপোজিটরি যা আমি এড়িয়ে যাওয়ার পরামর্শ দেব। 🎁 এই ভিডিওটির প্রম্পট, সেটআপ ধাপ এবং স্লাইডগুলো (আমাদের ফ্রি কমিউনিটি থেকে বিনামূল্যে ডাউনলোড করুন): portal.vcinc.ai ▶️ এরপর দেখুন: আমার REA বিল্ড ভিডিও, যেটি এখন ভাইরাল: youtu.be 🧰 এটির আগে দেখুন, পার্ট ১: ৬টি Claude Code GitHub রিপো যা আমি প্রতিদিন ব্যবহার করি: youtu.be 🛡️ যেকোনো রিপো ইনস্টল করার আগে, এটি দেখুন: youtu.be 🤖 আমাদের Claude Code ওয়ার্কশপে যোগ দিন এখানে: go.vcinc.ai 🔧 ৮টি রিপো (গিটহাবে স্টার, ২০ অক্টোবর ২০২৬) আমার ওয়েবসাইট দেখুন youtu.be লায়া, এর ফ্রি বিকল্প (অ্যাপাচি ২.০): NandhaKishorM/laya ৬. ব্লক-এর বাজ (অ্যাপাচি ২.০, সেলফ-হোস্টেড): block/buzz · আমার বাজ সেটআপ: youtu.be ৭. শেডার্স, ওয়েবসাইটের ব্যাকগ্রাউন্ড সরানো (এমআইটি): shader-effects-inc/shaders ৮. হিন্ডসাইট, আপনার এআই-এর জন্য দীর্ঘমেয়াদী স্মৃতি (এমআইটি): vectorize-io/hindsight ⚠️ সৎ পরামর্শ • জনপ্রিয় মানেই নিরাপদ নয়। যেকোনো রিপো ইনস্টল করার আগে ক্লড কোড বা কোডেক্স দিয়ে তা পরীক্ষা করিয়ে নিন (ফ্রি ডাউনলোডের সময় এই প্রম্পটটি দেওয়া হয়)। • আমার পিসিতে বা আমার টিমের দ্বারা পরীক্ষিত: REA, ArtCraft (PdfCraft ১১ই অক্টোবর আমার পরীক্ষায় উত্তীর্ণ হয়েছে, একটি পুরোনো সংস্করণে; বাকিগুলো প্রাথমিক সংস্করণ), HyperFrames, VoiceStudio, Jev, Laya, Shaders। সংক্ষিপ্ত বিবরণ: আমি এটি আগস্টে সেট আপ করেছিলাম, এই ভিডিওর জন্য পুনরায় পরীক্ষা করা হয়নি। পরবর্তী পর্যালোচনা: পরীক্ষা করা হয়নি। • REA একটি অ্যাপ কীভাবে কাজ করে তা পুনর্নির্মাণ করে, এর মূল সোর্স কোড নয়। শুধুমাত্র আপনার নিজের অ্যাপ, ওপেন-সোর্স অ্যাপ, বা যে অ্যাপগুলো নিয়ে আপনি অধ্যয়ন করতে পারেন, সেগুলোই অধ্যয়ন করুন। • VoiceStudio-এর ডিফল্ট ভয়েস শুধুমাত্র ব্যক্তিগত ব্যবহারের জন্য লাইসেন্সপ্রাপ্ত। ব্যবসার জন্য, আপনার নিজের ভয়েস ক্লোন করুন বা একটি লাইসেন্সপ্রাপ্ত ভয়েস ব্যবহার করুন। ⏱️ অধ্যায়সমূহ ০:০০ ৮টি ভাইরাল গিটহাব রিপো, প্রতিটির উপর একটি সৎ মতামত ০:১০ প্রতিটি রিপো ইনস্টল করার আগে স্ক্যান করুন ০:৫৭ ৪টি যাচাই: আসল, ব্যবসায়িক ব্যবহার, রান, আসল খরচ ১:০৭ #১ REA: যেকোনো ফিচারের নিজস্ব সংস্করণ তৈরি করুন ৩:১৬ নিরাপদ REA ইনস্টল করার প্রম্পট ৩:৩৯ #২ ArtCraft: ১৩টি বিনামূল্যের সৃজনশীল অ্যাপ ৫:১১ PdfCraft-এর সাথে একটি চুক্তি প্যাক স্বাক্ষর করুন ৫:৩৩ #৩ HyperFrames: একটি ভিডিও বর্ণনা করুন, একটি MP4 পান ৭:২৪ #৪ VoiceStudio: বিনামূল্যে ভয়েস ক্লোনিং (এবং এর অসুবিধা) ৮:৪৪ #৫ Jev বনাম Laya: দ্রুত AI সিদ্ধান্ত, পেইড এবং ফ্রি ১১:১৩ #৬ Buzz: স্ল্যাক যেখানে AI এজেন্টরা সদস্য ১২:৫২ #৭ Shaders: আপনার ওয়েবসাইটের জন্য চলমান ব্যাকগ্রাউন্ড ১৪:২০ #৮ Hindsight: আপনার দীর্ঘমেয়াদী স্মৃতি এআই ১৫:৪৩ ৫টি ভাইরাল রিপো যা এড়িয়ে যাওয়া উচিত ১৭:২৯ সারসংক্ষেপ: আজ কোনটি ব্যবহার করবেন #GitHub #ClaudeCode #OpenSource 📣 হাইলেভেল, ক্লড, এন৮এন, এআই এবং অটোমেশনের জন্য আমাদের ফ্রি স্কুল কমিউনিটিতে যোগ দিন। skool.com 🎓 গো-হাইলেভেল মাস্টারক্লাস + প্লাগ-এন্ড-প্লে টেমপ্লেট। এখনই ভর্তি হন udemy.com 🚀 কৌশল থেকে বাস্তবায়ন পর্যন্ত, আমরা এমন প্রযুক্তি তৈরি করি যা পরিমাপযোগ্য প্রবৃদ্ধিকে চালিত করে rapidactivemarketing.com 🔥 আমার সেরা কৌশলগুলো গ্রহণ করুন substack.com 🛠️ একটি রেডিমেড হাই-লেভেল সিস্টেম চান অথবা আপনার SaaS-এর জন্য কর্মী প্রয়োজন? আমাদের টিমকে আপনার জন্য কঠিন কাজটি করতে দিন → arcytex.com 📩 আমাদের সাপ্তাহিক নিউজলেটারটি নিন – GHL, AI, প্রযুক্তি ও প্রবৃদ্ধির টিপস live.automatedmarketer.net 💡 সাপ্তাহিক ব্লগ – টুলস, টিপস, কৌশল automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 আমাদের ব্যবহৃত ও পছন্দের অপরিহার্য টুলস 💲 HighLevel (প্রধান টুল) live.automatedmarketer.net 😍 FGFunnels (কোচ ও ক্রিয়েটরদের জন্য) fgfunnels.com 🥇 HLProTools (সেরা থার্ড-পার্টি অ্যাড-অন) go.hlprotools.com 🧠 লাভেবল এআই (স্মার্ট এআই বট তৈরি করুন) lovable.dev 📞 ওয়েভ (ট্রিপল কল, স্প্যাম ব্লক করুন) আপনার প্রথম মাসে ১০% ছাড় পান, চেকআউটের সময় প্রোমো কোডটি দিতে ভুলবেন না: NEW-WUK2W উপরের কিছু লিঙ্ক অ্যাফিলিয়েট লিঙ্ক। আপনার কোনো অতিরিক্ত খরচ ছাড়াই আমি একটি কমিশন উপার্জন করতে পারি। আমি এই রিপোজিটরিগুলোর কোনোটির সাথেই যুক্ত নই। ক্লড (Claude) হলো অ্যানথ্রোপিক (Anthropic)-এর একটি ট্রেডমার্ক; অন্যান্য নামগুলো তাদের নিজ নিজ মালিকদের। ⚡️ ব্যবসায়িক অনুসন্ধান ⚡️ team@automatedmarketer.net [de-DE] Ich habe 8 virale GitHub-Repos geprüft. Diese solltet ihr nutzen 8 virale GitHub-Repos, einzeln geprüft, mit einem ehrlichen Urteil: Jetzt nutzen oder ausprobieren. Plus 5 virale Repos, die ich nicht empfehlen würde. 🎁 Die Anweisungen, Einrichtungsschritte und Folien aus DIESEM Video (kostenloser Download aus unserer Community): portal.vcinc.ai ▶️ Als Nächstes ansehen: Mein REA-Build-Video, das gerade viral geht: youtu.be 🧰 Vorher ansehen, Teil 1: Die 6 Claude Code GitHub-Repos, die ich täglich nutze: youtu.be 🛡️ Bevor du ein Repository installierst, schau dir das hier an: youtu.be 🤖 Nimm hier an unserem Claude Code Workshop teil: go.vcinc.ai 🔧 Die 8 Repos (Sterne auf GitHub, 20. Okt. 2026) 1. REA, Reverse Engineer Anything (über 343.000 Sterne, MIT-Lizenz; das EINZIGE offizielle Repository): morluto/rea Mein REA-Build-Video: youtu.be 2. ArtCraft, 13 kostenlose Kreativ-Apps (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames von HeyGen, Eingabeaufforderung zu MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, kostenloses Stimmenklonen (AGPL-3.0; Standardstimme nur für den persönlichen Gebrauch): debpalash/VoiceStudio 5. Jev von TypeSafe (kostenpflichtig, sehr günstig): typesafe.ai · Mein Jev-Video: youtu.be Laya, die kostenlose Alternative (Apache 2.0): NandhaKishorM/laya 6. Buzz von Block (Apache 2.0, selbst gehostet): block/buzz · Meine Buzz-Konfiguration: youtu.be 7. Shaders, animierte Website-Hintergründe (MIT-Lizenz): shader-effects-inc/shaders 8. Hindsight, Langzeitgedächtnis für Ihre KI (MIT-Lizenz): vectorize-io/hindsight ⚠️ WICHTIGE HINWEISE • Beliebt bedeutet nicht sicher. Lassen Sie jedes Repository von Claude Code oder Codex prüfen, bevor Sie es installieren (Abfrage beim kostenlosen Download). • Getestet auf meinem PC oder von meinem Team: REA, ArtCraft (PdfCraft hat meinen Test am 11. Oktober mit einer älteren Version bestanden; die anderen sind frühe Versionen), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Hinweis: Ich habe es im August eingerichtet und für dieses Video nicht erneut getestet. Rückblickend: Nicht getestet. • REA rekonstruiert die Funktionsweise einer Anwendung, nicht ihren ursprünglichen Quellcode. Analysieren Sie nur Anwendungen, die Sie besitzen, Open-Source-Anwendungen oder Anwendungen, die Sie untersuchen dürfen. • Die Standardstimme von VoiceStudio ist nur für den privaten Gebrauch lizenziert. Für geschäftliche Zwecke verwenden Sie bitte eine eigene Stimme oder eine lizenzierte Stimme. ⏱️ KAPITEL 0:00 8 virale GitHub-Repos, ein ehrliches Urteil zu jedem 0:10 Jedes Repo vor der Installation prüfen 0:57 Die 4 Prüfkriterien: Echtheit, geschäftliche Nutzung, Ausführung, tatsächliche Kosten 1:07 #1 REA: Eigene Version jeder Funktion erstellen 3:16 Die sichere REA-Installationsabfrage 3:39 #2 ArtCraft: 13 kostenlose Kreativ-Apps 5:11 Vertragspaket mit PdfCraft abschließen 5:33 #3 HyperFrames: Video beschreiben, MP4 erhalten 7:24 #4 VoiceStudio: Kostenloses Stimmenklonen (und der Haken) 8:44 #5 Jev vs. Laya: Schnelle KI-Entscheidungen, kostenpflichtig und kostenlos 11:13 #6 Buzz: Slack, wo KI-Agenten Mitglieder sind 12:52 #7 Shaders: Bewegte Hintergründe für Ihre Website 14:20 #8 Hindsight: Langzeitgedächtnis für Ihre KI 15:43 5 virale Repos, die ich überspringen würde 17:29 Zusammenfassung: Welche heute verwenden? #GitHub #ClaudeCode #OpenSource 📣 Treten Sie unserer kostenlosen Skool-Community für HighLevel, Claude, n8n, KI & Automatisierung bei. skool.com 🎓 GoHighLevel Masterclass + Plug-and-Play-Vorlagen. Jetzt anmelden! udemy.com 🚀 Von der Strategie bis zur Implementierung: Wir entwickeln die Technologie für skalierbares Wachstum. rapidactivemarketing.com 🔥 Meine besten Strategien sichern! substack.com 🛠️ Benötigen Sie ein fertiges HighLevel-System oder Personal für Ihr SaaS-Unternehmen? Überlassen Sie unserem Team die Arbeit → arcytex.com 📩 Abonnieren Sie unseren wöchentlichen Newsletter – GHL, KI, Tech & Wachstumstipps live.automatedmarketer.net 💡 Wöchentlicher Blog – Tools, Tipps, Strategien automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 Unverzichtbare Tools, die wir nutzen und lieben 💲 HighLevel (Haupttool) live.automatedmarketer.net 😍 FGFunnels (für Coaches & Creator) fgfunnels.com 🥇 HLProTools (Top-Add-ons von Drittanbietern) go.hlprotools.com?... [es-US] Revisé 8 repositorios virales de GitHub. Aquí están los que debes usar. 8 repositorios virales de GitHub, analizados uno por uno, con una opinión sincera sobre cada uno: úsalo hoy mismo o pruébalo. Además, 5 repositorios virales que yo evitaría. Otros repositorios virales que recomendaría evitar. 🎁 Las indicaciones, los pasos de configuración y las diapositivas de ESTE video (descarga gratuita desde nuestra comunidad): portal.vcinc.ai ▶️ Mira a continuación: mi video sobre la compilación de REA, ¡el que está causando furor!: youtu.be 🧰 Mira antes de este, Parte 1: los 6 repositorios de Claude Code en GitHub que uso a diario: youtu.be 🛡️ Antes de instalar CUALQUIER repositorio, mira esto: youtu.be 🤖 Únete a nuestro Taller de Claude Code aquí: go.vcinc.ai 🔧 Los 8 Repositorios (estrellas en GitHub, 20 de octubre de 2026) 1. REA, Ingeniería inversa de cualquier cosa (más de 343.000 estrellas, MIT; el ÚNICO repositorio oficial): morluto/rea Mi video de compilación de REA: youtu.be 2. ArtCraft, 13 aplicaciones creativas gratuitas (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames de HeyGen, conversión de prompts a MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, clonación de voz gratuita (AGPL-3.0; la voz predeterminada es solo para uso personal): debpalash/VoiceStudio 5. Jev de TypeSafe (de pago, muy económico): typesafe.ai · mi Jev Vídeo: youtu.be Laya, su alternativa gratuita (Apache 2.0): NandhaKishorM/laya 6. Buzz de Block (Apache 2.0, autoalojado): block/buzz · Mi configuración de Buzz: youtu.be 7. Shaders, fondos animados para sitios web (MIT): shader-effects-inc/shaders 8. Hindsight, memoria a largo plazo para tu IA (MIT): vectorize-io/hindsight ⚠️ NOTAS IMPORTANTES • Popular no significa seguro. Pide a Claude Code o Codex que revisen cualquier repositorio antes de instalarlo (se solicita en la descarga gratuita). • Probado en mi PC o por mi equipo: REA, ArtCraft (PdfCraft pasó mi prueba el 11 de octubre, en una versión anterior; el resto son versiones tempranas), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Nota: Lo configuré en agosto, no lo volví a probar para este video. Nota posterior: no lo probé. • REA reconstruye el funcionamiento de una aplicación, no su código fuente original. Solo estudia aplicaciones de tu propiedad, de código abierto o que puedas estudiar. • La voz predeterminada de VoiceStudio tiene licencia solo para uso personal. Para uso comercial, clona tu propia voz o usa una con licencia. ⏱️ CAPÍTULOS 0:00 8 repositorios virales de GitHub, una opinión sincera sobre cada uno 0:10 Analiza cada repositorio antes de instalarlo 0:57 Las 4 comprobaciones: real, uso comercial, funcionamiento, coste real 1:07 #1 REA: crea tu propia versión de cualquier función 3:16 El aviso de instalación segura de REA 3:39 #2 ArtCraft: 13 aplicaciones creativas gratuitas 5:11 Firma un contrato con PdfCraft 5:33 #3 HyperFrames: describe un vídeo y obtén un MP4 7:24 #4 VoiceStudio: clonación de voz gratuita (y la trampa) 8:44 #5 Jev vs Laya: decisiones rápidas de IA, de pago y gratuitas 11:13 #6 Buzz: Slack donde los agentes de IA son miembros 12:52 #7 Shaders: fondos animados para tu sitio web 14:20 #8 Hindsight: memoria a largo plazo para tu IA 15:43 5 repositorios virales que no usaría 17:29 Resumen: ¿cuál usar hoy? #GitHub #ClaudeCode #OpenSource 📣 Únete a nuestra comunidad gratuita de Skool para HighLevel, Claude, n8n, IA y automatización. skool.com 🎓 Curso intensivo de GoHighLevel + Plantillas listas para usar. ¡Inscríbete ahora! udemy.com 🚀 Desde la estrategia hasta la implementación, creamos la tecnología que impulsa el crecimiento escalable. rapidactivemarketing.com 🔥 ¡Aprende mis mejores estrategias! substack.com 🛠️ ¿Necesitas un sistema HighLevel listo para usar o personal para tu SaaS? Deja que nuestro equipo se encargue del trabajo pesado → arcytex.com 📩 Suscríbete a nuestro boletín semanal: GHL, IA, tecnología y consejos de crecimiento live.automatedmarketer.net 💡 Blog semanal: herramientas, consejos y estrategias automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #IA #actualizacionestecnológicas 🧠 Herramientas imprescindibles que usamos y nos encantan 💲 HighLevel (Herramienta principal) live.automatedmarketer.net 😍 FGFunnels (para coaches y creadores) fgfunnels.com 🥇 HLProTools (Los mejores complementos de tercer... [fr-FR] J'ai vérifié 8 dépôts GitHub viraux. Voici ceux à utiliser. Huit dépôts GitHub viraux, testés un par un, avec un avis honnête sur chacun : à utiliser immédiatement ou à tester. Et cinq dépôts viraux que je déconseille. 🎁 Les invites, les étapes de configuration et les diapositives de CETTE vidéo (téléchargeables gratuitement depuis notre communauté) : portal.vcinc.ai ▶️ À voir ensuite : ma vidéo sur la création d’un environnement REA, celle qui fait le buzz : youtu.be 🧰 À voir avant celle-ci, Partie 1 : les 6 dépôts GitHub Claude Code que j’utilise quotidiennement : youtu.be 🛡️ Avant d’installer un dépôt, regardez ceci : youtu.be 🤖 Rejoignez notre atelier Claude Code ici : go.vcinc.ai 🔧 Les 8 dépôts (étoiles) (sur GitHub, 20 oct. 2026) 1. REA, Reverse Engineer Anything (plus de 343 000 étoiles, licence MIT ; le SEUL dépôt officiel) : morluto/rea Ma vidéo de création de REA : youtu.be 2. ArtCraft, 13 applications créatives gratuites (Apache 2.0) : storytold/artcraft · getartcraft.com 3. HyperFrames par HeyGen, conversion d'invites en MP4 (Apache 2.0) : heygen-com/hyperframes 4. VoiceStudio, clonage vocal gratuit (AGPL-3.0 ; la voix par défaut est réservée à un usage personnel) : debpalash/VoiceStudio 5. Jev par TypeSafe (payant, très abordable) : typesafe.ai · Ma vidéo sur Jev : youtu.be Laya, son alternative gratuite (Apache 2.0) : NandhaKishorM/laya 6. Buzz par Block (Apache 2.0, auto-hébergé) : block/buzz · Ma configuration Buzz : youtu.be 7. Shaders, animation des arrière-plans de sites web (MIT) : shader-effects-inc/shaders 8. Hindsight, mémoire à long terme pour votre IA (MIT) : vectorize-io/hindsight ⚠️ AVERTISSEMENT • Popularité ne rime pas avec sécurité. Faites vérifier tout dépôt par Claude Code ou Codex avant de l'installer (invite lors du téléchargement gratuit). • Testé sur mon PC ou par mon équipe : REA, ArtCraft (PdfCraft a réussi mon test le 11 octobre, sur une version antérieure ; les autres sont des versions préliminaires), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Remarque : configuration effectuée en août, non testée à nouveau pour cette vidéo. Remarque : non testée. • REA reconstruit le fonctionnement d'une application, et non son code source original. Étudiez uniquement les applications dont vous êtes propriétaire, les applications open source ou celles que vous envisagez d'étudier. • La voix par défaut de VoiceStudio est soumise à une licence pour un usage personnel uniquement. Pour un usage professionnel, clonez votre propre voix ou utilisez une voix sous licence. ⏱️ CHAPITRES 0:00 8 dépôts GitHub viraux : un avis honnête sur chacun 0:10 Analysez chaque dépôt avant de l’installer 0:57 Les 4 vérifications : usage réel, usage professionnel, performances, coût réel 1:07 #1 REA : créez votre propre version de n’importe quelle fonctionnalité 3:16 L’invite d’installation sécurisée de REA 3:39 #2 ArtCraft : 13 applications créatives gratuites 5:11 Signez un contrat avec PdfCraft 5:33 #3 HyperFrames : décrivez une vidéo, obtenez un MP4 7:24 #4 VoiceStudio : clonage vocal gratuit (et le piège) 8:44 #5 Jev vs Laya : décisions rapides de l’IA, payantes et gratuites 11:13 #6 Buzz : Slack où les agents IA sont membres 12:52 #7 Shaders : arrière-plans animés pour votre site web 14:20 #8 Hindsight : mémoire à long terme pour votre IA 15:43 5 viraux Dépôts à éviter 17:29 Récapitulatif : lequel utiliser aujourd’hui ? #GitHub #ClaudeCode #OpenSource 📣 Rejoignez notre communauté Skool gratuite pour des formations HighLevel, Claude, n8n, IA et automatisation. skool.com 🎓 Masterclass GoHighLevel + Modèles prêts à l’emploi. Inscrivez-vous dès maintenant ! udemy.com 🚀 De la stratégie au déploiement, nous créons la technologie qui alimente une croissance évolutive. rapidactivemarketing.com 🔥 Découvrez mes meilleures stratégies ! substack.com 🛠️ Besoin d’un système HighLevel clé en main ou de personnel pour votre SaaS ? Laissez notre équipe s'occuper des aspects techniques → arcytex.com 📩 Abonnez-vous à notre newsletter hebdomadaire : Conseils GHL, IA, Tech et Croissance live.automatedmarketer.net 💡 Blog hebdomadaire : Outils, Conseils et Stratégies automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 Outils indispensables que nous utilisons et adorons 💲 HighLevel (Outil principal) live.automatedmarketer.net 😍 FGFunnels (Pour les coachs et les... [hi] मैंने 8 वायरल GitHub रिपोज़ चेक किए। जानें कौन से इस्तेमाल करने चाहिए आठ लोकप्रिय GitHub रिपॉज़िटरी, एक-एक करके जाँची गईं और प्रत्येक पर एक ईमानदार राय: आज ही उपयोग करें या आज़माएँ। साथ ही पाँच लोकप्रिय रिपॉज़िटरी जिन्हें मैं इस्तेमाल नहीं करना चाहूँगा। 🎁 इस वीडियो के प्रॉम्प्ट, सेटअप चरण और स्लाइड (हमारे मुफ़्त समुदाय से मुफ़्त डाउनलोड करें): portal.vcinc.ai ▶️ अगला वीडियो देखें: मेरा REA बिल्ड वीडियो, जो आजकल बहुत लोकप्रिय है: youtu.be 🧰 इससे पहले देखें, भाग 1: 6 क्लाउड कोड GitHub रिपॉज़िटरी जिनका मैं हर दिन उपयोग करता हूँ: youtu.be 🛡️ कोई भी रिपॉज़िटरी इंस्टॉल करने से पहले, यह वीडियो देखें: youtu.be 🤖 हमारे क्लाउड कोड वर्कशॉप में शामिल हों: go.vcinc.ai 🔧 8 रिपॉजिटरी (गिटहब पर स्टार रेटिंग, 20 अक्टूबर 2026) 1. REA, किसी भी चीज़ का रिवर्स इंजीनियरिंग (343K+ स्टार रेटिंग, MIT लाइसेंस प्राप्त; एकमात्र आधिकारिक रिपॉजिटरी): morluto/rea मेरा REA बिल्ड वीडियो: youtu.be 2. ArtCraft, 13 मुफ़्त क्रिएटिव ऐप्स (Apache 2.0): storytold/artcraft · getartcraft.com 3. HeyGen द्वारा HyperFrames, MP4 में प्रॉम्प्ट (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, मुफ़्त वॉइस क्लोनिंग (AGPL-3.0; डिफ़ॉल्ट वॉइस केवल व्यक्तिगत उपयोग के लिए है): debpalash/VoiceStudio 5. TypeSafe द्वारा Jev (भुगतान किया गया, बहुत सस्ता): typesafe.ai · मेरा जेव वीडियो: youtu.be लाया, इसका मुफ़्त विकल्प (अपाचे 2.0): NandhaKishorM/laya 6. ब्लॉक द्वारा बज़ (अपाचे 2.0, सेल्फ-होस्टेड): block/buzz · मेरा बज़ सेटअप: youtu.be 7. शेडर्स, चलती-फिरती वेबसाइट बैकग्राउंड (MIT): shader-effects-inc/shaders 8. हिंडसाइट, आपके AI के लिए दीर्घकालिक मेमोरी (MIT): vectorize-io/hindsight ⚠️ ज़रूरी बातें • लोकप्रिय होने का मतलब सुरक्षित होना नहीं है। किसी भी रिपॉज़िटरी को इंस्टॉल करने से पहले क्लाउड कोड या कोडेक्स से उसकी जाँच करवा लें (मुफ़्त डाउनलोड में प्रॉम्प्ट दिया जाता है)। • मेरे पीसी पर या मेरी टीम द्वारा परीक्षण किया गया: REA, ArtCraft (PdfCraft ने 11 अक्टूबर को मेरे परीक्षण में एक पुराने संस्करण पर सफलता प्राप्त की; बाकी सभी शुरुआती संस्करण हैं), HyperFrames, VoiceStudio, Jev, Laya, Shaders। संक्षेप में: मैंने इसे अगस्त में स्थापित किया था, इस वीडियो के लिए पुनः परीक्षण नहीं किया। बाद में पता चला: परीक्षण नहीं किया गया। • REA किसी ऐप के काम करने के तरीके को पुनर्निर्मित करता है, न कि उसके मूल स्रोत कोड को। केवल उन्हीं ऐप्स का अध्ययन करें जो आपके स्वामित्व में हैं, ओपन-सोर्स ऐप्स हैं, या जिनका आप अध्ययन कर सकते हैं। • VoiceStudio की डिफ़ॉल्ट आवाज़ केवल व्यक्तिगत उपयोग के लिए लाइसेंस प्राप्त है। व्यावसायिक उपयोग के लिए, अपनी स्वयं की आवाज़ क्लोन करें या लाइसेंस प्राप्त आवाज़ का उपयोग करें। ⏱️ अध्याय 0:00 8 वायरल GitHub रिपॉज़िटरी, प्रत्येक पर एक ईमानदार राय 0:10 इंस्टॉल करने से पहले हर रिपॉज़िटरी को स्कैन करें 0:57 4 जाँचें: वास्तविक, व्यावसायिक उपयोग, संचालन, वास्तविक लागत 1:07 #1 REA: किसी भी फ़ीचर का अपना संस्करण बनाएँ 3:16 सुरक्षित REA इंस्टॉल प्रॉम्प्ट 3:39 #2 ArtCraft: 13 मुफ़्त क्रिएटिव ऐप्स 5:11 PdfCraft के साथ कॉन्ट्रैक्ट पैक पर हस्ताक्षर करें 5:33 #3 HyperFrames: वीडियो का वर्णन करें, MP4 प्राप्त करें 7:24 #4 VoiceStudio: मुफ़्त वॉइस क्लोनिंग (और इसमें छिपी समस्या) 8:44 #5 Jev बनाम Laya: तेज़ AI निर्णय, सशुल्क और मुफ़्त 11:13 #6 Buzz: Slack जहाँ AI एजेंट सदस्य हैं 12:52 #7 Shaders: आपकी वेबसाइट के लिए गतिशील पृष्ठभूमि 14:20 #8 Hindsight: आपके AI के लिए दीर्घकालिक स्मृति 15:43 5 वायरल रिपॉजिटरी जिन्हें मैं छोड़ दूंगा 17:29 सारांश: आज किसका उपयोग करें #GitHub #ClaudeCode #OpenSource 📣 हाई लेवल, क्लाउड, n8n, AI और ऑटोमेशन के लिए हमारे मुफ़्त Skool समुदाय में शामिल हों। skool.com 🎓 GoHighLevel मास्टरक्लास + प्लग-एंड-प्ले टेम्प्लेट्स। अभी नामांकन करें udemy.com 🚀 रणनीति से लेकर कार्यान्वयन तक, हम ऐसी तकनीक विकसित करते हैं जो स्केलेबल विकास को गति प्रदान करती है rapidactivemarketing.com 🔥 मेरी सर्वश्रेष्ठ रणनीतियाँ अपनाएँ substack.com 🛠️ क्या आप एक तैयार उच्च-स्तरीय सिस्टम चाहते हैं या अपने SaaS के लिए स्टाफ की आवश्यकता है? हमारी टीम आपके लिए सारा काम कर देगी → arcytex.com 📩 हमारा साप्ताहिक न्यूज़लेटर प्राप्त करें – GHL, AI, तकनीक और विकास संबंधी सुझाव live.automatedmarketer.net 💡 साप्ताहिक ब्लॉग – उपकरण, सुझाव, रणनीतियाँ automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 हमारे द्वारा उपयोग किए जाने वाले और पसंद किए जाने वाले आवश्यक उपकरण 💲 हाई लेवल (मुख्य उपकरण) live.automatedmarketer.net 😍 FGFunnels (कोच और क्रिएटर्स के लिए) fgfunnels.com 🥇 HLProTools (शीर्ष तृतीय-पक्ष ऐड-ऑन) go.hlprotools.com 🧠 लवेबल एआई (स्मार्ट एआई बॉट बनाएं) lovable.dev... [id] Saya memeriksa 8 repositori GitHub yang viral. Berikut adalah repositori mana yang sebaiknya digu... 8 repositori GitHub viral, diperiksa satu per satu, dengan penilaian jujur ​​untuk masing-masing: gunakan hari ini atau coba dulu. Ditambah 5 repositori viral yang sebaiknya dihindari. 🎁 Petunjuk, langkah pengaturan, dan slide dari video INI (unduh gratis dari komunitas gratis kami): portal.vcinc.ai ▶️ Tonton selanjutnya: video build REA saya, yang sedang viral: youtu.be 🧰 Tonton sebelum ini, Bagian 1: 6 repositori GitHub Claude Code yang saya gunakan setiap hari: youtu.be 🛡️ Sebelum Anda menginstal repositori APA PUN, tonton ini: youtu.be 🤖 Bergabunglah dengan Workshop Claude Code kami di sini: go.vcinc.ai 🔧 8 repositori (bintang di GitHub, 20 Okt 2026) 1. REA, Reverse Engineer Anything (343K+ bintang, MIT; satu-satunya repositori resmi): morluto/rea Video pembuatan REA saya: youtu.be 2. ArtCraft, 13 aplikasi kreatif gratis (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames oleh HeyGen, konversi prompt ke MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, kloning suara gratis (AGPL-3.0; suara default hanya untuk penggunaan pribadi): debpalash/VoiceStudio 5. Jev oleh TypeSafe (berbayar, sangat murah): typesafe.ai · video Jev saya: youtu.be Laya, alternatif gratisnya (Apache 2.0): NandhaKishorM/laya 6. Buzz by Block (Apache 2.0, dihosting sendiri): block/buzz · pengaturan Buzz saya: youtu.be 7. Shaders, latar belakang situs web yang bergerak (MIT): shader-effects-inc/shaders 8. Hindsight, memori jangka panjang untuk AI Anda (MIT): vectorize-io/hindsight ⚠️ CATATAN JUJUR • Populer tidak berarti aman. Minta Claude Code atau Codex untuk memeriksa repositori apa pun sebelum Anda menginstalnya (petunjuk dalam unduhan gratis). • Diuji di PC saya atau oleh tim saya: REA, ArtCraft (PdfCraft lulus uji saya pada 11 Oktober, pada versi lama; sisanya adalah versi awal), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Buzz: Saya mengaturnya pada bulan Agustus, tidak diuji ulang untuk video ini. Penyesalan: tidak diuji. • REA membangun kembali cara kerja aplikasi, bukan kode sumber aslinya. Pelajari hanya aplikasi yang Anda miliki, aplikasi sumber terbuka, atau aplikasi yang mungkin Anda pelajari. • Suara default VoiceStudio hanya berlisensi untuk penggunaan pribadi. Untuk bisnis, klon suara Anda sendiri atau gunakan suara berlisensi. ⏱️ BAB 0:00 8 repositori GitHub viral, penilaian jujur ​​untuk masing-masing 0:10 Pindai setiap repositori sebelum Anda menginstalnya 0:57 4 pemeriksaan: penggunaan nyata, penggunaan bisnis, berjalan, biaya nyata 1:07 #1 REA: buat versi Anda sendiri dari fitur apa pun 3:16 Petunjuk instalasi REA yang aman 3:39 #2 ArtCraft: 13 aplikasi kreatif gratis 5:11 Tandatangani paket kontrak dengan PdfCraft 5:33 #3 HyperFrames: deskripsikan video, dapatkan MP4 7:24 #4 VoiceStudio: kloning suara gratis (dan jebakannya) 8:44 #5 Jev vs Laya: keputusan AI cepat, berbayar dan gratis 11:13 #6 Buzz: Slack tempat agen AI menjadi anggota 12:52 #7 Shaders: latar belakang bergerak untuk situs web Anda 14:20 #8 Hindsight: memori jangka panjang untuk AI Anda 15:43 5 repositori viral yang sebaiknya saya lewati 17:29 Rekap: mana yang harus digunakan hari ini #GitHub #ClaudeCode #OpenSource 📣 Bergabunglah dengan Komunitas Skool Gratis Kami untuk HighLevel, Claude, n8n, AI & Otomatisasi. skool.com 🎓 Kelas Master GoHighLevel + Template Siap Pakai. Daftar Sekarang udemy.com 🚀 Dari Strategi hingga Implementasi, Kami Membangun Teknologi yang Mendorong Pertumbuhan yang Dapat Diperluas rapidactivemarketing.com 🔥 Curi Strategi Terbaik Saya substack.com 🛠️ Ingin sistem HighLevel siap pakai atau membutuhkan staf untuk SaaS Anda? Biarkan tim kami mengerjakan tugas-tugas berat untuk Anda → arcytex.com 📩 Dapatkan buletin mingguan kami – Tips GHL, AI, Teknologi & Pertumbuhan live.automatedmarketer.net 💡 Blog Mingguan – Alat, Tips, Strategi automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 Alat Wajib yang Kami Gunakan & Sukai 💲 HighLevel (Alat Utama) live.automatedmarketer.net 😍 FGFunnels (untuk Pelatih & Kreator) fgfunnels.com 🥇 HLProTools (Add-on Pihak Ketiga Terbaik) go.hlprotools.com 🧠 Lovable AI (Membangun Bot AI Cerdas) lovable.dev 📞 Wavv (Panggilan Tiga Kali Lipat, Blokir Spam) Dapatkan diskon 10% untuk Bulan Pertama Anda,... [it] Ho testato 8 repository GitHub virali. Ecco quali usare 8 repository virali su GitHub, analizzati uno per uno, con un giudizio sincero su ciascuno: usatelo subito o provatelo. Inoltre, 5 repository virali che eviterei. 🎁 I prompt, i passaggi di configurazione e le slide di QUESTO video (scaricabile gratuitamente dalla nostra community): portal.vcinc.ai ▶️ Guarda il prossimo video: il mio video sulla build di REA, quello che sta spopolando: youtu.be 🧰 Guarda prima questo, Parte 1: i 6 repository GitHub di Claude Code che uso ogni giorno: youtu.be 🛡️ Prima di installare QUALSIASI repository, guarda questo video: youtu.be 🤖 Partecipa al nostro Workshop di Claude Code qui: Italiano: go.vcinc.ai 🔧 Gli 8 repository (stelle su GitHub, 20 ottobre 2026) 1. REA, Reverse Engineer Anything (oltre 343.000 stelle, MIT; l'UNICO repository ufficiale): morluto/rea Il mio video di build di REA: youtu.be 2. ArtCraft, 13 app creative gratuite (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames di HeyGen, conversione da prompt a MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, clonazione vocale gratuita (AGPL-3.0; la voce predefinita è solo per uso personale): Italiano: debpalash/VoiceStudio 5. Jev di TypeSafe (a pagamento, molto economico): typesafe.ai · Il mio video su Jev: youtu.be Laya, la sua alternativa gratuita (Apache 2.0): NandhaKishorM/laya 6. Buzz di Block (Apache 2.0, self-hosted): block/buzz · La mia configurazione di Buzz: youtu.be 7. Shaders, sfondi animati per siti web (MIT): shader-effects-inc/shaders 8. Hindsight, memoria a lungo termine per la tua IA (MIT): vectorize-io/hindsight ⚠️ NOTE IMPORTANTI • Popolare non significa sicuro. Fai controllare qualsiasi repository da Claude Code o Codex prima di installarlo (troverai una richiesta nel download gratuito). • Testato sul mio PC o dal mio team: REA, ArtCraft (PdfCraft ha superato il mio test l'11 ottobre, su una versione precedente; gli altri sono versioni preliminari), HyperFrames, VoiceStudio, Jev, Laya, Shaders. Nota: l'ho configurato ad agosto, non l'ho testato nuovamente per questo video. Col senno di poi: non testato. • REA ricostruisce il funzionamento di un'app, non il suo codice sorgente originale. Studia solo app di tua proprietà, app open source o app che potresti studiare. • La voce predefinita di VoiceStudio è concessa in licenza solo per uso personale. Per uso aziendale, clona la tua voce o usane una con licenza. ⏱️ CAPITOLI 0:00 8 repository GitHub virali, un giudizio onesto su ciascuno 0:10 Analizza ogni repository prima di installarlo 0:57 I 4 controlli: reale, utilizzo aziendale, esecuzione, costo reale 1:07 #1 REA: crea la tua versione di qualsiasi funzionalità 3:16 Il prompt di installazione sicuro di REA 3:39 #2 ArtCraft: 13 app creative gratuite 5:11 Firma un contratto con PdfCraft 5:33 #3 HyperFrames: descrivi un video, ottieni un MP4 7:24 #4 VoiceStudio: clonazione vocale gratuita (e il trucco) 8:44 #5 Jev vs Laya: decisioni rapide dell'IA, a pagamento e gratuite 11:13 #6 Buzz: Slack dove gli agenti IA sono membri 12:52 #7 Shaders: sfondi animati per il tuo sito web 14:20 #8 Hindsight: memoria a lungo termine per la tua IA 15:43 5 repository virali da evitare 17:29 Riepilogo: quali usare oggi #GitHub #ClaudeCode #OpenSource 📣 Unisciti alla nostra community gratuita Skool per HighLevel, Claude, n8n, IA e automazione. skool.com 🎓 Masterclass GoHighLevel + Template Plug-and-Play Iscriviti ora udemy.com 🚀 Dalla strategia all'implementazione, creiamo la tecnologia che alimenta la crescita scalabile rapidactivemarketing.com 🔥 Rubate le mie migliori strategie substack.com 🛠️ Desiderate un sistema HighLevel pronto all'uso o avete bisogno di personale per il vostro SaaS? Lascia che il nostro team si occupi del lavoro più impegnativo per te → arcytex.com 📩 Iscriviti alla nostra newsletter settimanale: GHL, AI, tecnologia e consigli per la crescita live.automatedmarketer.net 💡 Blog settimanale: strumenti, consigli e strategie automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 Strumenti indispensabili che usiamo e amiamo 💲 HighLevel (strumento principale) live.automatedmarketer.net 😍 FGFunnels (per coach e creatori) fgfunnels.com 🥇 HLProTools (strumento di terze parti di alto livello) Componenti aggiuntivi) go.hlprotools.... [iw] בדקתי 8 מאגרי GitHub ויראליים. הנה אלו שכדאי לכם להשתמש בהם 8 מאגרים ויראליים ב-GitHub, נבדקו אחד אחד, עם פסק דין כנה על כל אחד: השתמשו בהם היום או נסו אותם. בנוסף ל-5 מאגרים ויראליים שהייתי מדלג עליהם. 🎁 ההנחיות, שלבי ההתקנה והשקופיות מהסרטון הזה (להורדה בחינם מהקהילה החינמית שלנו): portal.vcinc.ai ▶️ צפו בהמשך: סרטון בניית ה-REA שלי, זה שמתפוצץ: youtu.be 🧰 צפו לפני זה, חלק 1: 6 מאגרי Claude Code ב-GitHub שאני משתמש בהם כל יום: youtu.be 🛡️ לפני שאתם מתקינים כל מאגרי מידע, צפו בזה: youtu.be 🤖 הצטרפו לסדנת Claude Code שלנו כאן: go.vcinc.ai 🔧 8 המאגרים (מככבים ב-GitHub, 20 באוקטובר 2026) 1. REA, הנדסה לאחור של כל דבר (343 אלף+ כוכבים, MIT; המאגר הרשמי היחיד): morluto/rea סרטון הבנייה שלי של REA: youtu.be 2. ArtCraft, 13 אפליקציות יצירה חינמיות (Apache 2.0): storytold/artcraft · getartcraft.com 3. HyperFrames מאת HeyGen, הפצה לפורמט MP4 (Apache 2.0): heygen-com/hyperframes 4. VoiceStudio, שיבוט קולי חינמי (AGPL-3.0; קול ברירת המחדל לשימוש אישי בלבד): debpalash/VoiceStudio 5. Jev מאת TypeSafe (בתשלום, זול מאוד): typesafe.ai · סרטון Jev שלי: youtu.be ליה, אלטרנטיבה חינמית (Apache 2.0): NandhaKishorM/laya 6. Buzz by Block (Apache 2.0, אירוח עצמי): block/buzz · הגדרת Buzz שלי: youtu.be 7. שיידרים, הזזת רקעים לאתרים (MIT): shader-effects-inc/shaders 8. מבט לאחור, זיכרון לטווח ארוך עבור הבינה המלאכותית שלכם (MIT): vectorize-io/hindsight ⚠️ הערות כנות • פופולרי לא אומר בטוח. בקשו מקלוד קוד או קודקס לבדוק כל מאגר לפני שאתם מתקינים אותו (הנחיה בהורדה החינמית). • נבדק במחשב האישי שלי או על ידי הצוות שלי: REA, ArtCraft (PdfCraft עבר את הבדיקה שלי ב-11 באוקטובר, על גרסה ישנה יותר; השאר הן גרסאות מוקדמות), HyperFrames, VoiceStudio, Jev, Laya, Shaders. באזז: התקנתי אותו באוגוסט, לא נבדקתי שוב עבור סרטון זה. מבט לאחור: לא נבדק. • REA בונה מחדש את אופן הפעולה של אפליקציה, לא את קוד המקור המקורי שלה. למדו רק אפליקציות שבבעלותכם, אפליקציות קוד פתוח, או אפליקציות שאתם עשויים ללמוד. • הקול המוגדר כברירת מחדל של VoiceStudio מורשה לשימוש אישי בלבד. לעסקים, שכפלו את הקול שלכם או השתמשו בקול מורשה. ⏱️ פרקים 0:00 8 מאגרי GitHub ויראליים, פסק דין כנה על כל אחד מהם 0:10 סרוק כל מאגרי לפני התקנתם 0:57 4 הבדיקות: אמיתי, שימוש עסקי, ריצות, עלות אמיתית 1:07 #1 REA: בנה גרסה משלך לכל תכונה 3:16 בקשת התקנה בטוחה של REA 3:39 #2 ArtCraft: 13 אפליקציות יצירתיות חינמיות 5:11 חתום על חבילת חוזה עם PdfCraft 5:33 #3 HyperFrames: תאר סרטון, קבל MP4 7:24 #4 VoiceStudio: שיבוט קולי חינמי (והמלכוד) 8:44 #5 Jev נגד Laya: החלטות AI מהירות, בתשלום וחינמיות 11:13 #6 Buzz: Slack שבו סוכני AI הם חברים 12:52 #7 Shaders: רקעים נעים לאתר שלך 14:20 #8 מבט לאחור: זיכרון לטווח ארוך עבור ה-AI שלך 15:43 5 מאגרי ויראליים שהייתי דלג 17:29 הסיכום: איזה מהם להשתמש היום #GitHub #ClaudeCode #OpenSource 📣 הצטרפו לקהילת Skool החינמית שלנו עבור HighLevel, Claude, n8n, AI ואוטומציה. skool.com 🎓 GoHighLevel Masterclass + תבניות Plug-and-Play. הירשמו עכשיו udemy.com 🚀 מאסטרטגיה ועד פריסה, אנו בונים את הטכנולוגיה שמניעה צמיחה ניתנת להרחבה rapidactivemarketing.com 🔥 גנבו את האסטרטגיות הטובות ביותר שלי substack.com 🛠️ רוצים מערכת HighLevel מוכנה מראש או צריכים כוח אדם עבור ה-SaaS שלכם? תנו לצוות שלנו לעשות את העבודה הקשה בשבילכם → arcytex.com 📩 קבלו את הניוזלטר השבועי שלנו - טיפים ל-GHL, בינה מלאכותית, טכנולוגיה וצמיחה live.automatedmarketer.net 💡 בלוג שבועי - כלים, טיפים, אסטרטגיות automatedmarketer.net #nunotavares #nunomtavares #automatedmarketer #gohighlevel #gohighlevelexpert #AI #techupdates 🧠 כלים חובה שאנחנו משתמשים בהם ואוהבים 💲 HighLevel (כלי ראשי) live.automatedmarketer.net 😍 FGFunnels (למאמנים ויוצרים) fgfunnels.com 🥇 HLProTools (תוספים מובילים של צד שלישי) go.hlprotools.com 🧠 Lovable AI (בניית בוטים חכמים של AI) lovable.dev 📞 Wavv (שיחות משולשות, חסימת דואר זבל) קבלו 10% הנחה על החודש הראשון, הקפידו להזין את קוד הקופון בקופה: NEW-WUK2W חלק מהקישורים למעלה הם קישורי שותפים. ייתכן שאקבל

    242 likes · 9 comments · 17,506 views
  9. YouTube · · YouTube description · Eddwan Hallen

    15 projetos open source do GitHub que valem o seu tempo | Vol. 10 15 projetos open source do GitHub que valem o seu tempo, em contagem regressiva e com 10 segundos para cada um: de estúdio de vídeo para o seu agente de código a painel de hospedagem, GIS em Rust e uma faxina no Apple Intelligence do Mac. 📺 Décimo volume da série Open source do GitHub, o primeiro com 15 projetos. Escolhidos numa nova análise da lista inteira: estrelas, frequência de commits, último commit, README, documentação, capturas de tela e site, conferidos em 20/10/2026. Qual desses você vai testar primeiro? Conta nos comentários! ⏱️ CAPÍTULOS E LINKS 0:00 Abertura 0:10 #15 showtime: estúdio de vídeo local para o seu agente de código, sem nuvem FavioVazquez/showtime 0:20 #14 Worklenz: gestão de projetos open source com lista, quadro e Gantt, na nuvem ou no seu servidor (3,3 mil estrelas) Worklenz/worklenz 0:30 #13 Reminal: feche a tampa do Mac e use as janelas, os desktops e os terminais dele em qualquer navegador harshalgajjar/Reminal 0:40 #12 M3E Canvas: desenhe telas Material 3 Expressive no navegador e copie um prompt para a sua IA de código (9,5 mil estrelas) lnkiai/m3e-canvas 0:50 #11 TapMap: mapa em tempo real de para onde o seu computador se conecta, local e sem telemetria (1,6 mil estrelas) olalie/tapmap 1:00 #10 Reitti: linha do tempo da sua localização no seu servidor, com compartilhamento ao vivo (2,7 mil estrelas) dedicatedcode/reitti 1:10 #9 Television: buscador fuzzy rapidíssimo para o terminal (6,4 mil estrelas) alexpasmantier/television 1:20 #8 RustGIS: GIS gratuito em Rust, no Windows, macOS, Linux e no navegador (1,7 mil estrelas) opengeos/RustGIS 1:30 #7 Langfuse: observabilidade, prompts e avaliações para aplicações de IA, com self-host (36,1 mil estrelas) langfuse/langfuse 1:40 #6 Hindsight: memória para agentes de IA que aprendem com o tempo (51,7 mil estrelas) vectorize-io/hindsight 1:50 #5 MailCheap: newsletter self-hosted em que você paga pelos e-mails enviados, com MCP para o seu agente (1,3 mil estrelas) marclou/mailcheap 2:00 #4 Laranode: painel de hospedagem open source, alternativa ao cPanel e ao Plesk (1,5 mil estrelas) crivion/laranode 2:10 #3 OneCLI: um agente de IA isolado para cada pessoa da equipe, com cofre de credenciais e regras de acesso (3,6 mil estrelas) onecli/onecli 2:20 #2 Soup: fine-tuning de LLMs com um comando, até modelo de 8B em GPU de 4 GB (modo beta) (9,4 mil estrelas) MakazhanAlpamys/Soup 2:30 Oferecimento Hallen Tech 2:44 #1 RemoveMacAI: desliga o Apple Intelligence, apaga os modelos e corta anúncios e coleta de dados do macOS, tudo reversível (5 mil estrelas) omlahore/RemoveMacAI 2:54 Encerramento 🧡 Oferecimento: Hallen Tech, liderança de tecnologia sob demanda, software, cloud e segurança para a sua empresa. Site: hallentech.com E-mail: contato@hallentech.com Instagram: instagram.com LinkedIn da Hallen Tech: linkedin.com LinkedIn do Eddwan: linkedin.com Se curtiu, deixa o like, segue o canal e ativa as notificações para a próxima lista. #opensource #github #programacao #ferramentas

    623 likes · 4 comments · 26,128 views
  10. DEV · · @rosgluk

    Hindsight for Hermes Agent: Self-Hosted Memory with Local LLMs A self-hosted AI agent needs more than a long context window. It needs a way to retain useful facts, retrieve earlier decisions, and revise what it thinks it knows as projects evolve. <!--more--> Hermes Agent ships with built-in memory files, but an external provider can provide much richer retrieval across sessions. Hindsight is one of the more interesting options in that space. This guide installs it for Hermes with no cloud inference, first as an all-in-one Docker container and then against an existing PostgreSQL server with separate local model endpoints. The guide covers deployment, choosing and wiring local embedding, reranking, and generative models, controlling what auto-retain writes into the bank, connecting Hermes, and the operational layer: backup, migration, and day-to-day bank hygiene. The examples use a deliberate port scheme — 8080 for the main llama.cpp server, 8081 for embeddings, 8082 for reranking, 11434 for Ollama — so change them to the ports you already use and keep the small servers off the main model's port. What Hindsight Does Hindsight is a persistent agent memory engine with three principal operations: retain, recall, and reflect. Retain extracts and stores information; recall combines semantic, keyword, graph, and temporal retrieval; reflect synthesizes an answer from accumulated memories. Background consolidation can turn overlapping observations into a more useful knowledge layer. It is not just an embeddings database. A vector store can locate similar passages, but a memory system also has to preserve chronology, project boundaries, contradictory evidence, and changes in decisions. Those failure modes are explored in [self-reinforcing memory loops](glukhov.org "Agent memory can turn model inferences into future evidence. How those loops form, why they matter, and which write-path controls limit them."). For the wider market, see [agent memory providers compared](glukhov.org "Capture policy, dependencies, Hermes activation for ten memory backends"). Hermes' built-in MEMORY.md, USER.md, and memory modes are covered in the [Hermes Agent memory system](glukhov.org "A deep technical guide to Hermes Agent's memory architecture — from bounded 2-file core memory to pluggable external providers.") guide, so this article assumes you know how the built-in layer works. Why Move Beyond Mnemosyne [Mnemosyne for Hermes](glukhov.org "Install Mnemosyne as a local Hermes memory provider, configure recall and retention, and inspect the SQLite store.") offers appealing local-first ideas, including SQLite storage and hybrid retrieval. In practice, installation constraints, version compatibility, write-approval behaviour, and rapid changes around its 4.0 prereleases can make it difficult to operate predictably. Those are operational concerns, not evidence that Mnemosyne's memory model is fundamentally flawed. Hindsight is not dependency-free either: its Docker image and local models can consume substantial disk space. Running its API as an independent service, with inference elsewhere, keeps upgrades and troubleshooting isolated from the agent itself. Choose a Deployment | Component | A: All-in-one container | B: Existing PostgreSQL server | |---|---|---| | Hindsight API and UI | Docker container | Docker container | | PostgreSQL | Embedded pg0 in container | Existing PostgreSQL machine | | Generative LLM | External llama.cpp | External llama.cpp | | Embeddings | Default local or external | External Ollama or llama.cpp | | Reranking | Default local or external | External rerank server | | Best for | Quick evaluation | Long-running, isolated installation | Here, "all-in-one" means the Hindsight API, UI, and database are in one container; the inference LLM is still hosted elsewhere. This is intentional: Docker's official Hindsight image does not bundle a ready-to-use local generative llama.cpp server. flowchart LR H[Hermes Agent] -->|Memory API| A[Hindsight API] A --> P[(PostgreSQL)] A --> E[Embedding endpoint] A --> R[Reranking endpoint] A --> L[Generative LLM endpoint] Use LAN-reachable addresses, not localhost, for services running on a different host. Restrict these ports to trusted clients; the example dummy keys are compatibility placeholders, not authentication. Option A: All-in-One Hindsight Container This is the simplest way to evaluate Hindsight without filling the Hermes VM with Python, Torch, and local model dependencies. The container runs Hindsight and embedded PostgreSQL, while your main llama.cpp LLM handles memory extraction and reflection. Two image tags matter here. ghcr.io/vectorize-io/hindsight:latest is the large image — roughly 9 GB on AMD64 — because it bundles a BGE embedder, a MiniLM reranker, and embedded PostgreSQL. latest-slim is roughly 500 MB and expects those two models to live elsewhere, which is what you want once you point Hindsight at the embedding and reranking setup in Serve and Wire Local Models. Once the health check passes, pin a specific tag: a moving tag is a poor match for a database you intend to keep. Create a directory and a Compose file on the Hindsight host: mkdir -p ~/services/hindsight cd ~/services/hindsight cat > compose.yaml <<'YAML' services: hindsight: image: ghcr.io/vectorize-io/hindsight:latest container_name: hindsight restart: unless-stopped shm_size: 1gb extra_hosts: - "host.docker.internal:host-gateway" ports: - "8888:8888" # Memory API - "9999:9999" # Control-plane UI environment: HINDSIGHT_API_WORKER_ID: hindsight-standalone HINDSIGHT_API_LLM_PROVIDER: openai HINDSIGHT_API_LLM_BASE_URL: http://WORKSTATION_IP:8080/v1 HINDSIGHT_API_LLM_MODEL: LocalMegaLLM HINDSIGHT_API_LLM_API_KEY: dummy HINDSIGHT_API_LLM_MAX_CONCURRENT: "2" volumes: - hindsight-pg0:/home/hindsight/.pg0 volumes: hindsight-pg0: YAML Replace WORKSTATION_IP with the host running llama.cpp. On Linux, host.docker.internal resolves only if the container declares the host-gateway mapping shown above; without it, a base URL of http://host.docker.internal:8080/v1 points nowhere. The 1 GB shared-memory reservation is particularly useful for embedded PostgreSQL indexing; Docker's small default /dev/shm can cause failures. A named volume preserves the database when the container is recreated, and a bind mount alternative has to be owned by uid 1000, the user inside the image. HINDSIGHT_API_WORKER_ID should stay stable across recreations — Docker's default is the container hostname, and a task that was mid-flight when a container died stays stuck under the old worker id. docker compose up -d docker compose logs -f --tail=100 curl -f http://localhost:8888/health If your installed Hindsight version exposes health at a different path, inspect http://localhost:8888/docs and the container logs. The control plane is normally available at http://HINDSIGHT_HOST:9999. Once the basic deployment works, you can also point its embedding and reranking providers at the configuration in Serve and Wire Local Models rather than loading the default models inside the container. Do not expose ports 8888 or 9999 directly to the internet. Use a private network or an authenticated reverse proxy. Embedded PostgreSQL is convenient for testing, but an externally managed database is easier to back up and maintain. Option B: Hindsight Against an Existing PostgreSQL Server For a long-running installation, I prefer keeping the Hindsight API, database, and inference endpoints separate. The Hindsight VM can remain small because it runs orchestration and HTTP services rather than heavy models. flowchart LR H[Hermes VM] -->|port 8888| A[Hindsight VM] A -->|port 5432| P[(PostgreSQL host)] A -->|port 8080| L[Generative LLM] A -->|port 8081 or 11434| E[Embedding endpoint] A -->|port 8082| R[Reranking endpoint] Prepare PostgreSQL and pgvector Hindsight needs PostgreSQL 14 or newer and a vector extension in the hindsight database. The extension is per database: installing the package on the server does nothing until CREATE EXTENSION runs there. On a Debian or Ubuntu PostgreSQL server, install the pgvector package matching the actual PostgreSQL major version; for example, on PostgreSQL 16: sudo apt update sudo apt install postgresql-16-pgvector The package name and availability depend on your configured apt repositories. If it is not available, follow the pgvector installation instructions, or install a compatible package from the PostgreSQL PGDG repository. Do not blindly change the PostgreSQL major version on a shared server. Create a dedicated role and database as a PostgreSQL administrator: CREATE ROLE hindsight LOGIN PASSWORD 'REPLACE_WITH_LONG_PASSWORD'; CREATE DATABASE hindsight OWNER hindsight; Connect to the new database and enable the extension: sudo -u postgres psql -d hindsight -c \ 'CREATE EXTENSION IF NOT EXISTS vector;' sudo -u postgres psql -d hindsight -c \ "SELECT extname, extversion FROM pg_extension WHERE extname = 'vector';" The extension normally needs elevated privileges to install; the application role does not need to be a superuser. Hindsight uses pgvector by default and wants 0.8.0 or newer for iterative ANN scans; older servers reject that setting. HINDSIGHT_API_VECTOR_EXTENSION can alternatively select pgvectorscale (a DiskANN option Hindsight documents for very large banks) or vchord, both of which need extra packaging on this exact PostgreSQL build. Switching algorithms after memories exist stops startup and asks for a migration, so choose before the first retain. For a personal Hermes bank, pgvector is the one to install and then stop. Allow only the Hindsight host through pg_hba.conf, for example: host hindsight hindsight 192.168.1.50/32 scram-sha-256 Set PostgreSQL listen_addresses appropriately and use TLS or a trusted private network for cross-host connections. Back up this database independently of the Hindsight Docker container. If the server is shared with other applications, keep Hindsight in its own database, or set HINDSIGHT_API_DATABASE_SCHEMA to a schema you own; the default schema is public. Run Hindsight Against PostgreSQL Create compose.yaml on the Hindsight VM. This version deliberately does not start PostgreSQL locally: services: hindsight: image: ghcr.io/vectorize-io/hindsight:latest-slim restart: unless-stopped ports: - "8888:8888" - "9999:9999" env_file: .env environment: HINDSIGHT_API_LLM_PROVIDER: openai HINDSIGHT_API_LLM_BASE_URL: http://WORKSTATION_IP:8080/v1 HINDSIGHT_API_LLM_MODEL: LocalMegaLLM HINDSIGHT_API_LLM_API_KEY: dummy HINDSIGHT_API_LLM_MAX_CONCURRENT: "2" HINDSIGHT_API_DB_POOL_MIN_SIZE: "2" HINDSIGHT_API_DB_POOL_MAX_SIZE: "10" HINDSIGHT_API_WORKER_ID: hindsight-standalone Store the external database URL in a file called .env: HINDSIGHT_API_DATABASE_URL=postgresql://hindsight:YOUR_PASSWORD@POSTGRES_IP:5432/hindsight chmod 600 .env docker compose up -d docker compose logs -f --tail=100 If your password contains @, :, /, or other reserved URL characters, URL-encode it before putting it in the connection string. Test that the Hindsight VM can reach PostgreSQL port 5432, and that pg_hba.conf allows the Hindsight host — a server bound only to 127.0.0.1 refuses the connection even when the URL looks right. Allow the first startup to run database migrations; migrations run on startup unless you set HINDSIGHT_API_RUN_MIGRATIONS_ON_STARTUP=false. With the API and database up, continue with [Choose Models for Hindsight](#choose-models-for-hindsight) and [Serve and Wire Local Models](#serve-and-wire-local-models) before connecting Hermes. Choose Models for Hindsight Deploy puts the API and database on the network. The next decision is which models fill the three inference roles: embeddings for recall candidates, a reranker to re-order them, and a generative LLM for retain, reflect, and consolidation. A practical default for a CPU Hindsight host whose GPU is already busy with conversation is in-process Qwen/Qwen3-Embedding-0.6B, in-process BAAI/bge-reranker-v2-m3, and a shared llama.cpp chat model for generative work. Embedding models Hindsight reads the embedding dimension on startup and sizes the bank to match, so the model you pick at first retain is the model the bank keeps until you rebuild it. Dimensionality and instruction behaviour matter more than leaderboard rank: a stronger 8B embedder is not worth a migration if the bank is already a 384- or 1024-dimensional one. Rows below are sorted from lightest to heaviest; RAM figures are approximate loaded footprint on CPU (FP16 / typical local load), not GGUF file size. | Model | Params | Dim | Context | Loaded | Runs on | Notes | |---|---|---|---|---|---|---| | BAAI/bge-small-en-v1.5 | 33M | 384 | 512 | ~100–130 MB | CPU | Hindsight default; ships in hindsight:latest. Fastest local path. Score distribution still calibrates many recall_min_scores defaults after you leave it. | | BAAI/bge-base-en-v1.5 | 109M | 768 | 512 | ~400 MB | CPU | Mid-tier English BGE; locks a 768-dim bank. | | sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 | ~118M | 384 | 512 | ~200 MB | CPU | Hindsight-documented multilingual MiniLM; 50+ languages at the same 384-dim bank width as BGE-small. | | intfloat/multilingual-e5-small | ~118M | 384 | 512 | ~200 MB | CPU | Default for the onnx provider; light multilingual CPU path when you have an ONNX export. | | nomic-ai/nomic-embed-text-v1.5 | ~137M | 768 | 8k | ~500 MB | CPU | Common Ollama embedder; longer context than classic BGE, still English-first. | | google/embeddinggemma-2 | 270M | 768 | 8k | ~540 MB | CPU | EmbeddingGemma 2 text-only (disable vision/audio towers). 100+ languages + code; MRL truncates to 512/256/128; instruction prefixes for search vs document. Full multimodal load is 740M. | | BAAI/bge-m3 | 568M | 1024 | 8k | ~1.1 GB | CPU or GPU | Strong multilingual dual-encoder; same width as Qwen3-0.6B, so a same-dim swap still needs a full re-embed. | | Qwen/Qwen3-Embedding-0.6B | 0.6B | 1024 | 32k | ~1.2 GB | CPU | This guide's default. Instruction-aware (search instruction on the query side); comfortable on CPU. Local provider auto-applies the instruction; OpenAI-compatible servers need HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX. | | Qwen/Qwen3-Embedding-4B | 4B | 2560 | 32k | ~8 GB FP16 / ~2.5 GB quant | GPU | Qwen3 quality tier; locks a 2560-dim bank. Not viable when the conversational GPU is already saturated. | How the model is run is the other half of the choice. Hindsight's embedding providers, from simplest to most moving parts: | Provider | How it runs | Best when | Notes | |---|---|---|---| | local | In-process SentenceTransformers; no sidecar | Single Hindsight host, CPU embedder | Default path. Set HINDSIGHT_API_EMBEDDINGS_LOCAL_MODEL. No llama.cpp, Ollama, or TEI. | | onnx | In-process ONNX Runtime | Lighter CPU than Torch; you already have an ONNX export | Needs hindsight-api-slim[local-onnx] and HINDSIGHT_API_EMBEDDINGS_ONNX_*. | | openai / tei | External OpenAI-compatible or HF TEI endpoint | Embeddings off the API process; shared GPU/CPU host | What Serve and Wire Local Models configures for Ollama / llama.cpp / TEI. Only worth the sidecar if you want isolation or a different machine. | Qwen3-Embedding-0.6B does not need an external embeddings service. On a CPU Hindsight host it loads inside the API process with the local provider — Hugging Face downloads the weights on first start, and the provider applies the model's search instruction itself: # Compose environment (or equivalent .env keys) HINDSIGHT_API_EMBEDDINGS_PROVIDER: local HINDSIGHT_API_EMBEDDINGS_LOCAL_MODEL: Qwen/Qwen3-Embedding-0.6B Use an external OpenAI-compatible endpoint only when you want the embedder on another machine or off the API process. Ollama is one such host: # Embeddings: Qwen3-Embedding-0.6B on Ollama HINDSIGHT_API_EMBEDDINGS_PROVIDER: openai HINDSIGHT_API_EMBEDDINGS_OPENAI_BASE_URL: http://192.168.1.123:11434/v1 HINDSIGHT_API_EMBEDDINGS_OPENAI_MODEL: qwen3-embedding:0.6b-q8_0 HINDSIGHT_API_EMBEDDINGS_OPENAI_API_KEY: dummy Replace the host, port, and tag with whatever ollama list shows on your inference machine. HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX depends on the provider: | Path | HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX | HINDSIGHT_API_EMBEDDINGS_PASSAGE_PREFIX | |---|---|---| | local (Qwen/Qwen3-Embedding-0.6B) | Leave unset / empty — the in-process provider applies Qwen's search instruction itself | Leave unset / empty | | External Ollama / llama.cpp / OpenAI-compatible | Official Qwen3 retrieval instruction (real newline before Query:) | Leave empty — stored memories stay raw text | | Server already wraps inputs in Qwen's template | Leave both empty — otherwise the instruction is applied twice | Leave empty | For the external path, set: # Real newline before Query:. Bash $'...' is the reliable way to pass it. HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX=$'Instruct: Given a web search query, retrieve relevant passages that answer the query\nQuery:' HINDSIGHT_API_EMBEDDINGS_PASSAGE_PREFIX= In Compose YAML the same string needs an explicit \n (or a literal multiline value). Set the prefixes before the first retain: changing them later means old vectors and new queries no longer sit in the same space. Two properties decide more than the leaderboard position. Instruction sensitivity: Qwen3 embeddings apply a search instruction on the query side; without the matching prefix on an OpenAI-compatible server, the stored side and the query side stop sitting in the same space. Dimension lock: because the width is read once at startup, moving from 0.6B to 4B later is a bank migration, not a config change — and even a same-dimension swap (BGE-M3 ↔ Qwen3-0.6B, or EmbeddingGemma 2 ↔ nomic at 768) changes the vector space, so bank vectors are not recomputed automatically. Plan a fresh bank or a manual re-embed/reindex; see [Export, import, and migrating the memory bank](#export-import-and-migrating-the-memory-bank). After leaving BGE-small, probe recall_min_scores against the new score distribution — thresholds calibrated on BGE-small can be too tight for Qwen3-0.6B and starve the reranker of candidates. For benchmarks and GGUF/Ollama background on the Qwen3 family, see [Qwen3 Embedding and Reranker models on Ollama](glukhov.org "Qwen3-Embedding and Qwen3-Reranker served through Ollama and llama.cpp, with benchmarks and serving tips."). Reranking models Embeddings recall a candidate set; the reranker scores each query/passage pair and re-orders it before Hindsight injects it. With the local provider, Hindsight loads a SentenceTransformers cross-encoder (or a generative reranker where supported). With an external Cohere-compatible endpoint, it posts the full Cohere-style body to HINDSIGHT_API_RERANKER_COHERE_BASE_URL. The reranker is optional, but once the embedder is fixed it is usually the largest recall-quality lever — and, on CPU, often most of the recall wall-clock. Rows are sorted from lightest to heaviest. | Model | Params | Type | Context | Runs on | Notes | |---|---|---|---|---|---| | cross-encoder/ms-marco-MiniLM-L-6-v2 | 23M | Cross-encoder | 128 | CPU | Hindsight default; ships in hindsight:latest. Sub-second for ~20 candidates. Keep as named fallback if a heavier BGE model is too slow. | | cross-encoder/ms-marco-MiniLM-L-12-v2 | ~33M | Cross-encoder | 512 | CPU | Same family, higher accuracy; still English-leaning MS MARCO. | | cross-encoder/mmarco-mMiniLMv2-L12-H384-v1 | ~33M | Cross-encoder | 512 | CPU | Hindsight-documented multilingual MiniLM reranker. | | BAAI/bge-reranker-base | 278M | Cross-encoder | 512 | CPU | Moderate upgrade over MiniLM; en/zh. Discussed often; skipped when v2-m3 already fits the latency budget. | | BAAI/bge-reranker-v2-m3 | 568M | Cross-encoder | 8k | CPU or GPU | Practical multilingual default on CPU. On a ~500-memory bank, ~2.6–2.8 s per recall at a 20-candidate floor (~140 ms/candidate; ~93–99% of recall time). Candidate caps 20/40/80; lowering the floor from 20 → 10 roughly halves rerank cost. | | Qwen/Qwen3-Reranker-0.6B | 0.6B | Generative (yes-token) | 32k | GPU preferred | Instruction-aware, long context. Not a drop-in cross-encoder: needs recent SentenceTransformers generative-reranker support, and llama.cpp /rerank scoring has known wrong-score bugs (hindsight-benchmarks#11). Validate before adopting. | | BAAI/bge-reranker-v2-gemma | 2.5B | Cross-encoder | 8k | GPU preferred | Strong multilingual quality; excessive for a few-hundred-memory personal bank when the GPU is already full. | | Qwen/Qwen3-Reranker-4B | 4B | Generative | 32k | GPU | Higher-quality Qwen candidate; not viable without dedicated VRAM. | | Qwen/Qwen3-Reranker-8B | 8B | Generative | 32k | GPU | Family top tier; same generative-scoring caveats, larger still. | Cloud API rerankers (Cohere, ZeroEntropy, Alibaba qwen3-rerank, TypeSafe, and similar) work in Hindsight but send memory text off-box. For a local-only cross-domain layout they are out of scope. Two operational constraints dominate the pick. VRAM: if the conversational model already saturates the GPU (for example a Qwen3.8-27B Q5 on a 16 GB card with no headroom), every "GPU preferred" row is off the table and the live choice collapses to MiniLM or BGE-v2-m3 on CPU. Candidate count: HINDSIGHT_API_RERANKER_MAX_CANDIDATES (30 in the external-endpoint example below) bounds how many passages the model re-scores; each candidate is a full forward pass, so cut the floor before you jump a model tier. For Qwen3 via llama.cpp, the GGUF must keep the ranking head — an old convert_hf_to_gguf.py that drops it scores every passage near zero — and even a correct conversion still needs a known-good/known-bad passage test until the generative scoring path is confirmed. Generative LLM tiers Embedding and reranking models are not substitutes for the generative LLM used to extract and reason over memories. Hindsight supports a default LLM and operation-specific overrides, which can target the same llama.cpp server or independent endpoints. | Hindsight operation | Purpose | Practical model tier | Qwen examples | |---|---|---|---| | Retain | Extract facts, entities, decisions, and chronology | 4B minimum for tests; 9B preferred | Qwen3.5-4B / Qwen3.5-9B | | Recall | Semantic, keyword, graph and temporal retrieval | No generative LLM required | Qwen3-Embedding-0.6B + reranker | | Reflect | Answer questions by synthesizing retrieved memories | 9B to 27B+ | Qwen3.5-9B / Qwen3.8-27B | | Consolidation | Reconcile and compress related facts | 9B preferred | Qwen3.5-9B / Qwen3.8-27B | | Mental model refresh | Update longer-lived synthesized understanding | 9B to 35B | Qwen3.5-9B / Qwen3.6-35B-A3B | These are operational recommendations, not official Hindsight minimum parameter counts. A small model may extract a port number correctly but miss that an earlier architectural decision has been superseded. Structured-output reliability and faithful handling of negation matter more than nominal parameter count alone. Hindsight's own temperature defaults are worth leaving alone — 0.1 for retain, 0.0 for consolidation, 0.9 for reflect — and for retain and consolidation, the non-thinking alias is worth serving if your llama.cpp build has one, because the small Qwen3.5 checkpoints spend many tokens in thinking mode. For a deployment with an existing Qwen3.8-27B llama.cpp endpoint, start by sharing it across generative Hindsight tasks with low concurrency: HINDSIGHT_API_LLM_PROVIDER=openai HINDSIGHT_API_LLM_BASE_URL=http://WORKSTATION_IP:8080/v1 HINDSIGHT_API_LLM_MODEL=LocalMegaLLM HINDSIGHT_API_LLM_API_KEY=dummy HINDSIGHT_API_LLM_MAX_CONCURRENT=2 HINDSIGHT_API_RETAIN_LLM_MAX_CONCURRENT=1 HINDSIGHT_API_CONSOLIDATION_LLM_MAX_CONCURRENT=1 Later, route routine extraction to an independent 9B model and reserve the 27B for difficult reflection: HINDSIGHT_API_RETAIN_LLM_PROVIDER=openai HINDSIGHT_API_RETAIN_LLM_BASE_URL=http://MEMORY_LLM_HOST:8083/v1 HINDSIGHT_API_RETAIN_LLM_MODEL=MemoryLLM HINDSIGHT_API_RETAIN_LLM_API_KEY=dummy HINDSIGHT_API_REFLECT_LLM_PROVIDER=openai HINDSIGHT_API_REFLECT_LLM_BASE_URL=http://WORKSTATION_IP:8080/v1 HINDSIGHT_API_REFLECT_LLM_MODEL=LocalMegaLLM HINDSIGHT_API_REFLECT_LLM_API_KEY=dummy The smaller 4B model is economical but needs testing; 9B is a sensible quality/performance compromise. If retain and consolidation share a small model, lower HINDSIGHT_API_CONSOLIDATION_LLM_BATCH_SIZE to 2 — the default batch of 8 is a long prompt for a small context window. Qwen3.6-35B-A3B is attractive for a separate well-provisioned inference server (it is a mixture-of-experts model with about 3 billion active parameters, so budget it as a small active model), while a 27B dense model is usually unnecessary for every routine retain event. Limiting background concurrency protects the Hermes conversational model from memory-maintenance bursts. Serve and Wire Local Models If the in-process local embedding and reranker settings in Choose Models are enough, you can skip the external Ollama and llama.cpp subsections and jump to wiring — or leave Compose on the local defaults shown there. External endpoints matter when the embedder or reranker should live on another host. External embeddings: Ollama or llama.cpp External embeddings are for when you want Qwen3-Embedding-0.6B (or another model) on a separate host. Two practical options are Ollama, which handles model acquisition and serving with little configuration, and llama.cpp, which gives precise control over GGUF quantization, CPU threads, device placement, and batching. Model background and benchmarks for both Qwen3 models are in [Qwen3 Embedding and Reranker models on Ollama](glukhov.org "Qwen3-Embedding and Qwen3-Reranker served through Ollama and llama.cpp, with benchmarks and serving tips."). Qwen3-Embedding-0.6B returns 1024-dimensional vectors, and Hindsight reads that width on startup and sizes the database to match. A bank created with the bundled 384-dimensional BGE model cannot take this model — start from an empty database or volume, and decide the embedding model before the first retain. An embeddings provider switch later requires re-embedding stored records even if both models use the same dimensionality. Option 1: Ollama for Qwen3-Embedding-0.6B Install Ollama on the inference host using its official Linux installation documentation, then start the embedding model: ollama pull qwen3-embedding:0.6b ollama serve For remote access, configure Ollama's OLLAMA_HOST=0.0.0.0:11434 in its service environment, restart the service, and firewall it to the Hindsight VM — the procedure is covered in [Ollama remote access](glukhov.org "Expose Ollama to your LAN safely: OLLAMA_HOST, systemd overrides, reverse proxy, and firewall rules."). A daemon bound only to 127.0.0.1 is invisible to the Hindsight container. First check the model name with ollama list, and test the standard embedding endpoint: curl http://EMBED_HOST:11434/api/embed \ -H 'Content-Type: application/json' \ -d '{"model":"qwen3-embedding:0.6b","input":"A test memory"}' Hindsight's OpenAI embeddings provider instead calls Ollama's OpenAI-compatible /v1/embeddings endpoint. Verify that endpoint works with your Ollama version before configuring Hindsight. Ollama is straightforward for embeddings; do not assume its API offers a compatible reranking endpoint. For reranking, prefer the in-process local BGE path below, or a separate llama.cpp / TEI endpoint after you have validated scores. Option 2: llama.cpp for Qwen3-Embedding-0.6B Download a verified Qwen3-Embedding-0.6B GGUF conversion. Use the GGUF filename you actually downloaded: #!/bin/sh # start-embedding.sh - CPU-only embedding server set -eu cd "$HOME/prj" exec ./llama.cpp/llama-server \ --host 0.0.0.0 --port 8081 \ --model "$HOME/ggufs/Qwen3-Embedding-0.6B-Q8_0.gguf" \ --alias qwen3-embedding-0.6b \ --embedding --pooling last \ --ctx-size 4096 --parallel 1 \ --threads 4 --threads-batch 4 \ --batch-size 512 --ubatch-size 256 \ --n-gpu-layers 0 Qwen3 embeddings use last-token pooling, unlike the CLS pooling used by some BGE models. A CPU-only llama.cpp build is preferable if you want absolutely no CUDA initialization on a workstation whose GPU is occupied by a large conversational model. Do not enable --reranking on this embedding server: that combination is a known way to get a vector of zeros. curl -s http://EMBED_HOST:8081/v1/embeddings \ -H 'Content-Type: application/json' \ -d '{"model":"qwen3-embedding-0.6b","input":"A test memory"}' \ | jq '.data[0].embedding | length' A full-dimension Qwen3-Embedding-0.6B output should contain 1024 floats. Check that the GGUF conversion and your Hindsight query/document instruction handling are compatible; instruction-sensitive embedding models can lose accuracy when prompted incorrectly. Reranker: local BGE or Qwen3 via llama.cpp Reranking is different from embeddings: the model scores each query/document pair and returns a relevance score. On a CPU-only Hindsight host — or whenever the conversational GPU has no VRAM headroom — the practical path is Hindsight's local provider with BAAI/bge-reranker-v2-m3 (or the lighter MiniLM default). No sidecar is required: HINDSIGHT_API_RERANKER_PROVIDER=local HINDSIGHT_API_RERANKER_LOCAL_MODEL=BAAI/bge-reranker-v2-m3 HINDSIGHT_API_RERANKER_MAX_CANDIDATES=20 Qwen3-Reranker-0.6B is a generative yes-token scorer, not a classic cross-encoder. It can be served through llama.cpp with a GGUF conversion designed for ranking, but treat that path as experimental until you confirm scores on a known-good/known-bad pair: an old convert_hf_to_gguf.py that drops the ranking head scores every passage near zero, and llama.cpp's native /rerank path has known wrong-score reports for this family. #!/bin/sh # start-reranker.sh - GPU or CPU as selected by --n-gpu-layers set -eu cd "$HOME/prj" exec ./llama.cpp/llama-server \ --host 0.0.0.0 --port 8082 \ --model "$HOME/ggufs/Qwen3-Reranker-0.6B-Q8_0.gguf" \ --alias qwen3-reranker-0.6b \ --embedding --reranking --pooling rank \ --ctx-size 4096 --parallel 1 \ --batch-size 512 --ubatch-size 256 \ --n-gpu-layers 99 Set --n-gpu-layers 0 to run it on CPU. The GPU version needs additional VRAM for compute buffers and context, not just model weights; avoid assuming that the file size is the total GPU allocation. curl -s http://RERANK_HOST:8082/v1/rerank \ -H 'Content-Type: application/json' \ -d '{"model":"qwen3-reranker-0.6b", "query":"PostgreSQL storage", "documents":["Hindsight stores memories in PostgreSQL.","A recipe for bread."], "top_n":2}' \ | jq The PostgreSQL document should rank above the unrelated document; all-zero relevance scores mean the GGUF is the wrong conversion, and recall will look random even when the facts are stored. Check the exact results[].index and results[].relevance_score shape: Hindsight expects a Cohere-compatible rerank response, and llama.cpp compatibility can vary across builds. Wire endpoints into Hindsight Add the following environment settings to the Hindsight Compose service, or store them in its .env file. Pick one embeddings path — in-process local, Ollama, or llama.cpp — never two at once. # Option A: in-process Qwen3 on the Hindsight host (CPU; no sidecar) HINDSIGHT_API_EMBEDDINGS_PROVIDER=local HINDSIGHT_API_EMBEDDINGS_LOCAL_MODEL=Qwen/Qwen3-Embedding-0.6B # Option B: llama.cpp embedding service # HINDSIGHT_API_EMBEDDINGS_PROVIDER=openai # HINDSIGHT_API_EMBEDDINGS_OPENAI_BASE_URL=http://EMBED_HOST:8081/v1 # HINDSIGHT_API_EMBEDDINGS_OPENAI_MODEL=qwen3-embedding-0.6b # HINDSIGHT_API_EMBEDDINGS_OPENAI_API_KEY=dummy # HINDSIGHT_API_EMBEDDINGS_OPENAI_BATCH_SIZE=8 # HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX=$'Instruct: Given a web search query, retrieve relevant passages that answer the query\nQuery:' # HINDSIGHT_API_EMBEDDINGS_PASSAGE_PREFIX= # Option C: Ollama on another host # HINDSIGHT_API_EMBEDDINGS_PROVIDER=openai # HINDSIGHT_API_EMBEDDINGS_OPENAI_BASE_URL=http://192.168.1.40:11434/v1 # HINDSIGHT_API_EMBEDDINGS_OPENAI_MODEL=qwen3-embedding:0.6b-q8_0 # HINDSIGHT_API_EMBEDDINGS_OPENAI_API_KEY=dummy # HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX=$'Instruct: Given a web search query, retrieve relevant passages that answer the query\nQuery:' # HINDSIGHT_API_EMBEDDINGS_PASSAGE_PREFIX= # Option: local BGE reranker (no sidecar; preferred on CPU) HINDSIGHT_API_RERANKER_PROVIDER=local HINDSIGHT_API_RERANKER_LOCAL_MODEL=BAAI/bge-reranker-v2-m3 HINDSIGHT_API_RERANKER_MAX_CANDIDATES=20 # Option: llama.cpp Cohere-compatible rerank endpoint (validate Qwen3 scores first) # HINDSIGHT_API_RERANKER_PROVIDER=cohere # HINDSIGHT_API_RERANKER_COHERE_BASE_URL=http://RERANK_HOST:8082/v1/rerank # HINDSIGHT_API_RERANKER_COHERE_MODEL=qwen3-reranker-0.6b # HINDSIGHT_API_RERANKER_COHERE_API_KEY=dummy # HINDSIGHT_API_RERANKER_MAX_CANDIDATES=30 The variable names are provider-specific, and a near-miss is silent: HINDSIGHT_API_EMBEDDINGS_BASE_URL is the wrong key, and Hindsight quietly aims at OpenAI's own embedding endpoint instead of your local server. Use HINDSIGHT_API_EMBEDDINGS_OPENAI_BASE_URL. With the Cohere-compatible reranker path, Hindsight posts the full Cohere-style body to HINDSIGHT_API_RERANKER_COHERE_BASE_URL; if the container log shows a 404 for /v1/rerank/rerank, your build appends /rerank on its own and the value should stop at /v1. For Options B and C, use the HINDSIGHT_API_EMBEDDINGS_QUERY_PREFIX value from [Embedding models](#embedding-models) (Option A leaves it unset). Test query-to-passage retrieval on your actual memories after the first retain. Control What Gets Remembered With the stack running, the next failure mode is usually the write path: Hermes defaults to auto_retain: true, so every conversation turn can be extracted into the bank. Incorrect guesses, discarded plans, and exploratory statements become searchable facts, and later recall treats them as evidence — the loop described in [self-reinforcing memory loops](glukhov.org "Agent memory can turn model inferences into future evidence. How those loops form, why they matter, and which write-path controls limit them."). Capture policy for Hindsight among other providers is summarized in [agent memory providers compared](glukhov.org "Capture policy, dependencies, Hermes activation for ten memory backends"). Capture modes that exist today | Mode | Hermes / Hindsight settings | What you get | |---|---|---| | Continuous | auto_retain: true, retain_every_n_turns: 1 | Every turn is retained and extracted | | Batched auto | auto_retain: true, raise retain_every_n_turns | Fewer, larger retain payloads — still automatic, not a review queue | | Explicit-only | auto_retain: false + tool hindsight_retain | Storage only when the agent calls the tool (for example after you say "remember this") | | Session synthesis | End-of-session hindsight_retain of a summary, or bank reflect / consolidation | A curated write if you or the agent discipline the call — not a built-in flush-for-approval | Setting auto_retain to false disables automatic storage. It does not add a human approval dialog before each write. The agent can still call hindsight_retain whenever its tools allow; treat explicit retain as deliberate capture, not a pending queue. The approval-queue gap A common wish is a pending queue of candidate memories that you review and approve before they enter the bank. Hindsight under Hermes does not provide that contract today. [Mnemosyne for Hermes](glukhov.org "Install Mnemosyne as a local Hermes memory provider, configure recall and retention, and inspect the SQLite store.") implements provider-specific staged writes in some versions; that path is not a shared Hermes standard and does not apply to the Hindsight plugin. Until an upstream approval flow exists, the workable pattern is auto_retain: false, deliberate hindsight_retain, and inspection or deletion in the Hindsight control-plane UI before the next session relies on a bad fact. There is no missing write_approval key for Hindsight to hunt for in config.json. Bank steering (missions, labels, directives, mental models) People often call the next layer "finetuning." In Hindsight it is mostly bank configuration, not Hermes config.json alone: missions and extraction settings steer what retain keeps; labels structure entities; directives and mental models shape later synthesis. | Control | Where it lives | How it helps | |---|---|---| | Retain mission (retain_mission / Hermes bank_retain_mission) | Bank config | Plain-language "pay attention to X, ignore Y" injected into extraction | | Extraction mode (concise, verbose, custom, …) | Bank config | concise (default) keeps long-term-worthy facts; custom replaces built-in rules via retain_custom_instructions | | Entity labels | Bank config | Controlled key:value vocabulary at retain time → graph links and optional tags; improves retrieval structure, does not by itself reject wrong statements | | Directives ("hard rules") | Bank directives API | Explicit instructions enforced during reflect (tag-scoped); constrain synthesis, not a write-approval gate | | Mental models | Bank mental-model API | Standing answers to recurring questions, refreshed via reflect from matching memories; derived, so bad source facts still poison them | | Reflect / observations mission | Bank config | Steers synthesis and consolidation, not the raw retain firehose | Missions, concise extraction, and labels reduce noise and improve retrieval. They do not replace turning off auto-retain when accuracy matters more than completeness. Prefer a short retain mission that names durable project decisions and ignores chat logistics; add entity labels only when you have a real taxonomy; add mental models for two or three recurring questions after the bank already holds clean facts. Recommended hygiene profile A concrete starting point for a personal Hermes bank: { "mode": "local_external", "api_url": "http://HINDSIGHT_VM_IP:8888", "bank_id": "hermes", "memory_mode": "hybrid", "auto_recall": true, "recall_sync": false, "auto_retain": false, "retain_async": true, "recall_prefetch_method": "recall" } On the bank, set a retain mission and leave extraction in concise mode (via the control plane or Banks API). After an explicit retain, open the UI, confirm the observation, and delete mistakes before consolidation or mental-model refresh runs. Leave recall_prefetch_method at recall — reflect spends a chat-model call before every turn and injects synthesis rather than underlying facts. Connect Hermes Agent to Hindsight On the Hermes VM, install the catalog plugin, then run the setup wizard. Select Hindsight and the local_external mode; the plugin does not need to start embedded PostgreSQL or run the Hindsight model stack locally, and local_embedded would start a second Hindsight daemon beside the container you just ran. hermes plugins install hindsight hermes memory setup hindsight There will be Interesting set of options of agent role using hindsight hermes memory status The external Hindsight connection lives in ~/.hermes/hindsight/config.json. An illustrative configuration that keeps continuous capture (Hermes defaults) is: { "mode": "local_external", "api_url": "http://HINDSIGHT_VM_IP:8888", "bank_id": "hermes", "memory_mode": "hybrid", "auto_recall": true, "recall_sync": false, "auto_retain": true, "retain_async": true, "retain_every_n_turns": 1 } For explicit-only retain and bank steering, use the hygiene profile in [Control What Gets Remembered](#control-what-gets-remembered) instead of leaving auto_retain on. recall_sync: false prioritizes interactive responsiveness but may inject recalled context on the following turn. Use synchronous recall when the current request must incorporate the latest memories before the model starts answering. retain_async: true avoids blocking ordinary responses while memories are processed. The plugin's recall default is observations only; raw world and experience facts stay in the bank and out of the prompt until consolidation has written an observation, or until you widen recall_types to observation,world,experience. Widening it for the first week and watching the control plane, then narrowing, is a reasonable order. Built-in Hermes memory stays active next to the provider; keeping MEMORY.md and USER.md on while you learn what Hindsight adds is fine, and the memory-system article is the place to decide whether the flat files should stay. Restart the gateway if it is already running: hermes gateway restart hermes memory status The status should identify Hindsight as the active provider. For a wider command reference, including Hermes' TUI and plugin commands, see the [Hermes Agent CLI cheatsheet](glukhov.org "Quick reference for Hermes Agent CLI — install, hermes chat, gateway, skills, memory, diagnostics, and slash commands."). Validate Memory, Not Just Installation Ask Hermes to remember a disposable fact about a test project, start another session, and ask for that fact again. Retention is asynchronous by default and extraction waits on the chat model, so give the main llama.cpp server a moment before judging. Then test a harder case: tell Hermes that an earlier decision has changed and ask which decision is current and why. Check Hindsight's UI and stored observations rather than assuming memory status proves ingestion and recall are correct. If the answer comes back empty, inspect the control plane before changing models. A retain can succeed and still be invisible to recall while recall_types is observations only and consolidation has not run — widening recall_types is the first check. A connection refused in the embedding server log means the container cannot reach the embedding port, and all-zero reranker scores mean the GGUF is the wrong conversion. Write-path choices (auto_retain, missions, approval gap) are covered in [Control What Gets Remembered](#control-what-gets-remembered). Troubleshooting and Operational Notes | Symptom | Likely cause | First check | |---|---|---| | Hermes says provider unavailable | Wrong local_external URL or network rule | curl http://HINDSIGHT_VM_IP:8888/health | | Docker starts, PostgreSQL errors | Missing extension, wrong credentials, or insufficient shared memory | Container logs and pg_extension | | Embeddings return 401 or 404 | Incorrect OpenAI-compatible URL, wrong env key name, or model alias mismatch | Direct /v1/embeddings test and variable names | | Reranking fails | Endpoint or response format mismatch, including doubled /rerank path | Direct /v1/rerank test and container log | | Recall returns nothing usable | recall_types limited to observations, or zero reranker scores | Control plane, then recall_types, then reranker conversion | | Existing bank reports dimension mismatch | Embedding model changed | Rebuild vectors/reimport with a consistent model | | Hermes responses slow down | Synchronous recall or shared LLM contention | Turn off sync recall; cap retain concurrency | | Irrelevant memories repeat | Weak extraction, noisy retrieval, or insufficient consolidation | Inspect observations and relevance scores | A practical small deployment is 2-4 vCPUs and 4-6 GB RAM for the Hindsight API VM when PostgreSQL and all inference are external. Disk allocation still depends on the chosen Docker image and retained image layers; allocate roughly 30-40 GB initially with room to expand. Size the PostgreSQL host based on actual memory volume, storage performance, and the other databases it serves. Back up and restore the Hindsight bank The memory bank is the only state that matters, and it lives in PostgreSQL. In Option B that is a database you administer; in Option A it is the embedded pg0 named volume inside the container. Back it up independently of the Hindsight container — recreating the container without first capturing the volume or the database discards the bank, and hermes backup does not reach a bank running in a separate service. Option B — external PostgreSQL. Dump the hindsight database in custom format, then restore it into a scratch database to verify the archive before you trust it: pg_dump -h POSTGRES_IP -U hindsight -Fc hindsight > hindsight-bank.dump # restore into a scratch database to prove the dump is usable createdb -h POSTGRES_IP -U postgres hindsight-verify pg_restore -h POSTGRES_IP -U postgres -d hindsight-verify hindsight-bank.dump Confirm the pgvector extension and a sample recall exist in the restored copy before you delete the original dump target. Keep the dump on a different host than the Hindsight VM, and run this as a PostgreSQL admin (a role that can create databases) rather than the application role. Option A — all-in-one container. The embedded database is a named volume, so stop the container and tar the volume through a throwaway image: docker stop hindsight docker run --rm -v hindsight-pg0:/data -v "$PWD":/backup alpine \ tar czf /backup/hindsight-bank.tgz -C /data . docker start hindsight The mount point inside the tar container (/data) is arbitrary; it simply aliases the named volume so tar can read it. To restore, stop the container, clear the volume, and untar the archive back into it, or point the container at the external PostgreSQL restore from Option B. Take a snapshot at three moments rather than on a calendar schedule: before changing the embedding model, before a major Hindsight or PostgreSQL upgrade, and before a reflect or consolidation pass that rewrites the bank. A backup you have restored into a scratch bank is worth more than one you have only written. Export, import, and migrating the memory bank Backup and restore protect the bank in place. Export/import moves it between Hindsight instances, and that is what a model change actually forces you to do. Changing the embedding model is not a configuration edit. The vectors in the bank were computed with the old model, and a different model — for example the bundled 384-dimensional BGE embedder versus 1024-dimensional Qwen3-Embedding-0.6B — writes into a different space and usually a different width. You cannot re-point the existing instance at the new embedder and keep the old vectors; the dimensions must be recalculated by re-embedding every memory with the new embedding model. Because the embedder and its configuration are set per Hindsight instance, the clean path is to stand up a fresh instance with the new embedding configuration and migrate the bank into it, rather than rebuilding vectors inside the one that is already serving recall. The Hindsight API can move the bank too, but for a one-off change export/import is the easier and more inspectable route: # export the bank from the old instance docker exec hindsight \ hindsight-admin export-bank \ --bank hermes2 \ --output /tmp/hermes2.zip docker cp hindsight:/tmp/hermes2.zip ./hermes2.zip ls -lh hermes2.zip unzip -t hermes2.zip # import the bank into the new instance docker cp ./hermes2.zip hindsight-q06:/tmp/hermes2.zip docker exec hindsight-q06 \ hindsight-admin import-bank \ --archive /tmp/hermes2.zip unzip -t verifies the archive before you ship it to the new instance. After the import, re-point Hermes at the new instance's api_url in ~/.hermes/hindsight/config.json, restart the gateway, and run the memory validation from earlier: a retained fact should recall through the new embedder. Leave the old bank and its vectors in the old instance until the new one behaves, so you still have a working fallback. Monitor, prune, and keep the bank stable With the bank running, the day-to-day job is watching what the extraction model has decided to store and keeping derived state in check. Use the control plane UI (hindsight-embed -p hermes ui start) to inspect observations, relevance scores, and consolidation o

Latest stargazers

The last 10 distinct accounts we observed this year.

Most active participants

PR, issue, comment & review events in the past year.

Packages

16
PackageVersionDownloads · 30dTrend · 30d
———
v0.1.0——
———
———
———
v1.0.0
≥4.3K
v1.0.0
≥96.9K
v1.0.0
≥2.7K
v1.1.0
≥6.8K
v1.1.0
≥6.7K
v1.1.0
≥34.6K
v1.1.0
≥78.8K
v1.1.0
≥742.7K
———
v1.1.0
≥76.7K
———

README badges

Embed a badge in your README or website.

  • vectorize-io/hindsight reached #1 in daily stars on gitwal · Sep 27, 2026
  • vectorize-io/hindsight reached #2 in weekly stars on gitwal · Week of Sep 21, 2026
  • vectorize-io/hindsight reached #2 in daily forks on gitwal · Sep 28, 2026
Live mentions · last 30 days
vectorize-io/hindsight mentions in the last 30 days