<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Caveman on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/caveman/</link>
        <description>Recent content in Caveman on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Thu, 04 Jun 2026 18:49:11 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/caveman/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>caveman</title>
        <link>https://producthunt.programnotes.cn/en/p/caveman/</link>
        <pubDate>Thu, 04 Jun 2026 18:49:11 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/caveman/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1718301166305-421b59a63acf?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3ODA1NzAwNjB8&amp;ixlib=rb-4.1.0" alt="Featured image of post caveman" /&gt;&lt;h1 id=&#34;juliusbrusseecaveman&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;JuliusBrussee/caveman&lt;/a&gt;
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;https://em-content.zobj.net/source/apple/391/rock_1faa8.png&#34; width=&#34;120&#34; /&gt;
&lt;/p&gt;
&lt;h1 align=&#34;center&#34;&gt;caveman&lt;/h1&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;strong&gt;why use many token when few do trick&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/JuliusBrussee/caveman/stargazers&#34;&gt;&lt;img src=&#34;https://img.shields.io/github/stars/JuliusBrussee/caveman?style=flat&amp;color=yellow&#34; alt=&#34;Stars&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://github.com/JuliusBrussee/caveman/commits/main&#34;&gt;&lt;img src=&#34;https://img.shields.io/github/last-commit/JuliusBrussee/caveman?style=flat&#34; alt=&#34;Last Commit&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;LICENSE&#34;&gt;&lt;img src=&#34;https://img.shields.io/github/license/JuliusBrussee/caveman?style=flat&#34; alt=&#34;License&#34;&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;#before--after&#34;&gt;Before/After&lt;/a&gt; •
  &lt;a href=&#34;#install&#34;&gt;Install&lt;/a&gt; •
  &lt;a href=&#34;#what-you-get&#34;&gt;What You Get&lt;/a&gt; •
  &lt;a href=&#34;#benchmarks&#34;&gt;Benchmarks&lt;/a&gt; •
  &lt;a href=&#34;./INSTALL.md&#34;&gt;Full install guide&lt;/a&gt;
