<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Greg Ceccarelli</title>
    <description>The latest articles on Forem by Greg Ceccarelli (@gregce10).</description>
    <link>https://forem.com/gregce10</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2749139%2F29ac4de5-755e-4e59-9548-5f4fa7e7b60b.jpeg</url>
      <title>Forem: Greg Ceccarelli</title>
      <link>https://forem.com/gregce10</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/gregce10"/>
    <language>en</language>
    <item>
      <title>AI should be Multiplayer</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Fri, 17 Apr 2026 18:09:20 +0000</pubDate>
      <link>https://forem.com/gregce10/ai-should-be-multiplayer-3hg3</link>
      <guid>https://forem.com/gregce10/ai-should-be-multiplayer-3hg3</guid>
      <description>&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/mqyLLsLoPhw"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Every meaningful thing we do at work... brainstorming, decision making, debating involves multiple people. Yet look around: each and every AI tool that you use today forces a one-on-one turn taking interaction that doesn't map to how collaboration in your life happens. &lt;/p&gt;

&lt;p&gt;And yet for all the talk of agentic coworkers, what we have now is much better delegation, not genuine participation. &lt;/p&gt;

&lt;p&gt;But I'm quite confident that in group dynamics humans will not actually want equal agent participation. Its hard to image at this moment an agent piping up during the flow of a lively discussion or heated debate and not immediately being squelched.&lt;/p&gt;

&lt;p&gt;What we certainly do want now is the ability to collaborate with each other's agent, make context explicit for it and ensure we can all build shared "mental models". &lt;/p&gt;

&lt;p&gt;And so a lot of latent pain is wrapped up in the missing Multiplayer Mode for today's AI. And the reason its not everywhere yet is because its a socio-technical problem and its hard to conceive what it should look like. &lt;/p&gt;

&lt;p&gt;Where do you put it? In a group chat thread? How does it work? What’s the shape of the thing?&lt;/p&gt;

&lt;p&gt;What I mean, is, that most “computing experiences” are by definition personal. There isn’t yet a shared substrate to build Multiplayer AI on. Your cursor is yours. Your chat is yours. Your context, yours. And it dies with the tab. &lt;/p&gt;




&lt;p&gt;Before computers, makers had workshops. Writers had smoke-filled rooms with typewriters you could hear across the hall. Musicians have studios. Every discipline that ever made anything has had a place where that making happened. A place everyone could see and reach at once.&lt;/p&gt;

&lt;p&gt;The Greeks had a word for this.&lt;/p&gt;

&lt;p&gt;A stoa. A covered walkway where people gathered to think together. Zeno taught philosophy in one. The whole school was named after the building. Not a curriculum. Not a founder. A place.&lt;/p&gt;

&lt;p&gt;Because for two and a half thousand years we understood something we seem to have forgotten: the room precedes the idea. You don’t get to truly refined thought without a place to hold it. You don’t get to a decision without a surface to sketch it on. And you sure as hell don’t get to a thing a ton of people want without a space where many hands can touch it at once.&lt;/p&gt;

&lt;p&gt;So what is the shape of multiplayer AI?&lt;/p&gt;

&lt;p&gt;It is not just a group chat with a bot in it. That is relay, dressed up.&lt;/p&gt;

&lt;p&gt;It is not just shared document with an agent scribbling in the margin.&lt;/p&gt;

&lt;p&gt;Its not just Zoom with extra note taking apparatus that replace Granola. No, that’s just copying.&lt;/p&gt;

&lt;p&gt;The shape is a room. A space with walls and a floor and your people and your agents all invited. A place where the conversation is the artifact. Where a decision made at minute six is captured before minute seven. Where the agent you summoned can see what everyone else sees and hear what was just said. Where the thing you’re building is right there “on the wall” alongside the reason you’re building it.&lt;/p&gt;

