Versioning, Lifecycle and Design Patterns¶
A skill legyen kezelt software artifact¶
Ha egy skill production capability, akkor idővel változni fog:
- prompt/instruction javul,
- input/output schema változik,
- model cserélődik,
- új tool kerül alá,
- permission policy szigorodik,
- evaluation dataset bővül,
- régi implementation deprecated lesz.
Ezért hasznos úgy gondolni rá, mint egy verziózott software artifactra:
Skill
├── identity
├── contract version
├── implementation version
├── owner
├── lifecycle status
├── evaluation baseline
└── rollout policy
Nem kell minden rendszert túlbonyolítani enterprise registryvel, de a lifecycle kérdéseket tudatosan kezelni kell.
Mi változik valójában?¶
Egy skillnél több külön réteg változhat.
Capability contract
├── purpose
├── input schema
├── output schema
└── failure semantics
Behavior implementation
├── instructions / prompt
├── examples
├── model
├── context strategy
└── tool strategy
Runtime policy
├── permission
├── timeout
├── retry
└── rollout
Ezek nem feltétlenül ugyanazzal a verziószámmal mozognak.
Contract version vs implementation version¶
Például:
review_pull_request contract v2
maradhat ugyanaz, miközben:
prompt v14 → v15
model A → model B
retrieval strategy 3 → 4
A caller számára nincs breaking change, ha a contract és semantic expectation stabil marad.
Ezért jó különválasztani:
public skill interface
≠
internal implementation
Mikor breaking change?¶
Tipikusan breaking lehet:
- required input mező hozzáadása,
- output mező eltávolítása,
- enum jelentésének megváltoztatása,
- success/failure semantics változása,
- capability responsibility jelentős módosítása,
- side-effect profil megváltozása.
Például v1:
{
"severity": "HIGH",
"summary": "..."
}
v2:
{
"risk": {
"level": "HIGH",
"category": "CORRECTNESS"
}
}
A downstream caller ezt nem biztos, hogy kompatibilisen fogyasztja.
Semantic versioning mint inspiráció¶
Nem kötelező klasszikus SemVer, de hasznos mental model:
MAJOR → caller-visible breaking contract/behavior change
MINOR → backwards-compatible capability addition
PATCH → implementation fix, contract unchanged
AI skillnél azonban semantic behavior változás nehezebben formalizálható.
Például prompt javítás schema változás nélkül is jelentős regressziót okozhat.
Ezért versioning mellé evaluation baseline kell.
Lifecycle status¶
Skill registryben hasznos lehet:
EXPERIMENTAL
STABLE
DEPRECATED
DISABLED
Experimental¶
- változhat contract,
- szűk user group,
- nincs erős compatibility guarantee.
Stable¶
- explicit contract,
- baseline eval,
- owner,
- controlled rollout.
Deprecated¶
- még használható,
- replacement ismert,
- migration deadline lehet.
Disabled¶
- nem route-olható,
- security vagy reliability okból azonnal lekapcsolható.
Ownership¶
Minden production skillnek legyen owner.
owner: Payments Platform
vagy:
owner: AI Platform / Support Automation
Különben idővel lesznek „senki skilljei”:
- outdated policy,
- stale examples,
- régi model,
- senki nem figyeli az evalot.
Owner felelőssége lehet:
- contract,
- evaluation,
- rollout,
- deprecation,
- security review,
- incident response.
Change process¶
Egyszerű production lifecycle:
change proposed
↓
offline eval
↓
security/contract checks
↓
staging / shadow
↓
canary rollout
↓
monitor
↓
full rollout or rollback
Nem minden kis skillhez kell minden lépés, de high-risk capabilitynél indokolt.
Shadow testing¶
Új implementation production requesteken futhat úgy, hogy outputját nem használjuk side effectre.
production request
├── current skill → real result
└── candidate skill → shadow result
Utána compare:
quality
latency
cost
routing/tool behavior
Ez különösen hasznos model migrationnél.
Canary rollout¶
Például:
5% traffic → skill v3
95% traffic → skill v2
Ha metric romlik:
rollback to v2
Ehhez fontos, hogy a runtime explicit skill versiont route-oljon.
Rollback legyen ténylegesen lehetséges¶
Ha skill update közben output contract is megváltozik, és downstream rendszert migráltuk, rollback már nem biztos, hogy egyszerű.
Ez klasszikus deployment compatibility probléma.
Pattern:
expand contract
↓
migrate consumers
↓
remove old contract later
ugyanúgy működhet, mint API/database migrationnél.
Deprecation¶
Deprecated skill ne tűnjön el váratlanul.
Registry metadata:
status: deprecated
replacement: review_pull_request_v3
sunset: 2026-12-01
A runtime logolhatja, mely caller használja még.
usage telemetry
↓
migration list
Skill library design patterns¶
1. Narrow Capability Pattern¶
Egy skill egy koherens responsibility.
Analyze Test Failure
nem:
Do Software Engineering
Előny:
- route-olható,
- evaluálható,
- szűk permission,
- könnyebb reuse.
2. Capability Contract + Adapter Pattern¶
Skill dependency:
repository_reader
Runtime adapter:
GitHub connector
local checkout
GitLab API
A skill nem konkrét providerhez kötődik.
3. Evidence-Grounded Result Pattern¶
Semantic claimhez evidence:
{
"finding": "Retry may duplicate payment",
"evidence": ["RetryService.java:87"],
"confidence": 0.88
}
Ez segíti:
- human review,
- evaluation,
- hallucination detection.
4. Read → Propose → Execute Pattern¶
High-risk operation:
read state
↓
analyze
↓
propose action
↓
authorize / approve
↓
revalidate
↓
execute
Ez erősebb, mint egy mindent intéző write-capable skill.
5. Result Envelope Pattern¶
Explicit outcome:
SUCCESS
PARTIAL_RESULT
INSUFFICIENT_CONTEXT
NOT_AUTHORIZED
TOOL_UNAVAILABLE
A caller nem szabad szöveget parse-ol.
6. Router + Specialists Pattern¶
Router
├── PR Review Skill
├── Incident Triage Skill
└── Support Billing Skill
A specialist skill kevesebb contextet és toolt kap.
7. Deterministic Shell Pattern¶
validation
policy
state
retry
idempotency
↓
LLM semantic capability
↓
validation
A probabilistic magot deterministic software veszi körül.
Ez az egész knowledge base egyik visszatérő architekturális elve.
8. Explicit State Ownership Pattern¶
runtime owns state
skill receives input
skill returns result
ne:
skills share hidden mutable memory
9. Human Escalation Pattern¶
Ha:
high risk
low confidence
conflicting evidence
policy ambiguity
akkor:
ESCALATE_TO_HUMAN
legyen first-class outcome.
10. Budgeted Execution Pattern¶
Skill/agent runtime rendelkezzen:
max steps
max model calls
max tool calls
max cost
max time
és explicit budget-exceeded outcome-mal.
Anti-pattern: Mega Skill¶
UniversalEnterpriseAgentSkill
minden tudással és minden toolal.
Problémák:
- routing ambiguity,
- giant prompt,
- broad permissions,
- nehéz eval,
- nagy blast radius,
- erős coupling.
Anti-pattern: Hidden Business Logic¶
Business policy csak promptban:
"Refund above 100 EUR needs approval."
ha ez hard invariant, application policyben is legyen.
Anti-pattern: Provider-Coupled Skill¶
Skill contract mentions exact provider SDK classes everywhere.
Ez megnehezíti model/tool migrationt.
Preferáljuk capability abstractiont.
Anti-pattern: Implicit State¶
Skill csak azért működik, mert „előző chatben már elhangzott”.
Reusable contractnál a szükséges input legyen explicit vagy runtime által explicit resolve-olt dependency.
Anti-pattern: Unlimited Permission¶
„Később még jól jöhet” alapon minden toolt megadni rossz security design.
Anti-pattern: No eval, no owner¶
Egy skill, amelynek nincs:
owner
baseline
usage
version
idővel legacy black box lesz.
Anti-pattern: Prompt patch accumulation¶
edge case fails
↓
add sentence
↓
another edge case
↓
add exception
↓
500-line prompt
Néha a helyes megoldás:
- contract redesign,
- new deterministic validation,
- split skill,
- better routing,
- retrieval,
- tool boundary,
- evaluation improvement.
Reference skill package¶
Egy mature skill konceptuálisan így nézhet ki:
review_pull_request/
├── manifest
│ ├── name
│ ├── version
│ ├── owner
│ └── status
├── contract
│ ├── input schema
│ ├── output schema
│ └── failure semantics
├── behavior
│ ├── instructions
│ └── examples
├── dependencies
│ └── repository_reader
├── policy
│ └── read-only
└── evals
├── dataset
└── baseline
Ez nem kötelező fizikai folder structure.
Ez egy mental model, hogy milyen concernök léteznek.
Az Agent Skills helye az egész agentic rendszerben¶
Most már összeáll a kép:
Skill Registry
↓
Routing
↓
Skill Contract
↓
Context + State Projection
↓
Model + Tools
↓
Structured Result
↓
Validation / Policy
↓
Workflow / Agent Loop
A skill tehát:
- nem agent,
- nem tool,
- nem workflow,
- nem pusztán prompt.
Hanem reusable capability unit, amelyet egy nagyobb runtime használ.
Mikor kész egy skill first production versionje?¶
Minimum checklist:
- világos responsibility
- explicit input/output contract
- explicit failure semantics
- required capabilities definiálva
- least-privilege permission
- deterministic validation boundary
- representative eval dataset
- owner és version
- observability
- rollout/rollback terv, ha high-risk
Takeaways¶
- A production skill legyen verziózott, owned és evaluált software artifact.
- Contract versiont és implementation versiont érdemes külön kezelni.
- Schema-stabil prompt/model változás is okozhat semantic breaking change-et, ezért evaluation kell.
- Lifecycle status: experimental → stable → deprecated/disabled.
- Controlled rolloutnál shadow, canary és rollback használható.
- Deprecationhez replacement és migration visibility kell.
- Jó design pattern: narrow capability, adapter, evidence grounding, read/propose/execute, result envelope, router+specialists, deterministic shell, explicit state ownership.
- Kerüljük a mega-skillt, hidden business logicot, provider couplingot, implicit state-et és unlimited permissiont.
- Az Agent Skill a nagyobb agentic runtime moduláris capability unitja.