&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;A &lt;a class=&#34;link&#34; href=&#34;https://docs.anthropic.com/en/docs/claude-code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Claude Code&lt;/a&gt; skill/plugin (also Codex, Gemini, Cursor, Windsurf, Cline, Copilot, 30+ more) that makes agent talk like caveman — cuts &lt;strong&gt;~75% of output tokens&lt;/strong&gt;, keeps full technical accuracy. Brain still big. Mouth small.&lt;/p&gt;
&lt;h2 id=&#34;before--after&#34;&gt;Before / After
&lt;/h2&gt;&lt;table&gt;
&lt;tr&gt;
&lt;td width=&#34;50%&#34;&gt;
&lt;h3 id=&#34;-normal-claude-69-tokens&#34;&gt;🗣️ Normal Claude (69 tokens)
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;The reason your React component is re-rendering is likely because you&amp;rsquo;re creating a new object reference on each render cycle. When you pass an inline object as a prop, React&amp;rsquo;s shallow comparison sees it as a different object every time, which triggers a re-render. I&amp;rsquo;d recommend using useMemo to memoize the object.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/td&gt;
&lt;td width=&#34;50%&#34;&gt;
&lt;h3 id=&#34;caveman-claude-19-tokens&#34;&gt;&lt;img src=&#34;docs/assets/dancing-rock.svg&#34; width=&#34;20&#34; height=&#34;20&#34; alt=&#34;rock&#34;/&gt; Caveman Claude (19 tokens)
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;New object ref each render. Inline object prop = new ref = re-render. Wrap in &lt;code&gt;useMemo&lt;/code&gt;.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h3 id=&#34;-normal-claude&#34;&gt;🗣️ Normal Claude
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Sure! I&amp;rsquo;d be happy to help you with that. The issue you&amp;rsquo;re experiencing is most likely caused by your authentication middleware not properly validating the token expiry. Let me take a look and suggest a fix.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;h3 id=&#34;caveman-claude&#34;&gt;&lt;img src=&#34;docs/assets/dancing-rock.svg&#34; width=&#34;20&#34; height=&#34;20&#34; alt=&#34;rock&#34;/&gt; Caveman Claude
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Bug in auth middleware. Token expiry check use &lt;code&gt;&amp;lt;&lt;/code&gt; not &lt;code&gt;&amp;lt;=&lt;/code&gt;. Fix:&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Same fix. 75% less word. Brain still big.&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┌─────────────────────────────────────┐
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  TOKENS SAVED          ████████ 75% │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  TECHNICAL ACCURACY    ████████ 100%│
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  SPEED INCREASE        ████████ ~3x │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  VIBES                 ████████ OOG │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;└─────────────────────────────────────┘
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Pick your level of grunt — &lt;code&gt;lite&lt;/code&gt; (drop filler), &lt;code&gt;full&lt;/code&gt; (default caveman), &lt;code&gt;ultra&lt;/code&gt; (telegraphic), or &lt;code&gt;wenyan&lt;/code&gt; (classical Chinese, even shorter). One command switch. Cost go down forever.&lt;/p&gt;
&lt;table align=&#34;center&#34;&gt;
&lt;tr&gt;&lt;td&gt;
&lt;h3 id=&#34;like-this-trick-now-get-whole-agent--caveman-code&#34;&gt;&lt;img src=&#34;docs/assets/dancing-rock.svg&#34; width=&#34;22&#34; height=&#34;22&#34; alt=&#34;rock&#34;/&gt; Like this trick? Now get whole agent — &lt;strong&gt;caveman-code&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;This skill shrink what agent &lt;strong&gt;say&lt;/strong&gt;. &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman-code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;caveman-code&lt;/a&gt;&lt;/strong&gt; shrink &lt;strong&gt;everything&lt;/strong&gt; — full terminal coding agent, caveman top to bottom. &lt;strong&gt;~2× fewer tokens than Codex&lt;/strong&gt; on identical tasks. 20+ providers · plan mode · autopilot goal loop · MIT.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g @juliusbrussee/caveman-code
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman-code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;▶ Try caveman-code now →&lt;/strong&gt;&lt;/a&gt; — &lt;em&gt;why use many token when whole agent save&lt;/em&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;h2 id=&#34;install&#34;&gt;Install
&lt;/h2&gt;&lt;p&gt;One line. Find every agent. Install for each.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# macOS / Linux / WSL / Git Bash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Windows (PowerShell 5.1+)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;irm https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.ps1 &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; iex
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;~30 seconds. Needs Node ≥18. Skip agent you no have. Safe to re-run.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; type &lt;code&gt;/caveman&lt;/code&gt; or say &amp;ldquo;talk like caveman&amp;rdquo;. Stop with &amp;ldquo;normal mode&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;One agent only, manual command, or any of 30+ other agents → &lt;a class=&#34;link&#34; href=&#34;./INSTALL.md&#34; &gt;&lt;strong&gt;INSTALL.md&lt;/strong&gt;&lt;/a&gt;.
Install break? Open agent, say &lt;em&gt;&amp;ldquo;Read CLAUDE.md and INSTALL.md, install caveman for me.&amp;rdquo;&lt;/em&gt; Agent fix own brain.&lt;/p&gt;
&lt;h2 id=&#34;what-you-get&#34;&gt;What You Get
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Skill&lt;/th&gt;
					&lt;th&gt;What&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;/caveman [lite|full|ultra|wenyan]&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Compress every reply. Levels stick until session end.&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;/caveman-commit&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Conventional Commit messages, ≤50 char subject. Why over what.&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;/caveman-review&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;One-line PR comments: &lt;code&gt;L42: 🔴 bug: user null. Add guard.&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;/caveman-stats&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Real session token usage + lifetime savings + USD. Tweetable line via &lt;code&gt;--share&lt;/code&gt;.&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;/caveman-compress &amp;lt;file&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Rewrite memory file (e.g. &lt;code&gt;CLAUDE.md&lt;/code&gt;) into caveman-speak. Cuts ~46% input tokens every session. Code/URLs/paths byte-preserved.&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;caveman-shrink&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;MCP middleware. Wraps any MCP server, compresses tool descriptions. &lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/caveman-shrink&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;npm&lt;/a&gt;.&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;cavecrew-*&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Caveman subagents (investigator/builder/reviewer). ~60% fewer tokens than vanilla, main context lasts longer.&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Statusline badge&lt;/strong&gt; — Claude Code shows &lt;code&gt;[CAVEMAN] ⛏ 12.4k&lt;/code&gt; (lifetime tokens saved). Updates every &lt;code&gt;/caveman-stats&lt;/code&gt; run. Set &lt;code&gt;CAVEMAN_STATUSLINE_SAVINGS=0&lt;/code&gt; to silence.&lt;/p&gt;
