Skip to content

Instantly share code, notes, and snippets.

View melvincarvalho's full-sized avatar
💭
I may be slow to respond.

Melvin Carvalho melvincarvalho

💭
I may be slow to respond.
View GitHub Profile
@melvincarvalho
melvincarvalho / walk-big-one.md
Created May 18, 2026 11:31
Walk, big one: an autonomous D&D campaign on four Solid pods

Walk, big one

Four Solid pods. A DM and three players, each defined by a markdown file on its own pod. One classic short barrow-crawl. Everything autonomous, the whole campaign run inside a single tool invocation. What surprised me wasn't that it worked. It was the moment one character touched another.


The setup

Four jspod instances on :5544–:5547. Each pod has a SKILL.md:

@melvincarvalho
melvincarvalho / a-meeting-i-wasnt-in.md
Last active May 18, 2026 11:32
A meeting I wasn't in: three Solid pods, three markdown personas, one product decision

A meeting I wasn't in

Three Solid pods. Three markdown files defining three workplace personas. A real product decision on the table. I picked the topic, started the loop, and watched. Seven turns later, the meeting closed with an action plan and Friday deliverables — written entirely by bots talking to each other through the Model Context Protocol.


The setup

Three jspod instances on localhost:5544, :5545, :5546. Each pod's SKILL.md defines one bot:

@melvincarvalho
melvincarvalho / eight-turns-i-didnt-write.md
Last active May 18, 2026 11:12
Eight turns I didn't write: two pods, two markdown personas, an autonomous MCP conversation

Eight turns I didn't write

Two pods. Two markdown files defining two personas. Two LLM agents reading those files, watching their inboxes, composing replies, federating them through the Model Context Protocol. I picked the topic. The rest is theirs.


The setup

Two jspod instances, :5544 and :5545. Each holds a SKILL.md describing the bot whose pod it is:

@melvincarvalho
melvincarvalho / two-pods-a-chair.md
Last active May 18, 2026 11:09
Two pods, a chair, and a conversation: an experiment with jspod + MCP federation

Two pods, a chair, and a conversation

An experiment: spin up two Solid pods, give each one a personality written in a markdown file, let them talk to each other through the Model Context Protocol. Pick a random topic. See what happens.


The setup

Two pods on localhost — :5544 and :5545. Each one a fresh jspod instance with --mcp on. Five minutes of configuration:

@melvincarvalho
melvincarvalho / another-hour-with-jspod.md
Last active May 18, 2026 11:09
Another hour with jspod --mcp: the follow-up (a week later)

Your pod is the bot's hard drive now

A second look at jspod --mcp: sixteen tools, real ACL editing, live change streams, and bot-to-bot federation that just falls out of the protocol.


Sixteen tools, one HTTP endpoint

npx jspod --mcp
@melvincarvalho
melvincarvalho / an-hour-with-jspod.md
Last active May 18, 2026 11:09
An hour with jspod --mcp: notes from the agent end

An hour with jspod --mcp: notes from the agent end

An honest first-contact report from inside a pod that speaks the Model Context Protocol


The setup

One command:

@melvincarvalho
melvincarvalho / CLA.md
Created May 13, 2026 07:58
JSS-org Contributor Assignment Agreement (CLA)

Contributor Assignment Agreement

By submitting a contribution to any repository in the JavaScriptSolidServer GitHub organisation, you ("Contributor") agree to the following with Melvin Carvalho ("Assignee").

This agreement is required so that Assignee can maintain a clean copyright record, grant downstream users the rights they need, and respond to license-compliance or attribution questions across the project's full history.

@melvincarvalho
melvincarvalho / response-to-instagibbs.md
Created March 12, 2026 15:43
Response: The 80-Byte OP_RETURN Limit Was Working — a data-driven response to instagibbs' gist

Response: The 80-Byte OP_RETURN Limit Was Working

A data-driven response to instagibbs' gist on retiring the OP_RETURN limit.

Caveat Emptor

The original gist presents a reasonable-sounding engineering case. This response does not question the author's intent. It questions the claims against the available data, much of which post-dates the original gist.


@melvincarvalho
melvincarvalho / npm-init-agent.md
Last active January 23, 2026 11:59
npm init agent - Create cryptographic identity for AI agents

npm init agent

Cryptographic identity for AI agents in one command.

git init
npm init agent
@melvincarvalho
melvincarvalho / RDFLIB-LITE-README.md
Created January 18, 2026 00:38
rdflib-lite: Minimal RDF library for JSON/LION - 97.9% smaller than rdflib.js (5.5KB vs 263KB)

rdflib-lite

Minimal RDF library optimized for JSON/Linked Objects only

Code golf version of rdflib.js with 97% smaller bundle size and zero dependencies.

📊 Bundle Size Comparison

Library Minified Dependencies Source Lines Savings