A coding agent can write a function in seconds. The useful engineering work is everything around that function: understanding the repository, following local conventions, checking the result, and knowing when to stop.
That is where skills help. A skill can package a repeatable engineering method without forcing every conversation to carry the entire team handbook.
Repository context comes first
A good coding skill tells the agent how to discover the project’s language, test commands, generated files, deployment rules, and safety boundaries. It does not assume every repository is a clean greenfield app.
Verification is part of the capability
“The code compiles” is rarely enough. A skill should name the smallest useful checks: unit tests, type checks, linting, screenshots, a route smoke test, or a diff review. It should also say what to report when a check cannot run.
Keep permissions narrow
Do not give a skill access to credentials or production systems just because a future task might need them. Start with read-only inspection and local changes. Expand the boundary only when the workflow and owner are clear.
Browse coding and engineering skills, inspect their sources, and keep the publisher’s install command visible. The point is not to make the agent autonomous everywhere. It is to make the right kind of work repeatable here.