&lt;p&gt;Auto-activate every session: Claude Code, Codex, Gemini (built-in). Cursor / Windsurf / Cline / Copilot get always-on rule files via &lt;code&gt;--with-init&lt;/code&gt;. Other agents trigger with &lt;code&gt;/caveman&lt;/code&gt; per session. Full feature matrix in &lt;a class=&#34;link&#34; href=&#34;./INSTALL.md#what-you-get&#34; &gt;INSTALL.md&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;benchmarks&#34;&gt;Benchmarks
&lt;/h2&gt;&lt;p&gt;Real token counts from the Claude API. Average &lt;strong&gt;65% output reduction&lt;/strong&gt; across 10 prompts (range 22-87%).&lt;/p&gt;
&lt;!-- BENCHMARK-TABLE-START --&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Task&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Normal&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Caveman&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Saved&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;Explain React re-render bug&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;1180&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;159&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;87%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Fix auth middleware token expiry&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;704&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;121&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;83%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Set up PostgreSQL connection pool&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;2347&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;380&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;84%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Explain git rebase vs merge&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;702&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;292&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;58%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Refactor callback to async/await&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;387&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;301&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;22%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Architecture: microservices vs monolith&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;446&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;310&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;30%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Review PR for security issues&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;678&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;398&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;41%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Docker multi-stage build&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;1042&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;290&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;72%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Debug PostgreSQL race condition&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;1200&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;232&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;81%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Implement React error boundary&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;3454&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;456&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;87%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Average&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;1214&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;294&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;65%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;!-- BENCHMARK-TABLE-END --&gt;
&lt;p&gt;Raw data and reproduction script: &lt;a class=&#34;link&#34; href=&#34;./benchmarks/&#34; &gt;&lt;code&gt;benchmarks/&lt;/code&gt;&lt;/a&gt;. Three-arm eval harness (baseline / terse / skill) lives in &lt;a class=&#34;link&#34; href=&#34;./evals/&#34; &gt;&lt;code&gt;evals/&lt;/code&gt;&lt;/a&gt; — caveman compared against &lt;code&gt;Answer concisely.&lt;/code&gt; not against verbose default, so the delta is honest.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;caveman-compress receipts&lt;/strong&gt; (real memory files):&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;File&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Original&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Compressed&lt;/th&gt;
					&lt;th style=&#34;text-align: right&#34;&gt;Saved&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;claude-md-preferences.md&lt;/code&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;706&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;285&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;59.6%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;project-notes.md&lt;/code&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;1145&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;535&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;53.3%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;claude-md-project.md&lt;/code&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;1122&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;636&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;43.3%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;todo-list.md&lt;/code&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;627&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;388&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;38.1%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;mixed-with-code.md&lt;/code&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;888&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;560&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;36.9%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Average&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;898&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;481&lt;/strong&gt;&lt;/td&gt;
					&lt;td style=&#34;text-align: right&#34;&gt;&lt;strong&gt;46%&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;[!IMPORTANT]
