mesh/skill_marketplace/admin_skill/SKILL.md
Admin operations for the Heurist Skill Marketplace. Use this skill when the user asks to add, ingest, approve, reject, remove, update, or list skills in the Heurist marketplace. Also triggers for checking upstream changes, updating external API dependencies, updating metrics (stars/downloads), re-ingesting skills, or any marketplace database management task. Working directory is heurist-agent-framework. Always use uv run python to run scripts.
npx skillsauth add heurist-network/heurist-agent-framework heurist-skill-marketplace-adminInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Full command reference and DB/API operations: see references/commands.md.
.env)SKILLS_DATABASE_URL — PostgreSQL connection stringINTERNAL_API_KEY — Admin HTTP endpoint keyAI3_API_KEY — Autonomys Auto Drive storage keyGITHUB_TOKEN — (optional) GitHub API rate limits# 1. Ingest from GitHub URL
uv run python -m mesh.skill_marketplace.scripts.ingest_skill \
--url https://raw.githubusercontent.com/OWNER/REPO/main/SKILL.md \
--slug my-skill \
--category Stocks \
--label analytics \
--risk-tier low \
--source-url https://github.com/OWNER/REPO \
--author '{"display_name": "Name", "github_username": "username"}'
# 2. Check it's in DB as draft
uv run python -m mesh.skill_marketplace.scripts.list_skills --status draft
# 3. Approve
uv run python -m mesh.skill_marketplace.scripts.approve_skill --slug my-skill
# 4. Confirm live
uv run python -m mesh.skill_marketplace.scripts.list_skills --status verified
| Flag | Purpose |
|---|---|
| --label analytics | Repeatable secondary label; use for overlapping capability/domain metadata |
| --source-path skills/my-skill | Subfolder in multi-skill repos |
| --external-api-dependency Name | Repeat for each external API (e.g. CoinGecko) |
| --reference-url URL | Repeat for admin-only recordkeeping links (announcement tweet, project site, docs) |
| --requires-secrets | Skill needs API tokens/env vars |
| --requires-private-keys | Skill accesses private keys |
| --requires-exchange-api-keys | Needs exchange credentials |
| --can-sign-transactions | Skill signs on-chain txs |
| --uses-leverage | Leveraged trading |
| --accesses-user-portfolio | Reads user portfolio data |
| --update | Update existing skill in place (preserves id, download_count, star_count, created_at) |
The name field is parsed from SKILL.md frontmatter and may be generic (e.g., tools, gas). Always check the ingest log output. Fix ambiguous names before approving — use the DB update snippet in references/commands.md.
Good naming: gas → Ethereum Gas Tracker, tools → Ethereum Developer Tools, opensea → OpenSea NFT API
Stocks, Macro, Crypto, Developer, Social
Use category only for the single top-level browse bucket.
Use labels for overlapping metadata such as:
analytics, signals, screening, portfolio, research, execution, mcp, options, defi, ethereum, news, twitter
Do not duplicate built-in capability fields with labels. These are already first-class DB columns:
requires_secrets, requires_private_keys, requires_exchange_api_keys, can_sign_transactions, uses_leverage, accesses_user_portfolio
low (read-only/analysis), medium (writes, no keys), high (keys, signing, leverage)
# List skills
uv run python -m mesh.skill_marketplace.scripts.list_skills
uv run python -m mesh.skill_marketplace.scripts.list_skills --status draft
uv run python -m mesh.skill_marketplace.scripts.list_skills --status verified
# Update category + labels
curl -X PATCH https://mesh.heurist.xyz/admin/skills/SKILL_ID/taxonomy \
-H "X-API-Key: $INTERNAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"category": "Crypto", "labels": ["defi", "analytics"]}'
# Approve
uv run python -m mesh.skill_marketplace.scripts.approve_skill --slug my-skill
# Check upstream changes
uv run python -m mesh.skill_marketplace.scripts.check_upstream
Use --update to update an existing skill in place — no need to delete first. Preserves id, download_count, star_count, and created_at. Resets status to draft so you must re-approve.
# 1. Update from source
uv run python -m mesh.skill_marketplace.scripts.ingest_skill \
--url https://raw.githubusercontent.com/OWNER/REPO/main/SKILL.md \
--slug my-skill \
--category Crypto \
--label defi \
--source-url https://github.com/OWNER/REPO \
--update
# 2. Re-approve
uv run python -m mesh.skill_marketplace.scripts.approve_skill --slug my-skill
For reject, remove, update metrics, update external API dependencies, update reference URLs, local file/dir ingest, and Admin HTTP API calls — see references/commands.md.
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.
development
Run, watch, debug, and extend OpenClaw QA testing with qa-lab and qa-channel. Use when Codex needs to execute the repo-backed QA suite, inspect live QA artifacts, debug failing scenarios, add new QA scenarios, or explain the OpenClaw QA workflow. Prefer the live OpenAI lane with regular openai/gpt-5.4 in fast mode; do not use gpt-5.4-pro or gpt-5.4-mini unless the user explicitly overrides that policy.
development
End-to-end Parallels smoke, upgrade, and rerun workflow for OpenClaw across macOS, Windows, and Linux guests. Use when Codex needs to run, rerun, debug, or interpret VM-based install, onboarding, gateway smoke tests, latest-release-to-main upgrade checks, fresh snapshot retests, or optional Discord roundtrip verification under Parallels.