Yolfi Payments
yolfinance/yolfi-agent
Add Yolfi crypto checkout, payment links, and webhook handling to an app through @yolfi/agent or the Yolfi MCP server.
Lets several AI agents pool funds in a shared Yellow Network app session, reallocate off-chain and co-sign one final split, covering the full session lifecycle.
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install internet-court/internet-court-skill yellow-settlement-room --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .claude/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .claude/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-roomType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install internet-court/internet-court-skill yellow-settlement-room --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .agents/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .agents/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .agents/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install internet-court/internet-court-skill yellow-settlement-room --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .cursor/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .cursor/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/internet-court/internet-court-skill.git --path vendored/yellow/yellow-settlement-room--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install internet-court/internet-court-skill yellow-settlement-room --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .gemini/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .gemini/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install internet-court/internet-court-skill yellow-settlement-roomInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .github/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .github/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .github/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install internet-court/internet-court-skill yellow-settlement-room --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/vendored/yellow/yellow-settlement-room .opencode/skills/yellow-settlement-room && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "yellow-settlement-room" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/yellow/yellow-settlement-room into .opencode/skills/yellow-settlement-room/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "yellow-settlement-room", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
yellow-settlement-roomLets several AI agents pool funds in a shared Yellow Network app session, reallocate off-chain and co-sign one final split, covering the full session lifecycle.
A session is an off-chain ledger hosted by the Yellow node, with a set of participants, signature weights and a quorum. It opens with zero allocations, so only agents that deposit need funds. Agents then reallocate between themselves without gas for each step, and the final allocation changes only with signatures that meet the quorum.
The skill walks through connecting, the funded-account prerequisite, creating the session, deposit, operate, withdraw and close, using the @yellow-org/sdk package and following the official lifecycle example, generalized from two participants to many. Each agent signs only with its own key in its own process. The skill never funds accounts, and if a balance is short it stops and reports it.
A trust boundary section is explicit that this is not trustless escrow: the guarantee rests on signatures over a ledger the Yellow node hosts, so exposure should be sized with that in mind.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit fa89195. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Yellow Settlement Room loads about 4.2k tokens when it runs, and up to ~6.4k if it reads all its reference files. Until then it costs about 115 tokens; SKILL.md has 1,606 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from internet-court/internet-court-skill at commit fa89195, republished under its MIT licence (© internet-court). 1,606 words, ~4,189 tokens.
.claude/skills/yellow-settlement-room/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Use this skill when several AI agents need to hold funds together and settle one outcome: open a shared session, each agent's balance is tracked inside it, they reallocate between themselves off-chain with no gas per step, and they co-sign the final split.
The session holds N agents, not two. A payment rail moves value from one payer to one payee; a swarm of agents settling over a rail needs a separate escrow per pair. One session settles all of them at once: one object, one deposit per agent, one final allocation. That is the shape to reach for when more than two agents have a stake in the same outcome.
This skill covers the app-session (virtual) layer only. It operates on funds that are already in an account balance at Yellow. A session opens with zero allocations, so not every participant needs funds - only a participant that makes a deposit does. Getting funds into an account is a one-time on-chain step, out of scope here - see ## Prerequisite. This skill never funds accounts; before a participant deposits, check its balance with client.getBalances(wallet), and if it is short, stop and report it.
Package: @yellow-org/sdk (v1). A complete runnable reference is the official example at github.com/layer-3/docs, examples/nitrolite-v1-lifecycle; the flow below matches it exactly, generalised from two participants to N. For method lookups, the docs MCP: npx -y @yellow-org/sdk-mcp@^1.
Each agent runs its own client with its own key (backend: private-key based)
-> agents open one app session: N participants, signature weights, quorum
(opens with ZERO allocations; nobody needs funds yet)
-> a depositing agent commits its OWN funds into the session
(only depositors need a funded account; others can hold zero)
-> agents reallocate between themselves (operate), each update co-signed to quorum
-> withdraw / close: the final split releases back to channels, withdrawable on-chainThe session is an off-chain ledger hosted by the Yellow node. Its guarantee is signature-based: no agent's allocation changes without signatures meeting the quorum. It is not a trustless escrow; read ## Trust Boundary before sizing exposure.
## Roles and key separation.client.getBalances(wallet) and if it is short, stop and report the shortfall. Do not attempt deposit, approveToken, or transfer to self-fund.## Weights and Quorum.A session is created with zero allocations, so not every participant needs funds. Only a participant that makes a deposit needs a funded account balance at Yellow for the asset. (An account is backed by an on-chain state channel, but you can treat it as the participant's balance.) That balance is the ceiling on what a depositor can commit and the most it can lose. Check a depositor's balance before it deposits:
const balances = await client.getBalances(wallet); // account balances at Yellow, per assetFunding is a one-time on-chain operation, done once before any session and out of scope here. The funding calls, for reference, are:
await client.setHomeBlockchain(asset, chainId);
await client.approveToken(chainId, asset, amount);
await client.deposit(chainId, asset, amount);
await client.checkpoint(asset); // finalizes the deposit on-chainFor the exact funding sequence and any Node-specific transaction setup, see the quickstart at docs.yellow.org/nitrolite/build/getting-started/quickstart and the official nitrolite-v1-lifecycle example.
import { Client, createSigners, withBlockchainRPC } from '@yellow-org/sdk';
const signers = createSigners(privateKey); // 0x-prefixed 32-byte hex
const client = await Client.create(
wsURL, // sandbox: wss://nitronode-sandbox.yellow.org/v1/ws
signers.stateSigner, signers.txSigner,
withBlockchainRPC(chainId, rpcURL),
);There is no login handshake; authorization is per-call, from the signatures inside each payload. Each agent runs its own client with its own key, in its own process. The examples below show several signers together for readability; in a real agent-to-agent deployment each agent constructs only its own signer and signs the shared state hash with its own key.
Agent-to-agent means the keys are distributed. You cannot take several agents' private keys into one client. Model these roles:
createAppSession / submitAppSessionDeposit / submitAppState).The cross-process pattern uses the same methods as the single-process code below:
// Proposer (any agent or a coordinating server): build the state, pack the hash.
const hash = packAppStateUpdateV1(update); // portable 0x string, safe to send over the wire
// Each signer, in its OWN process with its OWN key:
const mySig = await new AppSessionWalletSignerV1(new EthereumMsgSigner(myKey)).signMessage(hash);
// ...return mySig to the proposer over your own transport (HTTP, queue, etc.)
// Submitter: gather signatures until summed weight meets quorum, then submit once.
await client.submitAppState(update, [sigFromA, sigFromB, sigFromC]);The protocol carries no transport for moving the hash out and the signatures back; that is the integrator's to build. A common topology: a Nitronode, agents connecting to a coordinating server (an app), and agents transacting agent-to-agent through shared sessions. The single-process code below co-locates keys only for readability and local testing; do not ship it that way.
import {
AppSessionWalletSignerV1, EthereumMsgSigner,
packCreateAppSessionRequestV1, type AppDefinitionV1,
} from '@yellow-org/sdk';
// One session signer per participant, a plain wallet signer (type 0xa1).
// LOCAL TEST ONLY: holding pkA, pkB, pkC in one process is a shortcut for a
// smoke test or a custodial server. In a real deployment each agent builds ONLY
// its own signer, in its own process, from its own key (see Roles and key
// separation above). Session keys are an optional friction-reducer, omitted here.
const signerA = new AppSessionWalletSignerV1(new EthereumMsgSigner(pkA));
const signerB = new AppSessionWalletSignerV1(new EthereumMsgSigner(pkB));
const signerC = new AppSessionWalletSignerV1(new EthereumMsgSigner(pkC));
const definition: AppDefinitionV1 = {
applicationId: appId, // ^[a-z0-9_-]{1,66}$
participants: [
{ walletAddress: addrA, signatureWeight: 1 },
{ walletAddress: addrB, signatureWeight: 1 },
{ walletAddress: addrC, signatureWeight: 1 },
],
quorum: 3, // = sum of weights -> unanimous (the safe default)
nonce: BigInt(Date.now()) * 1_000_000n + BigInt(Math.floor(Math.random() * 1_000_000)),
};
const createPayload = packCreateAppSessionRequestV1(definition, sessionData);
const created = await client.createAppSession(definition, sessionData, [
await signerA.signMessage(createPayload),
await signerB.signMessage(createPayload),
await signerC.signMessage(createPayload), // creation must itself meet quorum
]);
// created.appSessionId, created.version, created.statusThe participant set is immutable after creation; no agent can be added later. Creation must meet quorum, so every participant that makes up the quorum co-signs the create request.
const { sessions } = await client.getAppSessions({ appSessionId });
const session = sessions[0]; // session.version, session.isClosed, session.allocationsRead this immediately before signing any update: version must be exactly session.version + 1n.
All updates share one shape; intent is a number, not a string.
import { AppStateUpdateIntent, packAppStateUpdateV1, type AppStateUpdateV1 } from '@yellow-org/sdk';
import { Decimal } from 'decimal.js'; // named import: default import is not constructable under NodeNext
// DEPOSIT (own endpoint): a depositor commits its OWN funds into the session.
// List ONLY the depositing participant in allocations; do not add zero-value
// entries for participants who are not depositing here.
const deposit: AppStateUpdateV1 = {
appSessionId, intent: AppStateUpdateIntent.Deposit, version: session.version + 1n,
allocations: [
{ participant: addrA, asset, amount: new Decimal('10') },
],
sessionData: JSON.stringify({ intent: 'fund' }),
};
const dp = packAppStateUpdateV1(deposit);
// The deposit state still needs signatures meeting quorum. Each agent signs the
// hash with its OWN key in its OWN process; here they are shown together only for
// readability. The submitter gathers the signatures and calls the node.
await client.submitAppSessionDeposit(
deposit, [await signerA.signMessage(dp), await signerB.signMessage(dp), await signerC.signMessage(dp)],
asset, new Decimal('10'), // amount must equal the deposit allocation total
);// OPERATE: reallocate between participants. Per-asset totals must stay CONSTANT,
// and every non-zero allocation must be restated (not a delta).
const operate: AppStateUpdateV1 = {
appSessionId, intent: AppStateUpdateIntent.Operate, version: /* live */ session.version + 1n,
allocations: [
{ participant: addrA, asset, amount: new Decimal('4') },
{ participant: addrB, asset, amount: new Decimal('4') },
{ participant: addrC, asset, amount: new Decimal('2') },
],
sessionData: JSON.stringify({ round: 'payout' }),
};
const op = packAppStateUpdateV1(operate);
await client.submitAppState(operate, [ /* signatures summing to quorum */
await signerA.signMessage(op), await signerB.signMessage(op), await signerC.signMessage(op),
]);Withdraw (intent 2) may only decrease allocations and releases to channels. Close (intent 3) must restate the current allocation exactly, releases everything, and is terminal - never close while work or a review is outstanding. Both use submitAppState the same way.
Signatures are collected across agents, off the wire. The proposer builds the state and hash; each agent signs that hash with its own key in its own process; the submitter gathers the signatures until summed weight meets quorum and calls the node. The protocol provides no transport for this exchange - it is the caller's responsibility. Duplicate signers count once.
signatureWeight per participant, quorum = the weight threshold a state needs to be valid.
State which regime a session is in when you design it.
State this before any agent puts value at risk. Do not soften it.
vendored/arkhai/alkahest-user) for a bilateral, one-shot deal that needs trustless on-chain escrow with a reclaim timeout. Reach for a settlement room when the deal is multiparty and many-update, which a single bilateral escrow cannot express.version must be exactly session.version + 1n. Concurrent signers collide and one update fails cleanly (the node serializes). Re-read the live version, re-collect signatures, retry. Most common friction in a busy room.submitAppSessionDeposit fails if the account is not funded (on the sandbox the node error reads no channel state to advance). This is the prerequisite, not a bug - check getBalances(wallet) first and report a shortfall.Operate that drops a non-zero allocation or whose per-asset total drifts: rejected.Close while work or a review is outstanding: terminal and unrecoverable.getBalances(wallet), and its deposit as the max it can lose. Non-depositing participants need no funds.## Trust Boundary, in plain language, before any value moves.references/agent-lifecycle.md - the full multiparty flow as runnable code, matching the official nitrolite-v1-lifecycle example.© internet-court, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in vendored/yellow/yellow-settlement-room of internet-court/internet-court-skill.
Open the folder on GitHubat commit fa89195
Yellow Settlement Room next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Yellow Settlement Room this skillinternet-court/internet-court-skill | 6.6k | — | ~4.2k | Automated safety check: Pass | MIT | |
| Yolfi Paymentsyolfinance/yolfi-agent | 178 | — | ~1.2k | Automated safety check: Pass | MIT | |
| PayRam Payment AnalyticsPayRam/payram-mcp | 158 | — | ~4.1k | Automated safety check: Pass | None | |
| Payram Payment IntegrationPayRam/payram-mcp | 158 | — | ~1.8k | Automated safety check: Pass | None | |
| Gentech BlockrunBlockRunAI/blockrun-mcp | 391 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Finance District MCPaeonfun/aeon | 770 | — | ~1.1k | Automated safety check: Pass | MIT |
yolfinance/yolfi-agent
Add Yolfi crypto checkout, payment links, and webhook handling to an app through @yolfi/agent or the Yolfi MCP server.
PayRam/payram-mcp
Queries a PayRam server's dashboard data through its REST APIs with a Bearer token: payment search, daily volume, unswept balances, sweep history and on-ramp metrics.
PayRam/payram-mcp
Integrate crypto payments into any web application with PayRam.
BlockRunAI/blockrun-mcp
GenTech Labs' integration patterns for BlockRun MCP from Hermes Agent.
aeonfun/aeon
Multichain non-custodial agent wallet via Finance District - check balances, prices, and best DeFi yields, move funds, swap, and make x402 paid API calls across EVM, Solana, Bitcoin, and Sui.
LeoYeAI/openclaw-master-skills
Integrates Nevermined payment infrastructure into AI agents, MCP servers, Google A2A agents, and REST APIs.
internet-court/internet-court-skill
Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.
internet-court/internet-court-skill
Guides building on the 0G Compute Network, a decentralized GPU marketplace for AI inference and fine-tuning, with SDK patterns and CLI commands.
internet-court/internet-court-skill
Creates, trades and settles permissionless prediction markets on Solana with any SPL token as collateral, including social-media and custom-oracle markets.
internet-court/internet-court-skill
Connects an agent to the BNB Chain MCP server to read blocks and contracts, move tokens and NFTs, register ERC-8004 agents and use Greenfield storage.
internet-court/internet-court-skill
Specifies how a GenLayer Intelligent Contract decision about an agent's performance becomes an ERC-7710 revocation or policy change, through a relayer or bridge and an EVM controller.
internet-court/internet-court-skill
Specifies how a GenLayer Intelligent Contract should supervise an AI agent, with review rubrics, evidence schemas and continue, warn, constrain or revoke decisions.
Works with
Categories
Lets several AI agents pool funds in a shared Yellow Network app session, reallocate off-chain and co-sign one final split, covering the full session lifecycle. A session is an off-chain ledger hosted by the Yellow node, with a set of participants, signature weights and a quorum. It opens with zero allocations, so only agents that deposit need funds.
Yellow Settlement Room fits situations like: several agents need to hold funds together and settle one outcome; replacing per-pair escrows with a single multiparty session; setting up weights and quorum for a shared agent session; checking agent balances before a deposit into a session.
Run `npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a claude-code`. Or copy the skill folder (vendored/yellow/yellow-settlement-room in internet-court/internet-court-skill) into .claude/skills/yellow-settlement-room in your project. Claude Code loads it when a task matches its description.
Run `npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a codex`. Or copy the skill folder (vendored/yellow/yellow-settlement-room in internet-court/internet-court-skill) into .agents/skills/yellow-settlement-room in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add internet-court/internet-court-skill --skill yellow-settlement-room -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/yellow-settlement-room, .gemini/skills/yellow-settlement-room, .github/skills/yellow-settlement-room and .opencode/skills/yellow-settlement-room in your project.
Going by SKILL.md and its folder, Yellow Settlement Room needs the command-line tools its instructions call (npx). Our summary lists: The @yellow-org/sdk package; Accounts already funded at Yellow for depositing agents; A separate key for each participating agent.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Yellow Settlement Room is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Yellow Settlement Room: Yolfi Payments (yolfinance/yolfi-agent, 178 stars), PayRam Payment Analytics (PayRam/payram-mcp, 158 stars), Payram Payment Integration (PayRam/payram-mcp, 158 stars) and Gentech Blockrun (BlockRunAI/blockrun-mcp, 391 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
internet-court (a GitHub organization) maintains it in internet-court/internet-court-skill, which has 6,551 GitHub stars. The repository holds 80 skills in this directory. The repository was last updated on August 19, 2026.
Source: internet-court/internet-court-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.