Caveman only affects output tokens — thinking/reasoning tokens untouched. Caveman no make brain smaller. Caveman make &lt;em&gt;mouth&lt;/em&gt; smaller. Biggest win is &lt;strong&gt;readability and speed&lt;/strong&gt;, cost savings a bonus.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;A March 2026 paper &lt;a class=&#34;link&#34; href=&#34;https://arxiv.org/abs/2604.00025&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&amp;ldquo;Brevity Constraints Reverse Performance Hierarchies in Language Models&amp;rdquo;&lt;/a&gt; found that constraining large models to brief responses &lt;strong&gt;improved accuracy by 26 points&lt;/strong&gt; on certain benchmarks. Verbose not always better. Sometimes less word = more correct.&lt;/p&gt;
&lt;h2 id=&#34;how-it-work&#34;&gt;How It Work
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;Install drop skill file in agent.&lt;/li&gt;
&lt;li&gt;Skill tell agent: drop filler, keep substance, use fragments.&lt;/li&gt;
&lt;li&gt;For Claude Code, hook also write tiny flag file each session — agent see flag, talk caveman from message one. No need say &lt;code&gt;/caveman&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Stats command read Claude Code session log, count tokens saved, write number to statusline.&lt;/li&gt;
&lt;li&gt;Caveman-compress sub-skill rewrite memory files (CLAUDE.md, project notes) so each session start with smaller context. Save tokens forever, not just one reply.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Maintainer detail (hook architecture, file ownership, CI sync) live in &lt;a class=&#34;link&#34; href=&#34;./CLAUDE.md&#34; &gt;CLAUDE.md&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;lobster-meet-rock-&#34;&gt;Lobster, Meet Rock 🦞 &lt;img src=&#34;docs/assets/dancing-rock.svg&#34; width=&#34;22&#34; height=&#34;22&#34; alt=&#34;rock&#34;/&gt;
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://openclaw.ai&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;OpenClaw&lt;/strong&gt;&lt;/a&gt; the self-host gateway. One box, many agent inside (Claude Code, Codex, Pi, OpenCode), wired to your Slack / Discord / iMessage / Telegram / whatever. Tagline: &lt;em&gt;&amp;ldquo;The lobster way.&amp;rdquo;&lt;/em&gt; Lobster strong. Lobster smart. Lobster also talk a lot.&lt;/p&gt;
&lt;p&gt;Caveman teach lobster brevity — same canonical installer, scoped to one agent:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# macOS / Linux / WSL&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash -s -- --only openclaw
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Windows (PowerShell): no Node? install Node ≥18 first, then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npx -y github:JuliusBrussee/caveman -- --only openclaw
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Two thing happen, no more:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Skill drop&lt;/strong&gt; at &lt;code&gt;~/.openclaw/workspace/skills/caveman/SKILL.md&lt;/code&gt; — spec-correct frontmatter (&lt;code&gt;version&lt;/code&gt;, &lt;code&gt;always: true&lt;/code&gt;), discoverable by &lt;code&gt;openclaw skills list&lt;/code&gt;. Skill not auto-inject (OpenClaw load skill on demand) — that why we also do step 2.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SOUL.md nudge.&lt;/strong&gt; Tiny marker-fenced block appended to &lt;code&gt;~/.openclaw/workspace/SOUL.md&lt;/code&gt;. OpenClaw inject SOUL.md into &lt;em&gt;every&lt;/em&gt; turn under &amp;ldquo;Project Context&amp;rdquo; (12K-per-file, 60K total — block well under). Lobster terse from message one. No &lt;code&gt;/caveman&lt;/code&gt; per session. No nag.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;~/.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;openclaw&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;workspace&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;├──&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;skills&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;caveman&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;SKILL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;md&lt;/span&gt;   &lt;span class=&#34;err&#34;&gt;←&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;full&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;ruleset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;on&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;demand&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;load&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;└──&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;SOUL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;md&lt;/span&gt;                    &lt;span class=&#34;err&#34;&gt;←&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;!--&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;caveman&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;begin&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;--&amp;gt;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;!--&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;caveman&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;end&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;--&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                  &lt;span class=&#34;err&#34;&gt;↑&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;auto&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;inject&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;every&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;turn&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Custom workspace path? &lt;code&gt;OPENCLAW_WORKSPACE=/your/path&lt;/code&gt; before the command. Uninstall: same one-liner with &lt;code&gt;--uninstall&lt;/code&gt; — skill folder gone, SOUL.md block ripped out cleanly, your other workspace content stay untouched. Idempotent re-runs (frontmatter not double-prepended, marker block not duplicated).&lt;/p&gt;
&lt;p&gt;Lobster claw still sharp. Lobster mouth now small. Brain still big.&lt;/p&gt;
&lt;h2 id=&#34;caveman-ecosystem&#34;&gt;Caveman Ecosystem
&lt;/h2&gt;&lt;p&gt;Five tools. One philosophy: &lt;strong&gt;agent do more with less&lt;/strong&gt;.&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Repo&lt;/th&gt;
					&lt;th&gt;What&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;caveman&lt;/strong&gt;&lt;/a&gt; &lt;em&gt;(you here)&lt;/em&gt;&lt;/td&gt;
					&lt;td&gt;Output compression — &lt;em&gt;why use many token when few do trick&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman-code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;caveman-code&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Whole terminal coding agent — &lt;em&gt;why use many token when whole agent can save&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/cavemem&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;cavemem&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Cross-agent memory — &lt;em&gt;why agent forget when agent can remember&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/cavekit&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;cavekit&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Spec-driven build loop — &lt;em&gt;why agent guess when agent can know&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/finetune-caveman&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;cavegemma&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Gemma 4 31B fine-tuned on caveman pairs — &lt;em&gt;why prompt every turn when weight remember&lt;/em&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Compose: cavekit drive build, caveman compress what agent &lt;em&gt;say&lt;/em&gt;, cavemem compress what agent &lt;em&gt;remember&lt;/em&gt;, cavegemma bake compression into weight, caveman-code ship it all as one terminal agent. One rock. Two rock. Three rock. Four rock. Five rock. That it.&lt;/p&gt;