&lt;p&gt;👉 And its why we think makers will meet &lt;a href="https://withstoa.com" rel="noopener noreferrer"&gt;https://withstoa.com&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>productivity</category>
      <category>meeting</category>
    </item>
    <item>
      <title>Built tny.dev: API &amp; MCP first link shortener for devs who hate SaaS bloat</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Fri, 25 Jul 2025 18:54:49 +0000</pubDate>
      <link>https://forem.com/gregce10/built-tnydev-api-mcp-first-link-shortener-for-devs-who-hate-saas-bloat-217e</link>
      <guid>https://forem.com/gregce10/built-tnydev-api-mcp-first-link-shortener-for-devs-who-hate-saas-bloat-217e</guid>
      <description>&lt;p&gt;Built an API/MCP first link shortener that costs $9/month for custom domains, slugs and webhooks because was tired of paying $40 for bitly. API-first, terminal-friendly, no feature creep. Built to be outgrown. &lt;a href="https://tny.dev" rel="noopener noreferrer"&gt;Try it completely free.&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Remember when Klarna announced last September they were ditching Salesforce and Workday last year? They saved $40M by building internal tools with AI.&lt;/p&gt;

&lt;p&gt;The internet went wild. "Death of SaaS!" they cried.&lt;/p&gt;

&lt;p&gt;By May, Klarna was hiring humans back. Turns out, you still need people sometimes. But they'd proven something important: those "essential" enterprise tools? Maybe not so essential.&lt;/p&gt;

&lt;p&gt;While everyone debated whether AI could kill Salesforce, we had a different question at &lt;a href="https://specstory.com" rel="noopener noreferrer"&gt;SpecStory&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Why the hell does a URL shortener cost $40/month?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Problem: Death by a Thousand $$ Subscriptions&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Heres a sample of my startup's monthly "utility bill" per seat:
Link shortening:     $40/mo  (Bitly)
Calendaring:         $20/mo  (Calendly) 
Forms:               $50/mo  (Typeform)
Social scheduling:   $15/mo  (Typefully)
Product docs:       $100/mo  (Mintlify)
Applicant tracking: $300/mo  (Greenhouse)
---
Total:              $525/mo/person
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each tool solving one tiny problem. Each vendor adding features to justify the price. Each month, the same parking tickets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Our Solution: Software That Knows What It Is&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/eLEMx5z2wjI"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Built TNY.dev on three principles:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Terminal-First, Not Tab-First&lt;/li&gt;
&lt;li&gt;Built for AI Agents (with first class MCP &amp;amp; Claude DXT support)&lt;/li&gt;
&lt;li&gt;Priced Like a Utility: $9/month &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;On GitHub here: &lt;a href="https://github.com/specstoryai/tnydev-mcp" rel="noopener noreferrer"&gt;https://github.com/specstoryai/tnydev-mcp&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No usage tiers:&lt;/strong&gt; Unlimited links&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No feature gates:&lt;/strong&gt; Everything included&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No upsells:&lt;/strong&gt; We won't "scale with you"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edge infrastructure:&lt;/strong&gt; Sub-50ms redirects globally&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Philosophy: Built to Be Outgrown&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We expect you to leave us.&lt;/p&gt;

&lt;p&gt;When need "enterprise features" beyond the basics graduate to something bigger. We'll celebrate. That's success.&lt;/p&gt;

&lt;p&gt;We're the disposable camera of SaaS. Perfect for right now, memorable for what we enabled, graceful in our obsolescence.&lt;/p&gt;

&lt;p&gt;P.S. If you're from Bitly and reading this nothing personal. You built a great product. I just think it should cost $9.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;About&lt;/strong&gt;&lt;br&gt;
I'm Greg, co-founder at &lt;a href="https://specstory.com" rel="noopener noreferrer"&gt;SpecStory&lt;/a&gt;. We're building tools for the agent first tooling era to help you context engineer from your chat history. &lt;/p&gt;

&lt;p&gt;tny.dev is an experiment in radically simple, radically affordable business utilities&lt;/p&gt;

