Steering Over Skills
"Uploading a skill for every task is not free. Each one pays rent in your agent's context window."
The Problem
You have 14 skills. Each has a description, trigger keywords, and instructions. They all load — not the full skill file, but the skill manifest — on every call.
14 skills × 85 tokens/manifest = ~1,190 tokens just listing what's available.
Even skills never triggered still cost $0.09/call in manifest overhead.
× 50 calls/day = $135/month for skills you barely use.
Steering vs Skills
The fundamental difference:
Steering / Rules
- Loaded on every call
- Good for: standards, conventions, always-on rules
- Token cost: paid every time
- Keep: small, focused, essential
- Rule: if you reference it daily, it belongs here
Skills
- Loaded on-demand (trigger-based)
- Good for: workflows, rare tasks, deep docs
- Token cost: paid only when triggered
- Keep: large, detailed, infrequently used
- Rule: if you reference it weekly or less, skill it
The Hidden Cost
Every skill still costs tokens even when NOT triggered. The skill index (name + description + trigger keywords) loads into context so the agent knows it exists. At 85 tokens per skill, 14 skills = ~1,190 tokens of overhead on every call.
But don't overcorrect. Moving a 49KB file from always-load to on-demand saves ~12,250 tokens/call. The 85 token manifest cost is a fraction of that — a 140:1 ratio in your favor.
The goal isn't "zero skills." It's intentional skills. Categorize by frequency (see Context Is a Resource), then consolidate ruthlessly.
Frequency-Based Decision Matrix
Your Skill Tax
How many skills do you have? Drag to see what they cost you:
DIY: Audit Your Skills
List all skills with triggers
ls -la .kiro/skills/*/SKILL.md | wc -l
# Counts how many skills you have
for skill in .kiro/skills/*/; do
name=$(basename "$skill")
triggers=$(grep -i "trigger\|keyword\|when:" "$skill/SKILL.md" 2>/dev/null | head -3)
size=$(wc -c < "$skill/SKILL.md" 2>/dev/null)
echo "$name | ${size}b | triggers: $triggers"
doneTag by usage frequency
- Daily: move to steering/ — you reference it every session
- Weekly/Monthly: keep as skill — on-demand is right
- Never used: delete — it's just manifest tax
Consolidate related skills
Do you have 3 skills that all trigger on "deploy"? Merge them into one.
# Before: 3 skills, 255 tokens manifest cost
deploy-workflow/ # triggers: deploy
deploy-rollback/ # triggers: rollback, deploy
deploy-health/ # triggers: health, deploy
# After: 1 skill, 85 tokens manifest cost
deploy/ # triggers: deploy, rollback, health, blast-radiusSet a skill budget
Hard limit: max 8 skills per agent. If you need more, merge or promote to steering.
8 skills × 85 tok = 680 tokens. Acceptable overhead (<1% of context).
Key Insight
Skills are leases, not assets. Every skill you add is a recurring token payment on every call. Even the ones you never trigger.
Audit your skills monthly. Same as everything else. If a skill hasn't triggered in 30 days, delete it. You can always re-create it.
8 skills max. Anything more is skill-spam.