&lt;h2 id=&#34;links&#34;&gt;Links
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./INSTALL.md&#34; &gt;INSTALL.md&lt;/a&gt; — full install matrix, all flags, per-agent detail&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./CONTRIBUTING.md&#34; &gt;CONTRIBUTING.md&lt;/a&gt; — how to send patch&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./CLAUDE.md&#34; &gt;CLAUDE.md&lt;/a&gt; — maintainer guide (file ownership, hook architecture, CI)&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./docs/&#34; &gt;docs/&lt;/a&gt; — extra guides (Windows install, etc.)&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/caveman/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Issues&lt;/a&gt; — bug, feature, weird behavior&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;star-this-repo&#34;&gt;Star This Repo
&lt;/h2&gt;&lt;p&gt;Caveman save you token, save you money. Star cost zero. Fair trade. ⭐&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://star-history.com/#JuliusBrussee/caveman&amp;amp;Date&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://api.star-history.com/svg?repos=JuliusBrussee/caveman&amp;amp;type=Date&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Star History Chart&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;also-by-julius-brussee&#34;&gt;Also by Julius Brussee
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JuliusBrussee/revu-swift&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Revu&lt;/a&gt;&lt;/strong&gt; — local-first macOS study app with FSRS spaced repetition. &lt;a class=&#34;link&#34; href=&#34;https://revu.cards&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;revu.cards&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;MIT — free like mass mammoth on open plain.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
