<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2026-10-15T07:40:57Z</updated>
  <generator>https://nostr.now</generator>

  <title>Nostr notes by lucasfth</title>
  <author>
    <name>lucasfth</name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.now/npub1rv5s9g5fk62eadufywu334u8732ssa8a9t5k93fdzdkrw529zz4qnrrhdm.rss" />
  <link href="https://nostr.now/npub1rv5s9g5fk62eadufywu334u8732ssa8a9t5k93fdzdkrw529zz4qnrrhdm" />
  <id>https://nostr.now/npub1rv5s9g5fk62eadufywu334u8732ssa8a9t5k93fdzdkrw529zz4qnrrhdm</id>
  <icon>https://blossom.primal.net/fe744e7dcefb7fb9f52a4df5eb9c2113bcdd8f7bce48cb0ab19b0c8d6c0547bb.jpg</icon>
  <logo>https://blossom.primal.net/fe744e7dcefb7fb9f52a4df5eb9c2113bcdd8f7bce48cb0ab19b0c8d6c0547bb.jpg</logo>




  <entry>
    <id>https://nostr.now/nevent1qqs2xswn3s09x3ka2ggx4mq98t0nhlcqptyg4jcsl4m35w27pwmr2lqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25wzlet8</id>
    
      <title type="html">Shipped a follow-up to the phone-brain post: the shared memory my ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqs2xswn3s09x3ka2ggx4mq98t0nhlcqptyg4jcsl4m35w27pwmr2lqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25wzlet8" />
    <content type="html">
      Shipped a follow-up to the phone-brain post: the shared memory my agents read from and write to. It is an Obsidian vault behind a small MCP server that can search it, undo anything, and flag stale summaries. &lt;a href=&#34;https://lucashanson.dk/blog/muninn-checkable-memory&#34;&gt;https://lucashanson.dk/blog/muninn-checkable-memory&lt;/a&gt;
    </content>
    <updated>2026-10-26T15:55:38Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqstl9fel4hp8sc8g7jvnpjln27afxssmcu3l64g9hm6zhm5dzw37vgzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g252fsyuq</id>
    
      <title type="html">I made my local LLM slower, then faster. Seven weeks on one GPU ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqstl9fel4hp8sc8g7jvnpjln27afxssmcu3l64g9hm6zhm5dzw37vgzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g252fsyuq" />
    <content type="html">
      I made my local LLM slower, then faster. Seven weeks on one GPU box, three changes, each one measured.&lt;br/&gt;&lt;br/&gt;The first change cost me speed on purpose: a 122B MoE at about 130 tokens per second across two 65,536-token slots, swapped for a dense 27B at about 57 per second across four 262,144-token slots. My sessions were running out of room.&lt;br/&gt;&lt;br/&gt;My position: benchmark at your real concurrency. Half of my generation time runs with all four slots busy. The newer llama.cpp build plus speculative decoding brought single-stream back to 126 tokens per second, and the engine switch measured 1.66x to 2.78x faster in the matched comparison.&lt;br/&gt;&lt;br/&gt;The catch: faster tokens are not the same answer. The draft path diverged from the baseline after 668 characters, the card dropped the GPU bus nine times in two weeks, and I have no matched number at my real context length.&lt;br/&gt;&lt;br/&gt;It runs the phone agent I wrote about here.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/self-hosted-ai-agents&#34;&gt;https://lucashanson.dk/blog/self-hosted-ai-agents&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;The box, the numbers, and what they do not prove:&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/slower-then-faster&#34;&gt;https://lucashanson.dk/blog/slower-then-faster&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;#localLLM #ai #selfhosting #nostr
    </content>
    <updated>2026-10-23T10:34:31Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsx8a6rzs3fqhuscv973nhe7lnw6vhcrrggp4hj9utwvttqx6tmfuqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25zz7a49</id>
    
      <title type="html">I hardened my agent against prompt injection. Then it started ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsx8a6rzs3fqhuscv973nhe7lnw6vhcrrggp4hj9utwvttqx6tmfuqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25zz7a49" />
    <content type="html">
      I hardened my agent against prompt injection. Then it started refusing me.&lt;br/&gt;&lt;br/&gt;In September my phone agent answered a bare question mark with the standard security line. No hidden text, no pasted prompt. One family of models read the platform&amp;#39;s own JSON message wrapper as an injection signature, so the defense fired on my own packaging. A refusal is one line, but the line sits in context and re-fires on the next short follow-up: six refusals in five minutes, until a new session.&lt;br/&gt;&lt;br/&gt;My position: a defense is priced in false positives, and the price has to be countable. I counted: 41 refusals in the session database, 40 on one commercial model family, essentially none on the self-hosted model. Not a benchmark, one phone and two model families. The fix was a carve-out that classifies the platform header as metadata, and refusals scoped to one line per message. Two remain, and recovery costs one sentence.&lt;br/&gt;&lt;br/&gt;The catch: config is not a security proof. Part of that failure class lives in how a model reads shared context, and no setup closes it fully. So the design accepts the residual: a refusal I can explain and recover from beats one that is perfect and unforgiving.&lt;br/&gt;&lt;br/&gt;Follow-up to the phone-brain post:&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/self-hosted-ai-agents&#34;&gt;https://lucashanson.dk/blog/self-hosted-ai-agents&lt;/a&gt;&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/injection-refusals&#34;&gt;https://lucashanson.dk/blog/injection-refusals&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;#localLLM #ai #selfhosting #nostr
    </content>
    <updated>2026-10-21T11:56:11Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsv09fhcxutuwcq9n0fhuvjt5m88v8df88ptvzha7jj4c8rhnrv5pczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g250ndz3v</id>
    
      <title type="html">Thanks. Sounds like I definitely have to look into it</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsv09fhcxutuwcq9n0fhuvjt5m88v8df88ptvzha7jj4c8rhnrv5pczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g250ndz3v" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0qesuzt2vrhum97np6qg05sydnea0mrn0ms9cjmhlzd74u937z9qql43f2&#39;&gt;nevent1q…43f2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Thanks. Sounds like I definitely have to look into it
    </content>
    <updated>2026-10-20T20:47:21Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsvc3rs8nla6j9wmczj46vx2w5qlwt7eeusa45g90gt8mhzperxsnczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25t5qdcz</id>
    
      <title type="html">I had not heard about .plan files before. Like many others, I use ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsvc3rs8nla6j9wmczj46vx2w5qlwt7eeusa45g90gt8mhzperxsnczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25t5qdcz" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsd0vv8pdayyzv86jq6qzrc7ry3kxndgnjv4twf5n4zk3tf9ktv8ws7q74l7&#39;&gt;nevent1q…74l7&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I had not heard about .plan files before. Like many others, I use .md files for persistent memory. Are they meant for something similar, or do they serve another purpose?
    </content>
    <updated>2026-10-20T19:44:17Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsyzrdu5rkl80m6e8z0tyq4fnjc7yju5n8t4qxevtj0dwega2wt3eczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25y2z88l</id>
    
      <title type="html">Just curious as I am hosting my own memory system. What designs ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsyzrdu5rkl80m6e8z0tyq4fnjc7yju5n8t4qxevtj0dwega2wt3eczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25y2z88l" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsf45tmlgyx5jneutsmv8eu3dyqjfga8jafh6g3jdv7e6au34hpm5scjzqsu&#39;&gt;nevent1q…zqsu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Just curious as I am hosting my own memory system. What designs have been used to implement this and how may it differ from like a simple Obsidian Vault? 
    </content>
    <updated>2026-10-19T11:32:49Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsd4j8z5m6kp4xw5ldur89hp7q4ax882d45qygzydcrnyauzdd5axczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25p9ktdf</id>
    
      <title type="html">I self-custody my Bitcoin on two USB keys I already carry every ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsd4j8z5m6kp4xw5ldur89hp7q4ax882d45qygzydcrnyauzdd5axczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25p9ktdf" />
    <content type="html">
      I self-custody my Bitcoin on two USB keys I already carry every day, plus a sentence I memorized and a printed sheet of paper. No hardware wallet.&lt;br/&gt;&lt;br/&gt;To be upfront: I do not understand the cryptography. I understand the design, what each piece is for, and what breaks me when it fails. I trust the parts I verified with my own keys and I name the parts I cannot.&lt;br/&gt;&lt;br/&gt;My position: a key you already carry beats a gadget you need to remember to buy. A second key is availability, not a second factor. A forgotten sentence has no recovery, by design.&lt;br/&gt;&lt;br/&gt;The catch: the keys do not sign. My Mac holds sensitive material for a few seconds during derivation, and I accept that at my position size. For amounts you cannot afford to lose, use a proper signing device.&lt;br/&gt;&lt;br/&gt;The agents that helped me build it are in the post I wrote about here.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/self-hosted-ai-agents&#34;&gt;https://lucashanson.dk/blog/self-hosted-ai-agents&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/yubikey-bitcoin&#34;&gt;https://lucashanson.dk/blog/yubikey-bitcoin&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;#bitcoin #selfcustody #security #nostr
    </content>
    <updated>2026-10-19T10:45:11Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsy0297cantthh4cnteypj09eywj5jwsyv0znkrlzmzlz8nufkdn0qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25gxxnqm</id>
    
      <title type="html">My old iPad was already holding 7 years of my health data. The ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsy0297cantthh4cnteypj09eywj5jwsyv0znkrlzmzlz8nufkdn0qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25gxxnqm" />
    <content type="html">
      My old iPad was already holding 7 years of my health data. The iCloud sync switch had simply been off since install. Four million rows of measurements flowed in within a few hours of flipping it, and my agent now reads the database on my phone. The method is public, the numbers stay private.&lt;br/&gt;&lt;br/&gt;My position: data can sit behind an off switch, cross-checking is the check, and a wide cross-checked picture beats any single source.&lt;br/&gt;&lt;br/&gt;The catch: the jailbreak is semi-tethered (a cold boot needs the Mac and a cable), the schema is Apple&amp;#39;s private one, and artificial readings need cleaning by hand. Nothing in this diagnoses anything.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/old-ipad-health-data&#34;&gt;https://lucashanson.dk/blog/old-ipad-health-data&lt;/a&gt;
    </content>
    <updated>2026-10-17T12:00:09Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqszlpz5yd3y73spkc7zfvdvjf76aegcxw3env354q8tcxs866ply9qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25qdyjug</id>
    
      <title type="html">Fair. Let me know if you want to look at the setup together at ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqszlpz5yd3y73spkc7zfvdvjf76aegcxw3env354q8tcxs866ply9qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25qdyjug" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqz370sxlyp2msl3c8kdn573khanls0jymj6rvmsk8usy5nmx6sahkw49&#39;&gt;nevent1q…kw49&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Fair. Let me know if you want to look at the setup together at any point
    </content>
    <updated>2026-10-16T12:41:34Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqs9z98v3ns0r8suwghgaw45xzyn8qzmzx27kq87d5h9h6euthpetdgzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25pssdjz</id>
    
      <title type="html">I stopped hand-curating my tech news and published the ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqs9z98v3ns0r8suwghgaw45xzyn8qzmzx27kq87d5h9h6euthpetdgzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25pssdjz" />
    <content type="html">
      I stopped hand-curating my tech news and published the machine&amp;#39;s take instead. Daily list, twice a day, at the end of this note.&lt;br/&gt;&lt;br/&gt;How it works: it runs on my home server and pulls my RSS and Bluesky feeds, Reddit, GitHub releases and trending repos, Hacker News, Lobsters and Hugging Face papers. A local Qwen model scores each item against an interest profile I keep by hand and writes a one line summary. Nothing leaves the machine and there is no API in the loop.&lt;br/&gt;&lt;br/&gt;My position: aggregation has been solved for years, the filter is the product. A list ranked on your own interest profile is a mirror, not a feed. If the profile is boring, the list is boring. Taste does not outsource.&lt;br/&gt;&lt;br/&gt;The catch: it only knows what I have told it I like, and I am one person. The picks are my taste. The model just reads everything first.&lt;br/&gt;&lt;br/&gt;Built by the phone agent I wrote about here.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/self-hosted-ai-agents&#34;&gt;https://lucashanson.dk/blog/self-hosted-ai-agents&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/radar&#34;&gt;https://lucashanson.dk/radar&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;#localLLM #ai #selfhosting #nostr
    </content>
    <updated>2026-10-16T12:12:23Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsdztzc0rcpek7u5nng2zu4e9tqvg5qxjk3tzh4epnz7n4u67gyxpqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25vta5ws</id>
    
      <title type="html">I have a single one as well. But multiple sessions at once with ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsdztzc0rcpek7u5nng2zu4e9tqvg5qxjk3tzh4epnz7n4u67gyxpqzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25vta5ws" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqq9d7ut8dlrqx8ztatpqaqsz8hz0xtagalkx6sjqgd3pjwjgtzctvylh4&#39;&gt;nevent1q…ylh4&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I have a single one as well. But multiple sessions at once with the same agent (that do not share session context) is possible
    </content>
    <updated>2026-10-16T04:31:32Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsvh5nzk80fahp0hxzzyh9msgrsssxhhfvzgwduqhmrwct5ykcng4gzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25vn77uk</id>
    
      <title type="html">A good way if you want to have multiple sessions is to create a ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsvh5nzk80fahp0hxzzyh9msgrsssxhhfvzgwduqhmrwct5ykcng4gzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25vn77uk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqza55usztl8rj2f30sp06uew9dqtdrw4xtt99rk0g5weykp2hcl3mhn8&#39;&gt;nevent1q…mhn8&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;A good way if you want to have multiple sessions is to create a Telegram group and then add Hermes to that. Then you can have multiple convos going at once 
    </content>
    <updated>2026-10-15T19:46:10Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsfu7lq6vuxmxzecafduawfzhf047zscr3wvjnf0cwj8jguyr3jcdczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g257zev8h</id>
    
      <title type="html">What worked for me was to set it up and via the TUI I made it ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsfu7lq6vuxmxzecafduawfzhf047zscr3wvjnf0cwj8jguyr3jcdczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g257zev8h" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqpsgdk6x552uqaaj203cl7pyum3aaq79c3zhfqxddx78jtp3rqxc4tfe&#39;&gt;nevent1q…4tfe&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;What worked for me was to set it up and via the TUI I made it help me set the rest up. I run it through an old Android phone with Termux and it helped me with most of the setup
    </content>
    <updated>2026-10-15T18:32:33Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsxg34ar43uyfeetrk0xtnzpz2vt47n5y02vve4self0vp8694zw3qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25ne7zhg</id>
    
      <title type="html">Guessing that this and having a vault of some file type and ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsxg34ar43uyfeetrk0xtnzpz2vt47n5y02vve4self0vp8694zw3qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25ne7zhg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2xquufv8ewd3z0ngvclwds86ucwqdwhqt4ksl2yhm77xcwjzye3cysmeqa&#39;&gt;nevent1q…meqa&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Guessing that this and having a vault of some file type and having some frontmatter to ‘grep’ for is not that different. Or am I incorrect?
    </content>
    <updated>2026-10-15T17:27:24Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsqpfrynjsx73c8arazkr3capgv9kq289t76m5m7c7hxqflxkldkwszyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25542dmj</id>
    
      <title type="html">Think these improvements are really interesting. But most of the ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsqpfrynjsx73c8arazkr3capgv9kq289t76m5m7c7hxqflxkldkwszyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25542dmj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswmht2m094gqrjxrs7p5mj88q2hd4cwu6epumj8vg79f36u0qznxgfqwlkh&#39;&gt;nevent1q…wlkh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Think these improvements are really interesting. But most of the times the TPS is completely disregarded or played down in importance
    </content>
    <updated>2026-10-15T16:51:25Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsqhxpvec9wl0x5pysyyf8pnmr3kweup4fqrf82xvya9fyctju8gcczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25q746sh</id>
    
      <title type="html">I built a Raycast extension because I keep forgetting the shell ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsqhxpvec9wl0x5pysyyf8pnmr3kweup4fqrf82xvya9fyctju8gcczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25q746sh" />
    <content type="html">
      I built a Raycast extension because I keep forgetting the shell tools I already installed. This is either sensible or a very specific form of procrastination.&lt;br/&gt;&lt;br/&gt;My position: installing a tool is not learning it. A package list is not a skill set, and a README only helps when you already know what to look for. So instead of a generic tips feed or an LLM, it reads a tail of my local zsh history, counts where each command shows up, and surfaces the unlearned ones I&amp;#39;m neglecting.&lt;br/&gt;&lt;br/&gt;The boundaries I care about: no LLM in the selection loop, no history leaves the machine, and it shows me commands but never runs them. Discovery should not execute anything.&lt;br/&gt;&lt;br/&gt;The catch: the catalogue is tailored to my setup, and a reminder is still just a reminder. Building this does not prove I learned anything.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/shell-discovery&#34;&gt;https://lucashanson.dk/blog/shell-discovery&lt;/a&gt;
    </content>
    <updated>2026-10-15T16:47:14Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsxhnwmnm60g5yefuh9dw3ctd7as479dlapt2r4e0rnpahyyxumc2qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25f59l40</id>
    
      <title type="html">Still new to Nostr and ended up on Primal by chance. But are ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsxhnwmnm60g5yefuh9dw3ctd7as479dlapt2r4e0rnpahyyxumc2qzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25f59l40" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrhnczx2syafyh0zd00r0ww6x8trr3dydm2nh08htezaufwj4j38g9l480y&#39;&gt;nevent1q…480y&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Still new to Nostr and ended up on Primal by chance. But are there major differences?
    </content>
    <updated>2026-10-14T19:46:14Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsytzk632nn5p7kw3ufhqyjdnll5wk44dd5qw78x8d6hda9aeznvmczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25z6hgtv</id>
    
      <title type="html">Ran my personal AI assistant on an old Android phone for 5 ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsytzk632nn5p7kw3ufhqyjdnll5wk44dd5qw78x8d6hda9aeznvmczyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25z6hgtv" />
    <content type="html">
      Ran my personal AI assistant on an old Android phone for 5 months. 2,000&#43; sessions. Here&amp;#39;s what I actually believe: the model is a replaceable part, and the markdown vault is the only asset worth keeping. &amp;#34;Self-improving agent&amp;#34; is mostly marketing. Skills are saved procedures, not learning. And more tools is not better. Every capability is blast radius.&lt;br/&gt;&lt;br/&gt;The honest cost: the gateway crashed 5 times in 8 days and a watchdog restarts it. 57% of my 190 skills had never been loaded once. A green log line is not proof. Check the outcome, not the report.&lt;br/&gt;&lt;br/&gt;The one thing people forget: a phone has a built-in UPS. When the power dies, the battery keeps the agent running while the desktop goes dark. Would I do it again? Yes.&lt;br/&gt;&lt;a href=&#34;https://lucashanson.dk/blog/self-hosted-ai-agents&#34;&gt;https://lucashanson.dk/blog/self-hosted-ai-agents&lt;/a&gt;
    </content>
    <updated>2026-10-14T17:19:46Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsxjh5jvzdr5wr8yuwf64dmldjre63r7awvt0ntlx39v4jukpwewfszyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25kqa7fk</id>
    
      <title type="html">That&amp;#39;s the idea. Idle laptops at night, stacking a few sats ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsxjh5jvzdr5wr8yuwf64dmldjre63r7awvt0ntlx39v4jukpwewfszyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25kqa7fk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsz0n2fezd07scgamq3e3ak98dy39277a37y4m2qnsafxwl5qfl0kqpl4dkg&#39;&gt;nevent1q…4dkg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;That&amp;#39;s the idea. Idle laptops at night, stacking a few sats instead of doing nothing
    </content>
    <updated>2026-10-14T13:04:22Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqsqvnt3fux25df7ygpuat437sy27anav7z85huwjg0vwfy3w6tdeegzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25htujyc</id>
    
      <title type="html">Thanks! That&amp;#39;s exactly why I posted here</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqsqvnt3fux25df7ygpuat437sy27anav7z85huwjg0vwfy3w6tdeegzyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25htujyc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdatnlkr5uajz2wl8yjrqhrs9zmns6ft5tz5k7fh56ne20jvk2fqsv7p7kh&#39;&gt;nevent1q…p7kh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Thanks! That&amp;#39;s exactly why I posted here
    </content>
    <updated>2026-10-14T13:03:42Z</updated>
  </entry>

  <entry>
    <id>https://nostr.now/nevent1qqs8xadtxjpnvxxl6v087w7tceajh5l2kuxf4cr2rc7sy6jwph4zf5szyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25khmsuw</id>
    
      <title type="html">Hi Nostr 👋 new here. I built a small thing: spare laptops ...</title>
    
    <link rel="alternate" href="https://nostr.now/nevent1qqs8xadtxjpnvxxl6v087w7tceajh5l2kuxf4cr2rc7sy6jwph4zf5szyqdjjq4z3xmft84h3y3mjxxhsl692zr5l54wjck995fkcd63g5g25khmsuw" />
    <content type="html">
      Hi Nostr 👋 new here.&lt;br/&gt;&lt;br/&gt;I built a small thing: spare laptops serve an LLM at night when power is cheap. OpenAI-compatible API, no account, pay per request in sats over ⚡ Lightning. New keys get free sats to try it.&lt;br/&gt;&lt;br/&gt;9B model · 32k context · open ~17:30–08:00 CET · no prompt logging.&lt;br/&gt;&lt;br/&gt;Honest question: what would you actually use a cheap, sats-priced LLM API for?&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://freyr.tail5eca08.ts.net:8443/&#34;&gt;https://freyr.tail5eca08.ts.net:8443/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;#introductions #grownostr #ai #llm #bitcoin
    </content>
    <updated>2026-10-13T20:52:25Z</updated>
  </entry>

</feed>