&lt;p&gt;Find me on &lt;a href="https://www.linkedin.com/in/gregceccarelli/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; | &lt;a href="https://x.com/gregce10" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; | &lt;a href="https://github.com/gregce" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.meditationsontech.com/" rel="noopener noreferrer"&gt;Substack&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>api</category>
      <category>mcp</category>
      <category>ai</category>
    </item>
    <item>
      <title>Built a CLI wrapper that auto-saves your Claude Code chats as markdown files</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Thu, 26 Jun 2025 21:58:58 +0000</pubDate>
      <link>https://forem.com/gregce10/built-a-cli-wrapper-that-auto-saves-your-claude-code-chats-as-markdown-files-3ld9</link>
      <guid>https://forem.com/gregce10/built-a-cli-wrapper-that-auto-saves-your-claude-code-chats-as-markdown-files-3ld9</guid>
      <description>&lt;p&gt;If you're like me and use Claude Code daily, you may have wished for a more accessible history of your conversations to version alongside your code. Claude Code is amazing but the JSONLs are gnarly.&lt;/p&gt;

&lt;p&gt;Built a lightweight CLI wrapper that launches Claude Code and auto-saves every conversation as a markdown file in your project directory.&lt;/p&gt;

&lt;p&gt;What it does:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;📝 Auto-saves:&lt;/strong&gt; every conversation to &lt;code&gt;~/.specstory/history&lt;/code&gt; as clean markdown files when running in interactive mode&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;🔄 Sync-conversions:&lt;/strong&gt; directly from previous Claude Code sesisons to markdown if you want your old history &lt;code&gt;specstory -s&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;🔍 File naming:&lt;/strong&gt; uses a timestamp + first user prompt message to generate descriptive filenames from your conversation content&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;🖥️ Cross-platform:&lt;/strong&gt; works on macOS, Linux/WSL&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;🔒 100% local:&lt;/strong&gt; all conversation data stays on your machine (with optional analytics you can opt-out)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Installation via Homebrew&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;brew tap specstoryai/tap&lt;/code&gt;&lt;br&gt;
&lt;code&gt;brew update&lt;/code&gt;&lt;br&gt;
&lt;code&gt;brew install specstory&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Other installation options are here in our &lt;a href="https://docs.specstory.com/specstory/introduction#download-linux-wsl-binary" rel="noopener noreferrer"&gt;docs&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Usage&lt;/strong&gt;&lt;br&gt;
Once installed should be low friction, you can launch via &lt;code&gt;specstory&lt;/code&gt; instead of &lt;code&gt;claude&lt;/code&gt; to run Claude Code. Checkout help via &lt;code&gt;specstory -h&lt;/code&gt; for all the options.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwm6dvdy3bc1ovurwtwm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwm6dvdy3bc1ovurwtwm.png" alt="specstory cli" width="800" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>anthropic</category>
      <category>terminal</category>
      <category>cli</category>
      <category>ai</category>
    </item>
    <item>
      <title>Built an Extension for GitHub Copilot to save, share and build rules for AI for you</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Wed, 30 Apr 2025 01:20:49 +0000</pubDate>
      <link>https://forem.com/gregce10/built-an-extension-for-github-copilot-to-save-share-and-build-rules-for-ai-for-you-lbc</link>
      <guid>https://forem.com/gregce10/built-an-extension-for-github-copilot-to-save-share-and-build-rules-for-ai-for-you-lbc</guid>
      <description>&lt;p&gt;The team and I over at &lt;a href="https://specstory.com" rel="noopener noreferrer"&gt;SpecStory&lt;/a&gt; love agentic-first coding.&lt;/p&gt;

&lt;p&gt;Built an extension for GitHub Copilot for VSCode that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Automatically saves your AI chats intocomposer history as markdown files to &lt;code&gt;.specstory/history&lt;/code&gt; directory in your project. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can also publish and share with others if you’d like via an autogenerated URL. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Finally, if you like you can automatically generate &lt;code&gt;copilot-instructions.md&lt;/code&gt; rules just through your chat interactions.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Install it directly from our &lt;a href="//get.specstory.com/extension"&gt;docs site&lt;/a&gt; or directly from &lt;a href="https://marketplace.visualstudio.com/items?itemName=SpecStory.specstory-vscode" rel="noopener noreferrer"&gt;VSC Marketplace&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6zx8tpi3sw65hyaoh7do.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6zx8tpi3sw65hyaoh7do.gif" alt="Save your AI Chats" width="400" height="225"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you like it, drop us some love ❤️ on Visual Studio Marketplace and let us know what you think.&lt;/p&gt;

