Task-time Skill routing with source-grounded graphs and task-specific Wikis.
Overview · Results · Analysis · Quick start · Reproduction · Artifacts
SkillNet-Fabric routes a task through a large Skill ecosystem in two stages. At build time, it
compiles SKILL.md packages into source-grounded contracts, typed relations, retrieval indexes,
and a navigable global Wiki. At task time, it retrieves and expands candidates, projects a compact
task-specific Wiki, and lets an Explorer select a small Skill set with file-level evidence.
- Source-grounded Skill graph. Skill contracts summarize capabilities, inputs, outputs, and use conditions while preserving links to the original source. Relations distinguish dependencies, composition opportunities, and alternatives.
- Task-specific Wiki. Hybrid sparse and dense retrieval finds relevant seeds; relation expansion adds connected candidates; Wiki projection retains only the evidence needed for the task.
- Evidence-backed routing. An isolated Explorer navigates the localized Wiki, reads complete sources when needed, and returns the selected Skills and their roles in the task.
This repository contains the core implementation in src/skillfabric/ and the experiment code for
SkillRouter, SkillsBench, and AgentSkillOS in experiments/. Official Skills, graphs, benchmark
resources, results, and runtime logs are released through
zjunlp/SkillNet-Fabric.
The tables below reproduce the SkillNet paper results. Each section links to the corresponding formal artifacts, including per-task outputs, aggregate results, evaluator records, and logs.
Recall and FullCoverage are macro percentages over 75 scored tasks and 79,141 candidate Skills.
Qwen3 E×R denotes Qwen3 Embedding with Qwen3 Ranker.
Scores are task-macro mean verifier rewards over 87 tasks and three trials per task.
Scores are task-level Bradley-Terry scores on 30 tasks, rescaled to 0-100. Pool Mean weights the 53-, 500-, and 1,000-Skill pools equally.
The component study uses GPT-5.4 mini on all 30 AgentSkillOS tasks with the 500-Skill pool.
The complete Wiki is at least 11.36 points above every ablation and maintains the strongest minimum score across Data, Document, Motion, Visual, and Web tasks. The result is not explained by token use alone: both missing evidence and missing candidate structure reduce downstream quality.
Increasing the localization limit improves candidate availability, but exposing all 79,141 Skills does not improve final set formation. The full pool reaches 100% Candidate FullCoverage while mean Final FullCoverage@10 falls to 38.22%; the best localized settings recover more complete Skill sets with fewer Explorer tokens. The preferred scope varies across Explorer models.
The core implementation supports Python 3.10-3.13. The complete experiment environment uses Python 3.12.
git clone https://github.com/zjunlp/SkillNet-Fabric.git
cd SkillNet-Fabric
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e . \
-e "./experiments[skillrouter,skillsbench,agentskillos]"
cp .env.example .envSkillsBench requires Docker. AgentSkillOS artifact rendering also requires LibreOffice and
ffprobe. Browser tasks require:
python -m playwright install chromiumSet OPENAI_API_KEY and OPENAI_BASE_URL in .env for any OpenAI-compatible LLM endpoint. Set the
embedding credentials separately when the embedding service uses a different endpoint. Models,
reasoning effort, task counts, and trial counts are fixed by the benchmark TOML profiles.
skillfabric-repro download --profile mainThe downloader retrieves the release from Hugging Face, validates each bundle, and extracts the
expected layout into experiments/artifacts/. The default repository is
zjunlp/SkillNet-Fabric; set SKILLFABRIC_HF_REPO_ID to use a mirror. Plan for a 13.6 GB download
and approximately 41 GB of extracted artifacts.
Inspect the fixed evaluation matrices without downloading artifacts or calling a model API:
skillfabric-repro run skillrouter --dry-run
skillfabric-repro run skillsbench --dry-run
skillfabric-repro run agentskillos --dry-runAfter downloading the artifacts and configuring .env, run one benchmark or the complete suite:
skillfabric-repro run skillrouter --run-id my-run
skillfabric-repro run skillsbench --run-id my-run
skillfabric-repro run agentskillos --run-id my-run
skillfabric-repro run all --run-id my-runThe public entry point reruns SkillNet-Fabric only. AgentSkillOS uses the released baseline artifacts
to compute the common Bradley-Terry ranking. Use --resume with the same run ID to continue an
interrupted run; terminal results remain fixed within that run.
See experiments/README.md for system requirements, benchmark protocols,
advanced graph builds, localization, ablations, resume behavior, and artifact schemas. See
experiments/FAIRNESS.md for model-visible inputs and failure treatment.
The experiment package imports the implementation directly from src/skillfabric/. The same build
and route lifecycle is available programmatically:
from skillfabric import SkillFabric
fabric = SkillFabric(workspace=".skillfabric", env_file=".env")
fabric.build("./skills")
route = fabric.route("Analyze the dataset and prepare a presentation")
print(route.selected_skill_ids)Or through the core CLI:
skillfabric build --skill-root ./skills
skillfabric route "Analyze the dataset and prepare a presentation"SkillNet-Fabric is presented as part of the SkillNet paper:
@article{liang2026skillnet,
title = {SkillNet: Create, Evaluate, and Connect AI Skills},
author = {Liang, Yuan and Zhong, Ruobin and Xu, Haoming and Jiang, Chen and others},
journal = {arXiv preprint arXiv:2603.04448},
year = {2026}
}





