<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: rileyt</title><link>https://news.ycombinator.com/user?id=rileyt</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 14 Jun 2026 12:52:15 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=rileyt" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by rileyt in "Show HN: Daemons – we pivoted from building agents to cleaning up after them"]]></title><description><![CDATA[
<p>yes and yes. in the meantime, there's a list of use cases to start from here: <a href="https://docs.charlielabs.ai/daemons/choosing-daemons" rel="nofollow">https://docs.charlielabs.ai/daemons/choosing-daemons</a></p>
]]></description><pubDate>Tue, 21 Apr 2026 18:57:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47852949</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47852949</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47852949</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Daemons – we pivoted from building agents to cleaning up after them"]]></title><description><![CDATA[
<p>DAEMONS.md is meant to be an open spec, like skills.<p>there's details on how other platforms can support it here: <a href="https://ai-daemons.com/spec/#provider-guide" rel="nofollow">https://ai-daemons.com/spec/#provider-guide</a></p>
]]></description><pubDate>Tue, 21 Apr 2026 18:20:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47852447</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47852447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47852447</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Daemons – we pivoted from building agents to cleaning up after them"]]></title><description><![CDATA[
<p>here are a few more resources:<p>- example daemon files: <a href="https://github.com/charlie-labs/daemons" rel="nofollow">https://github.com/charlie-labs/daemons</a><p>- reference docs: <a href="https://docs.charlielabs.ai/daemons" rel="nofollow">https://docs.charlielabs.ai/daemons</a><p>happy to answer questions. all feedback appreciated.</p>
]]></description><pubDate>Tue, 21 Apr 2026 17:46:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47852021</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47852021</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47852021</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Daemons – we pivoted from building agents to cleaning up after them"]]></title><description><![CDATA[
<p>simonw is right, daemons are closer to routines.<p>compared to routines:<p>- daemons are specified by a DAEMON.md file in the repo (like skills). it's version-controlled and team-owned, not hidden in a dashboard or linked to a single developers account.<p>- daemons have a specialized event pipeline that joins similar webhooks events into a single daemon activation and can inject late arriving events into a daemon that's already running (this is key to avoid duplicate work and noisy actions).<p>- the watch conditions are a more powerful activation method because they use semantic matching and can be mixed with cron schedules.<p>- daemons have access to the logs from their past runs (and soon proper memory) so they can learn from their own mistakes.</p>
]]></description><pubDate>Tue, 21 Apr 2026 17:40:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47851950</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47851950</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47851950</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Daemons – we pivoted from building agents to cleaning up after them"]]></title><description><![CDATA[
<p>hadn't seen this before, but it looks like the daemon schedules and watch conditions could be helpful for activating openprose contracts.</p>
]]></description><pubDate>Tue, 21 Apr 2026 16:49:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47851311</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47851311</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47851311</guid></item><item><title><![CDATA[Show HN: Daemons – we pivoted from building agents to cleaning up after them]]></title><description><![CDATA[
<p>For almost two years, we've been developing Charlie, a coding agent that is autonomous, cloud-based, and focused primarily on TypeScript development. During that time, the explosion in growth and development of LLMs and agents has surpassed even our initially very bullish prognosis. When we started Charlie, we were one of the only teams we knew fully relying on agents to build all of our code. We all know how that has gone — the world has caught up, but working with agents hasn't been all kittens and rainbows, especially for fast moving teams.<p>The one thing we've noticed over the last 3 months is that the more you use agents, the more work they create. Dozens of pull requests means older code gets out of date quickly. Documentation drifts. Dependencies become stale. Developers are so focused on pushing out new code that this crucial work falls through the cracks. That's why we pivoted away from agents and invented what we think is the necessary next step for AI powered software development.<p>Today, we're introducing Daemons: a new product category built for teams dealing with operational drag from agent-created output. Named after the familiar background processes from Linux, Daemons are added to your codebase by adding an .md file to your repo, and run in a set-it-and-forget-it way that will make your lives easier and accelerate any project. For teams that use Claude, Codex, Cursor, Cline, or any other agent, we think you'll really enjoy what Daemons bring to the table.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47850907">https://news.ycombinator.com/item?id=47850907</a></p>
<p>Points: 70</p>
<p># Comments: 31</p>
]]></description><pubDate>Tue, 21 Apr 2026 16:16:41 +0000</pubDate><link>https://charlielabs.ai/</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47850907</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47850907</guid></item><item><title><![CDATA[New comment by rileyt in "Daemons that clean up the mess agents leave behind"]]></title><description><![CDATA[
<p>it's similar to triggers, but with a routing layer that combines semantic triggers and memory. the magic is defining them as files in the repo (like skills) and not worrying about the execution.</p>
]]></description><pubDate>Wed, 18 Mar 2026 16:31:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47427828</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47427828</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47427828</guid></item><item><title><![CDATA[New comment by rileyt in "Daemons that clean up the mess agents leave behind"]]></title><description><![CDATA[
<p>the working spec is files like `.agents/daemons/<name>/DAEMON.md` and they have access to skills and rules in the repo so you don't need to duplicate them.<p>you could even have a daemon that just says to run an existing skill.</p>
]]></description><pubDate>Wed, 18 Mar 2026 16:09:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47427533</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=47427533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47427533</guid></item><item><title><![CDATA[New comment by rileyt in "Why the next agent interface is shared"]]></title><description><![CDATA[
<p>seems like and appropriate way to share.</p>
]]></description><pubDate>Fri, 06 Feb 2026 15:20:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=46913902</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=46913902</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46913902</guid></item><item><title><![CDATA[Using GPT-4 to fix the Twitter Doge logo]]></title><description><![CDATA[
<p>Article URL: <a href="https://twitter.com/rileytomasek/status/1644022700073951235">https://twitter.com/rileytomasek/status/1644022700073951235</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=35471376">https://news.ycombinator.com/item?id=35471376</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 06 Apr 2023 17:12:14 +0000</pubDate><link>https://twitter.com/rileytomasek/status/1644022700073951235</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=35471376</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35471376</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>It was less than $2 to embed all 100+ episodes with the new OpenAI embeddings and was as easy as just making a bunch of API calls. Pretty hard to beat that experience.</p>
]]></description><pubDate>Sun, 18 Dec 2022 18:40:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=34041063</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34041063</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34041063</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>It's not fine tuned. You literally just add something like "if the answer to the question isn't in the context, say 'I don't know'" It's wild.</p>
]]></description><pubDate>Sat, 17 Dec 2022 23:52:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=34033532</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34033532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34033532</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>Thanks a lot. It's nice when people appreciate the stuff I build for fun.<p>The UI is my own design system that I will open source at some point. The app is Remix with a Redis cache to keep things snappy.</p>
]]></description><pubDate>Sat, 17 Dec 2022 23:51:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=34033525</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34033525</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34033525</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>Old version? Works on latest for me, but the CSS uses @layer which doesn't have great support with older browsers.</p>
]]></description><pubDate>Sat, 17 Dec 2022 23:47:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=34033490</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34033490</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34033490</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>The embeddings cost less than $2 for all 100+ episodes. The cost for the answering calls to davinci are around $30 so far.</p>
]]></description><pubDate>Sat, 17 Dec 2022 23:01:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=34033182</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34033182</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34033182</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>It uses Whisper for transcripts, which I believe are better than the YouTube generated ones.<p>My guess is that there are more relevant results from the semantic search than I'm including in the context (to reduce costs) and that exact snippet isn't being given to the answering model as context.</p>
]]></description><pubDate>Sat, 17 Dec 2022 22:59:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=34033164</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34033164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34033164</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts"]]></title><description><![CDATA[
<p>You're welcome :)</p>
]]></description><pubDate>Sat, 17 Dec 2022 20:58:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=34032167</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34032167</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34032167</guid></item><item><title><![CDATA[Show HN: Factual AI Q&A – Answers based on Huberman Lab transcripts]]></title><description><![CDATA[
<p>This is a quick prototype I built for semantic search and factual question answering using embeddings and GPT-3.<p>It tries to solve the LLM hallucination issue by guiding it only to answer questions from the given context instead of making things up. If you ask something not covered in an episode, it should say that it doesn't know rather than providing a plausible, but potentially incorrect response.<p>It uses Whisper to transcribe, text-embedding-ada-002 to embed, Pinecone.io to search, and text-davinci-003 to generate the answer.<p>More examples and explanations here: <a href="https://twitter.com/rileytomasek/status/1603854647575384067" rel="nofollow">https://twitter.com/rileytomasek/status/1603854647575384067</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=34030389">https://news.ycombinator.com/item?id=34030389</a></p>
<p>Points: 120</p>
<p># Comments: 43</p>
]]></description><pubDate>Sat, 17 Dec 2022 18:05:04 +0000</pubDate><link>https://huberman.rile.yt/</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=34030389</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34030389</guid></item><item><title><![CDATA[New comment by rileyt in "Show HN: Scrollable ChatGPT Share URLs"]]></title><description><![CDATA[
<p>Ha, nice work getting ChatGPT to do it. I started down the same route, but wanted to get it done fast so I'm just grabbing the relevant HTML and then adding a few styles to clean up things like controls.</p>
]]></description><pubDate>Mon, 05 Dec 2022 21:05:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=33871919</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=33871919</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33871919</guid></item><item><title><![CDATA[Show HN: Scrollable ChatGPT Share URLs]]></title><description><![CDATA[
<p>I was getting really sick of taking and sharing multiple screenshots every time I wanted to share a ChatGPT thread, so I made <a href="https://gpt.best/" rel="nofollow">https://gpt.best/</a><p>It's a minimal tool that creates shareable links [1] from ChatGPT conversations. It also has dynamic share images so you get a screenshot of the beginning of the thread for free.<p>1: <a href="https://gpt.best/k5Q5F9Up" rel="nofollow">https://gpt.best/k5Q5F9Up</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=33871427">https://news.ycombinator.com/item?id=33871427</a></p>
<p>Points: 2</p>
<p># Comments: 2</p>
]]></description><pubDate>Mon, 05 Dec 2022 20:29:38 +0000</pubDate><link>https://gpt.best/</link><dc:creator>rileyt</dc:creator><comments>https://news.ycombinator.com/item?id=33871427</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33871427</guid></item></channel></rss>