&lt;p&gt;Any issues? Drop them &lt;a href="https://github.com/specstoryai/getspecstory/issues" rel="noopener noreferrer"&gt;here&lt;/a&gt;, we’re rapidly iterating!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>vscode</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>Git is no "good" for AI-generated code</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Wed, 02 Apr 2025 20:08:41 +0000</pubDate>
      <link>https://forem.com/gregce10/git-is-no-good-for-ai-generated-code-4ghm</link>
      <guid>https://forem.com/gregce10/git-is-no-good-for-ai-generated-code-4ghm</guid>
      <description>&lt;p&gt;When AI agents are generating some, most, or all of your code, then occasional git commits of the resulting source code aren't sufficient. &lt;/p&gt;

&lt;p&gt;You also need a tool that ties the generated code back to the prompts and AI interactions that generated it.&lt;/p&gt;

&lt;p&gt;Here’s a &lt;a href="https://github.com/specstoryai/getspecstory/blob/main/GOOD.md" rel="noopener noreferrer"&gt;short technical explainer video&lt;/a&gt; of GOOD, a Git companion designed for this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsih3ltrijt13ewdx9qlf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsih3ltrijt13ewdx9qlf.png" alt="GOOD visual" width="800" height="385"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The core tool will be free (as in beer) and will very likely be FOSS. We'll figure that out soon.&lt;/p&gt;

&lt;p&gt;If you're interested in alpha testing, &lt;a href="https://github.com/specstoryai/getspecstory/discussions/51" rel="noopener noreferrer"&gt;let us know here&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>git</category>
      <category>ai</category>
      <category>softwaredevelopment</category>
      <category>cursor</category>
    </item>
    <item>
      <title>Built a Cursor Extension to auto-save and share chat history</title>
      <dc:creator>Greg Ceccarelli</dc:creator>
      <pubDate>Wed, 22 Jan 2025 18:33:55 +0000</pubDate>
      <link>https://forem.com/gregce10/built-a-cursor-extension-to-auto-save-and-share-chat-history-59o5</link>
      <guid>https://forem.com/gregce10/built-a-cursor-extension-to-auto-save-and-share-chat-history-59o5</guid>
      <description>&lt;p&gt;The team and I over at &lt;a href="//www.specstory.com"&gt;SpecStory&lt;/a&gt; are huge fans of and avid Cursor users. We all use it daily.&lt;/p&gt;

&lt;p&gt;We built an extension that works with &lt;code&gt;Cursor Version: 0.43.5&lt;/code&gt; and greater that automatically saves your chat and composer history as markdown files to &lt;code&gt;.specstory/history&lt;/code&gt; directory in your project. You can also publish and share with others if you’d like via an autogenerated URL (&lt;a href="https://share.specstory.com/stories/e4b25385-314b-4e6b-bc58-99c17f6e1893" rel="noopener noreferrer"&gt;example&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Install it directly from &lt;a href="https://docs.specstory.com/introduction" rel="noopener noreferrer"&gt;our docs site&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;If you like it, drop us some love ❤️ on &lt;a href="https://marketplace.visualstudio.com/items?itemName=SpecStory.specstory-vscode" rel="noopener noreferrer"&gt;Visual Studio Marketplace&lt;/a&gt; and let us know what you think. &lt;/p&gt;

&lt;p&gt;Any issues? Drop them &lt;a href="https://github.com/specstoryai/getspecstory" rel="noopener noreferrer"&gt;here&lt;/a&gt;, we’re rapidly iterating!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flpni7swh5wb7vj6zmkji.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flpni7swh5wb7vj6zmkji.jpg" alt="Cursor Command Palette Integration" width="800" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>vscode</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
