alfworld-inventory-management
This skill tracks which objects have been collected and which remain to be found for multi-object tasks. It should be triggered when working with tasks requiring multiple instances of the same object type. The skill maintains a count of collected vs. needed objects and guides the search for remaining items.
SKILL.md
| Name | alfworld-inventory-management |
| Description | This skill tracks which objects have been collected and which remain to be found for multi-object tasks. It should be triggered when working with tasks requiring multiple instances of the same object type. The skill maintains a count of collected vs. needed objects and guides the search for remaining items. |
SkillNet is an open-source platform that treats AI agent skills as first-class, shareable packages — like npm for AI capabilities. It provides end-to-end tooling to search, install, create, evaluate, and organize skills, so agents can learn from the community and continuously grow.
<div align="center"> <img src="images/graph.gif" width="100%" alt="SkillNet Knowledge Graph"> </div>📢 News
-
📄 [2026-03] SkillNet Technical Report Released! — We've published the comprehensive SkillNet Technical Report, covering the system architecture, automated creation pipeline, multi-dimensional evaluation methodology, and the released open-source toolkits. View Report →
-
🤖 [2026-02] OpenClaw Integration Released! — SkillNet is now available as a built-in skill for OpenClaw. One command to install, zero config to use. The agent automatically searches, downloads, creates, evaluates, and analyzes skills on your behalf. Get started →
✨ Key Features
| Feature | Description |
|---|---|
| 🔍 Search | Find skills via keyword match or AI semantic search across 500+ curated skills |
| 📦 One‑Line Install | skillnet download <url> — grab any skill from GitHub in seconds |
| ✨ Auto‑Create | Convert GitHub repos, PDFs/PPTs/Word docs, conversation logs, or text prompts into structured skill packages using LLMs |
| 📊 5‑D Evaluation | Score skills on Safety · Completeness · Executability · Maintainability · Cost‑Awareness |
| 🕸️ Skill Graph | Auto-discover similar_to · belong_to · compose_with · depend_on links between skills |
📖 Table of Contents
- Quick Start
- REST API
- Python SDK
- CLI Reference
- Configuration
- Example: Scientific Discovery
- OpenClaw Integration
- Contributing
- License
🚀 Quick Start
pip install skillnet-ai
from skillnet_ai import SkillNetClient
client = SkillNetClient() # No API key needed for search & download
# Search for skills
results = client.search(q="pdf", limit=5)
print(results[0].skill_name, results[0].stars)
# Install a skill
client.download(url=results[0].skill_url, target_dir="./my_skills")
🌐 SkillNet Web — Search, download individual skills, and explore curated skill collections through the SkillNet website.
<div align="center">https://github.com/user-attachments/assets/9f9d35b0-36fd-4d7d-a072-39afa380b241
</div>🤖 OpenClaw + SkillNet — See SkillNet in action with OpenClaw. The agent automatically searches, creates, evaluates, and analyzes skills on your behalf. Learn more →
<div align="center">https://github.com/user-attachments/assets/9d49a00c-827d-47a4-8954-0e6b977ca547
</div>🌐 REST API
The SkillNet search API is free, public, and requires no authentication.
# Keyword search
curl "http://api-skillnet.openkg.cn/v1/search?q=pdf&sort_by=stars&limit=5"
# Semantic search
curl "http://api-skillnet.openkg.cn/v1/search?q=reading%20charts&mode=vector&threshold=0.8"
<details>
<summary><b>📡 Full Parameter Reference</b></summary>
Endpoint: GET http://api-skillnet.openkg.cn/v1/search
| Parameter | Type | Default | Description |
|---|---|---|---|
q | string | required | Search query (keywords or natural language) |
mode | string | keyword | keyword (fuzzy match) or vector (semantic AI) |
category | string | — | Filter: Development, AIGC, Research, Science, etc. |
limit | int | 10 | Results per page (max 50) |
page | int | 1 | Page number (keyword mode only) |
min_stars | int | 0 | Minimum star count (keyword mode only) |
sort_by | string | stars | stars or recent (keyword mode only) |
threshold | float | 0.8 | Similarity threshold 0.0–1.0 (vector mode only) |
Response:
{
"data": [
{
"skill_name": "pdf-extractor-v1",
"skill_description": "Extracts text and tables from PDF documents.",
"author": "openkg-team",
"stars": 128,
"skill_url": "https://...",
"category": "Productivity"
}
],
"meta": { "query": "pdf", "mode": "keyword", "total": 1, "limit": 10 },
"success": true
}
</details>
🐍 Python SDK
Initialize
from skillnet_ai import SkillNetClient
client = SkillNetClient(
api_key="sk-...", # Required for create / evaluate / analyze
# base_url="...", # Optional: custom LLM endpoint
# github_token="ghp-..." # Optional: for private repos
)
Search
# Keyword search
results = client.search(q="pdf", limit=10, min_stars=5, sort_by="stars")
# Semantic search
results = client.search(q="analyze financial PDF reports", mode="vector", threshold=0.85)
if results:
print(f"{results[0].skill_name} ⭐{results[0].stars}")
Install
local_path = client.download(
url="https://github.com/anthropics/skills/tree/main/skills/skill-creator",
target_dir="./my_skills"
)
Create
Convert diverse sources into structured skill packages with a single call:
# From conversation logs / execution traces
client.create(trajectory_content="User: rename .jpg to .png\nAgent: Done.", output_dir="./skills")
# From GitHub repository
client.create(github_url="https://github.com/zjunlp/DeepKE", output_dir="./skills")
# From office documents (PDF / PPT / Word)
client.create(office_file="./guide.pdf", output_dir="./skills")
# From natural language prompt
client.create(prompt="A skill for web scraping article titles", output_dir="./skills")
Evaluate
Score any skill across 5 quality dimensions. Accepts local paths or GitHub URLs.
result = client.evaluate(
target="https://github.com/anthropics/skills/tree/main/skills/algorithmic-art"
)
# Returns: { "safety": {"level": "Good", "reason": "..."}, "completeness": {...}, ... }
Analyze Relationships
Map the connections between skills in a local directory — outputs similar_to, belong_to, compose_with, and depend_on edges.
relationships = client.analyze(skills_dir="./my_skills")
for rel in relationships:
print(f"{rel['source']} --[{rel['type']}]--> {rel['target']}")
# PDF_Parser --[compose_with]--> Text_Summarizer
💻 CLI Reference
The CLI ships with pip install skillnet-ai and offers the same features with rich terminal output.
| Command | Description | Example |
|---|---|---|
search | Find skills | skillnet search "pdf" --mode vector |
download | Install a skill | skillnet download <url> -d ./skills |
create | Create from any source | skillnet create log.txt --model gpt-4o |
evaluate | Quality report | skillnet evaluate ./my_skill |
analyze | Relationship graph | skillnet analyze ./my_skills |
Use
skillnet <command> --helpfor full options.
Search
skillnet search "pdf"
skillnet search "analyze financial reports" --mode vector --threshold 0.85
skillnet search "visualization" --category "Development" --sort-by stars --limit 10
Install
skillnet download https://github.com/anthropics/skills/tree/main/skills/algorithmic-art
skillnet download <url> -d ./my_agent/skills
skillnet download <private_url> --token <your_github_token>
Create
# From trajectory file
skillnet create ./logs/trajectory.txt -d ./generated_skills
# From GitHub repo
skillnet create --github https://github.com/owner/repo
# From office document (PDF, PPT, Word)
skillnet create --office ./docs/guide.pdf
# From prompt
skillnet create --prompt "A skill for extracting tables from images"
Evaluate
skillnet evaluate https://github.com/anthropics/skills/tree/main/skills/algorithmic-art
skillnet evaluate ./my_skills/web_search
skillnet evaluate ./my_skills/tool --category "Development" --model gpt-4o
Analyze
skillnet analyze ./my_agent_skills
skillnet analyze ./my_agent_skills --no-save # print only, don't write file
skillnet analyze ./my_agent_skills --model gpt-4o
<a id="configuration"></a>⚙️ Configuration
Environment Variables
| Variable | Required For | Default |
|---|---|---|
API_KEY | create · evaluate · analyze | — |
BASE_URL | Custom LLM endpoint | https://api.openai.com/v1 |
GITHUB_TOKEN | Private repos / higher rate limits | — |
searchanddownload(public repos) work without any credentials.
Linux / macOS:
export API_KEY="sk-..."
export BASE_URL="https://..." # optional
Windows PowerShell:
$env:API_KEY = "sk-..."
$env:BASE_URL = "https://..." # optional
🔬 Example: Scientific Discovery
A complete end-to-end demo showing how an AI Agent uses SkillNet to autonomously plan and execute a complex scientific workflow — from raw scRNA-seq data to a cancer target validation report.
<div align="center"> <img src="images/science.gif" width="100%" alt="Scientific Discovery Workflow"> </div> <table> <tr><td>1️⃣</td><td><b>Task</b></td><td>User provides a goal: "Analyze scRNA-seq data to find cancer targets"</td></tr> <tr><td>2️⃣</td><td><b>Plan</b></td><td>Agent decomposes into: Data → Mechanism → Validation → Report</td></tr> <tr><td>3️⃣</td><td><b>Discover</b></td><td><code>client.search()</code> finds <em>cellxgene-census</em>, <em>kegg-database</em>, etc.</td></tr> <tr><td>4️⃣</td><td><b>Evaluate</b></td><td>Skills are quality-gated via <code>client.evaluate()</code> before use</td></tr> <tr><td>5️⃣</td><td><b>Execute</b></td><td>Skills run sequentially to produce a final discovery report</td></tr> </table>👉 Try the Interactive Demo (Website → Scenarios → Science) | 📓 View Notebook
🤖 OpenClaw Integration
SkillNet integrates with OpenClaw as a built-in, lazy-loaded skill. Once installed, your agent automatically:
- Searches existing skills before starting complex tasks
- Creates new skills from repos, documents, or completed work
- Evaluates & analyzes your local library for quality and inter-skill relationships
Community skills guide execution → successful outcomes become new skills → periodic analysis keeps the library clean.
📥 Installation
Prerequisites: OpenClaw installed (default workspace: ~/.openclaw/workspace)
Option A — CLI:
npm i -g clawhub
clawhub install skillnet --workdir ~/.openclaw/workspace
openclaw gateway restart
Option B — Via OpenClaw chat:
Install the skillnet skill from ClawHub.
⚙️ Configuration
The same three parameters (API_KEY, BASE_URL, GITHUB_TOKEN) apply here — see Configuration for details.
In OpenClaw, you can pre-configure them in openclaw.json so the agent uses them silently — no prompts, no interruptions. If not configured, the agent only asks when a command actually needs the value, injects it for that single call, and never pollutes the global environment.
Recommended: pre-configure in openclaw.json:
{
"skills": {
"entries": {
"skillnet": {
"enabled": true,
"apiKey": "sk-REPLACE_ME",
"env": {
"BASE_URL": "https://api.openai.com/v1",
"GITHUB_TOKEN": "ghp_REPLACE_ME"
}
}
}
}
}
🧪 Quick Verification
In your OpenClaw chat, try:
No credentials needed:
Search SkillNet for a "docker" skill and summarize the top result.
Requires API key:
Create a skill from this GitHub repo: https://github.com/owner/repo (then evaluate it).
The skill source is also available at
skills/skillnet/for reference.
🤝 Contributing
Contributions of all kinds are welcome! Whether it's fixing a typo, adding a feature, or sharing a new skill — every contribution counts.
- Fork the repository
- Create a feature branch (
git checkout -b feat/amazing-feature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feat/amazing-feature) - Open a Pull Request
📤 Contribute skills (Website → Contribute → Submit via URL / Upload Local Skill / Batch Upload Skills)
You can also open an Issue to report bugs or suggest features.
License
This project is licensed under the MIT License.