Fantasy Framework Development Guide
qq362946/Fantasy
Development and review guide for the Fantasy C# distributed game server framework: ECS, FTask, routing, service discovery, config and databases.
AI shopping matchmaking agent for OpenClaw and Hermes. An agent skill from LeoYeAI/openclaw-master-skills.
$ npx skills add LeoYeAI/openclaw-master-skills --skill mai -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install LeoYeAI/openclaw-master-skills mai --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/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/mai .claude/skills/mai && 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 "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .claude/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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/LeoYeAI/openclaw-master-skills/tree/main/skills/maiType 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 LeoYeAI/openclaw-master-skills --skill mai -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install LeoYeAI/openclaw-master-skills mai --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/mai .agents/skills/mai && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .agents/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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 LeoYeAI/openclaw-master-skills --skill mai -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install LeoYeAI/openclaw-master-skills mai --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/mai .cursor/skills/mai && 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 "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .cursor/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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/LeoYeAI/openclaw-master-skills.git --path skills/mai--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 LeoYeAI/openclaw-master-skills --skill mai -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install LeoYeAI/openclaw-master-skills mai --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/mai .gemini/skills/mai && 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 "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .gemini/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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 LeoYeAI/openclaw-master-skills maiInstalls 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 LeoYeAI/openclaw-master-skills --skill mai -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/mai .github/skills/mai && 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 "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .github/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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 LeoYeAI/openclaw-master-skills --skill mai -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install LeoYeAI/openclaw-master-skills mai --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/mai .opencode/skills/mai && 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 "mai" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/mai into .opencode/skills/mai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mai", 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.
maiAI shopping matchmaking agent for OpenClaw and Hermes. An agent skill from LeoYeAI/openclaw-master-skills.
Mai is an agent skill from LeoYeAI/openclaw-master-skills. AI shopping matchmaking agent for OpenClaw and Hermes. Use when merchants want to publish products, manage stock, answer buyer questions, and handle order requests; or when buyers want to discover merchants and products, compare prices, discuss with sellers, read reviews, and create trackable orders. Supports local-first transaction tracking and registry-backed PSP custody records.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 19 other files, including scripts and reference files (for example `.clawhub/origin.json`, `README.md` and `_meta.json`).
It sits in Game Development, covering Multiplayer and networking. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e5199b5. 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.
Ships 3 files in scripts/ (Python and Shell), which the agent can run.
Shell commands in SKILL.md call:
python3bashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Mai loads about 2.2k tokens when it runs, and up to ~5.4k if it reads all its reference files. Until then it costs about 97 tokens; SKILL.md has 784 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); the scripts in this folder are not scanned.
The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 784 words, ~2,242 tokens.
.claude/skills/mai/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.Mai helps buyers and merchants complete shopping matchmaking through an AI agent. It keeps deterministic marketplace state in scripts/mai.py while the host model handles natural language, negotiation, summaries, and risk explanations.
Mai can run local-only or registry-backed. Use local-only for one agent's private catalog. Use registry-backed discovery when buyers and merchants are on different machines or agent profiles.
message add before forming or updating an order.Use the CLI helper for deterministic state:
python3 scripts/mai.py merchant create --id seller-a --name "West Lake Tea" --city Hangzhou --contact "wechat:westlake" --tags "tea,gift"
python3 scripts/mai.py product add --merchant seller-a --sku tea-a --title "Longjing Gift Box" --price 88 --stock 5 --category tea --tags "longjing,gift"
python3 scripts/mai.py search products --query "longjing tea" --format json
python3 scripts/mai.py compare --skus tea-a,tea-b --format json
python3 scripts/mai.py order create --buyer alice --merchant seller-a --sku tea-a --quantity 2 --offer-price 86Default data path: ~/.local/share/mai/mai.json.
Use --data /path/to/mai.json for a project-local or test database.
Install the published OpenClaw pair:
clawhub --workdir ~/.openclaw/workspace --dir skills install mai
openclaw plugins install clawhub:mai-pluginmai is the skill. mai-plugin is an optional lightweight OpenClaw native bridge for tools and /mai command support.
Local checkout install:
cd /Users/jianghaidong/coding/mai
bash scripts/install.sh --bothInstall only one ecosystem:
bash scripts/install.sh --openclaw
bash scripts/install.sh --hermesThe installer creates symlinks:
~/.openclaw/workspace/skills/mai~/.hermes/skills/commerce/maiAfter installation, restart the host agent if it does not refresh skills automatically. Hermes can preload Mai with hermes -s mai.
Run a registry marketplace:
python3 scripts/mai_registry.py issue-key --data ./mai-registry.json --token admin-token --role admin --subject ops-admin
python3 scripts/mai_registry.py issue-key --data ./mai-registry.json --token seller-token --role merchant --subject seller-a --merchant-id seller-a
python3 scripts/mai_registry.py issue-key --data ./mai-registry.json --token buyer-token --role buyer --subject alice --buyer-id alice
python3 scripts/mai_registry.py serve --data ./mai-registry.json --host 127.0.0.1 --port 8765 --rate-limit-per-minute 60Merchant agents publish local supply:
python3 scripts/mai.py --data ./seller.json registry push --url http://127.0.0.1:8765 --api-key seller-tokenBuyer agents discover supply and create demand:
python3 scripts/mai.py --data ./buyer.json registry search-products --url http://127.0.0.1:8765 --query "longjing tea" --format json
python3 scripts/mai.py --data ./buyer.json registry message --url http://127.0.0.1:8765 --api-key buyer-token --buyer alice --merchant seller-a --sku tea-a --text "Can this ship today?"
python3 scripts/mai.py --data ./buyer.json registry order --url http://127.0.0.1:8765 --api-key buyer-token --buyer alice --merchant seller-a --sku tea-a --quantity 2 --offer-price 86
python3 scripts/mai.py --data ./buyer.json registry payment-hold --url http://127.0.0.1:8765 --api-key buyer-token --buyer alice --order ORD-0001Merchant agents pull buyer messages and draft orders:
python3 scripts/mai.py --data ./seller.json registry pull --url http://127.0.0.1:8765 --api-key seller-token --merchant seller-aRead references/registry-api.md before changing registry integrations.
pending_review; do not show them in search until an admin approves them.registry payment-hold only as PSP-backed custody tracking. The bundled demo provider is not real money movement.registry payment-release and registry payment-refund.python3 scripts/mai.py merchant create --id ID --name NAME --city CITY --contact CONTACT --tags "A,B"python3 scripts/mai.py product add --merchant ID --sku SKU --title TITLE --price N --stock Npython3 scripts/mai.py product stock --sku SKU --merchant ID --adjust N --reason "restock or correction"python3 scripts/mai.py message add --buyer BUYER --merchant ID --sku SKU --sender merchant --text "..."python3 scripts/mai.py order quote ...
python3 scripts/mai.py order update --order ORD-0001 --status confirmed --actor merchantpython3 scripts/mai.py search merchants --query "tea hangzhou" --format jsonpython3 scripts/mai.py search products --query "longjing gift" --max-price 100 --format jsonpython3 scripts/mai.py compare --skus sku-a,sku-b --format jsonpython3 scripts/mai.py review list --merchant ID --format jsonpython3 scripts/mai.py message add --buyer BUYER --merchant ID --sku SKU --text "..."python3 scripts/mai.py order create --buyer BUYER --merchant ID --sku SKU --quantity NMai tracks transactions without custody:
draft -> quoted -> confirmed -> payment_pending -> paid_external -> fulfilled -> completed
Disputes can move through:
disputed -> resolved/refunded/cancelled
Stock is reserved when an order becomes confirmed. Local-only payments are recorded as payment_url and payment_reference. Registry payments are PSP custody records; the agent must say the bundled demo provider is not real escrow or money movement.
Read references/transaction-model.md when handling non-happy-path order, refund, dispute, or payment questions.
Read references/data-schema.md when integrating Mai with a future hosted marketplace or sync service.
For product discovery, answer with:
For merchant operations, answer with:
For order updates, answer with:
Before claiming the package is ready:
python3 scripts/mai.py --helppython3 scripts/mai_registry.py --helpbash scripts/install.sh --both --dry-runpython3 -m unittest discover -s testsbash scripts/verify.shSKILL.md has no scaffold placeholders.README.md, package.json, clawhub.json, plugins/mai-plugin/openclaw.plugin.json, and agents/openai.yaml use the mai and mai-plugin names consistently.© LeoYeAI, 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 15 other files (scripts, references) in skills/mai of LeoYeAI/openclaw-master-skills.
Open the folder on GitHubat commit e5199b5
Mai 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 |
|---|---|---|---|---|---|---|
| Mai this skillLeoYeAI/openclaw-master-skills | 2.2k | — | ~2.2k | Automated safety check: Pass | MIT | |
| Fantasy Framework Development Guideqq362946/Fantasy | 1.4k | — | ~5.8k | Automated safety check: Pass | Custom licence | |
| Validate GsdkPlayFab/gsdk | 170 | — | ~645 | Automated safety check: Pass | Apache-2.0 | |
| Portal Connectgosuda/portal-tunnel | 272 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Kenshi Manual Freeplay Sessionnhoral/KenshiCoop | 283 | — | ~835 | Automated safety check: Pass | AGPL-3.0 | |
| Dota2 Game LogicXavierCHN/x-template | 217 | — | ~2.7k | Automated safety check: Pass | MIT |
qq362946/Fantasy
Development and review guide for the Fantasy C# distributed game server framework: ECS, FTask, routing, service discovery, config and databases.
PlayFab/gsdk
Validates PlayFab Game Server SDK (GSDK) integrations in game server projects.
gosuda/portal-tunnel
Reach, inspect, or consume a service that someone published through a Portal relay.
nhoral/KenshiCoop
Launches two KenshiCoop clients side by side on an ultrawide monitor, booted to the title screen, so one person can play host and join and connect manually through F2.
XavierCHN/x-template
DOTA2 自定义游戏服务端逻辑开发指南。触发词:游戏逻辑、服务端、server、game mode、游戏模式、GameRules、modifier、timer、lua、TSTL。Use when user asks to create or modify DOTA2 custom game server-side logic, game mode configuration…
Jeffallan/claude-skills
Covers game programming in Unity and Unreal Engine: ECS design, physics, multiplayer networking, shaders and profiling toward a 60 FPS target.
LeoYeAI/openclaw-master-skills
Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.
LeoYeAI/openclaw-master-skills
Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.
LeoYeAI/openclaw-master-skills
Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.
LeoYeAI/openclaw-master-skills
Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.
LeoYeAI/openclaw-master-skills
Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.
LeoYeAI/openclaw-master-skills
Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.
Categories
AI shopping matchmaking agent for OpenClaw and Hermes. An agent skill from LeoYeAI/openclaw-master-skills. Mai is an agent skill from LeoYeAI/openclaw-master-skills. AI shopping matchmaking agent for OpenClaw and Hermes.
Mai fits situations like: merchants want to publish products; answer buyer questions; handle order requests; buyers want to discover merchants and products.
Run `npx skills add LeoYeAI/openclaw-master-skills --skill mai -a claude-code`. Or copy the skill folder (skills/mai in LeoYeAI/openclaw-master-skills) into .claude/skills/mai in your project. Claude Code loads it when a task matches its description.
Run `npx skills add LeoYeAI/openclaw-master-skills --skill mai -a codex`. Or copy the skill folder (skills/mai in LeoYeAI/openclaw-master-skills) into .agents/skills/mai 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 LeoYeAI/openclaw-master-skills --skill mai -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mai, .gemini/skills/mai, .github/skills/mai and .opencode/skills/mai in your project.
Going by SKILL.md and its folder, Mai needs Python and a shell for the scripts in its folder and the command-line tools its instructions call (python3 and bash). Our summary lists: Python 3; A Bash shell.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Mai is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 9k 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 3.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Mai: Fantasy Framework Development Guide (qq362946/Fantasy, 1.4k stars), Validate Gsdk (PlayFab/gsdk, 170 stars), Portal Connect (gosuda/portal-tunnel, 272 stars) and Kenshi Manual Freeplay Session (nhoral/KenshiCoop, 283 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,160 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.
Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.