Skillname

ENS-native skill discovery for AI agents to resolve names and load tools.

Skillname

Created At

Open Agents

Winner of

ENS

ENS - Best ENS Integration for AI Agents 3rd place

Project Description

The goal is simple: resolve a name, load the skills, and let agents discover trusted tools through ENS.

Skillname is an ENS-native skill discovery layer for AI agents. It lets any MCP-compatible AI client resolve an ENS name into a verified, content-addressed skill bundle, then dynamically load tools without hard-coded APIs or custom adapters.

Today, every AI agent framework needs custom integration work for each protocol or tool. Skillname turns ENS into the discovery layer for those skills. A protocol, developer, or agent can publish a skill manifest under an ENS name such as research.skillname.eth. That ENS name stores a text record pointing to a bundle on IPFS or 0G Storage. The bundle contains MCP-compatible tool definitions, prompts, examples, metadata, execution rules, and optional trust information.

In the demo, an AI client resolves an ENS name at runtime, reads the skill manifest record, fetches the bundle, validates it, and registers the available tools. This means ENS is not just used as a cosmetic username. ENS provides identity, metadata, discovery, and verification for AI agents. The project also supports ENSIP-25-style verification, so an ENS name can be linked to an onchain agent identity such as ERC-8004.

Verify any of it on-chain:

  • SkillLink dispatch registry: https://sepolia.etherscan.io/address/0x428865D8Dec9Bcc882c9e034DB4c81CBd93293A5
  • ERC-8004 IdentityRegistry: https://sepolia.etherscan.io/address/0x48f77FfE1f02FB94bDe9c8ffe84bB4956ace11e4
  • ENS records: https://app.ens.domains/agent.skilltest.eth (xyz.manifest.skill = 0g://0x12158e3970…2343dc)
  • 0G storage manifest: https://indexer-storage-testnet-turbo.0g.ai/file?root=0x12158e39707f477432588085a2452daeb14204aee2b52dcffcd84d41bc2343dc

How it's Made

Skillname is built as a TypeScript monorepo with a CLI, SDK, MCP bridge, example skill bundles, and a web demo. The core flow is: ENS name → ENS text record → content-addressed manifest bundle → MCP tool registration.

The SDK uses viem to resolve ENS text records at runtime. Each ENS name can publish records such as xyz.manifest.skill, xyz.manifest.skill.version, and xyz.manifest.skill.schema. The main record points to a skill bundle stored on IPFS and optionally mirrored to 0G Storage. The bundle is a JSON-based manifest that defines available tools, input schemas, prompts, examples, dependencies, and execution configuration.

The MCP bridge acts as the adapter between AI clients and ENS. When a client asks to load skills from an ENS name, the bridge resolves the ENS record, fetches the bundle, validates the schema, and dynamically registers the tools as MCP capabilities. MCP is used as the runtime interface because it already standardizes tools, resources, prompts, and client-server capability negotiation for AI applications.

Partner technologies are used in the parts where they matter most. ENS is the identity and discovery layer. 0G Storage is used as a decentralized storage layer for skill bundles and helps position the project as framework-level infrastructure for agents. KeeperHub is used for onchain execution: a manifest tool can declare execution.type = "keeperhub", and the MCP bridge routes that call through KeeperHub for contract execution. x402 can be used for paid tool calls, so an agent can pay before using a premium skill.

background image mobile

Join the mailing list

Get the latest news and updates